diff --git a/config/scripts/ci-dependency-download-cache.test.mjs b/config/scripts/ci-dependency-download-cache.test.mjs
index 0f1436e2f31..14cafead9fa 100644
--- a/config/scripts/ci-dependency-download-cache.test.mjs
+++ b/config/scripts/ci-dependency-download-cache.test.mjs
@@ -373,9 +373,9 @@ describe('CI dependency download caches', () => {
const platforms = read(workflow('ci-cache-warmup-platforms').jobs['warm-platforms'].uses)
const warm = platforms.jobs['warm-windows']
const context = { runner: { arch }, matrix: { os } }
- for (const step of warm.steps.filter((step) =>
- ['Cache Windows CLI launcher', 'Build the Windows native executables'].includes(step.name)
- )) {
+ for (const name of ['Cache Windows CLI launcher', 'Build the Windows native executables']) {
+ const step = warm.steps.find((step) => step.name === name)
+ expect(step, name).toBeDefined()
expect(runInNewContext(step.if, context)).toBe(cli)
}
const consumer = workflow('wsl-orcad-e2e').jobs.wsl2
diff --git a/config/scripts/ci-unit-module-cache.test.mjs b/config/scripts/ci-unit-module-cache.test.mjs
index d2cbb470e6d..1b9da55fe70 100644
--- a/config/scripts/ci-unit-module-cache.test.mjs
+++ b/config/scripts/ci-unit-module-cache.test.mjs
@@ -83,7 +83,7 @@ describe('persistent unit module cache boundary', () => {
expect(() => readFileSync(join(identity.path, 'untrusted'))).toThrow()
}
)
- it('restores a matching cache from an earlier source without copying evaluated state', async () => {
+ it('restores a matching cache produced from an earlier source', async () => {
const identity = moduleCacheIdentity(options())
mkdirSync(identity.path)
writeFileSync(
@@ -136,11 +136,52 @@ it('uses an optional exact restore after install and saves successful scoped pro
expect(steps[restore].uses).toBe('actions/cache/restore@v5')
expect(steps[restore].with['restore-keys']).toBeUndefined()
expect(steps[restore]['continue-on-error']).toBe(true)
- expect(seal.if).toContain('success()')
- expect(seal.if).toContain("github.event_name == 'pull_request'")
- expect(seal.if).toContain("github.ref == 'refs/heads/main'")
- expect(seal.if).toContain("github.event_name != 'pull_request'")
- expect(seal.if).toContain("inputs.module_cache_seed && github.event_name == 'workflow_dispatch'")
+ const guard = seal.if
+ .replaceAll('steps.module-cache.outputs.key', 'steps["module-cache"].outputs.key')
+ .replaceAll(
+ 'steps.module-cache-restore.outputs.cache-hit',
+ 'steps["module-cache-restore"].outputs["cache-hit"]'
+ )
+ const producer = {
+ event: 'pull_request',
+ ref: 'refs/pull/1/merge',
+ success: true,
+ key: 'scoped',
+ hit: '',
+ seed: false
+ }
+ for (const [name, update, expected] of [
+ ['successful PR cache miss', {}, true],
+ ['successful main producer', { event: 'push', ref: 'refs/heads/main' }, true],
+ [
+ 'successful manually seeded branch',
+ { event: 'workflow_dispatch', ref: 'refs/heads/experiment', seed: true },
+ true
+ ],
+ ['failed PR', { success: false }, false],
+ ['missing identity', { key: '' }, false],
+ ['exact restored hit', { hit: 'true' }, false],
+ ['ordinary branch push', { event: 'push', ref: 'refs/heads/experiment' }, false],
+ ['unseeded manual branch', { event: 'workflow_dispatch', ref: 'refs/heads/experiment' }, false],
+ [
+ 'seed does not admit a nonmanual event',
+ { event: 'push', ref: 'refs/heads/experiment', seed: true },
+ false
+ ],
+ ['failed main producer', { event: 'push', ref: 'refs/heads/main', success: false }, false]
+ ]) {
+ const control = { ...producer, ...update }
+ const admitted = runInNewContext(guard, {
+ github: { event_name: control.event, ref: control.ref },
+ steps: {
+ 'module-cache': { outputs: { key: control.key } },
+ 'module-cache-restore': { outputs: { 'cache-hit': control.hit } }
+ },
+ inputs: { module_cache_seed: control.seed },
+ success: () => control.success
+ })
+ expect(admitted, name).toBe(expected)
+ }
expect(save.if).toBe("steps.module-cache-seal.outputs.ready == 'true'")
expect(save.with.key).toBe(steps[restore].with.key)
expect(workflow.on.workflow_call.inputs.module_cache.default).toBe('off')
@@ -173,7 +214,7 @@ it('retains four workers on ARM and the four-core Blacksmith unit runner', () =>
).toBe('')
})
-it('runs full same-source controls serially with five four-worker shards and included producer costs', () => {
+it('runs baseline, producer and warm controls serially with matching runtimes and shards', () => {
const workflow = parse(readFileSync('.github/workflows/unit-module-cache-benchmark.yml', 'utf8'))
const { baseline, producer, warm } = workflow.jobs
expect(producer.needs).toBe('baseline')
diff --git a/config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs b/config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs
index a4a7d2d08d7..f66f6934b7b 100644
--- a/config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs
+++ b/config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs
@@ -59,13 +59,6 @@ describeClosure(
}
expect(closure.local).toContain('src/session/mobile-clipboard-image-resize.ts')
})
-
- it('is big enough that finding nothing would mean something', async () => {
- const closure = await mobileWebAppRouteClosure(SESSION)
- // The largest route of the series; a closure that collapsed would pass every rule above by
- // containing nothing to judge.
- expect(closure.local.length).toBeGreaterThan(900)
- })
},
240_000
)
diff --git a/config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs b/config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs
index b9192880fba..17bcf856da0 100644
--- a/config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs
+++ b/config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs
@@ -12,7 +12,8 @@ import {
readBridgeFaultGrant,
readBridgeProtocolVersion,
readShellCsp,
- waitForRecordedRequests
+ waitForRecordedRequests,
+ waitForPageFrames
} from './preview/mobile-web-app-render-harness.mjs'
/**
@@ -231,6 +232,7 @@ describeRender(
// Exact, because this closure's defects are exactly console lines: the unguarded
// `BackHandler` put two here and the uncaught diff-notes rejection one, and both are fixed.
expect(opened.errors).toEqual([])
+ expect(opened.requestedHosts.filter((host) => host !== new URL(origin).host)).toEqual([])
await opened.page.close()
}, 120_000)
@@ -267,20 +269,6 @@ describeRender(
await opened.page.close()
}, 120_000)
- it('paints under the shipped policy without violating it or leaving the origin', async () => {
- const opened = await openRoute(SESSION_ROUTE, 'Terminal')
- // Chromium reports a refused subresource as a console error naming the directive, so
- // anything this closure loaded that the policy blocked lands here.
- expect(opened.errors.filter((entry) => entry.includes('Content Security Policy'))).toEqual([])
- // And nothing else at all, so this case reads the whole account and not only the policy.
- expect(opened.errors).toEqual([])
- // Stronger than the line above and independent of it: not one request left the origin, so
- // there is nothing for the policy to have refused. A font, a beacon or a provider image
- // added anywhere in this closure reds this.
- expect(opened.requestedHosts.filter((host) => host !== new URL(origin).host)).toEqual([])
- await opened.page.close()
- }, 120_000)
-
it('asks the origin for no icon, which the shell has none to answer with', async () => {
// The document declares ``. Without it a browser asks the
// origin for /favicon.ico on its own, and the shell's asset server answers 403 because the
@@ -331,6 +319,8 @@ describeRender(
capabilities: []
}
})
+ await waitForRecordedRequests(opened.page, ['status.get'])
+ await waitForPageFrames(opened.page)
// The whole refusal and not this one key: any page-closure writer of an unlisted key lands
// on the same line, and naming the key here would let the next one through.
expect(opened.warnings.filter((text) => text.includes('storage-write-dropped'))).toEqual([])
@@ -347,7 +337,13 @@ describeRender(
// never here. Under a 20x CPU throttle the snapshot at the paint holds none of them.
const opened = await openRoute(SESSION_ROUTE, 'Terminal')
const requests = await waitForRecordedRequests(opened.page, SESSION_MOUNT_READS)
- expect(JSON.stringify(requests)).toContain(WORKTREE)
+ for (const method of SESSION_MOUNT_READS) {
+ const observed = requests.filter((request) => request.method === method)
+ expect(observed.length, method).toBeGreaterThan(0)
+ for (const request of observed) {
+ expect(request.params.worktree, method).toBe(`id:${WORKTREE}`)
+ }
+ }
await opened.page.close()
}, 120_000)
},
diff --git a/config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs b/config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs
index 5772620f07d..1a25240f997 100644
--- a/config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs
+++ b/config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs
@@ -463,10 +463,7 @@ const MERMAID_PACKAGE = 'node_modules/mermaid/'
/** What the page enters this route through once the route is a switch with a `.web.tsx` sibling. */
const ROUTE_ENTRY = [
'app/h/[hostId]/session/[worktreeId].web.tsx',
- 'src/session/MobileSessionRouteScreen.tsx',
- // Round 1's two, named for the reading above rather than left inside the total.
- 'src/session/notification-pane-tab.ts',
- 'src/mobile-web-shell/bridge/bridge-init-route.ts'
+ 'src/session/MobileSessionRouteScreen.tsx'
]
const artifactModules = (inputs) => inputs.filter((input) => input.includes(MERMAID_PAGE_ENGINE))
@@ -503,7 +500,6 @@ describeClosure(
const documentModules = local.filter((module) => module.startsWith('src/terminal/document/'))
expect(documentModules).toContain('src/terminal/document/create-terminal-document.ts')
expect(documentModules).toContain('src/terminal/document/message-bridge.ts')
- expect(documentModules.length).toBeGreaterThanOrEqual(36)
// The bundle and its entry belong to the phone: a page reaching either would ship the
// document twice, once as modules and once as a string.
expect(documentModules).not.toContain('src/terminal/document/native-document-entry.ts')
@@ -538,14 +534,12 @@ describeClosure(
expect(artifactModules(download.deferredInputs)).toHaveLength(1)
// And the walk read a real download rather than one chunk: the route's own chunk is in it.
expect(download.staticChunks).toContain(download.routeChunk)
- expect(download.staticInputs.length).toBeGreaterThan(1000)
}, 600_000)
it('leaves the 16px seam census exactly where C7.2 left it', async () => {
// Two preconditions, because zero offenders is what a walk that read nothing also reports:
// the seam's own web module has to be in the closure, and no style may be unresolved.
expect(closure.local).toContain('src/platform/text-input-font-size.web.ts')
- expect(closure.local.length).toBeGreaterThan(900)
expect(unresolvedTextInputStyles(mobileDir, closure)).toEqual([])
expect(textInputFontSizeOffenders(mobileDir, closure)).toHaveLength(EXPECTED_OFFENDERS)
expect(closure.local).toContain('src/session/mobile-native-chat-input-styles.web.ts')
@@ -557,9 +551,10 @@ describeClosure(
// rule in a stylesheet: `modulesDeclaringTextInput` matches JSX tags and never sees it, so it
// shipped at 14 px and was measured at 14 px in both engines. The same floor, read by a rule
// that starts from the markup instead of from a prop.
- expect(editableHostsIn(mobileDir, closure)).toEqual([
- { file: 'src/components/rich-markdown/document-markup.ts', id: 'editor' }
- ])
+ expect(editableHostsIn(mobileDir, closure)).toContainEqual({
+ file: 'src/components/rich-markdown/document-markup.ts',
+ id: 'editor'
+ })
expect(unresolvedEditableHostStyles(mobileDir, closure)).toEqual([])
expect(editableHostFontSizeOffenders(mobileDir, closure)).toEqual([])
}, 300_000)
diff --git a/config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs b/config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs
index 2fc491fd9f7..daa0bbf0ed2 100644
--- a/config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs
+++ b/config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs
@@ -48,7 +48,6 @@ describeClosure(
// all produces, and the census would pass against a page that opens nothing.
const closure = await mobileWebAppRouteClosure(route)
expect(closure.local).toContain(SEAM)
- expect(closure.local.length).toBeGreaterThan(400)
})
it('reaches the openers from the PR sidebar, which both routes render', async () => {
diff --git a/config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs b/config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs
index 2238670453f..8def8579512 100644
--- a/config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs
+++ b/config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs
@@ -199,6 +199,7 @@ describeRender(
}
expect(text).not.toContain(UNMATCHED)
expect(opened.errors).toEqual([])
+ expect(opened.requestedHosts.filter((host) => host !== new URL(origin).host)).toEqual([])
await opened.page.close()
}, 120_000)
@@ -211,6 +212,7 @@ describeRender(
}
expect(text).not.toContain(UNMATCHED)
expect(opened.errors).toEqual([])
+ expect(opened.requestedHosts.filter((host) => host !== new URL(origin).host)).toEqual([])
await opened.page.close()
}, 120_000)
@@ -240,7 +242,7 @@ describeRender(
120_000
)
- it('serves the shipped image policy and neither route violates it', async () => {
+ it('configures the shipped Android and iOS image policy', async () => {
// The policy the shells send, read from the Kotlin source rather than restated, so this
// cannot pass against a header the app does not use.
expect(cspHeader).toContain("img-src 'self' data: blob: https:")
@@ -250,25 +252,6 @@ describeRender(
)
// The other shell says the same thing, which no served header can show.
expect(swift).toContain(`"img-src 'self' data: blob: https:"`)
-
- for (const [route, text] of [
- [HUB_ROUTE, 'Source Control'],
- [REVIEW_ROUTE, 'reviewed']
- ]) {
- const opened = await openRoute(route, text)
- // Chromium reports a refused subresource as a console error naming the directive, so
- // anything either closure loaded that the policy blocked lands here.
- expect(opened.errors.filter((entry) => entry.includes('Content Security Policy'))).toEqual(
- []
- )
- // Stronger than the line above and independent of it: not one request left the origin, so
- // there is nothing for the policy to have refused. A font, a beacon or a provider image
- // added anywhere in either closure reds this. Since the directive admits `https:`, an empty
- // list is these two closures fetching nothing rather than the policy refusing something:
- // the avatar that would fetch needs provider data this page never gets, as below.
- expect(opened.requestedHosts.filter((host) => host !== new URL(origin).host)).toEqual([])
- await opened.page.close()
- }
}, 180_000)
},
600_000
diff --git a/config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs b/config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs
index 3fb6eca06d6..c32a609a646 100644
--- a/config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs
+++ b/config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs
@@ -38,7 +38,6 @@ describeClosure(
// at all produces, and the census would pass against a page that opens nothing.
const closure = await mobileWebAppRouteClosure('app/h/[hostId]/tasks.tsx')
expect(closure.local).toContain(SEAM)
- expect(closure.local.length).toBeGreaterThan(400)
})
},
180_000
diff --git a/config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs b/config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs
index f7d8b16b7e7..81e443a1071 100644
--- a/config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs
+++ b/config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs
@@ -107,9 +107,9 @@ describeRender(
expect(fonts).toHaveLength(1)
expect(fonts[0].status()).toBe(200)
expect(fonts[0].headers()['content-type']).toBe('font/woff2')
- expect(new URL(fonts[0].url()).pathname).toBe(
- '/assets/8efa6ba89f0a1f3eefde028f36aa64a13e36282e15ea0ca6929c664501037467.woff2'
- )
+ const fontUrl = new URL(fonts[0].url())
+ expect(fontUrl.origin).toBe(new URL(page.url()).origin)
+ expect(fontUrl.pathname).toMatch(/^\/assets\/[^/]+\.woff2$/)
expect(
await page.evaluate(() => document.fonts.check('13px "Orca Nerd Font Symbols"', '\ue0b0'))
).toBe(true)
diff --git a/config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs b/config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs
index 67f0be3fecf..104b520087b 100644
--- a/config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs
+++ b/config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs
@@ -71,9 +71,10 @@ describe('the editable-host font-size rule', () => {
it('finds the editor the TextInput census cannot see', () => {
// The precondition every verdict below needs: this walk reads the editor's real markup and
// names the surface the page mounts.
- expect(editableHostsIn(mobileDir, EDITOR_CLOSURE)).toEqual([
- { file: 'src/components/rich-markdown/document-markup.ts', id: 'editor' }
- ])
+ expect(editableHostsIn(mobileDir, EDITOR_CLOSURE)).toContainEqual({
+ file: 'src/components/rich-markdown/document-markup.ts',
+ id: 'editor'
+ })
})
it('follows the surface to the rule in the stylesheet beside it', () => {
diff --git a/config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs b/config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs
index 0f8b1e973ad..cb5d3aba4fb 100644
--- a/config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs
+++ b/config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs
@@ -153,7 +153,7 @@ describe('the seam reader', () => {
describe('the two haptics siblings', () => {
it('posts every kind the notify admits from the web sibling, and nothing more', () => {
const kinds = bridgeHapticsKinds(read(HAPTICS_KINDS_MODULE), HAPTICS_KINDS_MODULE)
- expect(kinds).toHaveLength(5)
+ expect(kinds.length).toBeGreaterThan(0)
const posted = hapticsPostedKinds(read(HAPTICS_SEAM), HAPTICS_SEAM)
expect([...posted].sort()).toEqual([...kinds].sort())
})
@@ -169,7 +169,7 @@ describe('the two haptics siblings', () => {
const exported = hapticsTriggerSites(read(HAPTICS_NATIVE), HAPTICS_NATIVE).map(
(site) => site.name
)
- expect(exported).toHaveLength(5)
+ expect(exported.length).toBeGreaterThan(0)
expect(hapticsImportedNames(read(SHELL_MAPPING), SHELL_MAPPING)).toEqual([...exported].sort())
})
})
@@ -214,8 +214,6 @@ describeClosure(
const closure = await closureOf(mod)
expect(closure.local).toContain(HAPTICS_SEAM)
expect(closure.local).not.toContain(HAPTICS_NATIVE)
- // The precondition an assertion about a closure needs: the walk read a page, not nothing.
- expect(closure.local.length).toBeGreaterThan(250)
})
it.each([...ROUTE_MODULES])(
@@ -258,30 +256,6 @@ describeClosure(
const { mapped, declared } = pageRouteModulesCoverTheManifest(MOBILE_WEB_PAGE_ROUTES)
expect(mapped).toEqual(declared)
})
-
- /**
- * What the notify costs a page to download: one module.
- *
- * Measured, not assumed: every page closure grew by exactly `bridge-haptics-notify.ts`, and it
- * arrives through `page-route-policy.ts` reading the grant token rather than through the seam,
- * whose own import of the kind type is erased. Its only dependency is `zod`, which the envelope
- * already put in every closure, so the module total moved by the same one.
- *
- * Pinned structurally rather than as a total: an absolute closure count is main's to move, and a
- * number that drifts for unrelated reasons is one nobody reads.
- */
- it('adds one module to a page closure, and only the two haptics modules are in it', async () => {
- for (const mod of ROUTE_MODULES.values()) {
- const closure = await closureOf(mod)
- expect(closure.local.filter((file) => file.includes('haptics')).sort(), mod).toEqual([
- HAPTICS_KINDS_MODULE,
- HAPTICS_SEAM
- ])
- // The engine of the delta: the grant token is a value the route policy reads, and the
- // policy is in every page closure. Without this the +1 would have no stated cause.
- expect(closure.local, mod).toContain('src/mobile-web-shell/page-route-policy.ts')
- }
- })
},
240_000
)
diff --git a/config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs b/config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs
index 0fb2af516d3..76732780ffc 100644
--- a/config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs
+++ b/config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs
@@ -717,20 +717,48 @@ for (const engine of ['chromium', 'webkit']) {
const form = await open(browser(), {
signal: ctx.signal,
act: async ({ frame }) => {
- await frame?.click('#submit', { timeout: 2000 })
+ await frame.click('#submit', { timeout: 2000 })
}
})
+ expect(form.actError).toBeNull()
expect(form.pixelBefore).toBe(ARTIFACT_RGB)
expect(form.topNavigations).toBe(0)
const blank = await open(browser(), {
signal: ctx.signal,
act: async ({ frame }) => {
- await frame?.click('#blanklink', { timeout: 2000 })
+ await frame.click('#blanklink', { timeout: 2000 })
}
})
+ expect(blank.actError).toBeNull()
expect(blank.pixelBefore).toBe(ARTIFACT_RGB)
expect(blank.topNavigations).toBe(0)
expect(blank.popups).toBe(0)
+ const allowedForm = await open(browser(), {
+ signal: ctx.signal,
+ csp: null,
+ sandbox: 'allow-forms allow-top-navigation-by-user-activation',
+ expectNavigation: 'main-frame',
+ act: async ({ frame }) => {
+ await frame.click('#submit', { timeout: 2000 })
+ }
+ })
+ expect(allowedForm.pixelBefore).toBe(ARTIFACT_RGB)
+ expect(allowedForm.actError).toBeNull()
+ expect(allowedForm.topNavigations).toBe(1)
+ const allowedBlank = await open(browser(), {
+ signal: ctx.signal,
+ csp: null,
+ sandbox: 'allow-popups allow-popups-to-escape-sandbox',
+ act: async ({ page, frame }) => {
+ await Promise.all([
+ page.waitForEvent('popup', { timeout: 10_000 }),
+ frame.click('#blanklink', { timeout: 2000 })
+ ])
+ }
+ })
+ expect(allowedBlank.pixelBefore).toBe(ARTIFACT_RGB)
+ expect(allowedBlank.actError).toBeNull()
+ expect(allowedBlank.popups).toBe(1)
}, 180_000)
// The navigation wait's sampling branch, driven once. It fires only when an arm is slow, so
diff --git a/config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs b/config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs
index f93ed2f22d8..8d8d2591bb4 100644
--- a/config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs
+++ b/config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs
@@ -119,13 +119,18 @@ describeRender('mobile media under the shipped shell policy', () => {
async (name, bytes, tag) => {
const { page, errors } = await openMedia(name, bytes)
await page.waitForFunction((tag) => document.querySelector(tag)?.readyState >= 2, tag)
- const playback = await page.evaluate(async (tag) => {
+ await page.evaluate(async (tag) => {
const media = document.querySelector(tag)
globalThis.__previousMedia = media
media.muted = true
media.currentTime = 1
await media.play()
- await new Promise((resolve) => setTimeout(resolve, 200))
+ }, tag)
+ await page.waitForFunction((tag) => document.querySelector(tag).currentTime > 1, tag, {
+ timeout: 10_000
+ })
+ const playback = await page.evaluate((tag) => {
+ const media = document.querySelector(tag)
media.pause()
return {
duration: media.duration,
diff --git a/config/scripts/mobile-web-bundle-manifest.test.mjs b/config/scripts/mobile-web-bundle-manifest.test.mjs
index b6bf8f7e65d..3c23ed79982 100644
--- a/config/scripts/mobile-web-bundle-manifest.test.mjs
+++ b/config/scripts/mobile-web-bundle-manifest.test.mjs
@@ -11,7 +11,10 @@ import {
sha256Hex,
writeMobileWebBundleTree
} from './mobile-web-bundle-manifest.mjs'
-import { MobileWebBundleManifestSchema } from '../../src/shared/mobile-web-bundle/manifest-contract.js'
+import {
+ MOBILE_WEB_PAGE_VERSION,
+ MobileWebBundleManifestSchema
+} from '../../src/shared/mobile-web-bundle/manifest-contract.js'
describe('computeMobileWebBundleBuildId', () => {
const assets = [
@@ -51,9 +54,9 @@ describe('hashedAsset', () => {
const asset = hashedAsset(Buffer.from('body', 'utf8'), 'js')
expect(asset.path).toBe(`assets/${asset.sha256}.js`)
- expect(asset.sha256).toMatch(/^[0-9a-f]{64}$/)
+ expect(asset.sha256).toBe('230d8358dc8e8890b4c58deeb62912ee2f20357ae92a5cc861b98e68fe31acb5')
expect(asset.byteLength).toBe(4)
- expect(asset.contentType).toBe(contentTypeForExtension('js'))
+ expect(asset.contentType).toBe('text/javascript; charset=utf-8')
})
it('refuses an extension with no registered content type', () => {
@@ -82,7 +85,7 @@ describe('writeMobileWebBundleTree', () => {
protocolWindow: { runtimeProtocolVersion: 3, minCompatibleRuntimeProtocolVersion: 3 }
})
const manifest = JSON.parse(await readFile(join(outDir, 'manifest.json'), 'utf8'))
- expect(Number.isInteger(manifest.pageVersion)).toBe(true)
+ expect(manifest.pageVersion).toBe(MOBILE_WEB_PAGE_VERSION)
expect(MobileWebBundleManifestSchema.parse(manifest).pageVersion).toBe(manifest.pageVersion)
} finally {
await rm(outDir, { recursive: true, force: true })
diff --git a/config/scripts/mobile-web-bundle-serializer-parity.test.mjs b/config/scripts/mobile-web-bundle-serializer-parity.test.mjs
index 514c451a966..ad23cd3cdef 100644
--- a/config/scripts/mobile-web-bundle-serializer-parity.test.mjs
+++ b/config/scripts/mobile-web-bundle-serializer-parity.test.mjs
@@ -86,15 +86,14 @@ describe('the three mobile web bundle serializers', () => {
it('emit exactly path, sha256, byteLength, contentType, in that order, and nothing else', () => {
const decorated = ASSETS.map((asset) => ({ ...asset, sourcePath: '/tmp/ignored', extra: 1 }))
- expect(serializeInContract(decorated)).toBe(serializeInContract(ASSETS))
- expect(serializeInBuilder(decorated)).toBe(serializeInContract(ASSETS))
- expect(serializeInGuard(decorated)).toBe(serializeInContract(ASSETS))
- expect(JSON.parse(serializeInContract(ASSETS))[0]).toEqual({
- path: 'assets/Za.js',
- sha256: digest('a1'),
- byteLength: 2048,
- contentType: 'text/javascript; charset=utf-8'
- })
+ const expected =
+ '[{"path":"assets/Za.js","sha256":"00000000000000000000000000000000000000000000000000000000000000a1","byteLength":2048,"contentType":"text/javascript; charset=utf-8"},' +
+ '{"path":"assets/aQ.css","sha256":"00000000000000000000000000000000000000000000000000000000000000b2","byteLength":512,"contentType":"text/css"},' +
+ '{"path":"assets/nested/mark.png","sha256":"00000000000000000000000000000000000000000000000000000000000000c3","byteLength":40960,"contentType":"image/png"},' +
+ '{"path":"index.html","sha256":"00000000000000000000000000000000000000000000000000000000000000d4","byteLength":640,"contentType":"text/html; charset=utf-8"}]'
+ for (const serialize of [serializeInContract, serializeInBuilder, serializeInGuard]) {
+ expect(serialize(decorated)).toBe(expected)
+ }
})
it('hash to one buildId, which the manifest schema then accepts', () => {
diff --git a/config/scripts/mobile-web-page-routes.test.mjs b/config/scripts/mobile-web-page-routes.test.mjs
index be1df1c155c..298683435f8 100644
--- a/config/scripts/mobile-web-page-routes.test.mjs
+++ b/config/scripts/mobile-web-page-routes.test.mjs
@@ -75,10 +75,7 @@ describe('the page routes the manifest declares', () => {
* The wide iPad's host-area session is granted every served route's list, so its in-page hops
* stay in the page. Bounded by the per-route ceiling too, so that grant never outgrows one route's.
*/
- it('declares the host area on the host route alone, under one route-grant ceiling', () => {
- expect(
- MOBILE_WEB_PAGE_ROUTES.filter((route) => route.canOwnHostArea).map((route) => route.pathname)
- ).toEqual(['/h/[hostId]'])
+ it('bounds the aggregate required and optional grants by one route-grant ceiling', () => {
const union = new Set(
MOBILE_WEB_PAGE_ROUTES.flatMap((route) => [...route.grants, ...(route.optionalGrants ?? [])])
)
diff --git a/config/scripts/mobile-web-terminal-engine-closure.test.mjs b/config/scripts/mobile-web-terminal-engine-closure.test.mjs
index 9541515d155..065dbfb8f30 100644
--- a/config/scripts/mobile-web-terminal-engine-closure.test.mjs
+++ b/config/scripts/mobile-web-terminal-engine-closure.test.mjs
@@ -44,7 +44,6 @@ async function documentEntryPoints() {
.filter((name) => name.endsWith('.ts'))
.filter((name) => !name.includes('.test'))
.sort()
- expect(names.length).toBeGreaterThan(30)
return names.map((name) => `src/terminal/document/${name.replace(/\.ts$/, '')}`)
}
diff --git a/config/scripts/native-chat-design-tokens-plugin.test.mjs b/config/scripts/native-chat-design-tokens-plugin.test.mjs
index 2e5d08abdaa..451e5dbe148 100644
--- a/config/scripts/native-chat-design-tokens-plugin.test.mjs
+++ b/config/scripts/native-chat-design-tokens-plugin.test.mjs
@@ -18,17 +18,39 @@ function lintSources(sources) {
}
const violations = [
- ['arbitrary px size', 'export const X = () =>
'],
- ['arbitrary rem size', 'export const X = () => '],
- ['arbitrary size behind a variant', 'export const X = () => '],
- ['arbitrary size in a class constant', "const ROW = 'flex text-[10px]'"],
+ [
+ 'arbitrary px size',
+ 'native-chat-design-tokens(no-arbitrary-font-size)',
+ 'export const X = () => '
+ ],
+ [
+ 'arbitrary rem size',
+ 'native-chat-design-tokens(no-arbitrary-font-size)',
+ 'export const X = () => '
+ ],
+ [
+ 'arbitrary size behind a variant',
+ 'native-chat-design-tokens(no-arbitrary-font-size)',
+ 'export const X = () => '
+ ],
+ [
+ 'arbitrary size in a class constant',
+ 'native-chat-design-tokens(no-arbitrary-font-size)',
+ "const ROW = 'flex text-[10px]'"
+ ],
[
'arbitrary size in a composer',
+ 'native-chat-design-tokens(no-arbitrary-font-size)',
"export const X = () => "
],
- ['softened foreground', 'export const X = () => '],
+ [
+ 'softened foreground',
+ 'native-chat-design-tokens(no-softened-foreground)',
+ 'export const X = () => '
+ ],
[
'weakened focus ring',
+ 'native-chat-design-tokens(no-weakened-focus-ring)',
'export const X = () => '
]
]
@@ -57,15 +79,18 @@ const accepted = [
const diagnosticsBySource = new Map()
beforeAll(() => {
- const sources = [...violations, ...accepted].map(([, source]) => source)
+ const sources = [
+ ...violations.map(([, , source]) => source),
+ ...accepted.map(([, source]) => source)
+ ]
lintSources(sources).forEach((diagnostics, index) => {
diagnosticsBySource.set(sources[index], diagnostics)
})
})
describe('native-chat-design-tokens oxlint plugin', () => {
- it.each(violations)('reports %s', (_name, source) => {
- expect(diagnosticsBySource.get(source)).toHaveLength(1)
+ it.each(violations)('reports %s', (_name, rule, source) => {
+ expect(diagnosticsBySource.get(source).map((diagnostic) => diagnostic.code)).toEqual([rule])
})
it.each(accepted)('accepts %s', (_name, source) => {
diff --git a/config/scripts/native-chat-live-session-benchmark.ts b/config/scripts/native-chat-live-session-benchmark.ts
index bc852a84b85..5eebea83b84 100644
--- a/config/scripts/native-chat-live-session-benchmark.ts
+++ b/config/scripts/native-chat-live-session-benchmark.ts
@@ -14,12 +14,6 @@ import { getVerifiedNativeChatCommands } from '../../src/shared/native-chat-agen
import { surfaceSkillInvocationUserTurns } from '../../src/shared/native-chat/native-chat-command-envelope'
import { prepareNativeChatLiveMessages } from '../../src/renderer/src/components/native-chat/native-chat-live-message-preparation'
import { mergeNativeChatLiveSession } from '../../src/renderer/src/components/native-chat/native-chat-live-status'
-import {
- matchingNativeChatUserRows,
- selectPendingIndicesRepresentedByUserRows,
- type NativeChatUserRow
-} from '../../src/renderer/src/components/native-chat/native-chat-pending-occurrence'
-import { pendingSendsAsMessages } from '../../src/renderer/src/components/native-chat/native-chat-pending'
import { assembleNativeChatSession } from '../../src/renderer/src/components/native-chat/native-chat-session-assembler'
type Operation = (index: number) => number
@@ -33,11 +27,9 @@ let checksum = 0
let expectedChecksum = 0
let validatedCases = 0
let cappedCalibrations = 0
-let sessionSink: NativeChatSession | null = null
+const sessionSink: { value: NativeChatSession | null } = { value: null }
let messageArraySink: NativeChatMessage[] | null = null
let contentSink = ''
-let pendingMatchSink: Set | null = null
-let userRowSink: readonly NativeChatUserRow[] | null = null
const benchmarkStartedAt = performance.now()
function proseFixture(count: number, bytes: number, withTurnId: boolean): NativeChatMessage[] {
@@ -95,14 +87,6 @@ function directMessageUpdateSession(messages: NativeChatMessage[]): NativeChatSe
})
}
-function oldEmptyPending(messages: NativeChatMessage[]): NativeChatMessage[] {
- // An empty queue makes the renderer skip candidate-row construction entirely, so the
- // row scan is the whole cost here — keep it escaping and let the matcher take its exit.
- userRowSink = matchingNativeChatUserRows(messages)
- pendingMatchSink = selectPendingIndicesRepresentedByUserRows([], [])
- return []
-}
-
function blockContent(message: NativeChatMessage): string {
const block = message.blocks[0]
if (!block) {
@@ -117,7 +101,10 @@ function blockContent(message: NativeChatMessage): string {
if (block.type === 'tool-result') {
return block.output
}
- return block.type === 'image-ref' ? (block.path ?? block.url ?? block.alt ?? '') : block.groupId
+ if (block.type === 'image-ref') {
+ return block.path ?? block.url ?? block.alt ?? ''
+ }
+ return block.type === 'background-task' ? block.taskId : block.groupId
}
function messageWeight(message: NativeChatMessage, content: string): number {
@@ -127,7 +114,7 @@ function messageWeight(message: NativeChatMessage, content: string): number {
}
function consumeSession(session: NativeChatSession, index: number): number {
- sessionSink = session
+ sessionSink.value = session
messageArraySink = session.messages
const message = session.messages[index % session.messages.length]
if (!message) {
@@ -138,11 +125,6 @@ function consumeSession(session: NativeChatSession, index: number): number {
return session.status.charCodeAt(0) + messageWeight(message, contentSink)
}
-function consumePendingOutput(messages: NativeChatMessage[], index: number): number {
- messageArraySink = messages
- return (index % 7) + 1
-}
-
function cyclicChecksum(values: readonly number[], iterations: number): number {
if (values.length === 0) {
return 0
@@ -165,10 +147,6 @@ function sessionExpectedChecksum(session: NativeChatSession): ExpectedChecksum {
return (iterations) => statusWeight * iterations + cyclicChecksum(weights, iterations)
}
-function pendingExpectedChecksum(iterations: number): number {
- return cyclicChecksum([1, 2, 3, 4, 5, 6, 7], iterations)
-}
-
function runSample(operation: Operation, expected: ExpectedChecksum, iterations: number): number {
let sampleChecksum = 0
const startedAt = performance.now()
@@ -305,32 +283,10 @@ benchmarkSessionArms(
})
)
-deepStrictEqual(pendingSendsAsMessages([], prose300), oldEmptyPending(prose300))
-benchmark(
- '300 x 2KB empty pending',
- (index) => consumePendingOutput(oldEmptyPending(prose300), index),
- (index) => consumePendingOutput(pendingSendsAsMessages([], prose300), index),
- pendingExpectedChecksum
-)
-
-const combinedSessionExpected = sessionExpectedChecksum(legacyMessageUpdateSession(prose300))
-benchmark(
- '300 x 2KB combined',
- (index) =>
- consumeSession(legacyMessageUpdateSession(prose300), index) +
- consumePendingOutput(oldEmptyPending(prose300), index),
- (index) =>
- consumeSession(directMessageUpdateSession(prose300), index) +
- consumePendingOutput(pendingSendsAsMessages([], prose300), index),
- (iterations) => combinedSessionExpected(iterations) + pendingExpectedChecksum(iterations)
-)
-
strictEqual(checksum, expectedChecksum, 'benchmark checksum accounting drifted')
-strictEqual(sessionSink?.sessionId, 'benchmark', 'session outputs did not escape')
+strictEqual(sessionSink.value?.sessionId, 'benchmark', 'session outputs did not escape')
strictEqual(Array.isArray(messageArraySink), true, 'message arrays did not escape')
strictEqual(contentSink.length > 0, true, 'message content did not escape')
-strictEqual(pendingMatchSink instanceof Set, true, 'pending baseline scan did not escape')
-strictEqual(Array.isArray(userRowSink), true, 'user row scan did not escape')
console.log(
`validated=${validatedCases} cases, checksum=${checksum}, capped calibrations=${cappedCalibrations}, runtime=${(
performance.now() - benchmarkStartedAt
diff --git a/config/scripts/node-server-change-scope.test.mjs b/config/scripts/node-server-change-scope.test.mjs
index 96ed9adad24..75d081ccd04 100644
--- a/config/scripts/node-server-change-scope.test.mjs
+++ b/config/scripts/node-server-change-scope.test.mjs
@@ -536,7 +536,7 @@ describe('the actual Bun build and profile-test dependency graph', () => {
it('retains all selected tests and the selectors the Bun runner uses', () => {
const tests = discoverNodeServerTests()
- expect(tests.length).toBeGreaterThan(80)
+ expect(tests.length).toBeGreaterThan(0)
expect(tests.every((file) => inputs.has(file))).toBe(true)
expect(
nodeServerTestPaths().every((selector) => tests.some((file) => file.includes(selector)))
diff --git a/config/scripts/node-server-concurrency.test.mjs b/config/scripts/node-server-concurrency.test.mjs
index 92c863361d5..ec895597459 100644
--- a/config/scripts/node-server-concurrency.test.mjs
+++ b/config/scripts/node-server-concurrency.test.mjs
@@ -2,6 +2,7 @@ import { readFileSync } from 'node:fs'
import { runInNewContext } from 'node:vm'
import { expect, it } from 'vitest'
import { parse } from 'yaml'
+import { compileAggregateExpression } from './pr-aggregate-gate-context.mjs'
const workflow = parse(readFileSync('.github/workflows/node-server-tests.yml', 'utf8'))
@@ -60,7 +61,19 @@ it.each(['persistence', 'linux_glibc_floor', 'linux_glibc217_compat', 'linux_mus
'%s only supersedes eligible main qualification, isolating releases and nightly runs',
(name) => {
const job = workflow.jobs[name]
- expect(job.if).toContain("needs.changes.outputs.should_run != 'false'")
+ const eligible = compileAggregateExpression(job.if, ['needs', 'github', 'inputs'])
+ for (const shouldRun of ['true', 'false']) {
+ const ctx = {
+ ...context('push', 1),
+ needs: {
+ changes: {
+ outputs: { should_run: shouldRun, qualification: 'true', native_compatibility: 'true' }
+ },
+ mobile_web_bundle: { result: 'success' }
+ }
+ }
+ expect(eligible(ctx).coerceString()).toBe(shouldRun)
+ }
const policy = job.concurrency
const first = context('push', 1)
const second = context('push', 2)
diff --git a/config/scripts/node-server-fast-runners.test.mjs b/config/scripts/node-server-fast-runners.test.mjs
index a79e931c881..ebedd2a7ad1 100644
--- a/config/scripts/node-server-fast-runners.test.mjs
+++ b/config/scripts/node-server-fast-runners.test.mjs
@@ -68,11 +68,27 @@ it.each([
it('still builds and uploads cross-compiled Windows template addons on the x64 lane', () => {
const steps = workflow.jobs.persistence.steps
- for (const fragment of ['process-table addons', 'CLI launchers', 'security addons']) {
- const upload = steps.find((step) => step.name?.includes(`Keep the Windows ${fragment}`))
- expect(upload.if).toContain("matrix.os == 'windows-2022'")
- }
const launcher = steps.find((step) => step.uses?.includes('prepare-windows-cli-launcher'))
- expect(launcher.with.arches).toContain("matrix.os == 'windows-2022'")
- expect(launcher.with.arches).toContain("'x64 arm64'")
+ for (const [os, arch, buildTemplate, expectedArches, expectedUpload] of [
+ ['windows-2022', 'X64', true, 'x64 arm64', true],
+ ['windows-2022', 'X64', false, 'x64', false],
+ ['windows-11-arm', 'ARM64', true, 'arm64', false],
+ ['windows-11-arm', 'ARM64', false, 'arm64', false]
+ ]) {
+ for (const hasSecurityBuilder of [true, false]) {
+ const ctx = {
+ inputs: { build_template: buildTemplate },
+ matrix: { os },
+ runner: { arch },
+ hashFiles: () => (hasSecurityBuilder ? 'fixture-builder-hash' : '')
+ }
+ for (const fragment of ['process-table addons', 'CLI launchers', 'security addons']) {
+ const upload = steps.find((step) => step.name?.includes(`Keep the Windows ${fragment}`))
+ expect(runInNewContext(upload.if, ctx), `${os} ${fragment}`).toBe(
+ expectedUpload && (fragment !== 'security addons' || hasSecurityBuilder)
+ )
+ }
+ expect(runInNewContext(launcher.with.arches.slice(3, -2), ctx)).toBe(expectedArches)
+ }
+ }
})
diff --git a/config/scripts/node-server-native-compat-scope.test.mjs b/config/scripts/node-server-native-compat-scope.test.mjs
index 7adc20ad16b..ff93b416215 100644
--- a/config/scripts/node-server-native-compat-scope.test.mjs
+++ b/config/scripts/node-server-native-compat-scope.test.mjs
@@ -279,37 +279,63 @@ it('checks the cleanup against the actual native build and smoke closure', async
expect(result.nativeCompatibility).toBe(false)
}, 60_000)
-it('limits the extra job guard to glibc 2.17 and preserves unconditional callers', () => {
+it('limits test-only native skip evidence to ordinary pull requests', () => {
const workflow = parse(
readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')
)
- const compat = workflow.jobs.linux_glibc217_compat
- expect(compat.if).toContain("needs.changes.outputs.native_compatibility != 'false'")
- expect(compat.if).toContain(
- "github.event_name != 'pull_request' || inputs.build_template || inputs.ref != ''"
- )
- for (const job of [
- workflow.jobs.persistence,
- workflow.jobs.linux_glibc_floor,
- workflow.jobs.linux_musl
- ]) {
- expect(job.if).not.toContain('native_compatibility')
- }
const scope = workflow.jobs.changes.steps.find((step) => step.id === 'scope')
const graph = workflow.jobs.changes.steps.find((step) => step.id === 'graph')
expect(scope.run).toContain('git diff --raw --no-renames --no-abbrev -z HEAD^1 HEAD')
for (const step of [scope, graph]) {
- expect(step.env.ALLOW_TEST_ONLY_NATIVE_SKIP).toBe(
- "${{ github.event_name == 'pull_request' && !inputs.build_template && inputs.ref == '' }}"
- )
+ const allowSkip = compileAggregateExpression(step.env.ALLOW_TEST_ONLY_NATIVE_SKIP, [
+ 'github',
+ 'inputs'
+ ])
+ for (const [event, template, ref, expected] of [
+ ['pull_request', false, '', true],
+ ['push', false, '', false],
+ ['schedule', false, '', false],
+ ['workflow_dispatch', false, '', false],
+ ['workflow_call', false, '', false],
+ ['pull_request', true, '', false],
+ ['pull_request', false, 'refs/tags/v1', false]
+ ]) {
+ expect(
+ allowSkip({
+ github: { event_name: event },
+ inputs: { build_template: template, ref }
+ }).coerceString()
+ ).toBe(String(expected))
+ }
expect(step.run).toContain('--pull-request --diff-paths "$RUNNER_TEMP/node-server-native-diff"')
}
+ for (const name of ['persistence', 'linux_glibc_floor', 'linux_musl']) {
+ const eligible = compileAggregateExpression(workflow.jobs[name].if, [
+ 'needs',
+ 'github',
+ 'inputs'
+ ])
+ for (const native of ['true', 'false']) {
+ expect(
+ eligible({
+ github: { event_name: 'pull_request', event: { pull_request: { draft: false } } },
+ inputs: { build_template: false, ref: '' },
+ needs: {
+ changes: {
+ outputs: { should_run: 'true', qualification: 'true', native_compatibility: native }
+ },
+ mobile_web_bundle: { result: 'success' }
+ }
+ }).coerceString()
+ ).toBe('true')
+ }
+ }
expect(workflow.on).toHaveProperty('workflow_dispatch')
expect(workflow.on).toHaveProperty('workflow_call')
expect(workflow.on.schedule).toHaveLength(1)
})
-it('builds server glibc slots on glibc 2.28 and the compat slot on glibc 2.17 (design D6)', () => {
+it('configures server glibc 2.28 slots and the glibc 2.17 compatibility lane', () => {
const workflow = parse(
readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')
)
@@ -329,13 +355,6 @@ it('builds server glibc slots on glibc 2.28 and the compat slot on glibc 2.17 (d
const compat = workflow.jobs.linux_glibc217_compat
expect(compat.needs).toBe('changes')
- expect(compat.if).toContain(
- floor.if.replace("needs.mobile_web_bundle.result == 'success' && ", '').slice(0, -3)
- )
- expect(compat.if).toContain("needs.changes.outputs.native_compatibility != 'false'")
- expect(compat.if).toContain(
- "github.event_name != 'pull_request' || inputs.build_template || inputs.ref != ''"
- )
expect(runInNewContext(compat['runs-on'].slice(3, -2), { inputs: { fast_runners: false } })).toBe(
'ubuntu-22.04'
)
diff --git a/config/scripts/node-server-packaged-chat-selection.test.mjs b/config/scripts/node-server-packaged-chat-selection.test.mjs
index d8198c8454a..09f13cb1f18 100644
--- a/config/scripts/node-server-packaged-chat-selection.test.mjs
+++ b/config/scripts/node-server-packaged-chat-selection.test.mjs
@@ -14,7 +14,7 @@ it.each([
expect((await classifyNodeServerChanges([file], async () => new Set())).shouldRun).toBe(true)
})
-it('runs a real structured chat on Linux from the built desktop template', () => {
+it('configures Linux packaged-chat verification after building the desktop template', () => {
const workflow = parse(readFileSync('.github/workflows/node-server-tests.yml', 'utf8'))
const steps = workflow.jobs.persistence.steps
const chat = steps.find((step) =>
diff --git a/config/scripts/node-server-release-parallelism.test.mjs b/config/scripts/node-server-release-parallelism.test.mjs
index ce63ba332d7..5ced45b4a05 100644
--- a/config/scripts/node-server-release-parallelism.test.mjs
+++ b/config/scripts/node-server-release-parallelism.test.mjs
@@ -94,11 +94,13 @@ it('prepares template dependencies before waiting for every qualification lane',
it('avoids template download-cache transfers while retaining native and verification caches', () => {
const install = persistence.steps.find((step) => step.id === 'dependencies')
- expect(install.with['native-runtime']).toContain("runner.os == 'Windows' && 'node'")
expect(install.with['cache-pnpm-verification']).toBeUndefined()
expect(install.with['persist-native-cache']).toBeUndefined()
const source = install.with['cache-pnpm-store'].slice(3, -2)
for (const os of ['Linux', 'macOS', 'Windows']) {
+ expect(runInNewContext(install.with['native-runtime'].slice(3, -2), { runner: { os } })).toBe(
+ os === 'Windows' ? 'node' : 'none'
+ )
for (const buildTemplate of [true, false]) {
expect(
runInNewContext(source, {
@@ -128,7 +130,7 @@ it.each(['persistence', 'linux_glibc_floor', 'linux_musl'])(
}
)
-it('prepares every native lane and builds with the shared page', () => {
+it('configures native preparation before shared-page download and unconditional cleanup', () => {
for (const name of ['persistence', 'linux_glibc_floor', 'linux_musl']) {
const job = workflow.jobs[name]
const download = job.steps.findIndex((step) => step.with?.name === 'orcad-mobile-web-bundle')
@@ -143,17 +145,6 @@ it('prepares every native lane and builds with the shared page', () => {
expect(job.permissions).toEqual({ contents: 'read' })
}
const alpine = workflow.jobs.linux_musl.steps
- const prepare = alpine.find((step) => step.name === 'Prepare native Alpine artifact')
- const verify = alpine.find(
- (step) => step.name === 'Verify native Alpine artifact and persistence'
- )
const cleanup = alpine.find((step) => step.name === 'Clean up the Alpine qualification container')
- expect(prepare.run).toContain('mkdir -p out/mobile-web')
- expect(prepare.run).toContain('--detach --name orcad-alpine')
- expect(prepare.run).toContain('docker exec -i orcad-alpine')
- expect(prepare.run).not.toContain('pnpm build:orcad\n')
- expect(verify.run).toContain('docker exec -i orcad-alpine')
- expect(verify.run).toContain('pnpm build:orcad\n')
- expect(verify.run).toContain('pnpm test:node-server --artifact')
expect(cleanup.if).toBe('always()')
})
diff --git a/docs/audits/test-value/README.md b/docs/audits/test-value/README.md
index a48a7ac3708..e93850fa4b8 100644
--- a/docs/audits/test-value/README.md
+++ b/docs/audits/test-value/README.md
@@ -25,10 +25,10 @@ Completion requires no unreviewed or stale test files, no unresolved support/scr
| Area | Reviewer | Next batch |
| ---------------------------------------------------------- | -------------- | -------------------------------- |
| `cloud/` | `audit_cloud` | Reconciled at batch 6 checkpoint |
-| `src/main/acp/` | `audit_cloud` | `main-0001` (proposal) |
-| `config/` | `audit_config` | `config-0007` (read-only) |
+| `src/main/acp/` | `audit_cloud` | Continue after `main-0001` |
+| `config/` | `audit_config` | Continue after `config-0007` |
| `mobile/` | `audit_mobile` | Continue after `mobile-0006` |
-| Remaining `src/`, `native/`, `tests/`, `.github/`, `docs/` | root | Continue after `root-0065` |
+| Remaining `src/`, `native/`, `tests/`, `.github/`, `docs/` | root | Continue after `root-0071` |
Ownership is disjoint. Within an area, continue in tracked path order after the last batch; explicitly include nonstandard/inline cases and support candidates before closing the area.
@@ -50,74 +50,80 @@ Batch validation lives in `reviews/--validation.json`. Local log pa
[PR #32498](https://github.com/stablyai/orca/pull/32498) merged another 184 original files and 1,692 case records, plus four separately enumerated mobile fixture controls and two supplemental Cloud tooling-manifest reviews. Its 59 changed test/support files removed 60 net lines. All checks and the full PR aggregate passed; squash commit `5d32f372e76983b6436d5700ce688990662e7243`. One superseding review covered all 12 current unit-selection declarations (25 expanded cases) after an upstream change.
-The next batch adds 150 original files and 1,228 case records, plus two Cloud manifest re-reviews and two upstream CI re-reviews with 20 case records and 93 explicit parameter inputs. Its 82 changed test/support files remove 625 net lines, including four obsolete benchmarks and two private mobile suites whose distinct controls transferred into passing actual-host/public-reader cases. Mobile separately records 315 domain rows and 15 runtime traversal policies; config records 182 explicit controls and 536 input occurrences. These source review counts are not runtime test totals.
+[PR #32576](https://github.com/stablyai/orca/pull/32576) merged another 150 original files and 1,228 case records, plus two Cloud manifest re-reviews and two upstream CI re-reviews with 20 case records and 93 explicit parameter inputs. Its 82 changed test/support files removed 625 net lines, including four obsolete benchmarks and two private mobile suites whose distinct controls transferred into passing actual-host/public-reader cases. Mobile separately records 315 domain rows and 15 runtime traversal policies; config records 182 explicit controls and 536 input occurrences. Its full PR aggregate and all applicable checks passed; squash commit `633da07af5f82659641870677753d378c1ee5c65`.
-At this checkpoint, 1,020 present files are reviewed, 15 are removed, none are stale and 15,945 candidates remain pending. Cloud runner/workflow mapping is reconciled at its pinned checkpoint; repository-wide reconciliation and the remaining candidates are still required.
+The current batch adds 117 original files and 767 case records: 16 CLI files, 51 ACP test/support files and 50 config files. It checks actual CLI receipts, retry deadlines and headless recovery admission; ACP lifecycle, child cleanup and recorded-response boundaries; mobile web actions and CI admission conditions. Duplicate or redundant assertions are removed while distinct controls transfer to retained cases. Upstream re-reviews preserve the existing process-host and CLI controls and repair cache admission and exact capped-output assertions. Source review counts are not runtime test totals.
+
+At this checkpoint, 1,137 present files are reviewed, 15 are removed, none are stale and 15,832 candidates remain pending. The 47 superseding records cover 46 distinct files, including a second cache review after Windows 2025 warming changed upstream. Cloud runner/workflow mapping is reconciled at its pinned checkpoint; repository-wide reconciliation and the remaining candidates are still required.
Further completed review records:
-| Batch | Files | Case records | Main decisions |
-| ---------------------- | ----------------: | -----------: | ------------------------------------------------------------------------------------------------------------------------- |
-| `root-0001` | 14 | 101 | Repair observer reset/readiness; trim allocator and environment-only checks. |
-| `root-0002` | 20 | 87 | Exercise installed link callbacks; consolidate cache checks; remove a conditional no-op test. |
-| `root-0003` | 6 | 40 | Classify Windows fixtures and standalone cases; retain native clipboard integration; trim exact traversal counts. |
-| `root-0004` | 15 | 101 | Remove source-string and capability-only checks; observe pacing in actual mouse delivery. |
-| `root-0005` | 4 | 32 | Retain real Windows argument, filesystem and delayed tree-termination boundaries. |
-| `root-0006` | 1 | 14 | Retain storage lease ownership, generation conflicts and clock-driven credential caching. |
-| `mobile-0002` | 50 | 283 | Consolidate repeated mounts and inventories; fix action routing and deferred SSH assertions. |
-| `config-0002` | 50 | 375 | Trim copied policies; fix vacuous assertions and nested Bash fixture isolation. |
-| `cloud-0002` | 50 | 449 | Use independent authorization inputs and durable phone state; observe scoped locks and clean migration fixtures. |
-| `root-0007` | 3 | 22 | Trim action/docs inventories; test actual hostile formatter inputs under a VM deadline. |
-| `root-0008` | 5 | 5 | Classify filesystem, socket and task retention proofs; distinguish measurements from assertions. |
-| `root-0009` | 5 | 6 | Preserve archived browser lifecycle and source-graph proofs with explicit drift limits. |
-| `root-0010` | 4 | 6 | Preserve actual Monaco/store lifetime proof and its dependency/source fences. |
-| `root-0011` | 2 | 10 | Correct a chunk-size test's memory claim; classify the historical history-window driver. |
-| `root-0012` | 8 | 96 | Preserve independent full-reader oracle and every manual parity/growth/allocation/verifier control. |
-| `root-0013` | 1 re-review | 7 | Recheck the upstream compiler-gate change; all seven actual build cases pass. |
-| `mobile-0003` | 50 | 315 | Remove copied inventories; exercise real editor fallback, discard target and hardware-back delivery. |
-| `config-0003` | 50 | 328 | Use actual file matching, generated versions and Git checkout bytes; require real GC/canvas paths. |
-| `cloud-0003` | 53 | 400 | Exercise batch renewal, actual replay/SQL, scoped locks, pagination and deterministic transaction errors. |
-| `root-0014` | 2 | 23 | Classify acknowledged retirement and distinguish memory rollback from disk-failure evidence. |
-| `root-0015` | 3 | 11 | Preserve prompt-retention groups and historical source fences; count WeakRefs as objects. |
-| `root-0016` | 2 | 50 | Review Crashpad parity cases and driver controls with explicit package/source drift limits. |
-| `root-0017` | 1 | 8 | Classify daemon late-exit scenarios across both historical variants. |
-| `root-0018` | 4 | 40 | Review shared-owner lifecycle cycles and fixed-source guards. |
-| `root-0019` | 1 | 3 | Reproduce current real loopback stream pause, drain and unpause behavior. |
-| `root-0020` | 4 | 23 | Classify empty-delta controls and archived dependency fences. |
-| `root-0021` | 2 | 12 | Retain GitLab known-host behavior with explicit reversepatch drift limits. |
-| `root-0022` | 1 | 2 | Classify hydration phases against the retired source boundary. |
-| `root-0023` | 1 | 2 | Classify legacy-import phases and baseline-transform rejection. |
-| `root-0024` | 1 | 2 | Preserve log-tail proof phases and reversepatch guard evidence. |
-| `root-0025` | 4 | 12 | Review native PTY environment fixtures without overwriting historical reports. |
-| `root-0026` | 1 | 6 | Classify nested-repository controls and the historical process-runner limit. |
-| `root-0027` | 4 | 149 | Enumerate OSC133 memory, parity and driver controls with scanner drift limits. |
-| `root-0028` | 2 | 5 | Review pending runtime-close incarnations through real host close with controlled ports. |
-| `root-0029` | 2 | 6 | Review split-close daemon socket/history-lock scenarios and loader fences. |
-| `root-0030` | 5 | 9 | Review plugin-uninstall scenarios, loaders and measured WeakRef limits. |
-| `root-0031` | 3 | 47 | Enumerate plugin-worker output variants and parity/CRLF controls. |
-| `root-0032` | 1 | 12 | Run all current PTY-detector behavior combinations; report heap measurements separately. |
-| `root-0033` | 3 | 21 | Classify queued-graph generated cases, real socket/store fixture and retired module. |
-| `root-0034` | 1 | 16 | Classify retained-text measurements without inventing parity/cap/heap assertions. |
-| `root-0035` | 5 | 22 | Review RPC queue lifetime/resolver controls while preserving historical reports. |
-| `root-0036` | 1 | 3 | Reproduce 1,000-request late-cancellation cleanup in the current VM proof. |
-| `root-0037` | 1 re-review | 9 | Recheck upstream conservative import resolution; all 22 expanded tests pass. |
-| `cloud-0004` | 50 | 347 | Exercise commit revalidation, refreshed leases, scoped locks and deterministic telemetry; trim copied SQL. |
-| `config-0004` | 50 | 33 | Keep the archive present for dependency protection; validate real benchmark routing and committed rows. |
-| `mobile-0004` | 50 | 240 | Await real delayed SSH/hydration and media replies; trim copied native/schema inventories. |
-| `root-0038–0050` | 27 | 268 | Classify historical proofs, fixtures and source fences; run current session-search writer retention proof. |
-| `root-0051` | 4 | 53 | Trim copied aliases; retain discovery commands and sanitized host/transcript values. |
-| `root-0052` | 4 | 63 | Verify automation hosts within identified rows and retain legacy output. |
-| `root-0053` | 6 | 96 | Keep browser dispatch/version boundaries; verify actual ordered paging identities. |
-| `root-0054` | 3 | 363 | Trim duplicate suggestions; independently enumerate registry aliases. |
-| `cloud-0005` | 40 | 346 | Observe automatic flush and actual blackbox timing; retain durable eviction identities and independent proof bytes. |
-| `config-0005` | 50 | 201 | Execute actual watchdog and localization shell; trim copied inventories and optional no-op case. |
-| `config-0005-rereview` | 1 re-review | 12 | Retain full selection for shared runtime inputs and current conservative planning boundaries. |
-| `mobile-0005` | 50 | 302 | Hold real stale callbacks, stage media bytes before disconnect and verify deferred action delivery. |
-| `root-0055–0065` | 34 | 458 | Verify exact quoting, exported bytes, offline admission, dispatch identities and independent shutdown deadlines. |
-| `config-0006` | 52 | 203 | Replace copied browser controls with real clipboard, held-press and editor disposal; remove four obsolete benchmarks. |
-| `config-0006-rereview` | 2 re-reviews | 20 | Retain current cache sharing across runner pools and every conservative TypeScript input-consumer row. |
-| `mobile-0006` | 51 | 566 | Exercise initialized host admission, occupancy, audio races and chunk refusal; transfer private controls before deletion. |
-| `cloud-0006` | 13 + 2 re-reviews | 0 | Reconcile package, runner, workflow, fixture provenance and inline smoke controls without inventing runtime passes. |
+| Batch | Files | Case records | Main decisions |
+| ---------------------- | ----------------: | -----------: | ------------------------------------------------------------------------------------------------------------------------------ |
+| `root-0001` | 14 | 101 | Repair observer reset/readiness; trim allocator and environment-only checks. |
+| `root-0002` | 20 | 87 | Exercise installed link callbacks; consolidate cache checks; remove a conditional no-op test. |
+| `root-0003` | 6 | 40 | Classify Windows fixtures and standalone cases; retain native clipboard integration; trim exact traversal counts. |
+| `root-0004` | 15 | 101 | Remove source-string and capability-only checks; observe pacing in actual mouse delivery. |
+| `root-0005` | 4 | 32 | Retain real Windows argument, filesystem and delayed tree-termination boundaries. |
+| `root-0006` | 1 | 14 | Retain storage lease ownership, generation conflicts and clock-driven credential caching. |
+| `mobile-0002` | 50 | 283 | Consolidate repeated mounts and inventories; fix action routing and deferred SSH assertions. |
+| `config-0002` | 50 | 375 | Trim copied policies; fix vacuous assertions and nested Bash fixture isolation. |
+| `cloud-0002` | 50 | 449 | Use independent authorization inputs and durable phone state; observe scoped locks and clean migration fixtures. |
+| `root-0007` | 3 | 22 | Trim action/docs inventories; test actual hostile formatter inputs under a VM deadline. |
+| `root-0008` | 5 | 5 | Classify filesystem, socket and task retention proofs; distinguish measurements from assertions. |
+| `root-0009` | 5 | 6 | Preserve archived browser lifecycle and source-graph proofs with explicit drift limits. |
+| `root-0010` | 4 | 6 | Preserve actual Monaco/store lifetime proof and its dependency/source fences. |
+| `root-0011` | 2 | 10 | Correct a chunk-size test's memory claim; classify the historical history-window driver. |
+| `root-0012` | 8 | 96 | Preserve independent full-reader oracle and every manual parity/growth/allocation/verifier control. |
+| `root-0013` | 1 re-review | 7 | Recheck the upstream compiler-gate change; all seven actual build cases pass. |
+| `mobile-0003` | 50 | 315 | Remove copied inventories; exercise real editor fallback, discard target and hardware-back delivery. |
+| `config-0003` | 50 | 328 | Use actual file matching, generated versions and Git checkout bytes; require real GC/canvas paths. |
+| `cloud-0003` | 53 | 400 | Exercise batch renewal, actual replay/SQL, scoped locks, pagination and deterministic transaction errors. |
+| `root-0014` | 2 | 23 | Classify acknowledged retirement and distinguish memory rollback from disk-failure evidence. |
+| `root-0015` | 3 | 11 | Preserve prompt-retention groups and historical source fences; count WeakRefs as objects. |
+| `root-0016` | 2 | 50 | Review Crashpad parity cases and driver controls with explicit package/source drift limits. |
+| `root-0017` | 1 | 8 | Classify daemon late-exit scenarios across both historical variants. |
+| `root-0018` | 4 | 40 | Review shared-owner lifecycle cycles and fixed-source guards. |
+| `root-0019` | 1 | 3 | Reproduce current real loopback stream pause, drain and unpause behavior. |
+| `root-0020` | 4 | 23 | Classify empty-delta controls and archived dependency fences. |
+| `root-0021` | 2 | 12 | Retain GitLab known-host behavior with explicit reversepatch drift limits. |
+| `root-0022` | 1 | 2 | Classify hydration phases against the retired source boundary. |
+| `root-0023` | 1 | 2 | Classify legacy-import phases and baseline-transform rejection. |
+| `root-0024` | 1 | 2 | Preserve log-tail proof phases and reversepatch guard evidence. |
+| `root-0025` | 4 | 12 | Review native PTY environment fixtures without overwriting historical reports. |
+| `root-0026` | 1 | 6 | Classify nested-repository controls and the historical process-runner limit. |
+| `root-0027` | 4 | 149 | Enumerate OSC133 memory, parity and driver controls with scanner drift limits. |
+| `root-0028` | 2 | 5 | Review pending runtime-close incarnations through real host close with controlled ports. |
+| `root-0029` | 2 | 6 | Review split-close daemon socket/history-lock scenarios and loader fences. |
+| `root-0030` | 5 | 9 | Review plugin-uninstall scenarios, loaders and measured WeakRef limits. |
+| `root-0031` | 3 | 47 | Enumerate plugin-worker output variants and parity/CRLF controls. |
+| `root-0032` | 1 | 12 | Run all current PTY-detector behavior combinations; report heap measurements separately. |
+| `root-0033` | 3 | 21 | Classify queued-graph generated cases, real socket/store fixture and retired module. |
+| `root-0034` | 1 | 16 | Classify retained-text measurements without inventing parity/cap/heap assertions. |
+| `root-0035` | 5 | 22 | Review RPC queue lifetime/resolver controls while preserving historical reports. |
+| `root-0036` | 1 | 3 | Reproduce 1,000-request late-cancellation cleanup in the current VM proof. |
+| `root-0037` | 1 re-review | 9 | Recheck upstream conservative import resolution; all 22 expanded tests pass. |
+| `cloud-0004` | 50 | 347 | Exercise commit revalidation, refreshed leases, scoped locks and deterministic telemetry; trim copied SQL. |
+| `config-0004` | 50 | 33 | Keep the archive present for dependency protection; validate real benchmark routing and committed rows. |
+| `mobile-0004` | 50 | 240 | Await real delayed SSH/hydration and media replies; trim copied native/schema inventories. |
+| `root-0038–0050` | 27 | 268 | Classify historical proofs, fixtures and source fences; run current session-search writer retention proof. |
+| `root-0051` | 4 | 53 | Trim copied aliases; retain discovery commands and sanitized host/transcript values. |
+| `root-0052` | 4 | 63 | Verify automation hosts within identified rows and retain legacy output. |
+| `root-0053` | 6 | 96 | Keep browser dispatch/version boundaries; verify actual ordered paging identities. |
+| `root-0054` | 3 | 363 | Trim duplicate suggestions; independently enumerate registry aliases. |
+| `cloud-0005` | 40 | 346 | Observe automatic flush and actual blackbox timing; retain durable eviction identities and independent proof bytes. |
+| `config-0005` | 50 | 201 | Execute actual watchdog and localization shell; trim copied inventories and optional no-op case. |
+| `config-0005-rereview` | 1 re-review | 12 | Retain full selection for shared runtime inputs and current conservative planning boundaries. |
+| `mobile-0005` | 50 | 302 | Hold real stale callbacks, stage media bytes before disconnect and verify deferred action delivery. |
+| `root-0055–0065` | 34 | 458 | Verify exact quoting, exported bytes, offline admission, dispatch identities and independent shutdown deadlines. |
+| `config-0006` | 52 | 203 | Replace copied browser controls with real clipboard, held-press and editor disposal; remove four obsolete benchmarks. |
+| `config-0006-rereview` | 2 re-reviews | 20 | Retain current cache sharing across runner pools and every conservative TypeScript input-consumer row. |
+| `mobile-0006` | 51 | 566 | Exercise initialized host admission, occupancy, audio races and chunk refusal; transfer private controls before deletion. |
+| `cloud-0006` | 13 + 2 re-reviews | 0 | Reconcile package, runner, workflow, fixture provenance and inline smoke controls without inventing runtime passes. |
+| `root-0066–0071` | 16 | 146 | Observe real CLI receipts, preserve request identities, enforce retry budgets and isolate headless recovery admission. |
+| `main-0001` | 51 | 311 | Exercise ACP lifecycle and cleanup boundaries; transfer duplicate recording controls and independently check response data. |
+| `config-0007` | 50 | 310 | Observe actual mobile web actions, evaluate CI admission conditions and retain independent asset and serializer oracles. |
+| `upstream-0001–0005` | 46 + 1 re-review | 483 | Recheck comment-only CLI changes; evaluate cache admission, require named Windows build steps and observe exact capped output. |
Two production findings are recorded in `reviews/cloud-0005-validation.json`: audit rows added after `stop()` can still persist at the batch threshold, and queue overflow during an in-flight reserve-ledger insert can lose a queued identity. That batch reproduced and recorded them without changing production behavior. Cloud-only relay test/typecheck/lint build the unchanged process-host package before resolving its compiled exports; this prerequisite was validated with generated outputs absent.
diff --git a/docs/audits/test-value/inventory.jsonl b/docs/audits/test-value/inventory.jsonl
index 887a9b02fef..aa9fac14c4e 100644
--- a/docs/audits/test-value/inventory.jsonl
+++ b/docs/audits/test-value/inventory.jsonl
@@ -243,6 +243,7 @@
{"path":"cloud/packages/relay-contract/src/region-correction.test.ts","sha256":"2bc2283532e846e23d76f646a229ce2607aa298364c45054397c4598d21fd901","declarations":5,"signals":["named","declarations"],"status":"reviewed","review":"reviews/cloud-0005.jsonl"}
{"path":"cloud/pnpm-workspace.yaml","sha256":"cc73133e9076d1f8ed3a81e348f21eeddde99c4f17080ceeda3734678e54c287","declarations":0,"signals":[],"status":"reviewed","review":"reviews/cloud-0006.jsonl"}
{"path":"config/ci/windows-ssh-provider/preview-ssh/test-preview-diagnostics.ps1","sha256":"510890d7569f3c94c36c529d3faf06f58a4771c809aadbd44c203dc483905e76","declarations":0,"signals":["auxiliary"],"status":"reviewed","review":"reviews/config-0004.jsonl"}
+{"path":"config/ci/wsl-lifecycle/test-wsl-lifecycle-command.ps1","sha256":"9940bafa4cf1c49a942d3124bab44392c55f1b48b947d23378b1101a992926b5","declarations":0,"signals":["auxiliary"],"status":"unreviewed"}
{"path":"config/docker/daemon-shutdown-descendants/fixture.cjs","sha256":"e2b08adaf1eba269f447e87c0c2e2d7b8e0ff19affb73804c0f60adbd3559539","declarations":0,"signals":["auxiliary"],"status":"reviewed","review":"reviews/config-0004.jsonl"}
{"path":"config/scripts/__fixtures__/node-pty-1.1.0-unix-pty.cc","sha256":"5e1005d6bdcfbe97b486ee415419fe7adae99035047f07340fbad36419e0bae6","declarations":0,"signals":["auxiliary"],"status":"reviewed","review":"reviews/config-0004.jsonl"}
{"path":"config/scripts/adhoc-build-pinned-commit.test.mjs","sha256":"9dac5bf5e5285a462285c2f4c83c596232067a20589d3692096aebb4615837b8","declarations":3,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0001.jsonl"}
@@ -330,7 +331,7 @@
{"path":"config/scripts/ci-background-steps.test.mjs","sha256":"b255ef88d61705dfd39e791d7bcfc26d0a89f6fcae865f59a45a4e38f8af06ae","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0002.jsonl"}
{"path":"config/scripts/ci-closed-pr-caches.test.mjs","sha256":"b7e7424806a627dc0cbcc9c4629a19f8fa792ef2654e0701b5a54d49065fcd7c","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0002.jsonl"}
{"path":"config/scripts/ci-closed-pr-cancellation.test.mjs","sha256":"2ae7f7c46e4d4207eadd13107db7a52419e4dcbd72e1e89ade2f9d22334386a3","declarations":13,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0002.jsonl"}
-{"path":"config/scripts/ci-dependency-download-cache.test.mjs","sha256":"a7d80bbf8c30cad499696ea2ce3cbaf2f02f4b96ef8f7bab782c6cd980fb98a4","declarations":17,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0006-rereview.jsonl"}
+{"path":"config/scripts/ci-dependency-download-cache.test.mjs","sha256":"0aceff18ad0b1c5061d40061b7f3a8dda92ad18919d20c724ca7a12088ccbd66","declarations":18,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0005.jsonl"}
{"path":"config/scripts/ci-draft-pr-admission.test.mjs","sha256":"1dc53d7676458df625afd2905eb96e548a33497908ca3b9d4dc604541b9364f3","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0002.jsonl"}
{"path":"config/scripts/ci-e2e-failure-summary.test.mjs","sha256":"e8d3d8f84c3bb3847349c9688b38ceabbf3d4a8f53e24ad72939041c131de148","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0002.jsonl"}
{"path":"config/scripts/ci-e2e-job-selection.test.mjs","sha256":"6f1ca2be85f2f2f0052078b452f95b8a307c5083be9bd0146bafcda66130f2b0","declarations":19,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0002.jsonl"}
@@ -348,7 +349,7 @@
{"path":"config/scripts/ci-unit-exclusion-coverage.test.mjs","sha256":"168ee39a012a696f3194431343a1ad65f5383953e1257be5bc1f477cf656d971","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0002.jsonl"}
{"path":"config/scripts/ci-unit-indirect-inputs.test.mjs","sha256":"889522b7c214e3bc9fbb316fb9f10b63e76dfbe877be3656ef65606e96e90cf9","declarations":3,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0006-rereview.jsonl"}
{"path":"config/scripts/ci-unit-module-cache-contents.test.mjs","sha256":"f89bd81882148559661a1d395103f50551a1bd90e5bf21d3ab9a375a7d3fda46","declarations":11,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0002.jsonl"}
-{"path":"config/scripts/ci-unit-module-cache.test.mjs","sha256":"33ec6760add2837e45c4d55e6b984b45e6b69937b4a434f1bd012cb2c3bcde19","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0002.jsonl"}
+{"path":"config/scripts/ci-unit-module-cache.test.mjs","sha256":"95732ce3f71161193222becceded03c79a24a72900356897d343952b2fa0637d","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0001.jsonl"}
{"path":"config/scripts/ci-unit-plan.test.mjs","sha256":"1a16e86d7f12d5224e27ba96f021cbb1c6d2765e8143ae0ead98b7ebb55f268c","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0002.jsonl"}
{"path":"config/scripts/ci-unit-selection-review.test.mjs","sha256":"bdd9e4c597b62514b7daa390764e67d3911f8d53763799ddea4bb6a4bed46d31","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0002.jsonl"}
{"path":"config/scripts/ci-unit-selection.test.mjs","sha256":"f4b8299b419d02ab5a43449369d601f2574323fe9726efd39e1706def6d65bdf","declarations":12,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0005-rereview.jsonl"}
@@ -523,58 +524,58 @@
{"path":"config/scripts/mobile-web-app/mobile-web-app-screencast-lane-grant.test.mjs","sha256":"b92ed0dbd880694610e1f31e9090ae0f4a5726a495f9a749598912c026ab4c65","declarations":3,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0006.jsonl"}
{"path":"config/scripts/mobile-web-app/mobile-web-app-session-dictation-capture.test.mjs","sha256":"32acdb5e5780066828979eb591f9710ae5c1bb8c81ee245f605da2df70e5245e","declarations":6,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0006.jsonl"}
{"path":"config/scripts/mobile-web-app/mobile-web-app-session-external-links.test.mjs","sha256":"0e3aefe21ace973142c21c5ea1bb66567e6533901865194371ef8cc586df8d1a","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0006.jsonl"}
-{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","sha256":"1390c983b2c9a014ab9eff2c166a8e43eb3e893000c57ff01568a1d6a1242942","declarations":7,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","sha256":"e2ccef36da2ee3e2e71ec69af9702e599332dd05931b3492ce7a0ee96c0ebb24","declarations":8,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","sha256":"f14c7b227f7c149c9b6adb6a845747f5d76a239834fb2dd59905fe78c6004d37","declarations":5,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","sha256":"905a52b32b2789bc7c89ba9955bd48b1774e1c5a3ae341d4d8d5d4176b66d953","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","sha256":"4290104097470d5b2dafb4006065504e3810a4c4099dff5fd5bd4123b05e60fb","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","sha256":"d5cabd18489360f180518a20341965f2b18ebe5b6bc18351fbd035ae07e13690","declarations":5,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","sha256":"66cd644a6bc773693f62577e0297ef3fcffb28f4eb4239af332fa916e371f1e5","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","sha256":"4c986c4f0a441e406b23249d12dad4692639dd5891e1887fe16042aac7588de4","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06","declarations":18,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79","declarations":7,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","sha256":"210ad8f33041d59def8a6abce804d8c6c7882a9c308a8943712bc8dc68548c5a","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","sha256":"ac1d2e0aa5981b93576fc149bf9729bda291d679f59ca3eb12fbd98a2230c334","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb","declarations":12,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render-fixture.test.mjs","sha256":"fa9840c66987e6dfa004df2c587f104c74b63b1cfa8b09fe5bf13506ed5a5cbe","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","sha256":"db68d061cefd733afd2dcd1b74183c1c81390fd49d0cce5ca676b7cce32a0490","declarations":12,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","sha256":"86eeaf78678841e574c3a096b1b6bee3fd2bd6f0625c415a181b04dcf50b004d","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","sha256":"30200c6e1a131423c6b065761ecd4deee282c6c74d2034aeab5055c20e26ed06","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","sha256":"cb2b2b9f42b17cdcf0095b9e85be057f3c1a585e22fa28b730351c740ec49787","declarations":17,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489","declarations":20,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","sha256":"2f3706dbdbceaaf19a7f625274e13ad110d02215c9134aa8c335df78150ac3fd","declarations":18,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","sha256":"42a74010b51c7f8b92056073140bd4237d963423443eba8c28de1c2ec0a7b393","declarations":6,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","sha256":"2be0f5134cfdef0a2b81f1c669e4f2d43e0a580c51613b3806d23ac244b35fbe","declarations":5,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","sha256":"905a52b32b2789bc7c89ba9955bd48b1774e1c5a3ae341d4d8d5d4176b66d953","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","sha256":"4290104097470d5b2dafb4006065504e3810a4c4099dff5fd5bd4123b05e60fb","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","sha256":"1fd979a2d977549c81034d71de182808cd33de141ab58f006d4d2b841847b7d6","declarations":5,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","sha256":"66cd644a6bc773693f62577e0297ef3fcffb28f4eb4239af332fa916e371f1e5","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06","declarations":18,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","sha256":"d81f3c4f60d384a64b77f93974788955169e27e4be0557379a40fd21423f0344","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e","declarations":3,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","sha256":"ac1d2e0aa5981b93576fc149bf9729bda291d679f59ca3eb12fbd98a2230c334","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb","declarations":12,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render-fixture.test.mjs","sha256":"fa9840c66987e6dfa004df2c587f104c74b63b1cfa8b09fe5bf13506ed5a5cbe","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514","declarations":12,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","sha256":"86eeaf78678841e574c3a096b1b6bee3fd2bd6f0625c415a181b04dcf50b004d","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","sha256":"30200c6e1a131423c6b065761ecd4deee282c6c74d2034aeab5055c20e26ed06","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636","declarations":17,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489","declarations":20,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd","declarations":17,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-held-press-probe-routes.mjs","sha256":"b8362b9a2fca7e34faffc2e7e51bc9d8c3a54fbe70d69589dcfe8cc2bcff7de6","declarations":0,"signals":[],"status":"reviewed","review":"reviews/config-0006-support.jsonl"}
-{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","sha256":"e92e8263a3c1984c346e959d1721a6fc305a5bfcbf19087b6b46ca6b506ea42e","declarations":15,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","sha256":"a4113c1b7da0e54c2bed9edcd2623228cbb431e5ae368045de46344c40b6d85d","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8","declarations":15,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","sha256":"31e7554a7f8ba2539c662939bc3dc90c22b304df3fc54729add1ac8b239966d7","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-render-harness.mjs","sha256":"0ea167d732af43a82188e6b2d1046a214a71256491ab568e536b867de1715cfb","declarations":0,"signals":[],"status":"reviewed","review":"reviews/config-0006-support.jsonl"}
-{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","sha256":"90822ee3fede144b3f71f91791d03d9b2fda3553d7482a2fde609d33c91dba52","declarations":7,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","sha256":"65b7420795a187d02a1cbe68bcff97f29e5c5f30db7442da8ff5d1ca4ecc10d2","declarations":5,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-page-routes.test.mjs","sha256":"c06d42fe3e12d34dfbf34e68ac701d44104a6b95c9cf7c5521319c68846141a5","declarations":7,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","sha256":"26349aebb23ffaf1973c933b275226670e0ee6a026779d2d744a4ff219854570","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","sha256":"f4c07a0a224bdf4906e58f32865504d82abe5c82e2fd8624da4f61abda97b45b","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/moved-code-normalization-budget.test.mjs","sha256":"d6fc630c192a5ce4537941854f65db48566603bdf441faaff6b0eaf879816bed","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/msbuild-file-tracking.test.mjs","sha256":"bcf96816018d33ee28fd6f5bfcf6fce7619a53badf77e754bec8a33cfb7ad0dc","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/native-build-entry.test.mjs","sha256":"64869360c2335f705bd5f1d5e08bf2f79599a95546a168c83569c22cbbef852c","declarations":12,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","sha256":"adf1ae7a4fffecf80b3190c6e1b92b3a7facb8a3d4c758b0a7a2d1311a588825","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","sha256":"0826d059a193e7f46ce2387a095686e77bd4a78d1f25cd2a041b4890afcbee02","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/native-chat-fold-benchmark-workloads.mjs","sha256":"2e6996889d678c71513e08c820c2b3dc2ae0731764b7133e5f2a88a72fe5f977","declarations":0,"signals":["auxiliary"],"status":"unreviewed"}
-{"path":"config/scripts/native-chat-fold-benchmark.mjs","sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e","declarations":0,"signals":["auxiliary"],"status":"unreviewed"}
-{"path":"config/scripts/native-chat-live-session-benchmark.ts","sha256":"3f1418b842516a12adec22e490692aa9de9c21b140f639755810715b258f8aae","declarations":0,"signals":["auxiliary"],"status":"unreviewed"}
-{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","sha256":"fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062","declarations":0,"signals":["auxiliary"],"status":"unreviewed"}
-{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9","declarations":0,"signals":["auxiliary"],"status":"unreviewed"}
-{"path":"config/scripts/node-old-space-limit.test.mjs","sha256":"f69ecc3d9e8e6ee0c398148e36b018e3c2377db7932f33c3c30403693f5acd65","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/node-server-change-scope.test.mjs","sha256":"6b648882f453353bc9e8545ad9a7a656c415c398faef9844f048ad41027a39b1","declarations":26,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/node-server-concurrency.test.mjs","sha256":"6c2e77b12d24ca0a01881aeb2161809d87a003a069648ebe56dfb2906147b6b6","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/node-server-fast-runners.test.mjs","sha256":"4a7fd67a8157d693efe6599252705d2b4914201b17a3066d3a586dca193c4353","declarations":5,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/node-server-native-compat-scope.test.mjs","sha256":"c886f3c8a89a335b8f6d4a5afe46c3093d92c739ce6b040002c0a466687491a3","declarations":17,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","sha256":"10abf8de958de12f7fa4893aa6b1b93c93eb1d9cb4d9d7c23ad54672f230bef6","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/node-server-policy-self-tests.test.mjs","sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566","declarations":10,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/node-server-qualification.test.mjs","sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb","declarations":10,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/node-server-release-parallelism.test.mjs","sha256":"3dd155933c4abc6d48f22adefac52307f8057ebfb622dedc21b979f8324e1e1b","declarations":7,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/nsis-process-check.test.mjs","sha256":"3e98c4a6691c3c3e837e314c4c3873e5dde3029f3466d6173d604304fde9034b","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/orca-dev-bin.test.mjs","sha256":"72e310e8352642bbebc79d7af2d5f1dfc27ef22aeecdee908647554bc6fe8d98","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"config/scripts/orcad-artifact-version.test.mjs","sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","sha256":"2229d8f36576c9d868f1e72c0b905b0507100908bf8c744f4f604da0c97133fd","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c","declarations":5,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-page-routes.test.mjs","sha256":"4948110e497148be21e842e5715cf75bb2218b577cf2fd70f4baf2e345c35445","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","sha256":"26349aebb23ffaf1973c933b275226670e0ee6a026779d2d744a4ff219854570","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","sha256":"719ab15966f01cdb6e217c547371cafc3a1eb65e62f6df639f6d112902803f57","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/moved-code-normalization-budget.test.mjs","sha256":"d6fc630c192a5ce4537941854f65db48566603bdf441faaff6b0eaf879816bed","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/msbuild-file-tracking.test.mjs","sha256":"bcf96816018d33ee28fd6f5bfcf6fce7619a53badf77e754bec8a33cfb7ad0dc","declarations":3,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/native-build-entry.test.mjs","sha256":"64869360c2335f705bd5f1d5e08bf2f79599a95546a168c83569c22cbbef852c","declarations":12,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","sha256":"adf1ae7a4fffecf80b3190c6e1b92b3a7facb8a3d4c758b0a7a2d1311a588825","declarations":3,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","sha256":"50c2448b355145274c7dcc325d6ffe6209b412a49e964ee9969b03ed54b85913","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/native-chat-fold-benchmark-workloads.mjs","sha256":"2e6996889d678c71513e08c820c2b3dc2ae0731764b7133e5f2a88a72fe5f977","declarations":0,"signals":["auxiliary"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/native-chat-fold-benchmark.mjs","sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e","declarations":0,"signals":["auxiliary"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/native-chat-live-session-benchmark.ts","sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27","declarations":0,"signals":["auxiliary"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","sha256":"fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062","declarations":0,"signals":["auxiliary"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9","declarations":0,"signals":["auxiliary"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/node-old-space-limit.test.mjs","sha256":"f69ecc3d9e8e6ee0c398148e36b018e3c2377db7932f33c3c30403693f5acd65","declarations":3,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/node-server-change-scope.test.mjs","sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738","declarations":26,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/node-server-concurrency.test.mjs","sha256":"842ff62c954744c7974f5f6aaf78200774f7177322ccf13c40c02d9c38ea879d","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/node-server-fast-runners.test.mjs","sha256":"a36b60660c42714e03266f22680af13f81bdbfcff1f14a24da62be8df1759047","declarations":5,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/node-server-native-compat-scope.test.mjs","sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342","declarations":17,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","sha256":"d6024bc84409421a72958cd77d9a29ca1e6bb0aee943eb9506ba01913c30c076","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/node-server-policy-self-tests.test.mjs","sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566","declarations":10,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/node-server-qualification.test.mjs","sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb","declarations":10,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/node-server-release-parallelism.test.mjs","sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/nsis-process-check.test.mjs","sha256":"3e98c4a6691c3c3e837e314c4c3873e5dde3029f3466d6173d604304fde9034b","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/orca-dev-bin.test.mjs","sha256":"72e310e8352642bbebc79d7af2d5f1dfc27ef22aeecdee908647554bc6fe8d98","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
+{"path":"config/scripts/orcad-artifact-version.test.mjs","sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/config-0007.jsonl"}
{"path":"config/scripts/orcad-daemon-protocol-crossing.test.mjs","sha256":"7bc40140f435815f5d2cb8c80923d2e2ee39465c2d1489ffe1737bceeed75ecf","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"config/scripts/orcad-e2e-change-scope.test.mjs","sha256":"3cdbd8cbcda4afb7cd905272662a8f7fa7e544d30a0fd7d167348e71844db0f1","declarations":11,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"config/scripts/orcad-entry-build.test.mjs","sha256":"9e9bd77508c756f20b30dc147442c4041b37cf4eec411c79ec38b36419362487","declarations":8,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
@@ -1071,6 +1072,7 @@
{"path":"mobile/src/components/mobile-markdown-preview-placeholder.test.ts","sha256":"5edfbc066a772b09fe02c5aab4010686106eeea39b57bd5e622dc23a5b973c26","declarations":2,"signals":["named","declarations"],"status":"reviewed","review":"reviews/mobile-0003.jsonl"}
{"path":"mobile/src/components/mobile-markdown-selectable.test.tsx","sha256":"5ddbbe0c391aa7b60d54d69347568a6429abb57247171a95a94751bc630eb85a","declarations":3,"signals":["named","declarations"],"status":"reviewed","review":"reviews/mobile-0003.jsonl"}
{"path":"mobile/src/components/mobile-markdown-table.test.tsx","sha256":"722fe0ea49d167b647d79354fec3a97282fd736acf98f6cd45e82f770b6c52ea","declarations":2,"signals":["named","declarations"],"status":"reviewed","review":"reviews/mobile-0003.jsonl"}
+{"path":"mobile/src/components/mobile-markdown-tree.test.ts","sha256":"c94502323ce19c85dab9d78f0456ed0b0bb0aba47d9b9c047ee958c47786130e","declarations":2,"signals":["named","declarations"],"status":"unreviewed"}
{"path":"mobile/src/components/mobile-markdown-visual-lines.test.ts","sha256":"258d48357045d42db0decb7a3beca0528a55660539cc09c0cc7b3876799f3551","declarations":9,"signals":["named","declarations"],"status":"reviewed","review":"reviews/mobile-0003.jsonl"}
{"path":"mobile/src/components/mobile-pr-sidebar-presentation.test.ts","sha256":"eb638cc6ddbfe0ef151ccb416ab9c0f5a08026429eb70e3b853f6421e071dc26","declarations":7,"signals":["named","declarations"],"status":"reviewed","review":"reviews/mobile-0003.jsonl"}
{"path":"mobile/src/components/mobile-rich-markdown-editor-keyboard-inset.test.ts","sha256":"02bb35a7b63b2d0c143d4f02292fe07ebdb5ceea8727117079467ed236f2f823","declarations":3,"signals":["named","declarations"],"status":"reviewed","review":"reviews/mobile-0003.jsonl"}
@@ -2238,83 +2240,83 @@
{"path":"native/wayland-clipboard/x11_test.py","sha256":"22b8dc516c7254f3d9fbe625775661ecd7459362c12640c06b2b70a58313117a","declarations":2,"signals":["named","declarations"],"status":"reviewed","review":"reviews/root-0003.jsonl"}
{"path":"src/cli/agent-context.test.ts","sha256":"65024b1c7de30ef7f6db5085ef5c6a957fc7f7b49b69e6f2b8be692edc850ee9","declarations":9,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0051.jsonl"}
{"path":"src/cli/agent-launch-process.test.ts","sha256":"c508ac82014c308b351e76fabcd148e07f4ae26b3770b3c1c346eb8c962bdf76","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0051.jsonl"}
-{"path":"src/cli/agent-launch-test-fixtures.ts","sha256":"968e3affaa5b285a2a52da6f7d6cc653568e96522d72c0c50d8a581eb56b3b7e","declarations":0,"signals":["auxiliary"],"status":"reviewed","review":"reviews/root-0051.jsonl"}
+{"path":"src/cli/agent-launch-test-fixtures.ts","sha256":"23a6ef61547cd232e1f70a2cc68937dab93c147d13db89c2c240c2ef0056762e","declarations":0,"signals":["auxiliary"],"status":"reviewed","review":"reviews/upstream-0003.jsonl"}
{"path":"src/cli/agent-session-search-format.test.ts","sha256":"a27751c5e397caad57994b635d0a56f8a6532fa8ab491d336b145444ec690ce3","declarations":21,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0051.jsonl"}
{"path":"src/cli/args-repeatable-flags.test.ts","sha256":"da9627c67765ea6f0104356490bae9bfb5a09e76e068ea96d79f9be58fa0d173","declarations":6,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0052.jsonl"}
{"path":"src/cli/args.test.ts","sha256":"89e048061901223f03498118acb0e4f78a8ee1e86dd9821ea8d8e86c190c7496","declarations":36,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0052.jsonl"}
-{"path":"src/cli/automation-format.test.ts","sha256":"4d763109cc1e37a4acf2419aab178e531c2012e5e355d900372005aaaeaef181","declarations":6,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0052.jsonl"}
-{"path":"src/cli/automation-owner-conflict-recovery.test.ts","sha256":"4a30e1bf8ed7c3c0900ee2b2eae7af31a1c0f408bf51f4332b97eaa8f7adf5dd","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0052.jsonl"}
-{"path":"src/cli/automation-runs-paging.test.ts","sha256":"09c50e6a85f8d512941627109ed7d289658e8e944080b35413d0e3c79c0a39b7","declarations":5,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0053.jsonl"}
-{"path":"src/cli/browser-empty-values.test.ts","sha256":"efdf43badf0ce19466a923155c671388ffe566a9c415c9234c0b83c4c3381ae5","declarations":9,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0053.jsonl"}
+{"path":"src/cli/automation-format.test.ts","sha256":"f94a68ef9d94c4f431efa16946959db782f19acc7ca823e2e7140782c45da9ae","declarations":6,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0003.jsonl"}
+{"path":"src/cli/automation-owner-conflict-recovery.test.ts","sha256":"e59897c9945c80dd9fb09176c7bb488e5153e9a24f43951cf0083690db67b92e","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0003.jsonl"}
+{"path":"src/cli/automation-runs-paging.test.ts","sha256":"ba580de6354da7528fb6f5a010890ed06e28fe84ba9252ba038792425c44f005","declarations":5,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0003.jsonl"}
+{"path":"src/cli/browser-empty-values.test.ts","sha256":"eba33dbca800e36fd202f38b586b07fc4884616b2dfb54bdba6a46b7a38d9229","declarations":9,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0003.jsonl"}
{"path":"src/cli/browser.test.ts","sha256":"495d9eab685573afd4c1309196f3eb53c19b3dd82e4b7c304b1dc938bd8ad046","declarations":31,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0053.jsonl"}
{"path":"src/cli/cli-version.test.ts","sha256":"e76a8a6234fc4da7ad4dd3084737fb7d8904f786c12c9cc81073de7b9de941e3","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0053.jsonl"}
{"path":"src/cli/codex-command-classification.test.ts","sha256":"28ed84a761b22a02a04b96ac20734723b552d51b0b3055eb74209b72634e5a34","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0053.jsonl"}
{"path":"src/cli/command-suggestion-budget.test.ts","sha256":"5cb7773be06c44bff47503d62b56176c7bf0c93e7d1f6db10df5e34d4d89559f","declarations":6,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0054.jsonl"}
{"path":"src/cli/command-suggestion-destructive-families.test.ts","sha256":"5b25c18116c98513051344197d0754aa0b062585a1bb18182a2557e78ccbecb6","declarations":9,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0054.jsonl"}
-{"path":"src/cli/command-suggestion.test.ts","sha256":"b2d1f57b3690f497ca3de8043c7d8174830bb9a9fd7576b4420335e35f0a4b14","declarations":13,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0054.jsonl"}
+{"path":"src/cli/command-suggestion.test.ts","sha256":"8879a975bb956b42bca0f76939d9febda22b271801ed1a680a2562496f425113","declarations":13,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0003.jsonl"}
{"path":"src/cli/computer-format.test.ts","sha256":"ea66ceb60345c602a78ce6def3e4c96cbe8d6a928d1a25cfc7df99782d910667","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0055.jsonl"}
{"path":"src/cli/emulator-logcat-format.test.ts","sha256":"76cac0bcc0a26c8baa4aa41d75a8a6716e51f3629abf3a678835fdd0f96ff73b","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0055.jsonl"}
-{"path":"src/cli/execution-host-flag.test.ts","sha256":"c35745714bd499c0bb616067ea4fa85f0433ae3a3b88e5e0822eec92296db239","declarations":41,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0055.jsonl"}
-{"path":"src/cli/format-recovery.test.ts","sha256":"800b8bb2392210266b38bbf992c68cb27b8c780eef4487ee952a1c389a9e71ac","declarations":18,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0055.jsonl"}
+{"path":"src/cli/execution-host-flag.test.ts","sha256":"b69baf15ac20d577efbc493aa6b5b44c9b4263cec3453d0e99d656601ac6f1ca","declarations":41,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0003.jsonl"}
+{"path":"src/cli/format-recovery.test.ts","sha256":"6bc3b85edac47b311c9dcc73a52c553656509b08a305e4027eca6363e63d6c84","declarations":18,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0003.jsonl"}
{"path":"src/cli/format.test.ts","sha256":"cc92322046e66b9bd33f91550b09144a89c2bf0e3720394d831c9fc54beaed11","declarations":23,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0055.jsonl"}
-{"path":"src/cli/handler-group-manifest.test.ts","sha256":"a9ec64b9494598ac27431b496894b3d79f4cd5f68b55d62ded930f45950fa9b7","declarations":6,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0056.jsonl"}
-{"path":"src/cli/handlers/account.test.ts","sha256":"8dd7e1be29923fe2bbe184b214f5c412dcddbcfdc15bdd42a51738a06fc3f44f","declarations":29,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0056.jsonl"}
+{"path":"src/cli/handler-group-manifest.test.ts","sha256":"3c4c8a9954f9be66715233dbb50afac4da93bcfe86b6dc7d2b9ec6e358bbf6ba","declarations":6,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0003.jsonl"}
+{"path":"src/cli/handlers/account.test.ts","sha256":"cbd81595631f4370bf531f41be7af685a7843955a092519cb8fc806692697798","declarations":29,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0004.jsonl"}
{"path":"src/cli/handlers/agent-hooks-load-boundary.test.ts","sha256":"85baaa18854c4e99dd8a3744725193a7dcf70aaa19ddb8868a4b78f0349290a7","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0056.jsonl"}
-{"path":"src/cli/handlers/agent-hooks-prepare-codex-isolated-home.test.ts","sha256":"4b9e1a4c1b81afdcc09e9bf2eb8a9237ebe9f526beaeb0ccbde60348f974bcd1","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0056.jsonl"}
+{"path":"src/cli/handlers/agent-hooks-prepare-codex-isolated-home.test.ts","sha256":"628e9c0c50199a0f00c01561d59e27c1c213f26be1db53652f03b3e0ace245ec","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0004.jsonl"}
{"path":"src/cli/handlers/agent-hooks.test.ts","sha256":"843ab88c596887996edbcd79665a108f191d1730bd79c76f14d2660704fd05e1","declarations":18,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0056.jsonl"}
-{"path":"src/cli/handlers/artifacts.test.ts","sha256":"7a7b13a2fec15908cc2372c553d1e908fcc21b71dd418bd4ff609dd4a91613a5","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0056.jsonl"}
-{"path":"src/cli/handlers/automation-destination-fencing.test.ts","sha256":"38230c6bb888fb5bad6ac9891cf2286e1f3d78fc2352ca638caa1dec6f7b5251","declarations":9,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0057.jsonl"}
-{"path":"src/cli/handlers/automation-owner-fencing.test.ts","sha256":"f836a948dca9ecf91556fd0cb9043bb55e7dcf9d221e3f0947bcef5f075a8d9d","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0057.jsonl"}
+{"path":"src/cli/handlers/artifacts.test.ts","sha256":"ff1c6b667f85779af5d22b0fa25d0959e435d09409d444e4293fd4d9f1942da6","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0004.jsonl"}
+{"path":"src/cli/handlers/automation-destination-fencing.test.ts","sha256":"6518b352f32d3833e699c5d61fb71011861a135fb12c53e35fdf32d5340d59dc","declarations":9,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0004.jsonl"}
+{"path":"src/cli/handlers/automation-owner-fencing.test.ts","sha256":"706f4ef366513a30eec3decbc5ada1c850ddb6a6f14cbbff408b97da90bd4d2d","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0004.jsonl"}
{"path":"src/cli/handlers/computer-action-routing.test.ts","sha256":"9d4c296d5ef776c2abd6905edf7167b8ccb581a754283de928612bec0b65e839","declarations":6,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0058.jsonl"}
-{"path":"src/cli/handlers/computer-action-validation.test.ts","sha256":"695f393fd1c7aa7d3ee243ee6197fc50f0f11f2e9015c554082dce80a6a2fbf3","declarations":16,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0058.jsonl"}
+{"path":"src/cli/handlers/computer-action-validation.test.ts","sha256":"8a0968cf7f8f4d28e351b8847bc133eebb2068e0abfb3e01aa4a5e02bb0b96d6","declarations":16,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0004.jsonl"}
{"path":"src/cli/handlers/computer-state-formatting.test.ts","sha256":"3b747eac8efe50f467fc64bfb163d6bd489faa4a20579a3e8874f7a47ae2ff2f","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0058.jsonl"}
-{"path":"src/cli/handlers/computer.test.ts","sha256":"68aaeddcbe83cece696243fc3a418806009bfb2451777c99d100530d213cb598","declarations":14,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0058.jsonl"}
+{"path":"src/cli/handlers/computer.test.ts","sha256":"dd2bbae68bf0e54bb4cd81a0605cddec253904d591da582e399572f7a04bb276","declarations":14,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0004.jsonl"}
{"path":"src/cli/handlers/connector.test.ts","sha256":"556bbabbf87bd9c7f158bc0a3300c63785ef18992af3863c4fab07332f4a45c0","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0059.jsonl"}
-{"path":"src/cli/handlers/core.test.ts","sha256":"43386ffaf11c2e51ff810664ce3cd1177e775ae0835b2c7cd70ebaa590c8dcf9","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0059.jsonl"}
+{"path":"src/cli/handlers/core.test.ts","sha256":"ac80dd583a0203051c8d090982b94efba1e970d8de79fa02cc4abbed2d114071","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0004.jsonl"}
{"path":"src/cli/handlers/data-account-commands.test.ts","sha256":"6aa6a8c122d30b1ff17a9beab34966432b5e17cc7db25b967668da8151d77d06","declarations":3,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0059.jsonl"}
-{"path":"src/cli/handlers/emulator.test.ts","sha256":"ffb119b7e50ae7b01a374bbe806f874150850b9fd0803c2d790dcac333f32d96","declarations":9,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0059.jsonl"}
-{"path":"src/cli/handlers/file-absolute-paths.test.ts","sha256":"185d3cfb69d4b77a40ebdb09246c1285d96a6dc4c161c6fb81efd7e5226422d2","declarations":18,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0060.jsonl"}
-{"path":"src/cli/handlers/file.test.ts","sha256":"dc526cfff168910f941c6f890a76e8556414e4383dc106fe2f7d4a9f6354b69d","declarations":18,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0060.jsonl"}
+{"path":"src/cli/handlers/emulator.test.ts","sha256":"7ec2653bcb30ecbe379588fdf79485929e874a852a9ab5891fe2699bfc7c9f7a","declarations":9,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0004.jsonl"}
+{"path":"src/cli/handlers/file-absolute-paths.test.ts","sha256":"a944260aadc91c12288ed81cb5b5eb50bb3ff3cb7608146286cb4231a540fa5d","declarations":18,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0004.jsonl"}
+{"path":"src/cli/handlers/file.test.ts","sha256":"172ec308835a5ecb1e0ae3d825b2dff7813c5fc226224673981f22d25543604b","declarations":18,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0004.jsonl"}
{"path":"src/cli/handlers/interactive-login-interruption.test.ts","sha256":"0e61d752748be7e2835b70f1202b088902516778937a6438a20aeff13b682238","declarations":5,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0061.jsonl"}
-{"path":"src/cli/handlers/jira-write.test.ts","sha256":"83039171e7200bd8a6ef5a26dff0fded5ec727b48afaeb8d2beb9ce4b1b94d28","declarations":3,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0061.jsonl"}
-{"path":"src/cli/handlers/linear.test.ts","sha256":"ed5fb337ea125d2f2943f635a3e4ff1a7dd49ec53eedf845e8d0500f1d3f1bd8","declarations":22,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0063.jsonl"}
-{"path":"src/cli/handlers/managed-server.test.ts","sha256":"9385ae357784f8979f60749dbb6bea14fddff7ec7a79631574d7bafa4fa8e6a1","declarations":12,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0062.jsonl"}
-{"path":"src/cli/handlers/orchestration-caller-identity-cli.test.ts","sha256":"d35773f41683ce67b6da906e7b9d1f4cf2062f99c361c35c666640b3a14f7379","declarations":10,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0064.jsonl"}
+{"path":"src/cli/handlers/jira-write.test.ts","sha256":"757667ad1d703fee8a314c7d3738d3d25de39da508c373ec4527b5521c029101","declarations":3,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0004.jsonl"}
+{"path":"src/cli/handlers/linear.test.ts","sha256":"b1ef79854c1d544096a1c9ddea0d5378c187de8259a8cc29e341d094aacedc73","declarations":22,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0004.jsonl"}
+{"path":"src/cli/handlers/managed-server.test.ts","sha256":"54f9d5b07485b4107b355ee3c3e81cf0dd6711c74d3e83557e583c6de5f69888","declarations":12,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0004.jsonl"}
+{"path":"src/cli/handlers/orchestration-caller-identity-cli.test.ts","sha256":"e16f038f5bdecb65a68e6e2844b5133ad95b8601efd8228fe74f990bd0fd0619","declarations":10,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0004.jsonl"}
{"path":"src/cli/handlers/orchestration-check-identity.test.ts","sha256":"813a9b33f73749f320a171816c482f8f87e811f0db18022f5cc16a876050007b","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0064.jsonl"}
{"path":"src/cli/handlers/orchestration-federated-legacy-settlement.test.ts","sha256":"337e88af0ea3ff4d49efe6790b079871c62ccaf4b311637f747ecde89ac8f156","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0064.jsonl"}
-{"path":"src/cli/handlers/orchestration-gate-cli.test.ts","sha256":"b31be2b656c79a03e25ed9846496e64b9603b8a1ad09998f2990bfbcba001123","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0065.jsonl"}
+{"path":"src/cli/handlers/orchestration-gate-cli.test.ts","sha256":"7662189750039b1d02f2ba3c3fdca142f41c3bff314b618d109c96b8f9c5ac85","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0004.jsonl"}
{"path":"src/cli/handlers/orchestration-legacy-read-only.test.ts","sha256":"8c99a1b7353ac3e4069f790329b69f7fe49fe8a9553dc6e8b3d708a5634f383d","declarations":6,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0065.jsonl"}
{"path":"src/cli/handlers/orchestration-lifecycle-json-rejection.test.ts","sha256":"ebd5144e3ec109a3ed6327251beadb01f7636ec63b3fa71deb49ab7a2048b540","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0065.jsonl"}
-{"path":"src/cli/handlers/orchestration-lifecycle-rejection.test.ts","sha256":"8b2d560da3763ca385fd597098ee101af9f38b4251015a68d51b55142f66bae4","declarations":11,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/handlers/orchestration-migration.test.ts","sha256":"c6d2bcf3551ecb768f46eadee332e15f8c2aa3b6d2f51c0bb06a33372a65eb23","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0065.jsonl"}
-{"path":"src/cli/handlers/orchestration-request-show-cli.test.ts","sha256":"5fec130163c7191cc880f725e0d7e6e1ba6deca70217617c255724266d3654a5","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/handlers/orchestration-run-cli.test.ts","sha256":"00569e8049618ed26ef5cc017f362cebe3c1f2cc8b64c31413db149461b77526","declarations":9,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/handlers/orchestration-send-receipt-warnings.test.ts","sha256":"9209192ecb573e7ae00d21d7fa15fa6c0754529cec40279d2ef6ac382bd6f34a","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/handlers/orchestration-task-create-cli.test.ts","sha256":"db3b6ba9b605342a769ebfaa8cbb1dddad86a4e3d67cb46e32a85bb8a6f441c7","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/handlers/orchestration-task-list-brief.test.ts","sha256":"27d991c760d18e14864b8b647a412a695e805ad455bede60d374aed3de460c89","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/handlers/orchestration-windows-ask-cli.test.ts","sha256":"242dc570843aa4d8286c9356b9c81af2250fa2843734389af8af1d653e8060aa","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/handlers/orchestration-worker-cli.test.ts","sha256":"e333252d2d76586f3c48f9330fc3b43eaf4b9e3fbe9181d5a85b55f14f59a830","declarations":21,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/handlers/orchestration-worker-show-wait-cli.test.ts","sha256":"7a3d43373ddf7f971c6d7b2bb1216e863d9e2afd7a4d5f8e8ec9a3eb29a6427b","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/handlers/orchestration.test.ts","sha256":"eb716b6081b21da25d22287081657dcaffc68a18734f400836c8beb10859da70","declarations":28,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/handlers/orchestration/mutation-request.test.ts","sha256":"cb8429bd9eee1b442e991dfc3a7ffd0ae9d7572a8822d70d92c3eb963aa32f76","declarations":6,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/handlers/orchestration/terminal-identity-codex-filtered.test.ts","sha256":"f4301df084a7a29cedb68b4a30fb49992a233690482eadb31d954ee0dddd91e7","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/handlers/orchestration/worker-list-run-scope.test.ts","sha256":"7a902e72f2ef78348f0a79802b09ed3ab3564bfaa4e70cbff975311d9a719200","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/handlers/orchestration/worker-output.test.ts","sha256":"416aa0ad005b61d97c77cdf202b73eaf038df619e4c61c4c3162df43be448f98","declarations":20,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/handlers/profile-state-recovery-admission.test.ts","sha256":"4cacf01920be971eb3db5f3d925822cd39cd1ab5967b9a342a5d9a66f204d728","declarations":10,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/handlers/profile-state.test.ts","sha256":"8cdb996571078bfbd43a5e5d2ab31dd3df2fc442753cb47e0cb16866c0981d6e","declarations":19,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/handlers/orchestration-lifecycle-rejection.test.ts","sha256":"8b2d560da3763ca385fd597098ee101af9f38b4251015a68d51b55142f66bae4","declarations":11,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0066.jsonl"}
+{"path":"src/cli/handlers/orchestration-migration.test.ts","sha256":"4dbaab26bd186f22850b26b915956a6d386d8c74da162e0132ea6e6890c78b59","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0004.jsonl"}
+{"path":"src/cli/handlers/orchestration-request-show-cli.test.ts","sha256":"2d3b204f422fdbaf36b6bc3dad38f39939bb4c4c9c79ce3111c4c0c11798bbe7","declarations":3,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0002.jsonl"}
+{"path":"src/cli/handlers/orchestration-run-cli.test.ts","sha256":"1f6f50709a6b16f5aa79326fd081e2baabd250eca250713f3facb0db70f114e0","declarations":9,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0066.jsonl"}
+{"path":"src/cli/handlers/orchestration-send-receipt-warnings.test.ts","sha256":"514366e8b85ec3fa2aa60384334bf456f239b860155a0666cb2470b61bd84875","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0066.jsonl"}
+{"path":"src/cli/handlers/orchestration-task-create-cli.test.ts","sha256":"24d5ce335d56c5cb7e224db895f18aa82f9d659a9ffa1ca4f8fefc3a92109c15","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0004.jsonl"}
+{"path":"src/cli/handlers/orchestration-task-list-brief.test.ts","sha256":"9626ccc08202eff4bd26a8af901b6438bbeda87b0b94ba70819d600ab04c1dc8","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0002.jsonl"}
+{"path":"src/cli/handlers/orchestration-windows-ask-cli.test.ts","sha256":"242dc570843aa4d8286c9356b9c81af2250fa2843734389af8af1d653e8060aa","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0067.jsonl"}
+{"path":"src/cli/handlers/orchestration-worker-cli.test.ts","sha256":"aadd091613f5e559c61de4a4f3261d9866b6e798844b291991f527ef733ffe52","declarations":21,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0002.jsonl"}
+{"path":"src/cli/handlers/orchestration-worker-show-wait-cli.test.ts","sha256":"710992a3d868c1d803f506946815f93d3e3340f962669aada056bb58c65a0f1d","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0002.jsonl"}
+{"path":"src/cli/handlers/orchestration.test.ts","sha256":"16f4fe004f94050f71fa6fdbaa13f2c5aa8a12b421752a89f60212dfaf0b6df0","declarations":28,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0002.jsonl"}
+{"path":"src/cli/handlers/orchestration/mutation-request.test.ts","sha256":"f730d6ef1e630586421b79b1d4f256cacd8d754b1210f011b5a9e65c9667d91d","declarations":6,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0002.jsonl"}
+{"path":"src/cli/handlers/orchestration/terminal-identity-codex-filtered.test.ts","sha256":"f4301df084a7a29cedb68b4a30fb49992a233690482eadb31d954ee0dddd91e7","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0070.jsonl"}
+{"path":"src/cli/handlers/orchestration/worker-list-run-scope.test.ts","sha256":"89cb8c2316f50ad7e2e2dc11cffab9bf8608cecc00507def888150c1af36be8a","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0002.jsonl"}
+{"path":"src/cli/handlers/orchestration/worker-output.test.ts","sha256":"edb6aa60817383bc900222aa0d7e96c0e1c67dd043d2b9b9573fa6221ba492eb","declarations":20,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0002.jsonl"}
+{"path":"src/cli/handlers/profile-state-recovery-admission.test.ts","sha256":"4cacf01920be971eb3db5f3d925822cd39cd1ab5967b9a342a5d9a66f204d728","declarations":10,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0071.jsonl"}
+{"path":"src/cli/handlers/profile-state.test.ts","sha256":"ba6e85e57389cfcd1bde3f7ca103cbbe647fa3db63baf425ae2f46933e3b6148","declarations":19,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0071.jsonl"}
{"path":"src/cli/handlers/repo-visibility.test.ts","sha256":"a67305c6ef886420547ef542f7396dc0e473833645386b5d1824c69a583ac317","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/handlers/search.test.ts","sha256":"01db789ac662b78987e6a6de357fc8e2efa1495c1446c03005c080c750f9cf23","declarations":16,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/handlers/search.test.ts","sha256":"43d21cbbb67b9ab28aa7477e00feafb6b3bcd52b1fddccc90d867760b8970f5d","declarations":16,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/handlers/serve-restore.test.ts","sha256":"5cb756b7ef37269b8d44fd21b812fb3320c2fb04410d3be5cdfda5016193f334","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/handlers/serve-service.test.ts","sha256":"085a3d1f7c68e4bb58f14fcc77ee56b1e6d5196e22f1503b783b26980b5d0475","declarations":9,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/handlers/serve-service.test.ts","sha256":"f975e0e90980462a0ca79f242de386abd370433011133782c441cd2a69e956dd","declarations":9,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/handlers/skill-sharing.test.ts","sha256":"7fb2a54a7cafd0c126cbd1752c89c106e40a51138987bd735ce09d230a588cce","declarations":7,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/handlers/speech.test.ts","sha256":"897fa852db5c409771fff8d8f388cd6764ba594be587679e427d43ab892d22c7","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/handlers/speech.test.ts","sha256":"ee511572cc3598a915acbcadbac22fa5ed1d4a531e7bbc91705f1d640f0af6f1","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/handlers/terminal-daemon.test.ts","sha256":"777f5509389b90c616ed47f63c179654354411d97c5b195bede59479baa935e4","declarations":7,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/handlers/terminal-set-pane-title.test.ts","sha256":"44911b0d72d37fe02590b4ee80aff409dd8dfb570e24882d7f5be798d85a1d5e","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/handlers/terminal-split.test.ts","sha256":"b5523bf17eff2b8463679147102da38e80964136e4c3457d74c5fda1d139b808","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/handlers/terminal-switch-paired-reveal.test.ts","sha256":"7e5a5b68ca3661cc5e74709b1b182c14092c1e8a77b955c479d72590ba040d2b","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/handlers/terminal.test.ts","sha256":"98f9d026ad87aa50335997bee4f8bb460d469f4ef41e2fa211fd829e2aa0f0c0","declarations":26,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/handlers/worktree-gitlab-link.test.ts","sha256":"d8787dfa40faf402f9bfc6769a02eb6f4a7281ff68cba7ca19ad89d060d75417","declarations":12,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/host-selector-alternatives.test.ts","sha256":"bd778d2b8cc046ac54d2ee02fd238e2d47eeea6b08001e146e630e173dd90f78","declarations":19,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/handlers/terminal.test.ts","sha256":"5cabc0c0cd7c6f4e15b0ae6bc7b48127b5dddb53364e2bbff553eb3f83a4b11c","declarations":26,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/handlers/worktree-gitlab-link.test.ts","sha256":"5f4b53084195e07adf03a9a42306cb968d3a0a6dfb5a5cd8b9ecc2003110bf06","declarations":12,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/host-selector-alternatives.test.ts","sha256":"c6f43603bc7dfd0783b55fcca09c911276271a7c73e7a917f49529e38a2f6fe2","declarations":19,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/index-agent-launch.test.ts","sha256":"322e7db82d46cda23d02e169d68f8c7d5eefa4122f457da0f4ab94722be1a80d","declarations":11,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/index-automation-extra-agent-args.test.ts","sha256":"c1f53136d1599662d0ea88933ff50d0462a45648cf737aecf07756cfa6cd7857","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/index-automation-identifiers.test.ts","sha256":"a6d1b044810527d3ada6f3d937a32454021e9709915da7db0c41367469e57dfb","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
@@ -2325,45 +2327,45 @@
{"path":"src/cli/index-automation-target.test.ts","sha256":"44893f78a541d2603ed67a3e3f2f199352bf95ae9c1dd886e935e526d65afb20","declarations":8,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/index-device-commands.test.ts","sha256":"168c15e24b5c979eefc68079e943e210a08cf3c30e8d5da5e9108c387af3ef6a","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/index-environment-commands.test.ts","sha256":"187a9ccdbbc5b8e0c548e7feb67a6bad0d10894a9da78b4ef9fba91a0e451f51","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/index-file-open-headless.test.ts","sha256":"e6d118c8805e3d9de25f7358b45773da9b8bbfea67621879c7bb66f4b3cf542d","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/index-file-open-headless.test.ts","sha256":"a63f0a8a89af8b870234fd18795ed073b0d95b2ac9dd44bc2b18c7a8a80f62b0","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/index-jira.test.ts","sha256":"1571e942114b1f55df0ca1bb77b305fae484841ae8854d373128d0744f47c8a3","declarations":24,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/index-local-command-routing-flags.test.ts","sha256":"a5cfb889251b5fdd33f93c73eaa95e0415be814718b26a366417e6eababca89a","declarations":14,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/index-memory-diagnostics.test.ts","sha256":"631f464639acb9d0f65eac07a622489a94db7cebbc268f1e64e4d612afcf452d","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/index-omitted-host-scope-selectors.test.ts","sha256":"058d6ad9886bfbaa35a505a17b0b2158731d49b54a1e9f08d05ec396c93050fc","declarations":8,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/index-orchestration.test.ts","sha256":"28df0b251aefc77fa93224edc2a6b62d5d108d89cc8b3b200c8ea5c800e5f863","declarations":10,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/index-project-name-selectors.test.ts","sha256":"86e45d79af6df23b657030dc351fe945e5e50f69bd317a69dfaf9b3d251fc05e","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/index-project-setup.test.ts","sha256":"4d4ee4469ce1735740397df392585131772589559253c6ac651021831019c432","declarations":23,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/index-local-command-routing-flags.test.ts","sha256":"2211956450e4df0c481497c48b53e5c07ad89541aa53aebdbb61164e30fbc95c","declarations":14,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/index-memory-diagnostics.test.ts","sha256":"8f19396bc5a26ca4cc8dbebc51ac6c4225b0001c8e752dd7ef808835c71344b7","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/index-omitted-host-scope-selectors.test.ts","sha256":"a9c59238d2132a4963711959c06727051a319f4cb892dc1ccc787b02e9350adc","declarations":8,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/index-orchestration.test.ts","sha256":"fccbbe42c6dfbb138cd48bccc89a953230b9558dcec52d87aab48ae1752a2744","declarations":10,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/index-project-name-selectors.test.ts","sha256":"5f88c6ba1d81bd8a07000d4ecd24a22012a872936f907c302f8a966f9cfde159","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/index-project-setup.test.ts","sha256":"1e481b226f4538b4225cc12162b376e1932b72034ce1242918d31a417acaf5b7","declarations":23,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/index-reference-jira.test.ts","sha256":"9dc15f1ef2cdeb39daa4d131d3e337ffac960f9aa1b503e7a1d3238ee3f5ced9","declarations":18,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/index-reference.test.ts","sha256":"bc4d6ca055793fff636a809a6711344134f6376e7bb44c80f5942dd651cac35c","declarations":19,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/index-serve-command.test.ts","sha256":"75d6780c8fba4cc7127852f1916c5f4491fe0ce5e9ea5591bc91f9fbbfa9f9cb","declarations":10,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/index-serve-restore.test.ts","sha256":"a5fc62fb39fc4ea01ffb60a7e8d11cbd33074cf503af0bb3504511dcc1eb6f47","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/index-serve-restore.test.ts","sha256":"9e8973d45ab07e0c1bb549eba461d49b9c5d1c164982871ad638d8efbd23af73","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/index-terminal-commands.test.ts","sha256":"21ea2104cc0e8854e382ed86c58f78941ab47e43d47b6dcc51ea34c530bcb0ad","declarations":18,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/index-terminal-list-host-scope.test.ts","sha256":"2e489280a1c8fac922ce45d74a5e769c507d82198e815c45b1ad7d52759b62ed","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/index-vm-recipe-doctor.test.ts","sha256":"27953354140959825537870f529667a1dcbb9975463a2f293264f3bfe191a90b","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/index-worktree-create-agent.test.ts","sha256":"b6cd85183d8e8c9f102228e90c79a6c8e6b073af2599fec0408082501144a0de","declarations":8,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/index-terminal-list-host-scope.test.ts","sha256":"483150f7dbceb4eea1288b54e8ccb2924e85c649c6c5f86f8f6231f73aa7d4d6","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/index-vm-recipe-doctor.test.ts","sha256":"13eaa02af1ca0013564fd7d6ff2c0a1a7ca40ccbdb69c4a1e432201c9da244a5","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/index-worktree-create-agent.test.ts","sha256":"a4e17365278211bc23011814c3c639a3abc11a045ff771c601fe0b6010e9244c","declarations":8,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/index-worktree-create-host-scoped-repo.test.ts","sha256":"d95a11290cdd3d8de8eebb018e8de64cc82fcb4cdc13c55ad603d198fdd752e0","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/index-worktree-create-linear.test.ts","sha256":"7594703fefc29be7b0e98bdb8e53aefff8b1a10e626bcd10bf465856c7a35363","declarations":5,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/index-worktree-create-linear.test.ts","sha256":"cdf6f8c104ae96ebf563b0264cea6a07e6d4bcf5ebf7b8ec4049a202e1b0c170","declarations":5,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/index-worktree-create-parent.test.ts","sha256":"08ed55c850e1c2065ebb40d88cda30776041115f1f5dd1c7c6da96a15025d855","declarations":11,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/index-worktree-create-repo-host.test.ts","sha256":"d44a3952ba1ae9ef1fe96b50930df0618d7b49dba1b86c7f4d8a0ba9505259e1","declarations":6,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/index-worktree-create-target.test.ts","sha256":"6127d24caa32e6ad24c2812d4ab991779f30927eca8625d639885089188d9d33","declarations":14,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/index-worktree-create-repo-host.test.ts","sha256":"c321942aa9ed73a337e0e6e911742779617cec4b49abe32c010883550cae50cb","declarations":6,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/index-worktree-create-target.test.ts","sha256":"5c559fcb2ddd289fadf6dbffbde3cb1cc46c532fecd091cfa79819ffabfac736","declarations":14,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/index-worktree-gitlab-links.test.ts","sha256":"1bf84f970acd12829cc52581fada2ed1f8c118dd57a2321c7d0dbef55d963712","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/index-worktree-linked-items.test.ts","sha256":"b6884ae626278746209f1f7d411dd0e48922d4415375db797eeb0c572b26514f","declarations":8,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/index-worktree-selector-resolution.test.ts","sha256":"52a29d2edd51b49feccffd205701de6f5e38323109338f97420b887762ad853a","declarations":9,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/index-worktree-set.test.ts","sha256":"296b0f393dc7488b1145270616b558d43deca6876f237b3d52d80de9a75b9183","declarations":13,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/index.test.ts","sha256":"2317a75488c3b3a7bc0e495b9b786ca181b8dd8afe939d3bddb07b33dc743708","declarations":24,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/index-worktree-selector-resolution.test.ts","sha256":"25f3555f689ce474168b76dedcde9b4e48f5c320f379ab2e9baceb295082868d","declarations":9,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/index-worktree-set.test.ts","sha256":"32f44eff76b6d7c915797d5e132c61231e0480602e4bd0dcc4478a422de80185","declarations":13,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/index.test.ts","sha256":"ae7edef0a99d0aa5d664a4bb4a548b9cc0856853a16ed066799092053e9e829a","declarations":24,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/jira-command-surface.test.ts","sha256":"18e4969493b394c55fa4f0819bb9acb87fe6862b7cc42a8ca9ed481533cfb0c2","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/linear-format.test.ts","sha256":"5037e1db59792332e2c9f97e36754e7488905f977c3a6f03b6e6f6ed12274d9e","declarations":7,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/orchestration-dispatch-refusal-format.test.ts","sha256":"ee4e3f4a1f40cc7582e3b89276cfb3ee291a51f36db485baf7ee56f3c8bd6d84","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/orchestration-mutation-recovery.test.ts","sha256":"90049102babf63094188f302bfad90aa6567728977d8b74a1452b733030152bf","declarations":14,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/orchestration-session-caller-cli.test.ts","sha256":"ac2e812ad5ebf8848effaae106f8248be2af915f4234148541ed403848f3ab15","declarations":26,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/orchestration-structured-sender-identity.test.ts","sha256":"651eecf1e5154d99a9511f8487490d6a553807b4f16a406d7507c9c0d33eb378","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/orchestration-structured-session-no-identity.test.ts","sha256":"d304fcdfee9f0dd610f4f12963faa1bfbc10062d05b497f7928b604d727786d9","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/paired-terminal-desktop-reveal.test.ts","sha256":"ceff188c9fb0734b6e5278ed2ed24d085b839e7895817227b06334e554311354","declarations":5,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/quote-stripped-json-flag.test.ts","sha256":"b8109fb2d2f024c56a3354724dfac192401217e3d11ed0489d0816cd58796148","declarations":6,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/orchestration-dispatch-refusal-format.test.ts","sha256":"c5d9f548275f960821c1e08038339845ae39189d6e36e43b576271d52b3fb5c1","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/orchestration-mutation-recovery.test.ts","sha256":"107073e0f2f468b6c05166dab554e5d7bc140e50de2e5cb415754337d94ad399","declarations":14,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/orchestration-session-caller-cli.test.ts","sha256":"fd8705289af5514acff68236d4e524d340ad4ac48ee17a035f43c9a206b6ec7b","declarations":26,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/orchestration-structured-sender-identity.test.ts","sha256":"5fda32795398f7653978700c917b310f61e68615a6cd216c9c5a3863bb06e142","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/orchestration-structured-session-no-identity.test.ts","sha256":"4621a83a7e13b514e01797aa6307f66ab406044efc3c2a86b50fd26ac5cc064d","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/paired-terminal-desktop-reveal.test.ts","sha256":"7eb5ccc109b07115f3f10407ba76a4361b06e604437b93f9681b706d1952a5b8","declarations":5,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/quote-stripped-json-flag.test.ts","sha256":"b4653c35183c44f618896895d1c8ce6b1c0bb060b768fc5f06a8e6372e37ef41","declarations":6,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/reference-command-arguments.test.ts","sha256":"2d5898f2a47411affdda422c19c49e0d7930fdfa14dc4102496ae233c3e3871f","declarations":5,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/retry-request-flag.test.ts","sha256":"408bd66c100156b5dc97633cad968b69e1f0e0ab1e33a5157aac79dd3c0d5c8d","declarations":6,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/runtime-client-deferral.test.ts","sha256":"ebd2b6799773bea556eceacd3280ebfec5311a8fd388c860126ac6947a23efa4","declarations":8,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/runtime-client.test.ts","sha256":"d9752b2e99784f0a299cac4b88e8b7c234e0666a1899bc4a3145a34d514c9b41","declarations":16,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/runtime-client-deferral.test.ts","sha256":"18db4ee7965bb9a4b7fe88deaef32871ea696e729cf8c484a2b26b31f0b41609","declarations":8,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/runtime-client.test.ts","sha256":"bdc41c12f76402c804fb9bf3979e5ee4c27ea78999d9020fdbbb427082cc1d6a","declarations":16,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/runtime/client-execution-host.test.ts","sha256":"22271bb4118be426af7e28f3065c889c551b129e25b6ec8faee90d496d1130df","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/runtime/client-recovery.test.ts","sha256":"1ba7eb7f929583306fac80920c132939c12c5410d0c44c80256ab16153f33262","declarations":7,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/runtime/envelope-schema.test.ts","sha256":"4cdeb2d325114e2e6b6f0f40c4ea879556160658ab6148a4c209b9cf632b3c06","declarations":16,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
@@ -2401,76 +2403,77 @@
{"path":"src/cli/runtime/types.test.ts","sha256":"d1daf682022e3488ba2c5b03abfdefbc5bc6ac931fb5beb451727ff7203c0a9d","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/runtime/websocket-transport-error.test.ts","sha256":"aea0a319b6160bc01e59c35268cc38c684c2b526b552fd437a2120aef1e46e37","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/runtime/websocket-transport.test.ts","sha256":"124b9349af252de1da7d0bd865a0762f9c9f1915cdc52f196744151e852bcf8c","declarations":8,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/search-command-arguments.test.ts","sha256":"34067fb632c05d15d91fad1b5778dc365337592d0ac9371c1278731d48c7205e","declarations":27,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/serve-electron-flag-parity.test.ts","sha256":"b2144d4428179f3a5959a1e329e70eba47c8baca03254362d12235a756cc4939","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/search-command-arguments.test.ts","sha256":"20dfb3933cd1b5306e63e66e0a3cf1417f0960b1355810f949cc9162152dbd8a","declarations":27,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/serve-electron-flag-parity.test.ts","sha256":"77b9d43d55bb60bfa79224b78a0dbe759ddf3f6ca2d18a4819f74997e80aa56a","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/shell-command-quote.test.ts","sha256":"baf4756c1bd68033ffc3492b6444a78827398b993f7883c13f903d8963cf20f1","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/skills-cli-agent-aliases.test.ts","sha256":"e401dcae19e4d79c17308b236c75135d684b943d47d9d270650c464dcc6c2896","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/skills-install.test.ts","sha256":"e99e1972d726d5ac9a147aacc53cfff856ff518069e2380cd0e27990893836f4","declarations":13,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/skills-install.test.ts","sha256":"743a1450254d1706b2558b20d2dafa6df1639387de2d845257716b2faeafd511","declarations":13,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/skills-reference-selector.test.ts","sha256":"d39cb0b19806aea4a4b6e449dc8315f4e15c73f8a7818fe6f317dab0dbd4c777","declarations":13,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/skills.test.ts","sha256":"8f8d14537400e363e0959732a60287840fae7aad9b2027c66879df6d40deaf0d","declarations":18,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/skills.test.ts","sha256":"253083f9310aa2bb2a483d806e6120f73cd7467545bcfd7c2aecdd6965591ae2","declarations":18,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/specs/account.test.ts","sha256":"f43848bbff3bccfadf29879f652885ae61a714d65bdf603d1fc4f93b15bce33b","declarations":6,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/specs/bundled-guide-flags.test.ts","sha256":"2ad4ac38ce48c92751bededb004be72e5d64e3f9ba92994c7277c9b65898e1fc","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/specs/cli-command-names-parity.test.ts","sha256":"8599f8ad3d9dd03c16146c1b67357b3c3e9a7e7d4887129a88eaafe5a1e855c5","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/specs/profile-state.test.ts","sha256":"690cbc4526f7150e2136374ad23d5186dcc93484f3b83b0b6edc720af7aeb095","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/terminal-format.test.ts","sha256":"daa18693a5b1d3ccdf36797c8c2b83eef3ec118e34904ebba6351b0706c80bac","declarations":12,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/terminal-format.test.ts","sha256":"54f6299c95fceca5ec01070cd11f64e907718f3e013f8b81d0d3de10b7b29ccb","declarations":12,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/terminal-list-host-scope-format.test.ts","sha256":"0786fffd6d6cdda4b07af1d829c7bea67e2e46f53078d11186094d16e6042170","declarations":6,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/terminal-read-screen.test.ts","sha256":"f8de895b38c8b7745e3639cef47a45a9a84e0f537a3de33e25a02b493c186146","declarations":6,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/test-fixtures.ts","sha256":"de24d3f101b8617a402e27a895fc1e45f88fb79f6229a1771107622d243f9a7b","declarations":0,"signals":["auxiliary"],"status":"reviewed","review":"reviews/root-0053.jsonl"}
+{"path":"src/cli/terminal-read-screen.test.ts","sha256":"6bef63f574bc81a78e7e64f5b869559c44f2532f3c167ce90c3c9428badc8468","declarations":6,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/test-fixtures.ts","sha256":"6aedc6de29e6067251033e2be73efdc64e0da89f7e205726026981eac5db610c","declarations":0,"signals":["auxiliary"],"status":"reviewed","review":"reviews/upstream-0003.jsonl"}
{"path":"src/cli/vocabulary-policy.test.ts","sha256":"94462c0f2923a90620104c8455debb6b4fcdffae04e11772d2ecc82ea390084e","declarations":7,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/worktree-ps-program-status.test.ts","sha256":"ecb80deabe5a0037039106c54976c13a073d31591e903c2bbe0a0d7b16008bf9","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/cli/worktree-ps-terminal-verdict.test.ts","sha256":"1ab6fc8c4eadbd1d45cab94f77c8f325b16c832492ebe4309f066be6d99c5514","declarations":5,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/worktree-selector-caller-host.test.ts","sha256":"481310d88667038ae1366b0374c7b16c074dc3a7e5682a1af4660a256ab5889c","declarations":6,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/cli/worktree-selector-wsl-posix-path.test.ts","sha256":"659581f53b712f6ea1111567489cdaf2c5b00e3f01b52ac4bdbc928db32c92c0","declarations":7,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-agent-connection.test.ts","sha256":"7d8d3d09f67424c0a97490f6bd366ff39aa255dcdbd44bc19150f0eb943dae6e","declarations":15,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-compaction-journal-fixture.test.ts","sha256":"5445f066f3a729799e28522f4e3a49a860ca32c0f158abb2e521c5acd807de6e","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-conversation-copy.test.ts","sha256":"38a3b5c59fb91a653bb77a16f03eb94a69cd007f82950eda712799650a8569bd","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","sha256":"fe4f89c85d51f9bdcacf90965abdbde8e7d8b1f4244e73f156ef83d70cd831af","declarations":12,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","sha256":"14e3e564686c94a58db3a547775fa3999c703f236768b0ef74352e655e1b1e39","declarations":9,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-fixture-privacy.test.ts","sha256":"81636fd9941828b117d54951bf527985f54cacbb831283d2b1647df7e44e8ac8","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-json-rpc-peer.test.ts","sha256":"15845c76d39862d8fcde746fd096830af54fcd15a5c51cfe09bfb184e8d675e6","declarations":18,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-model-catalog-probe.test.ts","sha256":"b3ef6afa616aee177559c3e5adfa30550d3905d9869d449342da8959ec784544","declarations":13,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-permission-requests.test.ts","sha256":"7b23166c5e1f0d1ceb15b40e179cce6a824b5a8cad66c6494b65269d91a96a3e","declarations":5,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-prompt-content.test.ts","sha256":"c7c448ef1c219a77d3afb6de1d37d0ec960c58c8c5728b5366d9248347af0f81","declarations":10,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-recovery-history.test.ts","sha256":"caea413158cf57ac64a54ecb8e45f7b2e128d505de5bb5345937a75f480a0be8","declarations":9,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-scripted-child-runtime.test.ts","sha256":"804856a2f1bf2f37a4431165eb034788f7967daf3d786c8ec28219f3be70e27e","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-scripted-child.test-fixture.ts","sha256":"9b97cab8fba48a99bc11dbb8873c4713295357528c82cb82c9cceb50f8055484","declarations":0,"signals":["auxiliary"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-scripted-connection.test-fixture.ts","sha256":"17c16b7a117268413d65d8e87df5c6159ef22bb329f521703c595721c30b8527","declarations":0,"signals":["auxiliary"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-session-agent-turns.test.ts","sha256":"e41b5fab0fff07e67ee2f8fcca0c2e29645489016f74a5bc4df181a4b057ba2f","declarations":5,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-session-events.test.ts","sha256":"08a2f6a4878e9eb4438af6c9316c09bd7974553c6f63e166ae3093882300e2a3","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-session-lifecycle.test.ts","sha256":"d86a63a1204e86143f6ad997127581e31283939d8b4d1d33dca02cd389b872e2","declarations":15,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-session-notifications.test.ts","sha256":"99439a6976af2e8a302fff6423a0bd65ff1f81f9299724d892916de9a24ff1ee","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-session-runtime.test.ts","sha256":"968834fb417f523022d5631f99574adb232066811fa0556f3937834d3eae742f","declarations":16,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-antigravity.test.ts","sha256":"1b44303eaf2a6dd61b44f0fc755584c0aeaa49b61c9b857a968ce32d51c2a062","declarations":5,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-auth.test.ts","sha256":"3abc35ac429d0d1fb652f047525dd0c2fa95008a4473a1945747b05427d85905","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","sha256":"6438759563b4f715801705bb59cf6508fb775c93b7a502e6668964e72d8f3665","declarations":11,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-broken-stream.test.ts","sha256":"2a3220d04200053d3ae67b61acb66a7a954cc04ebdd4859bb79d12ad67d28150","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-child-session-end.test.ts","sha256":"f2136c5e0f0ea65ee665262f4086edc56cf9d29a737752a00fb023603a05de54","declarations":8,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-child-stop.test.ts","sha256":"cf8a2369d8c7cdb60f1f383d0446df9274aa3e7f7e846da1aab5da7cd37b2331","declarations":5,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-child-work-admission.test.ts","sha256":"9bf05c57929b10c5c6aca432474acb1ee7432770c649323fee798b92bb1e743c","declarations":5,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-child-work.test.ts","sha256":"cfa37edd52a8ad1bbb40cd1bbd1555106194ece80db55ea62416286207a68e1e","declarations":12,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-compaction.test.ts","sha256":"4d400dbc1d3fbe3781c5011829340f15ebec1feb2204b45fcd51351419e05706","declarations":14,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-context-clear.test.ts","sha256":"520c9d2a1b2fb1eab016f0e7a0a48459dc4c9ef06afe527a4a64253ab3fc4a21","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-electron-free.test.ts","sha256":"c205cea2a73ebae5561b5e9b396cdd15fb45cb97d609e4b3c52084a8666ddde1","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-grok-subagent-recordings.test.ts","sha256":"0c73b87e2ba3aea581b9a5b8828db4368218491b4e57f19e4a8742bf2b219e27","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-host-configured-default.test.ts","sha256":"85fe2d6f2eb6b15e54fe763404097be183f1e96b47e8e7f7976856dab57329b2","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-host-crash.test.ts","sha256":"5ebae1b8063114216a2d689395cce43a69a24b948fad2fa733ce87c805b72452","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-host-lifecycle.test.ts","sha256":"20dcf409351bf4cc508d785df89f0b8760da1483a4c68742ff0ffedf72925c41","declarations":9,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-host-live-listing.test.ts","sha256":"83624f70b3482968e22d36f3d402497fcfd86f800ba7200f14f7e013bb95f81e","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-host-option-hang.test.ts","sha256":"fd01fb7d23e1c210fe820a7757dbc0412d590b652a84d05ec148a11fa88beb48","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-host-restore-failed.test.ts","sha256":"d5857735fecf8a980255415fd90a67b48090b69b737e1e8a5ec1dbe76779b6f5","declarations":6,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-host-start-aborts.test.ts","sha256":"18e04937633dd8a61d26faa8c77a4b9310cd1e119100543e0b849c6209514794","declarations":6,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-host-start-failure.test.ts","sha256":"4cea0dccdb76c1c55cec22f4965453d0f9e5992ae329c6401edd9a814e8e9930","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-host-stop.test.ts","sha256":"2972e40c8b5c72f0a5c9e2be1c631d0b9c751e14488d43c0c551e085d9b2b58f","declarations":6,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-host-subagent-stop.test.ts","sha256":"6e1c3a773f8713c4d2626a1584f6ed43179ef83fc655c003379de0d0a1cdf56e","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-image-prompts.test.ts","sha256":"69b7508d0133f356065c7d0753c14f95b2f3935bcb7bfcc7a7df64266704c54f","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","sha256":"ab5a6721f1359393ed6e8d677ae4045f7317b25a3b4aa37c2d7bf27d4dabbde9","declarations":7,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","sha256":"60d27f19c6056dbc77057524b62378cca19de820aa007a4f91b386ddafe3450c","declarations":16,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-launch-resolution.test.ts","sha256":"ffad3867433b628965882ac5849f845b7fff249494aad1ba06f6f859ba618b03","declarations":13,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-launch-visuals.test.ts","sha256":"8502ca67a35a270d0a1f021d72a79d8b2a1e28af786e5c48c1be709d0f472812","declarations":7,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-mail-admission.test.ts","sha256":"7221b532629537b32d329ad820ec1509eab8694bab3afac80a0331ff08065db3","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-managed-runtime.test.ts","sha256":"1ba234a0ee4c90b76cf2c5c1636db6e262398569c3eeb8a9e11687f9abba12a0","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-missing-model.test.ts","sha256":"51627f8046a7219ad4e4b6a8887082d6486173a72d9b391f28417870df325061","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/acp/acp-structured-omp-recordings.test.ts","sha256":"4934b3c55093a7d32389794f42051d7ce8783b8afc4fcb50d0c38af1edabd498","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/worktree-selector-caller-host.test.ts","sha256":"58c1c92288def23e43837e7551832ad2821c5112351120785a74fe73d48ce523","declarations":6,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/cli/worktree-selector-wsl-posix-path.test.ts","sha256":"5aa1ef18860e6d51c901a33427b3bcea94255fcde40315ddf1297481305b87d5","declarations":7,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/main/acp/acp-agent-connection.test.ts","sha256":"7d8d3d09f67424c0a97490f6bd366ff39aa255dcdbd44bc19150f0eb943dae6e","declarations":15,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-compaction-journal-fixture.test.ts","sha256":"5445f066f3a729799e28522f4e3a49a860ca32c0f158abb2e521c5acd807de6e","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-conversation-copy.test.ts","sha256":"520973f698e360f4de215e9739262e0609c58420fb251ff4c29c158f5c0febe2","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","sha256":"fe4f89c85d51f9bdcacf90965abdbde8e7d8b1f4244e73f156ef83d70cd831af","declarations":12,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","sha256":"63d0c28988ba6c6e0e386e6c6c9ceb7a7bfd3c42a7fe02d64a0e12a0af1967f3","declarations":9,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-fixture-privacy.test.ts","sha256":"a0fe648b12f57662a3ba2cd4c2793c5f9660e6aee2ba4949b2ba3e14df8b4719","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-json-rpc-peer.test.ts","sha256":"15845c76d39862d8fcde746fd096830af54fcd15a5c51cfe09bfb184e8d675e6","declarations":18,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-model-catalog-probe.test.ts","sha256":"031f49ecb81fd11983ff16f99f922c8c263e09505d90e9b1bee35fec8942e998","declarations":12,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-permission-requests.test.ts","sha256":"7b23166c5e1f0d1ceb15b40e179cce6a824b5a8cad66c6494b65269d91a96a3e","declarations":5,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-prompt-content.test.ts","sha256":"0b607135edd4b9975bed5bc007347d40f190b16c731f9b67eed142ba13e58e7d","declarations":10,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-recovery-history.test.ts","sha256":"d9e6d1506d3cf12e8d6005c05daeb3938ba9d5c922008545c11bb3a79c13ff2c","declarations":9,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-scripted-child-runtime.test.ts","sha256":"804856a2f1bf2f37a4431165eb034788f7967daf3d786c8ec28219f3be70e27e","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-scripted-child.test-fixture.ts","sha256":"9b97cab8fba48a99bc11dbb8873c4713295357528c82cb82c9cceb50f8055484","declarations":0,"signals":["auxiliary"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-scripted-connection.test-fixture.ts","sha256":"17c16b7a117268413d65d8e87df5c6159ef22bb329f521703c595721c30b8527","declarations":0,"signals":["auxiliary"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-session-agent-turns.test.ts","sha256":"e41b5fab0fff07e67ee2f8fcca0c2e29645489016f74a5bc4df181a4b057ba2f","declarations":5,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-session-events.test.ts","sha256":"5c9068eb210a0bb813aab0898a3a36762328c6ee79b80911521a96109ce3fd08","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-session-lifecycle.test.ts","sha256":"082a7a9ea2cf3d989422715ec357ddb641fbde1390907c49e2adc87c2b624c2c","declarations":15,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-session-notifications.test.ts","sha256":"99439a6976af2e8a302fff6423a0bd65ff1f81f9299724d892916de9a24ff1ee","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-session-runtime.test.ts","sha256":"d1e525e52cb7df71f2fd3632e4740c0e7078b7acdea6a6442db67d59120ae87e","declarations":15,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-antigravity.test.ts","sha256":"ff6fc7c8995f74a768b3c31033ec99712aa6d49fd63983dfe646ad8881292d9f","declarations":5,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-auth.test.ts","sha256":"708a86e98fcce5ec241d2d5dfb82bcfaf137b8cae5c905f69bd1defc2a996142","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","sha256":"21c18bf11301ca497d8c8e4bd369e4b62bb10a2c81b2c802d4906cae09127d62","declarations":11,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-broken-stream.test.ts","sha256":"44692cc4cf2896548689fbaf81e55941e8ddcbaf190867563f304435d7fa04cc","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-child-session-end.test.ts","sha256":"f2136c5e0f0ea65ee665262f4086edc56cf9d29a737752a00fb023603a05de54","declarations":8,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-child-stop.test.ts","sha256":"5d7b5b683dcac4162f41085c2c38db2f5985a011d0fdaeded2ea7b56b67a0e43","declarations":5,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-child-work-admission.test.ts","sha256":"e430870b63814acd288ac077e260bb2ae0b08c5254093456da9d374926b6fe2e","declarations":5,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-child-work.test.ts","sha256":"35b97748340e0ce1b7ea92d5adc136c131d7f44093a555fccdb389ad06a76583","declarations":12,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-compaction.test.ts","sha256":"068cb25b4f2da0fc292d768dbf6012623d68a50fec90cb160b4fc2957966ba39","declarations":12,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-context-clear.test.ts","sha256":"496a73892d332861a48b35ec6ee4368daf4bcec8481f00da560a154e72ccec79","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-electron-free.test.ts","sha256":"5c22c2b97abb6cf502f058e5f74b7a856dd4ef7d2f6bb56d27296e3c9e521803","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-fixture-replay.test-support.ts","sha256":"b3161ea99b49a3aa29966b2c4414b131428886e2325e4e9e6e5503e2a0867780","declarations":0,"signals":[],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-grok-subagent-recordings.test.ts","sha256":"3ad01ddde1af05fa5ed1cffc2813d06295d8bc743f4b89e3e02b8ef1cc4de52c","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-host-configured-default.test.ts","sha256":"85fe2d6f2eb6b15e54fe763404097be183f1e96b47e8e7f7976856dab57329b2","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-host-crash.test.ts","sha256":"5ebae1b8063114216a2d689395cce43a69a24b948fad2fa733ce87c805b72452","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-host-lifecycle.test.ts","sha256":"20dcf409351bf4cc508d785df89f0b8760da1483a4c68742ff0ffedf72925c41","declarations":9,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-host-live-listing.test.ts","sha256":"99fb4d3a89416d99f68a55fe9e56c02684fdbd213a67e7425a9b9f2a3522fc4b","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-host-option-hang.test.ts","sha256":"202d1d64b81fda30ae9d8b3f002cc3b6d36621ec0cf7e5eca47e2a6931e4589d","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-host-restore-failed.test.ts","sha256":"467f24bf9f41982c250426585cb295b2343046ff5441dc2f97481199a9911052","declarations":6,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-host-start-aborts.test.ts","sha256":"c373b83e51a6fab6948d665bde89596bf0a0758991545ff05b4fc7119b4056ba","declarations":6,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-host-start-failure.test.ts","sha256":"4cea0dccdb76c1c55cec22f4965453d0f9e5992ae329c6401edd9a814e8e9930","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-host-stop.test.ts","sha256":"fa4fdf8db518e9c76729e80c555f00d7767f4fe9d997265dbf42a387e6ec8d6c","declarations":6,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-host-subagent-stop.test.ts","sha256":"6e1c3a773f8713c4d2626a1584f6ed43179ef83fc655c003379de0d0a1cdf56e","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-image-prompts.test.ts","sha256":"69b7508d0133f356065c7d0753c14f95b2f3935bcb7bfcc7a7df64266704c54f","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","sha256":"ab5a6721f1359393ed6e8d677ae4045f7317b25a3b4aa37c2d7bf27d4dabbde9","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","sha256":"a2603bc0c5912bf5eb496eb50c7a8473b54de5ed721d38981cdd40f63464fcad","declarations":16,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-launch-resolution.test.ts","sha256":"9dd69a846ab9a6b155f9a31c81092288048d7efb22d33233a728747f4469248a","declarations":12,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-launch-visuals.test.ts","sha256":"5edd74b2e5e487e54362d7a12e47ba2891e9074a1555894b40d85860de0a93da","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-mail-admission.test.ts","sha256":"992e5707a223b7850ce3f3e77fb08d62cf5b048a82f59e793ab54e30f26a94a9","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-managed-runtime.test.ts","sha256":"2796f5b90bddb4dac2ecaa4b9e50dd5a0c668ef5636ea54db1489939855b61a8","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-missing-model.test.ts","sha256":"51627f8046a7219ad4e4b6a8887082d6486173a72d9b391f28417870df325061","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
+{"path":"src/main/acp/acp-structured-omp-recordings.test.ts","sha256":"4934b3c55093a7d32389794f42051d7ce8783b8afc4fcb50d0c38af1edabd498","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/main-0001.jsonl"}
{"path":"src/main/acp/acp-structured-opencode-recordings.test.ts","sha256":"7cc8a8725c092c08d32aee6b443138b40614764c77cc2fd4758761dc8ce9489f","declarations":8,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/main/acp/acp-structured-options.test.ts","sha256":"580767f2d5abfe5846b0b1470e0821eb7eb635ca3620b77274dd22d1334f941e","declarations":9,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/main/acp/acp-structured-private-temp.test.ts","sha256":"7f3f1712024f74d8a063b933ab945c8e3cd45c3e17a6bc0e837ac137b8aae387","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
@@ -3157,7 +3160,7 @@
{"path":"src/main/browser/browser-session-proxy.test.ts","sha256":"02e0cea00c72c0f9db1fb448d22a537ec2d01b83a5ce356e592449e522987810","declarations":9,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/main/browser/browser-session-registry-identity.persistence.test.ts","sha256":"9d318a8c79576484cd9cb6de790ffb68364c66bf0b6c813f83144e358ae2dcdb","declarations":5,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/main/browser/browser-session-registry.persistence.test.ts","sha256":"2e05daa8d944dec14a2b6d06b3dc23cd3f0fecc501219de482cf034da3f3ebd4","declarations":13,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/browser/browser-session-registry.test.ts","sha256":"5ba8e6cf984afc68129a2bf1006c36790044f56b1570b1e3e1e63db4db830839","declarations":37,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/main/browser/browser-session-registry.test.ts","sha256":"daae4ab350278f41459b307f62f7f586ee2b01edd793571a2f070c6e76539af0","declarations":38,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/main/browser/browser-session-startup.test.ts","sha256":"a4ef3ae5e05a3129693f4dfb15412fa998ce48050fb3cf996fa56ef72656b55b","declarations":6,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/main/browser/browser-session-ua-cloudflare-live.electron.test.ts","sha256":"a2c8b8b09a0d1f4a4628f7ac91a044d558f3d0d44483bbc09a227c43d98ba58f","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/main/browser/browser-session-ua-wire-identity-cross-context.electron.test.ts","sha256":"4a2ea3dfbd6fc7c07a22ecf2c8633d5b9a756e6e6a0fb14044402f3989723e6c","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
@@ -4626,7 +4629,7 @@
{"path":"src/main/ipc/bounded-warning-dedupe.test.ts","sha256":"e9446471b35ed7d05cf1a143abc74769737f5889a4793c53c1201958be8cc199","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/main/ipc/browser-annotation-viewport-ipc.test.ts","sha256":"718167bd7797125b6399d9e6982759bcf917b470ff609dd9a731066764f8cbf5","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/main/ipc/browser-client-page-metadata-ipc.test.ts","sha256":"dac0958a15c895e12dde22a616a3fd131dd4c9c3c28ad3587b588898022f7e74","declarations":5,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/ipc/browser-preview-tool-authorization.test.ts","sha256":"76bc44158c9835cc51eb14be2d89cc612a64075510d46a85f28ec18159e1ddbb","declarations":13,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/main/ipc/browser-preview-tool-authorization.test.ts","sha256":"3040322557da8e5ccc017d27defd16fc2d5987225ef913fa21cdfd7d784cedc3","declarations":13,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/main/ipc/browser-session-profile-ipc.test.ts","sha256":"b7c8e48930c4366ed47ddd8266328f8d39eed378ac0db625687138ba7a2cc698","declarations":5,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/main/ipc/browser-tab-registration-wait.test.ts","sha256":"5d7cd33868843f1531585a62dcfd9b94f6d8f30e16a584f86f9ee0f2da168796","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/main/ipc/browser.test.ts","sha256":"a601ce4eb2bcf903e0c4b4f98d47bcf63d6f0b39e9b63a1d75ec792f7b09a2d6","declarations":23,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
@@ -6784,7 +6787,7 @@
{"path":"src/main/runtime/codex-header-readiness-transcripts.test.ts","sha256":"e39293bce3e05d4ad930d4418bd47d3bc0b89ae3ab6b5c134bd26a3cdcda28fe","declarations":25,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/main/runtime/codex-quiet-ready-screen.test.ts","sha256":"91a7cc0b080b4cfe219248eb3cebdce4fb11998ca12a031200fc2505805ebb6f","declarations":21,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/main/runtime/codex-startup-paste-transcripts.test.ts","sha256":"69a54d9b1e6a4e0cb5194187531cebef9208a930cad96a3689d31ce922d9672e","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/main/runtime/construction/runtime-composition-parity.test.ts","sha256":"cb19465c3c8ad92874d0a9fbbbc17a4232609bbac6830758403128f56908eb76","declarations":6,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/main/runtime/construction/runtime-composition-parity.test.ts","sha256":"04a81ac84afe9390c849f9e388242e0b3e33dac5029199fca124dd80797f67c5","declarations":6,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/main/runtime/created-mobile-session-tab-caller-selection.test.ts","sha256":"30ac670e707a3d17dc6a268973a075bc040d26b8f152d1fc63a3920fe048302a","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/main/runtime/decorative-title-fact-emission.test.ts","sha256":"843229935bf743247b555574aeb3d17e84e0aaa78a74d6080f98eef07009de49","declarations":7,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/main/runtime/delegated-mobile-device.integration.test.ts","sha256":"19cee5ce7160f066ab8f8854f255a4552c57ffd53e2d2830cb80638790355851","declarations":13,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
@@ -9047,22 +9050,22 @@
{"path":"src/main/zsh-deferred-startup-line-init.live-shell.test.ts","sha256":"fd452d4b9bfd4aa55a6248671e4b21518156906f6d16fca75a5886be955c748b","declarations":0,"signals":["named"],"status":"unreviewed"}
{"path":"src/main/zsh-scoped-histfile.live-shell.test.ts","sha256":"bc371e6aa6c75989c78fa603680a3814e421e9a847fce8864e027dbc296211be","declarations":1,"signals":["named","declarations"],"status":"unreviewed"}
{"path":"src/main/zsh-startup-hook-user-config-equivalence.live-shell.test.ts","sha256":"1786881d8dcd5fd5b38aa11240dd2c1550397cf7eabb9ba8f5c537fb4e2303cd","declarations":1,"signals":["named","declarations"],"status":"unreviewed"}
-{"path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","sha256":"aedd3d5056139c951392fde802b64566cb6f73a35cfae2a2a38a98c9b0c19edd","declarations":0,"signals":["auxiliary"],"status":"reviewed","review":"reviews/root-0003.jsonl"}
-{"path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","sha256":"ce717cff5730731ed9cc007afb5f67563312f52596592cc0a3ca43a0582f47aa","declarations":0,"signals":["auxiliary"],"status":"reviewed","review":"reviews/root-0003.jsonl"}
+{"path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","sha256":"3ebdbf96094a058d6f5a68275c36c2843f462fbefa1ad3246af5bb56f68a5471","declarations":0,"signals":["auxiliary"],"status":"reviewed","review":"reviews/upstream-0001.jsonl"}
+{"path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","sha256":"330db48368e7f5451b7a73fbf34d6ee7d84aab5eb7ee7b0426f0280269741e44","declarations":0,"signals":["auxiliary"],"status":"reviewed","review":"reviews/upstream-0001.jsonl"}
{"path":"src/packages/process-host/src/bounded-output-sink.test.ts","sha256":"69f42cdbf3b95f67c6a2c27f3c2573c67a0fb9045c505ffb3710336e916696e2","declarations":5,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0001.jsonl"}
{"path":"src/packages/process-host/src/close-process-registry.test.ts","sha256":"b16d96d5ed9180be7cc4cf60ca6485655d0ad039a182befe89d7914a6fe23374","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0001.jsonl"}
{"path":"src/packages/process-host/src/growing-byte-buffer.test.ts","sha256":"bf3c7b5073c0a1e5bce7ff293d97e6147675781855db35c21d1f86e8e4be9881","declarations":8,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0001.jsonl"}
-{"path":"src/packages/process-host/src/posix-lsof-probe.test.ts","sha256":"f5d1e8c5c1b7666cb777660186c2814afba85191f2e6195c92a304ef7a6bd32f","declarations":8,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0001.jsonl"}
-{"path":"src/packages/process-host/src/process-tree-termination.test.ts","sha256":"1ca14b96ce61534c0ad87db8c41ba699fcd80dfb4f13e0db4a3a56b60f51af6b","declarations":10,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0001.jsonl"}
+{"path":"src/packages/process-host/src/posix-lsof-probe.test.ts","sha256":"b38d63f880754ca40406ff8fdbf18a51517646228f146e5b121a446be819e720","declarations":8,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0001.jsonl"}
+{"path":"src/packages/process-host/src/process-tree-termination.test.ts","sha256":"f1bc56dae5d2a19f33d3c0c7041648460983df4b42bc6afe547cdb37876e8d26","declarations":10,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0001.jsonl"}
{"path":"src/packages/process-host/src/retryable-process-exit-proof.test.ts","sha256":"847b8156d00ed42051bc15f35452a0e47886cee6a32597e197de11b091caccaf","declarations":3,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0001.jsonl"}
{"path":"src/packages/process-host/src/run-process-bytes.test.ts","sha256":"323714e2fa25634329a20e76196536dc3823ca23f745c90ce334f820eabdbacf","declarations":3,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0001.jsonl"}
{"path":"src/packages/process-host/src/run-process-termination-failure.test.ts","sha256":"1599e3c4fbad0fe838e780d2b05a7b871537e4236af0d8da774bca68f2852014","declarations":8,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0001.jsonl"}
-{"path":"src/packages/process-host/src/run-process-windows-tree-kill.test.ts","sha256":"e19ef672df288b6782cc0dfa4c044210d079da1aeddedd75d8741893db723329","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0001.jsonl"}
-{"path":"src/packages/process-host/src/run-process.test.ts","sha256":"c0c71f807d37b8df922524ba9d075751f76116930b6b486c01a0e74cf1b721c0","declarations":19,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0001.jsonl"}
+{"path":"src/packages/process-host/src/run-process-windows-tree-kill.test.ts","sha256":"3763ea5f005c06d69b754670fd08a22ecc5a27f4532a1b4cd33d69793412af86","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0001.jsonl"}
+{"path":"src/packages/process-host/src/run-process.test.ts","sha256":"f8a2b016effac262aa1e917e20ff8e1b93ca61fa2f8a533485c064a1b5184b62","declarations":19,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0001.jsonl"}
{"path":"src/packages/process-host/src/spawn-observer.test.ts","sha256":"8bbeef25e9964acf2ab2f04e68442af14329f48566743783c4e9600746f1ad9c","declarations":5,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0001.jsonl"}
{"path":"src/packages/process-host/src/spawn-process-stdio.test.ts","sha256":"27d9731e1bfd0ff4c159a5f9b22fae4ccd708706d9112ee69859883b1e212e9e","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0001.jsonl"}
-{"path":"src/packages/process-host/src/windows-command-line.test.ts","sha256":"9ddbeb41f7655d4fc927d85f85a4776101b9754f4d7403550009a050b5f6e815","declarations":10,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0001.jsonl"}
-{"path":"src/packages/process-host/src/windows-tree-kill.test.ts","sha256":"5f37d562ab0bce8805e99285e7ae62d4b3093bc6444bd2e938e0bb32688a672f","declarations":8,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0001.jsonl"}
+{"path":"src/packages/process-host/src/windows-command-line.test.ts","sha256":"76dbd68fadf4c0b1c3a2d721dd5990facfcd785dcfdea39edb07d9ea6bee945d","declarations":10,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0001.jsonl"}
+{"path":"src/packages/process-host/src/windows-tree-kill.test.ts","sha256":"0478b29856fdc3cc8b545e9a434610819d00416cb0f4c6c61598d7e90ee725ef","declarations":12,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/upstream-0001.jsonl"}
{"path":"src/preload/api/notification-sound-playback.test.ts","sha256":"ba70425372fee888e1bb38c4a41f0bc8b355e8354f4a0c9e3946353085afa11e","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0002.jsonl"}
{"path":"src/preload/api/platform-bridge.test.ts","sha256":"a5c58d0bbd0e17ce9a8fc94f306f629f8c5188de6283b7496db681c380fb2b0b","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0002.jsonl"}
{"path":"src/preload/api/wsl-hosts-api.test.ts","sha256":"b0ee9cb9a7401962525601cbcec4fc524ad7d5e0ab76de3ffe029b0ccb6811c8","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","review":"reviews/root-0002.jsonl"}
@@ -10908,7 +10911,7 @@
{"path":"src/renderer/src/components/settings/ArtifactsSettingsPane.test.tsx","sha256":"df47557e4f87f3157084794e3f2a691207760f911c876c2cc2bb6567891b15c1","declarations":10,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/renderer/src/components/settings/AutomationsSettingsPane.test.tsx","sha256":"e2df343ceff0ef76b6b8d8caa11495dda3da0ec98b9563c40635cfa7890431d6","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/renderer/src/components/settings/BrowserClientHostedRemoteSetting.test.tsx","sha256":"40a641386037be81de5d66c72085f5af14fb9051e9476ed7e75e936c52f48aa7","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/renderer/src/components/settings/BrowserPane.search-catalog.test.tsx","sha256":"cc25c5e6c8b02514c204ec7eb178948cf55e0860020386e4534cddf778375578","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/renderer/src/components/settings/BrowserPane.search-catalog.test.tsx","sha256":"811ad8cedb1b39c84f71dffaf74bbe1e9840a1271c01d83a7921c739994b1a24","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/renderer/src/components/settings/BrowserPane.test.ts","sha256":"f5aad2c2c46de421bd26cb5a85fcfaffe84a39ab02f4b1be9b8ccf53a4ba63e2","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/renderer/src/components/settings/BrowserSitePermissionsSetting.test.tsx","sha256":"52d201a6aadae05e70713db39d92cd9a7a2439181639a892070b1c6b676e6272","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/renderer/src/components/settings/BrowserSshWorkspaceRoutingSetting.test.tsx","sha256":"bbbfbc4cc426086f06d728958d328ee7403b9dab1d90c270e5f7cf70453bbf76","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
@@ -11048,7 +11051,7 @@
{"path":"src/renderer/src/components/settings/appearance-usage-percentage-search.test.ts","sha256":"b5b07b92bf99525f8b6bc3f939a8da7d77283566fd718627ece9db5c59a1b45e","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/renderer/src/components/settings/bitbucket-integration-card.test.tsx","sha256":"e677a9d88ac24f541e756d1f8de4d6a5f98bcadadd605bd908bc7042527394bc","declarations":5,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/renderer/src/components/settings/browser-link-routing-localization.test.ts","sha256":"87c92d6d492da9bc5f7b5b713d8b153682833a74471f29fca224a94edd34d5b4","declarations":2,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/renderer/src/components/settings/browser-search.test.ts","sha256":"c310d5d53ce7d684e977ad9dd77c9cf49c386c8d16c00583213882db6775b7fe","declarations":13,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/renderer/src/components/settings/browser-search.test.ts","sha256":"fdc65366fedc1c9df294739d5cde4feb724c3a4c609274e7c971f8aedd1830e0","declarations":13,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/renderer/src/components/settings/browser-session-host-selection.test.ts","sha256":"32d3b4ef197c4608a2e7d35151270faf5c5c41c1a686b9c5d1a8071a89938ddc","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/renderer/src/components/settings/bundled-skill-setup-labels.test.tsx","sha256":"8683a1c1a26fed9fbb0c929d385d28275f0de8ecac83cac1a7ff7fb366d79804","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/renderer/src/components/settings/bundled-skill-setup-result-copy.test.ts","sha256":"89fd858064484a865f9a26a4b78f2cef9fe7828f51e3256caae3d84713f4fda7","declarations":10,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
@@ -11167,7 +11170,7 @@
{"path":"src/renderer/src/components/sidebar/CommentMarkdown.growing.test.tsx","sha256":"4dcf61148f37ea7d341be817c4ff50a12b8e323a7fa9175eb09ccf6984473470","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/renderer/src/components/sidebar/CommentMarkdown.link-click.test.tsx","sha256":"4b6890af4197e72eaf497f605cd40b63d59d860d48a0475bef104ed800e1252c","declarations":27,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/renderer/src/components/sidebar/CommentMarkdown.ordered-list.test.tsx","sha256":"bbe7ba682ac33c17aa992d3013fbd1bd70c73a79f5fb3f2bd360d05fa1975167","declarations":7,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/renderer/src/components/sidebar/CommentMarkdown.test.tsx","sha256":"b855b11a1e00812f9aa297f380ced9d73c2178f90f79dd2d0a7b41aac13bb68a","declarations":36,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/renderer/src/components/sidebar/CommentMarkdown.test.tsx","sha256":"e8a4c4af80cba595e07e12cc10fbb97141d0bf1501a234a3b1a2e949dba216a2","declarations":38,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/renderer/src/components/sidebar/CommentMarkdown.word-fade.test.tsx","sha256":"571a5abf3717082364c65ccfd3c487bef75929ef6e6977622d07f8926b0937d2","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/renderer/src/components/sidebar/CommentMermaidBlock.system-theme.test.tsx","sha256":"8aabd50cf5c3cd3784ea2137b0af7bc8c404e4288a59e063a64b72e6aa539eaf","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/renderer/src/components/sidebar/DeleteNestedWorktreesDialog.test.tsx","sha256":"079173f971424ed68350456d809fe5c25f59a2735369fd673fd2f30f7c878cdf","declarations":5,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
@@ -13992,7 +13995,7 @@
{"path":"src/renderer/src/store/slices/browser-webview-cleanup.test.ts","sha256":"82fa700006335d37ddcd3a2d99c9269d9518a11bfdb1dce2251185ee6eabe823","declarations":7,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/renderer/src/store/slices/browser-workspace-doc-location.test.ts","sha256":"587f7c97d37a79a57dbbdaf59a169671dc0e463c32ce7e264eab265df2f0128f","declarations":21,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/renderer/src/store/slices/browser-workspace-host-ownership.test.ts","sha256":"48e1771fe312707f6e48c6589bab2daf537846f8aef69ba4ad0be5adb1b20187","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
-{"path":"src/renderer/src/store/slices/browser.test.ts","sha256":"53bb95614075b9c6539b82cccf8064096aca28f3a07a8113be61e0ad6a4b6945","declarations":25,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/renderer/src/store/slices/browser.test.ts","sha256":"36439c511f5d35e35828fdee2114917b5d1882665dd4db86a1a326c7440f9edd","declarations":26,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/renderer/src/store/slices/browser/browser-hydration-state.test.ts","sha256":"0e895a8664bafeb5fa1efa0f53fe2defe48b8e3554c01b10ef1340e6654cd168","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/renderer/src/store/slices/bulk-worktree-purge-terminal-maps-leak.test.ts","sha256":"298038d903259180d5fc04e086de39bf17757eede5555fe73d2efa2c0b97f20e","declarations":4,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/renderer/src/store/slices/cmd-j-create-actions.test.ts","sha256":"36e81a3c725d7099011a53aedf4ffb6075d0e1781afe844f5262b8a73571692f","declarations":11,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
@@ -14730,6 +14733,7 @@
{"path":"src/shared/browser-network-tunnel-protocol.test.ts","sha256":"f7b540ea4139d6e47a125fbafe8f0b74074bf47024cfc98d7b8a0d240ecc5dd3","declarations":5,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/shared/browser-network-tunnel-stream-framing.test.ts","sha256":"9b731f3efc696b5b174516bc2750e55782ee787f308c7eef9cbb9fe8c2707f36","declarations":13,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/shared/browser-page-zoom.test.ts","sha256":"a71aac62969f29dff8d7940cb1ef2f8204c39d9edbe60b202da0b792ef85856d","declarations":3,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
+{"path":"src/shared/browser-profile-scope.test.ts","sha256":"2783d81222a54b2c7598aac58fa819c68a874c25e1e610835e46c5868dc974fc","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/shared/browser-screencast-protocol.test.ts","sha256":"714117e4e49bffa4c7c72b00dc9182012b7deb42db10f0fb135aafd7179cacde","declarations":10,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/shared/browser-url.test.ts","sha256":"479be8508a2c057b3eab6464c03f431fe6348cf970c0b52c3ffff7a739bf23af","declarations":27,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
{"path":"src/shared/bundled-ripgrep.test.ts","sha256":"73f266c06609baccf839078d823aea120904712c7b633609ec9dcc1a0fe489df","declarations":1,"signals":["named","declarations","ci-unit"],"status":"unreviewed"}
diff --git a/docs/audits/test-value/progress.json b/docs/audits/test-value/progress.json
index c0fc77be166..2b94076c385 100644
--- a/docs/audits/test-value/progress.json
+++ b/docs/audits/test-value/progress.json
@@ -1,15 +1,15 @@
{
- "source_commit": "d52d8aa2d457aec1d4f09781cf077ec7d4191ac5",
- "scanned_source_files": 37099,
+ "source_commit": "41b5cf015be7970a23e91d4ce76d52d781db4e1b",
+ "scanned_source_files": 37112,
"counts": {
- "files": 16965,
- "declarations": 118924,
- "reviewed": 1020,
+ "files": 16969,
+ "declarations": 118926,
+ "reviewed": 1137,
"stale": 0,
- "unreviewed": 15945,
+ "unreviewed": 15832,
"removed": 15
},
- "reviewed_original_declarations": 7420,
+ "reviewed_original_declarations": 8117,
"areas": {
".github": {
"files": 3,
@@ -24,10 +24,10 @@
"unreviewed": 0
},
"config": {
- "files": 606,
- "reviewed": 283,
+ "files": 607,
+ "reviewed": 333,
"stale": 0,
- "unreviewed": 323
+ "unreviewed": 274
},
"docs": {
"files": 106,
@@ -36,10 +36,10 @@
"unreviewed": 0
},
"mobile": {
- "files": 1265,
+ "files": 1266,
"reviewed": 279,
"stale": 0,
- "unreviewed": 986
+ "unreviewed": 987
},
"native": {
"files": 17,
@@ -49,15 +49,15 @@
},
"src/cli": {
"files": 185,
- "reviewed": 51,
+ "reviewed": 67,
"stale": 0,
- "unreviewed": 134
+ "unreviewed": 118
},
"src/main": {
- "files": 6626,
- "reviewed": 1,
+ "files": 6627,
+ "reviewed": 52,
"stale": 0,
- "unreviewed": 6625
+ "unreviewed": 6575
},
"src/packages": {
"files": 16,
@@ -78,10 +78,10 @@
"unreviewed": 5407
},
"src/shared": {
- "files": 1300,
+ "files": 1301,
"reviewed": 4,
"stale": 0,
- "unreviewed": 1296
+ "unreviewed": 1297
},
"src/wsl-guest": {
"files": 45,
diff --git a/docs/audits/test-value/reviews/audit-0007-integration-validation.json b/docs/audits/test-value/reviews/audit-0007-integration-validation.json
new file mode 100644
index 00000000000..4461ec04b58
--- /dev/null
+++ b/docs/audits/test-value/reviews/audit-0007-integration-validation.json
@@ -0,0 +1,102 @@
+{
+ "batch": "audit-0007-integration",
+ "merge_commit": "41b5cf015be7970a23e91d4ce76d52d781db4e1b",
+ "main_baseline": "2570d8fa5cf2df8a869ee7ba88d68822e03e4e6a",
+ "production_changes": false,
+ "new_reviewed_files": 117,
+ "original_case_records": 767,
+ "source_diff": {
+ "files": 68,
+ "added_lines": 1089,
+ "removed_lines": 947,
+ "net_lines": 142
+ },
+ "dependencies": {
+ "mobile_previous_symlink": {
+ "symlink": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7/mobile/node_modules",
+ "target": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-6/mobile/node_modules"
+ },
+ "shared_target_preserved": true,
+ "isolated_current_install": "pnpm --dir mobile install --frozen-lockfile --ignore-scripts",
+ "postinstall": "ORCA_BACKGROUND_LAUNCH=1 pnpm --dir mobile run postinstall",
+ "tracked_lockfile_changes": false
+ },
+ "checks": [
+ {
+ "command": [
+ "pnpm",
+ "test",
+ "config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs",
+ "config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs",
+ "config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs",
+ "config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs",
+ "config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs",
+ "config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs",
+ "config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs",
+ "config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs",
+ "config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs",
+ "config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs",
+ "config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs",
+ "config/scripts/mobile-web-bundle-manifest.test.mjs",
+ "config/scripts/mobile-web-bundle-serializer-parity.test.mjs",
+ "config/scripts/mobile-web-page-routes.test.mjs",
+ "config/scripts/mobile-web-terminal-engine-closure.test.mjs",
+ "--maxWorkers=2",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-audit-7-postmerge-mobile-tests.json"
+ ],
+ "result": "15 test files / 160 tests passed; zero failed/skipped; Chromium and WebKit",
+ "report": "/tmp/orca-audit-7-postmerge-mobile-tests.json",
+ "report_sha256": "57cb88e5ea2c834bc49b10318f4f685c144dbbcd0f6ffd52dc169d29794b7c83",
+ "log": "/tmp/orca-audit-7-postmerge-mobile-tests.log",
+ "log_sha256": "c86ba7be81fc1b379bfabefae3ee3f73e8f7ea691cc909aa2ebfd749a21d74cf"
+ },
+ {
+ "command": "ORCA_CODE_QUALITY_BASE=2570d8fa5cf2df8a869ee7ba88d68822e03e4e6a pnpm run check:code-quality:changed",
+ "result": "passed; zero new findings across all six scans and casting rationale check",
+ "log": "/tmp/orca-audit-7-postmerge-code-quality.log",
+ "log_sha256": "025053e7242c848cfbf32e043373d2262f257f586ac26c2518330668778892a8"
+ }
+ ],
+ "limits": [
+ "Mobile WebKit uses the existing isolated compatibility wrapper under /tmp; the shared browser cache remains unchanged.",
+ "Earlier focused suite, mutation and typecheck results remain in the individual batch validations at their recorded source hashes. Upstream comment-only changes are superseded by upstream-0002 through upstream-0004.",
+ "Native Windows/macOS behavior requires CI; local evidence is Linux. The comprehensive audit remains incomplete."
+ ],
+ "tracker_checkpoint": {
+ "counts": {
+ "files": 16969,
+ "declarations": 118926,
+ "reviewed": 1137,
+ "stale": 0,
+ "unreviewed": 15832,
+ "removed": 15
+ },
+ "reviewed_original_declarations": 8117,
+ "errors": [],
+ "superseding_records": 47,
+ "superseding_distinct_files": 46
+ },
+ "superseding_record_counts": {
+ "upstream-0001": {
+ "files": 10,
+ "cases": 87
+ },
+ "upstream-0002": {
+ "files": 8,
+ "cases": 88
+ },
+ "upstream-0003": {
+ "files": 10,
+ "cases": 105
+ },
+ "upstream-0004": {
+ "files": 18,
+ "cases": 185
+ },
+ "upstream-0005": {
+ "files": 1,
+ "cases": 18
+ }
+ }
+}
diff --git a/docs/audits/test-value/reviews/config-0007-validation.json b/docs/audits/test-value/reviews/config-0007-validation.json
new file mode 100644
index 00000000000..302984193c4
--- /dev/null
+++ b/docs/audits/test-value/reviews/config-0007-validation.json
@@ -0,0 +1,990 @@
+{
+ "ordinary_tests": {
+ "files": 22,
+ "tests": 403,
+ "skipped": 0,
+ "scope": "22 changed Vitest files only; no claim that all selected keep files were executed"
+ },
+ "html_engines": ["chromium", "webkit"],
+ "benchmark": {
+ "cases": 6,
+ "checksum": 65556726511,
+ "capped_calibrations": 0,
+ "runtime_ms": 12262,
+ "performance_claim": false
+ },
+ "validation": [
+ {
+ "name": "nonbrowser",
+ "result": "pass",
+ "log": "/tmp/orca-config-0007-nonbrowser.log",
+ "log_sha256": "22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"
+ },
+ {
+ "name": "post-mutation-normal",
+ "result": "pass",
+ "log": "/tmp/orca-config-0007-post-mutation-normal.log",
+ "log_sha256": "b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"
+ },
+ {
+ "name": "native-guards-final",
+ "result": "pass",
+ "log": "/tmp/orca-config-0007-native-guards-final.log",
+ "log_sha256": "106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"
+ },
+ {
+ "name": "mobile",
+ "result": "pass",
+ "log": "/tmp/orca-config-0007-mobile-generated.log",
+ "log_sha256": "f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"
+ },
+ {
+ "name": "html-both-engines",
+ "result": "pass",
+ "log": "/tmp/orca-config-0007-html-both-engines.log",
+ "log_sha256": "f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"
+ },
+ {
+ "name": "benchmark",
+ "result": "pass",
+ "log": "/tmp/orca-config-0007-live-session-benchmark-final.log",
+ "log_sha256": "ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"
+ },
+ {
+ "name": "typecheck",
+ "result": "pass",
+ "log": "/tmp/orca-config-0007-typecheck-final.log",
+ "log_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ {
+ "name": "oxfmt",
+ "result": "pass",
+ "log": "/tmp/orca-config-0007-oxfmt-final.log",
+ "log_sha256": "f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"
+ },
+ {
+ "name": "oxlint",
+ "result": "pass",
+ "log": "/tmp/orca-config-0007-oxlint-final.log",
+ "log_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ }
+ ],
+ "mutation_results": [
+ {
+ "name": "asset-valid-wrong-digest",
+ "reason": "Independent known digest rejects another valid64-character digest.",
+ "baseline_hashes": {
+ "config/scripts/mobile-web-bundle-manifest.mjs": "b3bd6d823add34d5e9c137a491731b19c6f6f3dd7637abb61578667332b9dbf1"
+ },
+ "test": "config/scripts/mobile-web-bundle-manifest.test.mjs",
+ "pattern": "names an asset by its own digest",
+ "log": "/tmp/orca-config-0007-mutation-asset-valid-wrong-digest.log",
+ "command": [
+ "pnpm",
+ "test",
+ "config/scripts/mobile-web-bundle-manifest.test.mjs",
+ "-t",
+ "names an asset by its own digest",
+ "--maxWorkers=1"
+ ],
+ "seconds": 2.37,
+ "exit_code": 1,
+ "assertion_failure_seen": true,
+ "expected_failure_seen": true,
+ "failed_tests": ["1 failed | 6 skipped (7)"],
+ "restored_hashes": {
+ "config/scripts/mobile-web-bundle-manifest.mjs": "b3bd6d823add34d5e9c137a491731b19c6f6f3dd7637abb61578667332b9dbf1"
+ },
+ "restored": true,
+ "log_sha256": "4ee082d0c4a72b4682f2733bdda6e86a337718097eb7e79f9f3edf115bd55aa9"
+ },
+ {
+ "name": "asset-valid-wrong-mime",
+ "reason": "Independent MIME rejects another syntactically valid type.",
+ "baseline_hashes": {
+ "config/scripts/mobile-web-bundle-manifest.mjs": "b3bd6d823add34d5e9c137a491731b19c6f6f3dd7637abb61578667332b9dbf1"
+ },
+ "test": "config/scripts/mobile-web-bundle-manifest.test.mjs",
+ "pattern": "names an asset by its own digest",
+ "log": "/tmp/orca-config-0007-mutation-asset-valid-wrong-mime.log",
+ "command": [
+ "pnpm",
+ "test",
+ "config/scripts/mobile-web-bundle-manifest.test.mjs",
+ "-t",
+ "names an asset by its own digest",
+ "--maxWorkers=1"
+ ],
+ "seconds": 3.52,
+ "exit_code": 1,
+ "assertion_failure_seen": true,
+ "expected_failure_seen": true,
+ "failed_tests": ["1 failed | 6 skipped (7)"],
+ "restored_hashes": {
+ "config/scripts/mobile-web-bundle-manifest.mjs": "b3bd6d823add34d5e9c137a491731b19c6f6f3dd7637abb61578667332b9dbf1"
+ },
+ "restored": true,
+ "log_sha256": "bab795abb17393b2d426608bd0f0dd782847037583c7ed98f7fe273312f0cd49"
+ },
+ {
+ "name": "manifest-valid-wrong-page-version",
+ "reason": "Contract comparison rejects another nonnegative page version.",
+ "baseline_hashes": {
+ "config/scripts/mobile-web-bundle-manifest.mjs": "b3bd6d823add34d5e9c137a491731b19c6f6f3dd7637abb61578667332b9dbf1"
+ },
+ "test": "config/scripts/mobile-web-bundle-manifest.test.mjs",
+ "pattern": "stamps the page version",
+ "log": "/tmp/orca-config-0007-mutation-manifest-valid-wrong-page-version.log",
+ "command": [
+ "pnpm",
+ "test",
+ "config/scripts/mobile-web-bundle-manifest.test.mjs",
+ "-t",
+ "stamps the page version",
+ "--maxWorkers=1"
+ ],
+ "seconds": 2.57,
+ "exit_code": 1,
+ "assertion_failure_seen": true,
+ "expected_failure_seen": true,
+ "failed_tests": ["1 failed | 6 skipped (7)"],
+ "restored_hashes": {
+ "config/scripts/mobile-web-bundle-manifest.mjs": "b3bd6d823add34d5e9c137a491731b19c6f6f3dd7637abb61578667332b9dbf1"
+ },
+ "restored": true,
+ "log_sha256": "e2d112511c287891d669ab57f6fe69eee319ea2465c0eb200e4be2f40bcd555c"
+ },
+ {
+ "name": "all-serializers-shared-wrong-key-order",
+ "reason": "An identical ordering defect in all three serializers evades parity but fails independent string.",
+ "baseline_hashes": {
+ "config/scripts/mobile-web-bundle-manifest.mjs": "b3bd6d823add34d5e9c137a491731b19c6f6f3dd7637abb61578667332b9dbf1",
+ "config/scripts/verify-packaged-mobile-web-bundle.cjs": "7c0cbaa4e4802b905c1f348745654e15765360728f821b913e90e66b67d30bf2",
+ "src/shared/mobile-web-bundle/manifest-contract.ts": "81678aea2b6083ce199c7932fed86a1683f1c978e71b7419a4128ffd2275f430"
+ },
+ "test": "config/scripts/mobile-web-bundle-serializer-parity.test.mjs",
+ "pattern": "emit exactly path",
+ "log": "/tmp/orca-config-0007-mutation-all-serializers-shared-wrong-key-order.log",
+ "command": [
+ "pnpm",
+ "test",
+ "config/scripts/mobile-web-bundle-serializer-parity.test.mjs",
+ "-t",
+ "emit exactly path",
+ "--maxWorkers=1"
+ ],
+ "seconds": 2.57,
+ "exit_code": 1,
+ "assertion_failure_seen": true,
+ "expected_failure_seen": true,
+ "failed_tests": ["1 failed | 5 skipped (6)"],
+ "restored_hashes": {
+ "config/scripts/mobile-web-bundle-manifest.mjs": "b3bd6d823add34d5e9c137a491731b19c6f6f3dd7637abb61578667332b9dbf1",
+ "config/scripts/verify-packaged-mobile-web-bundle.cjs": "7c0cbaa4e4802b905c1f348745654e15765360728f821b913e90e66b67d30bf2",
+ "src/shared/mobile-web-bundle/manifest-contract.ts": "81678aea2b6083ce199c7932fed86a1683f1c978e71b7419a4128ffd2275f430"
+ },
+ "restored": true,
+ "log_sha256": "fbec61067d42750dca6a386cad7f62cfd0252e9fc71c6b2b49ee0f0036245c44"
+ },
+ {
+ "name": "oxlint-wrong-rule-same-diagnostic-count",
+ "reason": "Swapped rule identities preserve one diagnostic and must fail exact expected rule codes.",
+ "baseline_hashes": {
+ "config/oxlint-plugins/native-chat-design-tokens.mjs": "c937ece9db881404e984902960ba77a9d0d0270a78163567b67b71d135657b98"
+ },
+ "test": "config/scripts/native-chat-design-tokens-plugin.test.mjs",
+ "pattern": "reports",
+ "log": "/tmp/orca-config-0007-mutation-oxlint-wrong-rule-same-diagnostic-count.log",
+ "command": [
+ "pnpm",
+ "test",
+ "config/scripts/native-chat-design-tokens-plugin.test.mjs",
+ "-t",
+ "reports",
+ "--maxWorkers=1"
+ ],
+ "seconds": 2.47,
+ "exit_code": 1,
+ "assertion_failure_seen": true,
+ "expected_failure_seen": true,
+ "failed_tests": ["6 failed | 1 passed | 7 skipped (14)"],
+ "restored_hashes": {
+ "config/oxlint-plugins/native-chat-design-tokens.mjs": "c937ece9db881404e984902960ba77a9d0d0270a78163567b67b71d135657b98"
+ },
+ "restored": true,
+ "log_sha256": "48cfc4969d4af802ec4cc4b12b67b9cd21eb010a840b2fe074b73b27e3b454ab"
+ },
+ {
+ "name": "eligibility-ignores-should-run",
+ "reason": "Inert should_run token must fail should_run=false contexts.",
+ "baseline_hashes": {
+ ".github/workflows/node-server-tests.yml": "ce215d47f979273576716afb04f06a82975d34ff7c2617a48ecebebfb47256e4"
+ },
+ "test": "config/scripts/node-server-concurrency.test.mjs",
+ "pattern": "only supersedes eligible",
+ "log": "/tmp/orca-config-0007-mutation-eligibility-ignores-should-run.log",
+ "command": [
+ "pnpm",
+ "test",
+ "config/scripts/node-server-concurrency.test.mjs",
+ "-t",
+ "only supersedes eligible",
+ "--maxWorkers=1"
+ ],
+ "seconds": 2.22,
+ "exit_code": 1,
+ "assertion_failure_seen": true,
+ "expected_failure_seen": true,
+ "failed_tests": ["4 failed | 3 skipped (7)"],
+ "restored_hashes": {
+ ".github/workflows/node-server-tests.yml": "ce215d47f979273576716afb04f06a82975d34ff7c2617a48ecebebfb47256e4"
+ },
+ "restored": true,
+ "log_sha256": "e1da2f1550adbb17d79fc1b917758819a0cc3d28de2898fa2b39bfea0e838857"
+ },
+ {
+ "name": "upload-token-in-inert-condition",
+ "reason": "An inert Windows lane token must fail the template upload positive context.",
+ "baseline_hashes": {
+ ".github/workflows/node-server-tests.yml": "ce215d47f979273576716afb04f06a82975d34ff7c2617a48ecebebfb47256e4"
+ },
+ "test": "config/scripts/node-server-fast-runners.test.mjs",
+ "pattern": "still builds and uploads",
+ "log": "/tmp/orca-config-0007-mutation-upload-token-in-inert-condition.log",
+ "command": [
+ "pnpm",
+ "test",
+ "config/scripts/node-server-fast-runners.test.mjs",
+ "-t",
+ "still builds and uploads",
+ "--maxWorkers=1"
+ ],
+ "seconds": 2.47,
+ "exit_code": 1,
+ "assertion_failure_seen": true,
+ "expected_failure_seen": true,
+ "failed_tests": ["1 failed | 12 skipped (13)"],
+ "restored_hashes": {
+ ".github/workflows/node-server-tests.yml": "ce215d47f979273576716afb04f06a82975d34ff7c2617a48ecebebfb47256e4"
+ },
+ "restored": true,
+ "log_sha256": "121eaf44ae0a251b41eea14771169f4ac666c10351cb120faad11577963c9040"
+ },
+ {
+ "name": "security-upload-without-builder",
+ "reason": "Missing builder context must reject an upload without hashFiles gate.",
+ "baseline_hashes": {
+ ".github/workflows/node-server-tests.yml": "ce215d47f979273576716afb04f06a82975d34ff7c2617a48ecebebfb47256e4"
+ },
+ "test": "config/scripts/node-server-fast-runners.test.mjs",
+ "pattern": "still builds and uploads",
+ "log": "/tmp/orca-config-0007-mutation-security-upload-without-builder.log",
+ "command": [
+ "pnpm",
+ "test",
+ "config/scripts/node-server-fast-runners.test.mjs",
+ "-t",
+ "still builds and uploads",
+ "--maxWorkers=1"
+ ],
+ "seconds": 2.67,
+ "exit_code": 1,
+ "assertion_failure_seen": true,
+ "expected_failure_seen": true,
+ "failed_tests": ["1 failed | 12 skipped (13)"],
+ "restored_hashes": {
+ ".github/workflows/node-server-tests.yml": "ce215d47f979273576716afb04f06a82975d34ff7c2617a48ecebebfb47256e4"
+ },
+ "restored": true,
+ "log_sha256": "4720d229d6c08e61e0252053d689ddb78fa11d4aa43269c741bb75b30a495054"
+ },
+ {
+ "name": "native-runtime-platform-branches-swapped",
+ "reason": "Actual evaluation must reject inverted Windows/non-Windows native runtime choices.",
+ "baseline_hashes": {
+ ".github/workflows/node-server-tests.yml": "ce215d47f979273576716afb04f06a82975d34ff7c2617a48ecebebfb47256e4"
+ },
+ "test": "config/scripts/node-server-release-parallelism.test.mjs",
+ "pattern": "avoids template download-cache",
+ "log": "/tmp/orca-config-0007-mutation-native-runtime-platform-branches-swapped.log",
+ "command": [
+ "pnpm",
+ "test",
+ "config/scripts/node-server-release-parallelism.test.mjs",
+ "-t",
+ "avoids template download-cache",
+ "--maxWorkers=1"
+ ],
+ "seconds": 2.67,
+ "exit_code": 1,
+ "assertion_failure_seen": true,
+ "expected_failure_seen": true,
+ "failed_tests": ["1 failed | 17 skipped (18)"],
+ "restored_hashes": {
+ ".github/workflows/node-server-tests.yml": "ce215d47f979273576716afb04f06a82975d34ff7c2617a48ecebebfb47256e4"
+ },
+ "restored": true,
+ "log_sha256": "cbcdf83983f46363c96c94b699087b6b97fca279161e56bae006c5f4025032cd"
+ },
+ {
+ "name": "native-skip-admitted-for-all-callers",
+ "reason": "An inert PR-only token must fail push/template/explicit-ref caller contexts.",
+ "baseline_hashes": {
+ ".github/workflows/node-server-tests.yml": "ce215d47f979273576716afb04f06a82975d34ff7c2617a48ecebebfb47256e4"
+ },
+ "test": "config/scripts/node-server-native-compat-scope.test.mjs",
+ "pattern": "limits test-only native skip",
+ "log": "/tmp/orca-config-0007-mutation-native-skip-admitted-for-all-callers.log",
+ "command": [
+ "pnpm",
+ "test",
+ "config/scripts/node-server-native-compat-scope.test.mjs",
+ "-t",
+ "limits test-only native skip",
+ "--maxWorkers=1"
+ ],
+ "seconds": 2.37,
+ "exit_code": 1,
+ "assertion_failure_seen": true,
+ "expected_failure_seen": true,
+ "failed_tests": ["1 failed | 81 skipped (82)"],
+ "restored_hashes": {
+ ".github/workflows/node-server-tests.yml": "ce215d47f979273576716afb04f06a82975d34ff7c2617a48ecebebfb47256e4"
+ },
+ "restored": true,
+ "log_sha256": "b97bc234318a941eeb12f4d642ae23b1bd478b2f36dba8285a02941c75635bcb"
+ },
+ {
+ "name": "one-session-method-wrong-worktree",
+ "reason": "Corrupt only session.tabs.list while other methods still name expected worktree; per-method oracle must fail.",
+ "baseline_hashes": {
+ "mobile/src/session/mobile-session-tabs-stream-health.ts": "033954c19ef5cac816d6437febc6f844ad7ce3d6c0d46b9914b34666d05847b4"
+ },
+ "test": "config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs",
+ "pattern": "asks the desktop for the session",
+ "log": "/tmp/orca-config-0007-mutation-one-session-method-wrong-worktree.log",
+ "command": [
+ "pnpm",
+ "test",
+ "config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs",
+ "-t",
+ "asks the desktop for the session",
+ "--maxWorkers=1"
+ ],
+ "seconds": 4.63,
+ "exit_code": 1,
+ "assertion_failure_seen": true,
+ "expected_failure_seen": true,
+ "failed_tests": ["1 failed | 6 skipped (7)"],
+ "restored_hashes": {
+ "mobile/src/session/mobile-session-tabs-stream-health.ts": "033954c19ef5cac816d6437febc6f844ad7ce3d6c0d46b9914b34666d05847b4"
+ },
+ "restored": true,
+ "log_sha256": "7d137ab06be7ba4ed1cf3ec1a7a6c07e67667dde4c24f4d6d431223d198090bb"
+ },
+ {
+ "name": "preview-submit-selector-never-clicks",
+ "reason": "Sealed form absence must fail when the action never runs; both engines.",
+ "baseline_hashes": {
+ "config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs": "8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"
+ },
+ "test": "config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs",
+ "pattern": "hands up nothing without a tap",
+ "log": "/tmp/orca-config-0007-mutation-preview-submit-selector-never-clicks.log",
+ "command": [
+ "pnpm",
+ "test",
+ "config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs",
+ "-t",
+ "hands up nothing without a tap",
+ "--maxWorkers=1"
+ ],
+ "seconds": 9.39,
+ "exit_code": 1,
+ "assertion_failure_seen": true,
+ "expected_failure_seen": true,
+ "failed_tests": ["2 failed | 28 skipped (30)"],
+ "restored_hashes": {
+ "config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs": "8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"
+ },
+ "restored": true,
+ "log_sha256": "9af41207a545ab418fcba4d717aefac76fce5f126a977b5d5253a91e424ff6c9"
+ },
+ {
+ "name": "preview-popup-selector-never-clicks",
+ "reason": "Sealed popup absence must fail when the action never runs; both engines.",
+ "baseline_hashes": {
+ "config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs": "8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"
+ },
+ "test": "config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs",
+ "pattern": "hands up nothing without a tap",
+ "log": "/tmp/orca-config-0007-mutation-preview-popup-selector-never-clicks.log",
+ "command": [
+ "pnpm",
+ "test",
+ "config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs",
+ "-t",
+ "hands up nothing without a tap",
+ "--maxWorkers=1"
+ ],
+ "seconds": 9.75,
+ "exit_code": 1,
+ "assertion_failure_seen": true,
+ "expected_failure_seen": true,
+ "failed_tests": ["2 failed | 28 skipped (30)"],
+ "restored_hashes": {
+ "config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs": "8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"
+ },
+ "restored": true,
+ "log_sha256": "f8cfeca9d220c1cb2101f5cf0f99f66c1b222bf754cef41af529866bffa0d0b8"
+ },
+ {
+ "name": "preview-positive-form-remains-sealed",
+ "reason": "Form positive arm must detect lost form capability; both engines. Use the no-navigation settle path to reach the independent top-navigation count assertion after the first attempt failed at the bounded navigation precondition.",
+ "baseline_hashes": {
+ "config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs": "8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"
+ },
+ "test": "config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs",
+ "pattern": "hands up nothing without a tap",
+ "log": "/tmp/orca-config-0007-mutation-preview-positive-form-remains-sealed-attempt2.log",
+ "command": [
+ "pnpm",
+ "test",
+ "config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs",
+ "-t",
+ "hands up nothing without a tap",
+ "--maxWorkers=1"
+ ],
+ "seconds": 6.64,
+ "exit_code": 1,
+ "assertion_failure_seen": true,
+ "expected_failure_seen": true,
+ "failed_tests": ["2 failed | 28 skipped (30)"],
+ "restored_hashes": {
+ "config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs": "8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"
+ },
+ "restored": true,
+ "log_sha256": "5b31454b6cfd41445b4c3bdebf943367ad1ad1a60a1ba2b4894e234c88d4b061"
+ },
+ {
+ "name": "preview-positive-popup-remains-sealed",
+ "reason": "Popup positive arm must detect lost popup capability; both engines.",
+ "baseline_hashes": {
+ "config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs": "8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"
+ },
+ "test": "config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs",
+ "pattern": "hands up nothing without a tap",
+ "log": "/tmp/orca-config-0007-mutation-preview-positive-popup-remains-sealed.log",
+ "command": [
+ "pnpm",
+ "test",
+ "config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs",
+ "-t",
+ "hands up nothing without a tap",
+ "--maxWorkers=1"
+ ],
+ "seconds": 27.07,
+ "exit_code": 1,
+ "assertion_failure_seen": true,
+ "expected_failure_seen": true,
+ "failed_tests": ["2 failed | 28 skipped (30)"],
+ "restored_hashes": {
+ "config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs": "8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"
+ },
+ "restored": true,
+ "log_sha256": "25a8c0d33be8dfaa0eacfd90abd06d166d8e0a57b8ddea2a687aecdf5b9993c4"
+ }
+ ],
+ "mutation_status": "complete:15 expected failures,all sources restored",
+ "mutation_attempt_history": [
+ {
+ "name": "dependency-probe-skips",
+ "result": "superseded",
+ "detail": "Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.",
+ "log": "/tmp/orca-config-0007-mobile-available.log",
+ "log_sha256": "15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"
+ },
+ {
+ "name": "missing-generated-assets-and-webkit-libraries",
+ "result": "superseded-failure",
+ "detail": "After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.",
+ "log": "/tmp/orca-config-0007-mobile-full.log",
+ "log_sha256": "bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"
+ },
+ {
+ "name": "postinstall-preflight",
+ "result": "completed-with-preflight-warning",
+ "detail": "pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.",
+ "log": "/tmp/orca-config-0007-mobile-postinstall.log",
+ "log_sha256": "f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"
+ },
+ {
+ "name": "focused-typecheck-initial",
+ "result": "superseded-failure",
+ "detail": "Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.",
+ "log": "/tmp/orca-config-0007-typecheck.log",
+ "log_sha256": "983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"
+ },
+ {
+ "name": "initial-benchmark",
+ "result": "passed-earlier-state",
+ "detail": "The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.",
+ "log": "/tmp/orca-config-0007-live-session-benchmark.log",
+ "log_sha256": "950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"
+ },
+ {
+ "name": "webkit-install-probe",
+ "result": "setup-only",
+ "detail": "Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.",
+ "log": "/tmp/orca-config-0007-webkit-install.log",
+ "log_sha256": "9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"
+ },
+ {
+ "name": "form-mutation-bounded-readiness",
+ "result": "targeted-failure-rejected-by-strict-runner",
+ "detail": "Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.",
+ "log": "/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log",
+ "log_sha256": "6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"
+ }
+ ],
+ "pre_mutation_artifacts": "/tmp/orca-config-0007-premutation-final-artifacts",
+ "mutation_window_release": "/tmp/orca-config-0007-mutation-window-release.json",
+ "mutation_plan": "/tmp/orca-config-0007-mutation-plan.json",
+ "runner_limits": [
+ "Linux host; actual Windows/macOS builds, PowerShell Restricted-policy execution and native mobile device behavior were not exercised.",
+ "Workflow tests evaluate source expressions and configuration; they do not execute GitHub Actions jobs or packaged chat.",
+ "Headless WebKit uses an isolated /tmp browser-cache wrapper with existing extracted Ubuntu ICU/XML/flite libraries; the shared installed browser cache was unchanged.",
+ "mobile/node_modules is a gitignored symlink to audit-6 dependencies after exact package.json and lockfile comparison. Generated mobile postinstall outputs are ignored.",
+ "The initial dependency-only run skipped107 tests; a subsequent run exposed missing generated outputs/WebKit libraries. Those setup failures are superseded by successful final 403 ordinary tests with0 skips.",
+ "Retained tool-pairing/provider benchmarks resolve transitive imports from the current checkout, so no historical whole-graph isolation is claimed."
+ ],
+ "integrity": {
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "selected_files": 50,
+ "changed_files": 23,
+ "unchanged_keep_files": 27,
+ "original_declarations": 310,
+ "current_declarations": 307,
+ "original_controls": 971,
+ "original_source_occurrences": 1959,
+ "all_original_control_metadata_preserved": true,
+ "all_original_occurrences_attributed": true,
+ "current_parameter_tables": 66,
+ "current_parameter_source_rows": 361,
+ "all_current_table_slices_exact": true,
+ "completed_mutation_checks": 15,
+ "all_mutation_sources_restored": true,
+ "records": [
+ {
+ "path": "config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "1390c983b2c9a014ab9eff2c166a8e43eb3e893000c57ff01568a1d6a1242942",
+ "reviewed_sha256": "42a74010b51c7f8b92056073140bd4237d963423443eba8c28de1c2ec0a7b393",
+ "decision": "fix",
+ "current_declarations": 6
+ },
+ {
+ "path": "config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "e2ccef36da2ee3e2e71ec69af9702e599332dd05931b3492ce7a0ee96c0ebb24",
+ "reviewed_sha256": "4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2",
+ "decision": "fix",
+ "current_declarations": 7
+ },
+ {
+ "path": "config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "f14c7b227f7c149c9b6adb6a845747f5d76a239834fb2dd59905fe78c6004d37",
+ "reviewed_sha256": "2be0f5134cfdef0a2b81f1c669e4f2d43e0a580c51613b3806d23ac244b35fbe",
+ "decision": "fix",
+ "current_declarations": 5
+ },
+ {
+ "path": "config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "905a52b32b2789bc7c89ba9955bd48b1774e1c5a3ae341d4d8d5d4176b66d953",
+ "reviewed_sha256": "905a52b32b2789bc7c89ba9955bd48b1774e1c5a3ae341d4d8d5d4176b66d953",
+ "decision": "keep",
+ "current_declarations": 2
+ },
+ {
+ "path": "config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "4290104097470d5b2dafb4006065504e3810a4c4099dff5fd5bd4123b05e60fb",
+ "reviewed_sha256": "4290104097470d5b2dafb4006065504e3810a4c4099dff5fd5bd4123b05e60fb",
+ "decision": "keep",
+ "current_declarations": 1
+ },
+ {
+ "path": "config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "d5cabd18489360f180518a20341965f2b18ebe5b6bc18351fbd035ae07e13690",
+ "reviewed_sha256": "1fd979a2d977549c81034d71de182808cd33de141ab58f006d4d2b841847b7d6",
+ "decision": "fix",
+ "current_declarations": 5
+ },
+ {
+ "path": "config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "66cd644a6bc773693f62577e0297ef3fcffb28f4eb4239af332fa916e371f1e5",
+ "reviewed_sha256": "66cd644a6bc773693f62577e0297ef3fcffb28f4eb4239af332fa916e371f1e5",
+ "decision": "keep",
+ "current_declarations": 1
+ },
+ {
+ "path": "config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "4c986c4f0a441e406b23249d12dad4692639dd5891e1887fe16042aac7588de4",
+ "reviewed_sha256": "8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1",
+ "decision": "fix",
+ "current_declarations": 4
+ },
+ {
+ "path": "config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06",
+ "reviewed_sha256": "c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06",
+ "decision": "keep",
+ "current_declarations": 18
+ },
+ {
+ "path": "config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79",
+ "reviewed_sha256": "c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79",
+ "decision": "keep",
+ "current_declarations": 7
+ },
+ {
+ "path": "config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "210ad8f33041d59def8a6abce804d8c6c7882a9c308a8943712bc8dc68548c5a",
+ "reviewed_sha256": "d81f3c4f60d384a64b77f93974788955169e27e4be0557379a40fd21423f0344",
+ "decision": "fix",
+ "current_declarations": 4
+ },
+ {
+ "path": "config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e",
+ "reviewed_sha256": "038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e",
+ "decision": "keep",
+ "current_declarations": 3
+ },
+ {
+ "path": "config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "ac1d2e0aa5981b93576fc149bf9729bda291d679f59ca3eb12fbd98a2230c334",
+ "reviewed_sha256": "ac1d2e0aa5981b93576fc149bf9729bda291d679f59ca3eb12fbd98a2230c334",
+ "decision": "keep",
+ "current_declarations": 2
+ },
+ {
+ "path": "config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb",
+ "reviewed_sha256": "1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb",
+ "decision": "keep",
+ "current_declarations": 12
+ },
+ {
+ "path": "config/scripts/mobile-web-app/mobile-web-app-terminal-render-fixture.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "fa9840c66987e6dfa004df2c587f104c74b63b1cfa8b09fe5bf13506ed5a5cbe",
+ "reviewed_sha256": "fa9840c66987e6dfa004df2c587f104c74b63b1cfa8b09fe5bf13506ed5a5cbe",
+ "decision": "keep",
+ "current_declarations": 1
+ },
+ {
+ "path": "config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "db68d061cefd733afd2dcd1b74183c1c81390fd49d0cce5ca676b7cce32a0490",
+ "reviewed_sha256": "9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514",
+ "decision": "fix",
+ "current_declarations": 12
+ },
+ {
+ "path": "config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "86eeaf78678841e574c3a096b1b6bee3fd2bd6f0625c415a181b04dcf50b004d",
+ "reviewed_sha256": "86eeaf78678841e574c3a096b1b6bee3fd2bd6f0625c415a181b04dcf50b004d",
+ "decision": "keep",
+ "current_declarations": 1
+ },
+ {
+ "path": "config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "30200c6e1a131423c6b065761ecd4deee282c6c74d2034aeab5055c20e26ed06",
+ "reviewed_sha256": "30200c6e1a131423c6b065761ecd4deee282c6c74d2034aeab5055c20e26ed06",
+ "decision": "keep",
+ "current_declarations": 1
+ },
+ {
+ "path": "config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "cb2b2b9f42b17cdcf0095b9e85be057f3c1a585e22fa28b730351c740ec49787",
+ "reviewed_sha256": "ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636",
+ "decision": "fix",
+ "current_declarations": 17
+ },
+ {
+ "path": "config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489",
+ "reviewed_sha256": "4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489",
+ "decision": "keep",
+ "current_declarations": 20
+ },
+ {
+ "path": "config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "2f3706dbdbceaaf19a7f625274e13ad110d02215c9134aa8c335df78150ac3fd",
+ "reviewed_sha256": "693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd",
+ "decision": "fix",
+ "current_declarations": 17
+ },
+ {
+ "path": "config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "e92e8263a3c1984c346e959d1721a6fc305a5bfcbf19087b6b46ca6b506ea42e",
+ "reviewed_sha256": "8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8",
+ "decision": "fix",
+ "current_declarations": 15
+ },
+ {
+ "path": "config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "a4113c1b7da0e54c2bed9edcd2623228cbb431e5ae368045de46344c40b6d85d",
+ "reviewed_sha256": "31e7554a7f8ba2539c662939bc3dc90c22b304df3fc54729add1ac8b239966d7",
+ "decision": "fix",
+ "current_declarations": 2
+ },
+ {
+ "path": "config/scripts/mobile-web-bundle-manifest.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "90822ee3fede144b3f71f91791d03d9b2fda3553d7482a2fde609d33c91dba52",
+ "reviewed_sha256": "2229d8f36576c9d868f1e72c0b905b0507100908bf8c744f4f604da0c97133fd",
+ "decision": "fix",
+ "current_declarations": 7
+ },
+ {
+ "path": "config/scripts/mobile-web-bundle-serializer-parity.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "65b7420795a187d02a1cbe68bcff97f29e5c5f30db7442da8ff5d1ca4ecc10d2",
+ "reviewed_sha256": "cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c",
+ "decision": "fix",
+ "current_declarations": 5
+ },
+ {
+ "path": "config/scripts/mobile-web-page-routes.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "c06d42fe3e12d34dfbf34e68ac701d44104a6b95c9cf7c5521319c68846141a5",
+ "reviewed_sha256": "4948110e497148be21e842e5715cf75bb2218b577cf2fd70f4baf2e345c35445",
+ "decision": "fix",
+ "current_declarations": 7
+ },
+ {
+ "path": "config/scripts/mobile-web-source-line-endings.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "26349aebb23ffaf1973c933b275226670e0ee6a026779d2d744a4ff219854570",
+ "reviewed_sha256": "26349aebb23ffaf1973c933b275226670e0ee6a026779d2d744a4ff219854570",
+ "decision": "keep",
+ "current_declarations": 4
+ },
+ {
+ "path": "config/scripts/mobile-web-terminal-engine-closure.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "f4c07a0a224bdf4906e58f32865504d82abe5c82e2fd8624da4f61abda97b45b",
+ "reviewed_sha256": "719ab15966f01cdb6e217c547371cafc3a1eb65e62f6df639f6d112902803f57",
+ "decision": "fix",
+ "current_declarations": 4
+ },
+ {
+ "path": "config/scripts/moved-code-normalization-budget.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "d6fc630c192a5ce4537941854f65db48566603bdf441faaff6b0eaf879816bed",
+ "reviewed_sha256": "d6fc630c192a5ce4537941854f65db48566603bdf441faaff6b0eaf879816bed",
+ "decision": "keep",
+ "current_declarations": 4
+ },
+ {
+ "path": "config/scripts/msbuild-file-tracking.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "bcf96816018d33ee28fd6f5bfcf6fce7619a53badf77e754bec8a33cfb7ad0dc",
+ "reviewed_sha256": "bcf96816018d33ee28fd6f5bfcf6fce7619a53badf77e754bec8a33cfb7ad0dc",
+ "decision": "keep",
+ "current_declarations": 3
+ },
+ {
+ "path": "config/scripts/native-build-entry.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "64869360c2335f705bd5f1d5e08bf2f79599a95546a168c83569c22cbbef852c",
+ "reviewed_sha256": "64869360c2335f705bd5f1d5e08bf2f79599a95546a168c83569c22cbbef852c",
+ "decision": "keep",
+ "current_declarations": 12
+ },
+ {
+ "path": "config/scripts/native-chat-compaction-pagination.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "adf1ae7a4fffecf80b3190c6e1b92b3a7facb8a3d4c758b0a7a2d1311a588825",
+ "reviewed_sha256": "adf1ae7a4fffecf80b3190c6e1b92b3a7facb8a3d4c758b0a7a2d1311a588825",
+ "decision": "keep",
+ "current_declarations": 3
+ },
+ {
+ "path": "config/scripts/native-chat-design-tokens-plugin.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "0826d059a193e7f46ce2387a095686e77bd4a78d1f25cd2a041b4890afcbee02",
+ "reviewed_sha256": "50c2448b355145274c7dcc325d6ffe6209b412a49e964ee9969b03ed54b85913",
+ "decision": "fix",
+ "current_declarations": 2
+ },
+ {
+ "path": "config/scripts/native-chat-fold-benchmark-workloads.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "2e6996889d678c71513e08c820c2b3dc2ae0731764b7133e5f2a88a72fe5f977",
+ "reviewed_sha256": "2e6996889d678c71513e08c820c2b3dc2ae0731764b7133e5f2a88a72fe5f977",
+ "decision": "keep",
+ "current_declarations": 0
+ },
+ {
+ "path": "config/scripts/native-chat-fold-benchmark.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e",
+ "reviewed_sha256": "36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e",
+ "decision": "keep",
+ "current_declarations": 0
+ },
+ {
+ "path": "config/scripts/native-chat-live-session-benchmark.ts",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "3f1418b842516a12adec22e490692aa9de9c21b140f639755810715b258f8aae",
+ "reviewed_sha256": "4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27",
+ "decision": "fix",
+ "current_declarations": 0
+ },
+ {
+ "path": "config/scripts/native-chat-tool-pairing-benchmark.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062",
+ "reviewed_sha256": "fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062",
+ "decision": "keep",
+ "current_declarations": 0
+ },
+ {
+ "path": "config/scripts/native-provider-line-gate-benchmark.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9",
+ "reviewed_sha256": "9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9",
+ "decision": "keep",
+ "current_declarations": 0
+ },
+ {
+ "path": "config/scripts/node-old-space-limit.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "f69ecc3d9e8e6ee0c398148e36b018e3c2377db7932f33c3c30403693f5acd65",
+ "reviewed_sha256": "f69ecc3d9e8e6ee0c398148e36b018e3c2377db7932f33c3c30403693f5acd65",
+ "decision": "keep",
+ "current_declarations": 3
+ },
+ {
+ "path": "config/scripts/node-server-change-scope.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "6b648882f453353bc9e8545ad9a7a656c415c398faef9844f048ad41027a39b1",
+ "reviewed_sha256": "3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738",
+ "decision": "fix",
+ "current_declarations": 26
+ },
+ {
+ "path": "config/scripts/node-server-concurrency.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "6c2e77b12d24ca0a01881aeb2161809d87a003a069648ebe56dfb2906147b6b6",
+ "reviewed_sha256": "842ff62c954744c7974f5f6aaf78200774f7177322ccf13c40c02d9c38ea879d",
+ "decision": "fix",
+ "current_declarations": 4
+ },
+ {
+ "path": "config/scripts/node-server-fast-runners.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "4a7fd67a8157d693efe6599252705d2b4914201b17a3066d3a586dca193c4353",
+ "reviewed_sha256": "a36b60660c42714e03266f22680af13f81bdbfcff1f14a24da62be8df1759047",
+ "decision": "fix",
+ "current_declarations": 5
+ },
+ {
+ "path": "config/scripts/node-server-native-compat-scope.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "c886f3c8a89a335b8f6d4a5afe46c3093d92c739ce6b040002c0a466687491a3",
+ "reviewed_sha256": "dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342",
+ "decision": "fix",
+ "current_declarations": 17
+ },
+ {
+ "path": "config/scripts/node-server-packaged-chat-selection.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "10abf8de958de12f7fa4893aa6b1b93c93eb1d9cb4d9d7c23ad54672f230bef6",
+ "reviewed_sha256": "d6024bc84409421a72958cd77d9a29ca1e6bb0aee943eb9506ba01913c30c076",
+ "decision": "fix",
+ "current_declarations": 2
+ },
+ {
+ "path": "config/scripts/node-server-policy-self-tests.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566",
+ "reviewed_sha256": "682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566",
+ "decision": "keep",
+ "current_declarations": 10
+ },
+ {
+ "path": "config/scripts/node-server-qualification.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb",
+ "reviewed_sha256": "9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb",
+ "decision": "keep",
+ "current_declarations": 10
+ },
+ {
+ "path": "config/scripts/node-server-release-parallelism.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "3dd155933c4abc6d48f22adefac52307f8057ebfb622dedc21b979f8324e1e1b",
+ "reviewed_sha256": "ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373",
+ "decision": "fix",
+ "current_declarations": 7
+ },
+ {
+ "path": "config/scripts/nsis-process-check.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "3e98c4a6691c3c3e837e314c4c3873e5dde3029f3466d6173d604304fde9034b",
+ "reviewed_sha256": "3e98c4a6691c3c3e837e314c4c3873e5dde3029f3466d6173d604304fde9034b",
+ "decision": "keep",
+ "current_declarations": 4
+ },
+ {
+ "path": "config/scripts/orca-dev-bin.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "72e310e8352642bbebc79d7af2d5f1dfc27ef22aeecdee908647554bc6fe8d98",
+ "reviewed_sha256": "72e310e8352642bbebc79d7af2d5f1dfc27ef22aeecdee908647554bc6fe8d98",
+ "decision": "keep",
+ "current_declarations": 1
+ },
+ {
+ "path": "config/scripts/orcad-artifact-version.test.mjs",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "original_sha256": "1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e",
+ "reviewed_sha256": "1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e",
+ "decision": "keep",
+ "current_declarations": 4
+ }
+ ],
+ "errors": []
+ },
+ "integration": {
+ "review_records_sha256": "7541ddf1e93c39f4e672a8d22272b5ca3cc6479010d6e552c8259d510199c30b",
+ "agent_records_sha256": "89540b7db184a9c57e644b254bbb27922819d5342c91092fd153aa8df49a962d",
+ "source_manifest": "/tmp/orca-config-0007-final-artifact-hashes.json",
+ "source_manifest_sha256": "36a96c1c8588dcc4dc54abbe800f6b2d64db8b98f5e24010e953739d0a415a7b",
+ "all_manifest_artifacts_verified": true,
+ "all_original_and_reviewed_source_hashes_verified": true,
+ "schema_adaptation": "Copy production_evidence to evidence; preserve validation array in runtime_validation and reference committed validation file."
+ }
+}
diff --git a/docs/audits/test-value/reviews/config-0007.jsonl b/docs/audits/test-value/reviews/config-0007.jsonl
new file mode 100644
index 00000000000..8992ce72d2d
--- /dev/null
+++ b/docs/audits/test-value/reviews/config-0007.jsonl
@@ -0,0 +1,50 @@
+{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","sha256":"1390c983b2c9a014ab9eff2c166a8e43eb3e893000c57ff01568a1d6a1242942","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"1390c983b2c9a014ab9eff2c166a8e43eb3e893000c57ff01568a1d6a1242942","cases":[{"line":35,"title":"reaches no picker but the seam","decision":"keep","reason":"The actual bundled session closure is scanned for media calls that bypass the shipped seam.","explicit_input_controls":[{"control_id":"1:36:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":36,"source":"mobileWebAppRouteClosure(SESSION)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":36,"end_line":36,"start":1694,"end":1701,"source":"SESSION","value":{"kind":"reference","source":"SESSION","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":30,"end_line":30,"start":1486,"end":1527},"resolved":{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].tsx"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION. The actual bundled session closure is scanned for media calls that bypass the shipped seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The actual bundled session closure is scanned for media calls that bypass the shipped seam.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"1:37:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":37,"source":"mediaPickerOffenders(mobileDir, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":37,"end_line":37,"start":1737,"end":1746,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":27,"end_line":27,"start":1324,"end":1383},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../mobile/', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../mobile/', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. The actual bundled session closure is scanned for media calls that bypass the shipped seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":37,"end_line":37,"start":1748,"end":1755,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":36,"end_line":36,"start":1663,"end":1702},"resolved":{"kind":"source-expression","source":"await mobileWebAppRouteClosure(SESSION)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The actual bundled session closure is scanned for media calls that bypass the shipped seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The actual bundled session closure is scanned for media calls that bypass the shipped seam.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":35,"title":"reaches no picker but the seam","start":1590,"end":1776},"implementation_status":"retained"},{"line":40,"title":"carries the seam, so the rule above is not vacuous","decision":"keep","reason":"The actual seam and absence of native picker siblings establish a nonempty, correctly resolved closure.","explicit_input_controls":[{"control_id":"1:41:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":41,"source":"mobileWebAppRouteClosure(SESSION)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":41,"end_line":41,"start":1906,"end":1913,"source":"SESSION","value":{"kind":"reference","source":"SESSION","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":30,"end_line":30,"start":1486,"end":1527},"resolved":{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].tsx"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION. The actual seam and absence of native picker siblings establish a nonempty, correctly resolved closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The actual seam and absence of native picker siblings establish a nonempty, correctly resolved closure.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":40,"title":"carries the seam, so the rule above is not vacuous","start":1782,"end":2307},"implementation_status":"retained"},{"line":49,"title":"carries none of the three native media modules at all","decision":"keep","reason":"Actual closure rejects each of three native media packages while positively including the shipped clipboard resize implementation.","explicit_input_controls":[{"control_id":"1:50:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":50,"source":"mobileWebAppRouteClosure(SESSION)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":50,"end_line":50,"start":2440,"end":2447,"source":"SESSION","value":{"kind":"reference","source":"SESSION","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":30,"end_line":30,"start":1486,"end":1527},"resolved":{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].tsx"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION. Actual closure rejects each of three native media packages while positively including the shipped clipboard resize implementation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual closure rejects each of three native media packages while positively including the shipped clipboard resize implementation.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"1:54:for-of:5","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":54,"source":"['expo-image-picker', 'expo-document-picker', 'expo-file-system']","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":54,"end_line":54,"start":2723,"end":2742,"source":"'expo-image-picker'","value":{"kind":"string","value":"expo-image-picker"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'expo-image-picker'. Actual closure rejects each of three native media packages while positively including the shipped clipboard resize implementation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":54,"end_line":54,"start":2744,"end":2766,"source":"'expo-document-picker'","value":{"kind":"string","value":"expo-document-picker"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'expo-document-picker'. Actual closure rejects each of three native media packages while positively including the shipped clipboard resize implementation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":54,"end_line":54,"start":2768,"end":2786,"source":"'expo-file-system'","value":{"kind":"string","value":"expo-file-system"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'expo-file-system'. Actual closure rejects each of three native media packages while positively including the shipped clipboard resize implementation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual closure rejects each of three native media packages while positively including the shipped clipboard resize implementation.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":49,"title":"carries none of the three native media modules at all","start":2313,"end":3024},"implementation_status":"retained"},{"line":63,"title":"is big enough that finding nothing would mean something","decision":"remove","reason":"The >900 module count pins unrelated closure size; explicit seam/component positives already prevent an empty scan from passing.","explicit_input_controls":[{"control_id":"1:64:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":64,"source":"mobileWebAppRouteClosure(SESSION)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":64,"end_line":64,"start":3159,"end":3166,"source":"SESSION","value":{"kind":"reference","source":"SESSION","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":30,"end_line":30,"start":1486,"end":1527},"resolved":{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].tsx"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: SESSION. The >900 module count pins unrelated closure size; explicit seam/component positives already prevent an empty scan from passing.","implementation":{"disposition":"removed-with-redundant-count-case","reason":"Removed the raw >900 closure-size assertion and its redundant traversal; actual seam positives,21 planted scanner inputs and native exclusions remain."}}],"decision":"remove","reason":"The >900 module count pins unrelated closure size; explicit seam/component positives already prevent an empty scan from passing.","implementation_rows":[{"index":1,"disposition":"removed-with-redundant-count-case","reason":"Removed the raw >900 closure-size assertion and its redundant traversal; actual seam positives,21 planted scanner inputs and native exclusions remain."}]}],"current_declaration":null,"implementation_status":"removed"},{"line":135,"title":"names every way in and nothing else","decision":"keep","reason":"Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","explicit_input_controls":[{"control_id":"1:139:for-of:8","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":139,"source":"Object.entries(PLANTED)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":82,"end_line":83,"start":3792,"end":3901,"source":"'namespace-picker.ts':\n \"import * as ImagePicker from 'expo-image-picker'\\nexport const p = ImagePicker\"","value":{"kind":"property","key":"namespace-picker.ts","value":{"kind":"string","value":"import * as ImagePicker from 'expo-image-picker'\nexport const p = ImagePicker"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'namespace-picker.ts': \"import * as ImagePicker from 'expo-image-picker'\\nexport const p = ImagePicker\". Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":84,"end_line":85,"start":3907,"end":4021,"source":"'documents.ts':\n \"import { getDocumentAsync } from 'expo-document-picker'\\nexport const d = getDocumentAsync\"","value":{"kind":"property","key":"documents.ts","value":{"kind":"string","value":"import { getDocumentAsync } from 'expo-document-picker'\nexport const d = getDocumentAsync"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'documents.ts': \"import { getDocumentAsync } from 'expo-document-picker'\\nexport const d = getDocumentAsync\". Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":86,"end_line":86,"start":4027,"end":4073,"source":"'side-effect.ts': \"import 'expo-image-picker'\"","value":{"kind":"property","key":"side-effect.ts","value":{"kind":"string","value":"import 'expo-image-picker'"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'side-effect.ts': \"import 'expo-image-picker'\". Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":87,"end_line":87,"start":4079,"end":4143,"source":"'re-export.ts': \"export { getImageAsync } from 'expo-clipboard'\"","value":{"kind":"property","key":"re-export.ts","value":{"kind":"string","value":"export { getImageAsync } from 'expo-clipboard'"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 're-export.ts': \"export { getImageAsync } from 'expo-clipboard'\". Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":5,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":88,"end_line":89,"start":4149,"end":4289,"source":"'clipboard-image.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard.getImageAsync({ format: 'png' })\"","value":{"kind":"property","key":"clipboard-image.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nexport const r = () => Clipboard.getImageAsync({ format: 'png' })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'clipboard-image.ts': \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard.getImageAsync({ format: 'png' })\". Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":6,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":90,"end_line":91,"start":4295,"end":4415,"source":"'renamed-image-read.ts':\n \"import { getImageAsync as readImage } from 'expo-clipboard'\\nexport const r = readImage\"","value":{"kind":"property","key":"renamed-image-read.ts","value":{"kind":"string","value":"import { getImageAsync as readImage } from 'expo-clipboard'\nexport const r = readImage"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'renamed-image-read.ts': \"import { getImageAsync as readImage } from 'expo-clipboard'\\nexport const r = readImage\". Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":7,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":92,"end_line":93,"start":4421,"end":4560,"source":"'destructured.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst { getImageAsync } = Clipboard\\nexport const r = getImageAsync\"","value":{"kind":"property","key":"destructured.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nconst { getImageAsync } = Clipboard\nexport const r = getImageAsync"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'destructured.ts': \"import * as Clipboard from 'expo-clipboard'\\nconst { getImageAsync } = Clipboard\\nexport const r = getImageAsync\". Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":8,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":94,"end_line":95,"start":4566,"end":4720,"source":"'destructured-renamed.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst { getImageAsync: readImage } = Clipboard\\nexport const r = readImage\"","value":{"kind":"property","key":"destructured-renamed.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nconst { getImageAsync: readImage } = Clipboard\nexport const r = readImage"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'destructured-renamed.ts': \"import * as Clipboard from 'expo-clipboard'\\nconst { getImageAsync: readImage } = Clipboard\\nexport const . Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":9,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":96,"end_line":97,"start":4726,"end":4920,"source":"'re-destructured.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst pasteboard = Clipboard\\nconst again = pasteboard\\nconst { getImageAsync } = again\\nexport const r = getImageAsync\"","value":{"kind":"property","key":"re-destructured.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nconst pasteboard = Clipboard\nconst again = pasteboard\nconst { getImageAsync } = again\nexport const r = getImageAsync"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 're-destructured.ts': \"import * as Clipboard from 'expo-clipboard'\\nconst pasteboard = Clipboard\\nconst again = pasteboard\\nconst { ge. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":10,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":98,"end_line":99,"start":4926,"end":5068,"source":"'element-access.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard['getImageAsync']({ format: 'png' })\"","value":{"kind":"property","key":"element-access.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nexport const r = () => Clipboard['getImageAsync']({ format: 'png' })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'element-access.ts': \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard['getImageAsync']({ format: 'png' }. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":11,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":100,"end_line":101,"start":5074,"end":5217,"source":"'template-access.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard[`getImageAsync`]({ format: 'png' })\"","value":{"kind":"property","key":"template-access.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nexport const r = () => Clipboard[`getImageAsync`]({ format: 'png' })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'template-access.ts': \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard[`getImageAsync`]({ format: 'png' . Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":12,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":106,"end_line":107,"start":5581,"end":5745,"source":"'computed-access.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst getImageAsync = 'getStringAsync'\\nexport const r = () => Clipboard[getImageAsync]()\"","value":{"kind":"property","key":"computed-access.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nconst getImageAsync = 'getStringAsync'\nexport const r = () => Clipboard[getImageAsync]()"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'computed-access.ts': \"import * as Clipboard from 'expo-clipboard'\\nconst getImageAsync = 'getStringAsync'\\nexport const r = () => Cli. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":13,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":112,"end_line":113,"start":6107,"end":6320,"source":"'reverse-order-alias.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport function read() {\\n const { getImageAsync } = first\\n return getImageAsync\\n}\\nconst first = second\\nconst second = Clipboard\"","value":{"kind":"property","key":"reverse-order-alias.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nexport function read() {\n const { getImageAsync } = first\n return getImageAsync\n}\nconst first = second\nconst second = Clipboard"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'reverse-order-alias.ts': \"import * as Clipboard from 'expo-clipboard'\\nexport function read() {\\n const { getImageAsync } = first\\n . Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":14,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":116,"end_line":117,"start":6515,"end":6682,"source":"'dynamic-clipboard.ts':\n \"export async function r() {\\n const Clipboard = await import('expo-clipboard')\\n return Clipboard.getImageAsync({ format: 'png' })\\n}\"","value":{"kind":"property","key":"dynamic-clipboard.ts","value":{"kind":"string","value":"export async function r() {\n const Clipboard = await import('expo-clipboard')\n return Clipboard.getImageAsync({ format: 'png' })\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'dynamic-clipboard.ts': \"export async function r() {\\n const Clipboard = await import('expo-clipboard')\\n return Clipboard.getImageA. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":15,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":118,"end_line":119,"start":6688,"end":6856,"source":"'dynamic-destructured.ts':\n \"export async function r() {\\n const { getImageAsync } = await import('expo-clipboard')\\n return getImageAsync({ format: 'png' })\\n}\"","value":{"kind":"property","key":"dynamic-destructured.ts","value":{"kind":"string","value":"export async function r() {\n const { getImageAsync } = await import('expo-clipboard')\n return getImageAsync({ format: 'png' })\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'dynamic-destructured.ts': \"export async function r() {\\n const { getImageAsync } = await import('expo-clipboard')\\n return getImage. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":16,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":120,"end_line":121,"start":6862,"end":6965,"source":"'dynamic-picker.ts':\n \"export async function r() {\\n return await import('expo-image-picker')\\n}\"","value":{"kind":"property","key":"dynamic-picker.ts","value":{"kind":"string","value":"export async function r() {\n return await import('expo-image-picker')\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'dynamic-picker.ts': \"export async function r() {\\n return await import('expo-image-picker')\\n}\". Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":17,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":123,"end_line":124,"start":7070,"end":7182,"source":"'dynamic-template-picker.ts':\n 'export async function r() {\\n return await import(`expo-image-picker`)\\n}'","value":{"kind":"property","key":"dynamic-template-picker.ts","value":{"kind":"string","value":"export async function r() {\n return await import(`expo-image-picker`)\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'dynamic-template-picker.ts': 'export async function r() {\\n return await import(`expo-image-picker`)\\n}'. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":18,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":125,"end_line":126,"start":7188,"end":7344,"source":"'dynamic-clipboard-text.ts':\n \"export async function r() {\\n const Clipboard = await import('expo-clipboard')\\n return Clipboard.getStringAsync()\\n}\"","value":{"kind":"property","key":"dynamic-clipboard-text.ts","value":{"kind":"string","value":"export async function r() {\n const Clipboard = await import('expo-clipboard')\n return Clipboard.getStringAsync()\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'dynamic-clipboard-text.ts': \"export async function r() {\\n const Clipboard = await import('expo-clipboard')\\n return Clipboard.getS. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":19,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":127,"end_line":128,"start":7350,"end":7473,"source":"'clipboard-text.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard.getStringAsync()\"","value":{"kind":"property","key":"clipboard-text.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nexport const r = () => Clipboard.getStringAsync()"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'clipboard-text.ts': \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard.getStringAsync()\". Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":20,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":129,"end_line":130,"start":7479,"end":7625,"source":"'destructured-text.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst { getStringAsync } = Clipboard\\nexport const r = getStringAsync\"","value":{"kind":"property","key":"destructured-text.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nconst { getStringAsync } = Clipboard\nexport const r = getStringAsync"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'destructured-text.ts': \"import * as Clipboard from 'expo-clipboard'\\nconst { getStringAsync } = Clipboard\\nexport const r = getString. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":21,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":131,"end_line":132,"start":7631,"end":7780,"source":"'mentions-only.ts':\n \"// expo-image-picker and Clipboard.getImageAsync are reached through the seam\\nexport const note = 'expo-document-picker'\"","value":{"kind":"property","key":"mentions-only.ts","value":{"kind":"string","value":"// expo-image-picker and Clipboard.getImageAsync are reached through the seam\nexport const note = 'expo-document-picker'"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'mentions-only.ts': \"// expo-image-picker and Clipboard.getImageAsync are reached through the seam\\nexport const note = 'expo-document. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":11,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":12,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":13,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":14,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":15,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":16,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":17,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":18,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":19,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":20,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":21,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"1:142:fixture-or-oracle-declaration:9","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":142,"source":"{ local: Object.keys(PLANTED).map((name) => `src/${name}`) }","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":142,"end_line":142,"start":8137,"end":8193,"source":"local: Object.keys(PLANTED).map((name) => `src/${name}`)","value":{"kind":"property","key":"local","value":{"kind":"call-source","callee":"Object.keys(PLANTED).map","arguments":[{"kind":"source-expression","source":"(name) => `src/${name}`"}],"source":"Object.keys(PLANTED).map((name) => `src/${name}`)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: local: Object.keys(PLANTED).map((name) => `src/${name}`). Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"1:143:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":143,"source":"mediaPickerOffenders(scratch, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":143,"end_line":143,"start":8230,"end":8237,"source":"scratch","value":{"kind":"reference","source":"scratch","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":136,"end_line":136,"start":7858,"end":7915},"resolved":{"kind":"call-source","callee":"mkdtempSync","arguments":[{"kind":"call-source","callee":"join","arguments":[{"kind":"call-source","callee":"tmpdir","arguments":[],"source":"tmpdir()"},{"kind":"string","value":"orca-session-media-picker-"}],"source":"join(tmpdir(), 'orca-session-media-picker-')"}],"source":"mkdtempSync(join(tmpdir(), 'orca-session-media-picker-'))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scratch. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":143,"end_line":143,"start":8239,"end":8246,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":142,"end_line":142,"start":8135,"end":8195},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"call-source","callee":"Object.keys(PLANTED).map","arguments":[{"kind":"source-expression","source":"(name) => `src/${name}`"}],"source":"Object.keys(PLANTED).map((name) => `src/${name}`)"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":128,"title":"names every way in and nothing else","start":7446,"end":8590},"implementation_status":"retained"},{"line":166,"title":"reads a .ts generic arrow as TypeScript, so nothing after one is swallowed","decision":"keep","reason":"A generic-arrow TypeScript syntax regression independently expects the later clipboard offense at source line3.","explicit_input_controls":[{"control_id":"1:171:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":171,"source":"mediaPickerSites(source, 'src/generic.ts')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":171,"end_line":171,"start":9258,"end":9264,"source":"source","value":{"kind":"reference","source":"source","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":168,"end_line":170,"start":9050,"end":9229},"resolved":{"kind":"source-expression","source":"\"import * as Clipboard from 'expo-clipboard'\\n\" +\n 'export const id = (value: T) => value\\n' +\n 'export const r = () => Clipboard.getImageAsync({ format: \"png\" })\\n'"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: source. A generic-arrow TypeScript syntax regression independently expects the later clipboard offense at source line3.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":171,"end_line":171,"start":9266,"end":9282,"source":"'src/generic.ts'","value":{"kind":"string","value":"src/generic.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'src/generic.ts'. A generic-arrow TypeScript syntax regression independently expects the later clipboard offense at source line3.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"A generic-arrow TypeScript syntax regression independently expects the later clipboard offense at source line3.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":159,"title":"reads a .ts generic arrow as TypeScript, so nothing after one is swallowed","start":8594,"end":8960},"implementation_status":"retained"},{"line":174,"title":"exempts the seam itself, which is the one module allowed to reach them","decision":"keep","reason":"The real seam module is the sole intentional exemption from the media API rule.","explicit_input_controls":[{"control_id":"1:175:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":175,"source":"mediaPickerOffenders(mobileDir, { local: [SEAM] })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":175,"end_line":175,"start":9423,"end":9432,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":27,"end_line":27,"start":1324,"end":1383},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../mobile/', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../mobile/', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. The real seam module is the sole intentional exemption from the media API rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":175,"end_line":175,"start":9434,"end":9451,"source":"{ local: [SEAM] }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"reference","source":"SEAM","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-media-picker-seam.mjs","line":18,"end_line":18,"start":998,"end":1032},"resolved":{"kind":"string","value":"src/platform/media-picker.web.ts"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: [SEAM] }. The real seam module is the sole intentional exemption from the media API rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real seam module is the sole intentional exemption from the media API rule.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":167,"title":"exempts the seam itself, which is the one module allowed to reach them","start":8964,"end":9128},"implementation_status":"retained"}],"lines":178,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","production_evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/platform-seams/mobile-web-app-media-picker-seam.mjs"],"planned_changes":[{"original_line":63,"title":"is big enough that finding nothing would mean something","decision":"remove","change":"The >900 module count pins unrelated closure size; explicit seam/component positives already prevent an empty scan from passing."}],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"1:36:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":36,"end_line":36,"start":1669,"end":1702,"source":"mobileWebAppRouteClosure(SESSION)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":36,"end_line":36,"start":1669,"end":1702},"binding":"mobileWebAppRouteClosure","resolution":[],"enclosing_case":{"line":35,"title":"reaches no picker but the seam"},"affected_case_lines":[],"decision":"keep","reason":"The actual bundled session closure is scanned for media calls that bypass the shipped seam.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":36,"end_line":36,"start":1694,"end":1701,"source":"SESSION","value":{"kind":"reference","source":"SESSION","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":30,"end_line":30,"start":1486,"end":1527},"resolved":{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].tsx"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION. The actual bundled session closure is scanned for media calls that bypass the shipped seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"42a74010b51c7f8b92056073140bd4237d963423443eba8c28de1c2ec0a7b393"}},{"id":"1:37:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":37,"end_line":37,"start":1716,"end":1756,"source":"mediaPickerOffenders(mobileDir, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":37,"end_line":37,"start":1716,"end":1756},"binding":"mediaPickerOffenders","resolution":[],"enclosing_case":{"line":35,"title":"reaches no picker but the seam"},"affected_case_lines":[],"decision":"keep","reason":"The actual bundled session closure is scanned for media calls that bypass the shipped seam.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":37,"end_line":37,"start":1737,"end":1746,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":27,"end_line":27,"start":1324,"end":1383},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../mobile/', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../mobile/', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. The actual bundled session closure is scanned for media calls that bypass the shipped seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":37,"end_line":37,"start":1748,"end":1755,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":36,"end_line":36,"start":1663,"end":1702},"resolved":{"kind":"source-expression","source":"await mobileWebAppRouteClosure(SESSION)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The actual bundled session closure is scanned for media calls that bypass the shipped seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"42a74010b51c7f8b92056073140bd4237d963423443eba8c28de1c2ec0a7b393"}},{"id":"1:41:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":41,"end_line":41,"start":1881,"end":1914,"source":"mobileWebAppRouteClosure(SESSION)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":41,"end_line":41,"start":1881,"end":1914},"binding":"mobileWebAppRouteClosure","resolution":[],"enclosing_case":{"line":40,"title":"carries the seam, so the rule above is not vacuous"},"affected_case_lines":[],"decision":"keep","reason":"The actual seam and absence of native picker siblings establish a nonempty, correctly resolved closure.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":41,"end_line":41,"start":1906,"end":1913,"source":"SESSION","value":{"kind":"reference","source":"SESSION","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":30,"end_line":30,"start":1486,"end":1527},"resolved":{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].tsx"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION. The actual seam and absence of native picker siblings establish a nonempty, correctly resolved closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"42a74010b51c7f8b92056073140bd4237d963423443eba8c28de1c2ec0a7b393"}},{"id":"1:50:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":50,"end_line":50,"start":2415,"end":2448,"source":"mobileWebAppRouteClosure(SESSION)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":50,"end_line":50,"start":2415,"end":2448},"binding":"mobileWebAppRouteClosure","resolution":[],"enclosing_case":{"line":49,"title":"carries none of the three native media modules at all"},"affected_case_lines":[],"decision":"keep","reason":"Actual closure rejects each of three native media packages while positively including the shipped clipboard resize implementation.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":50,"end_line":50,"start":2440,"end":2447,"source":"SESSION","value":{"kind":"reference","source":"SESSION","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":30,"end_line":30,"start":1486,"end":1527},"resolved":{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].tsx"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION. Actual closure rejects each of three native media packages while positively including the shipped clipboard resize implementation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"42a74010b51c7f8b92056073140bd4237d963423443eba8c28de1c2ec0a7b393"}},{"id":"1:54:for-of:5","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":54,"end_line":59,"start":2701,"end":2931,"source":"['expo-image-picker', 'expo-document-picker', 'expo-file-system']","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":54,"end_line":54,"start":2722,"end":2787},"binding":"const absent","resolution":[],"enclosing_case":{"line":49,"title":"carries none of the three native media modules at all"},"affected_case_lines":[],"decision":"keep","reason":"Actual closure rejects each of three native media packages while positively including the shipped clipboard resize implementation.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":54,"end_line":54,"start":2723,"end":2742,"source":"'expo-image-picker'","value":{"kind":"string","value":"expo-image-picker"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'expo-image-picker'. Actual closure rejects each of three native media packages while positively including the shipped clipboard resize implementation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":54,"end_line":54,"start":2744,"end":2766,"source":"'expo-document-picker'","value":{"kind":"string","value":"expo-document-picker"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'expo-document-picker'. Actual closure rejects each of three native media packages while positively including the shipped clipboard resize implementation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":54,"end_line":54,"start":2768,"end":2786,"source":"'expo-file-system'","value":{"kind":"string","value":"expo-file-system"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'expo-file-system'. Actual closure rejects each of three native media packages while positively including the shipped clipboard resize implementation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"42a74010b51c7f8b92056073140bd4237d963423443eba8c28de1c2ec0a7b393"}},{"id":"1:64:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":64,"end_line":64,"start":3134,"end":3167,"source":"mobileWebAppRouteClosure(SESSION)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":64,"end_line":64,"start":3134,"end":3167},"binding":"mobileWebAppRouteClosure","resolution":[],"enclosing_case":{"line":63,"title":"is big enough that finding nothing would mean something"},"affected_case_lines":[],"decision":"remove","reason":"The >900 module count pins unrelated closure size; explicit seam/component positives already prevent an empty scan from passing.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":64,"end_line":64,"start":3159,"end":3166,"source":"SESSION","value":{"kind":"reference","source":"SESSION","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":30,"end_line":30,"start":1486,"end":1527},"resolved":{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].tsx"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: SESSION. The >900 module count pins unrelated closure size; explicit seam/component positives already prevent an empty scan from passing.","implementation":{"disposition":"removed-with-redundant-count-case","reason":"Removed the raw >900 closure-size assertion and its redundant traversal; actual seam positives,21 planted scanner inputs and native exclusions remain."}}],"implementation_rows":[{"index":1,"disposition":"removed-with-redundant-count-case","reason":"Removed the raw >900 closure-size assertion and its redundant traversal; actual seam positives,21 planted scanner inputs and native exclusions remain."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"42a74010b51c7f8b92056073140bd4237d963423443eba8c28de1c2ec0a7b393"}},{"id":"1:81:fixture-or-oracle-declaration:7","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":81,"end_line":133,"start":3776,"end":7784,"source":"{\n 'namespace-picker.ts':\n \"import * as ImagePicker from 'expo-image-picker'\\nexport const p = ImagePicker\",\n 'documents.ts':\n \"import { getDocumentAsync } from 'expo-document-picker'\\nexport const d = getDocumentAsync\",\n 'side-effect.ts': \"import 'expo-image-picker'\",\n 're-export.ts': \"export { getImageAsync } from 'expo-clipboard'\",\n 'clipboard-image.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard.getImageAsync({ format: 'png' })\",\n 'renamed-image-read.ts':\n \"import { getImageAsync as readImage } from 'expo-clipboard'\\nexport const r = readImage\",\n 'destructured.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst { getImageAsync } = Clipboard\\nexport const r = getImageAsync\",\n 'destructured-renamed.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst { getImageAsync: readImage } = Clipboard\\nexport const r = readImage\",\n 're-destructured.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst pasteboard = Clipboard\\nconst again = pasteboard\\nconst { getImageAsync } = again\\nexport const r = getImageAsync\",\n 'element-access.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard['getImageAsync']({ format: 'png' })\",\n 'template-access.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard[`getImageAsync`]({ format: 'png' })\",\n // A key held in a variable is not read: its value is not at the call site, and a census\n // reporting a line nobody can act on is one the next reader learns to ignore. The variable is\n // named after the method and holds a different one, so a rule that read the identifier's text\n // instead of a literal's would report a call that reads text.\n 'computed-access.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst getImageAsync = 'getStringAsync'\\nexport const r = () => Clipboard[getImageAsync]()\",\n // Deliberately back to front: the alias `first` reads from `second`, which is only learned\n // further down. Valid at run time, because the destructure is inside a function the module\n // body has finished before anything calls. A walk that learned aliases in source order would\n // never reach `first`, and this is the fixture that says so.\n 'reverse-order-alias.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport function read() {\\n const { getImageAsync } = first\\n return getImageAsync\\n}\\nconst first = second\\nconst second = Clipboard\",\n // Reached through `import()`, which the bundler resolves into the closure exactly as a static\n // import: the same two modules, the same offence, a form the static scan cannot see.\n 'dynamic-clipboard.ts':\n \"export async function r() {\\n const Clipboard = await import('expo-clipboard')\\n return Clipboard.getImageAsync({ format: 'png' })\\n}\",\n 'dynamic-destructured.ts':\n \"export async function r() {\\n const { getImageAsync } = await import('expo-clipboard')\\n return getImageAsync({ format: 'png' })\\n}\",\n 'dynamic-picker.ts':\n \"export async function r() {\\n return await import('expo-image-picker')\\n}\",\n // A backticked specifier without substitutions is as static as the quoted one to the bundler.\n 'dynamic-template-picker.ts':\n 'export async function r() {\\n return await import(`expo-image-picker`)\\n}',\n 'dynamic-clipboard-text.ts':\n \"export async function r() {\\n const Clipboard = await import('expo-clipboard')\\n return Clipboard.getStringAsync()\\n}\",\n 'clipboard-text.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard.getStringAsync()\",\n 'destructured-text.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst { getStringAsync } = Clipboard\\nexport const r = getStringAsync\",\n 'mentions-only.ts':\n \"// expo-image-picker and Clipboard.getImageAsync are reached through the seam\\nexport const note = 'expo-document-picker'\"\n }","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":81,"end_line":133,"start":3786,"end":7784},"binding":"PLANTED","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":82,"end_line":83,"start":3792,"end":3901,"source":"'namespace-picker.ts':\n \"import * as ImagePicker from 'expo-image-picker'\\nexport const p = ImagePicker\"","value":{"kind":"property","key":"namespace-picker.ts","value":{"kind":"string","value":"import * as ImagePicker from 'expo-image-picker'\nexport const p = ImagePicker"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'namespace-picker.ts': \"import * as ImagePicker from 'expo-image-picker'\\nexport const p = ImagePicker\". Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":84,"end_line":85,"start":3907,"end":4021,"source":"'documents.ts':\n \"import { getDocumentAsync } from 'expo-document-picker'\\nexport const d = getDocumentAsync\"","value":{"kind":"property","key":"documents.ts","value":{"kind":"string","value":"import { getDocumentAsync } from 'expo-document-picker'\nexport const d = getDocumentAsync"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'documents.ts': \"import { getDocumentAsync } from 'expo-document-picker'\\nexport const d = getDocumentAsync\". Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":86,"end_line":86,"start":4027,"end":4073,"source":"'side-effect.ts': \"import 'expo-image-picker'\"","value":{"kind":"property","key":"side-effect.ts","value":{"kind":"string","value":"import 'expo-image-picker'"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'side-effect.ts': \"import 'expo-image-picker'\". Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":87,"end_line":87,"start":4079,"end":4143,"source":"'re-export.ts': \"export { getImageAsync } from 'expo-clipboard'\"","value":{"kind":"property","key":"re-export.ts","value":{"kind":"string","value":"export { getImageAsync } from 'expo-clipboard'"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 're-export.ts': \"export { getImageAsync } from 'expo-clipboard'\". Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":5,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":88,"end_line":89,"start":4149,"end":4289,"source":"'clipboard-image.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard.getImageAsync({ format: 'png' })\"","value":{"kind":"property","key":"clipboard-image.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nexport const r = () => Clipboard.getImageAsync({ format: 'png' })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'clipboard-image.ts': \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard.getImageAsync({ format: 'png' })\". Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":6,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":90,"end_line":91,"start":4295,"end":4415,"source":"'renamed-image-read.ts':\n \"import { getImageAsync as readImage } from 'expo-clipboard'\\nexport const r = readImage\"","value":{"kind":"property","key":"renamed-image-read.ts","value":{"kind":"string","value":"import { getImageAsync as readImage } from 'expo-clipboard'\nexport const r = readImage"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'renamed-image-read.ts': \"import { getImageAsync as readImage } from 'expo-clipboard'\\nexport const r = readImage\". Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":7,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":92,"end_line":93,"start":4421,"end":4560,"source":"'destructured.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst { getImageAsync } = Clipboard\\nexport const r = getImageAsync\"","value":{"kind":"property","key":"destructured.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nconst { getImageAsync } = Clipboard\nexport const r = getImageAsync"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'destructured.ts': \"import * as Clipboard from 'expo-clipboard'\\nconst { getImageAsync } = Clipboard\\nexport const r = getImageAsync\". Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":8,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":94,"end_line":95,"start":4566,"end":4720,"source":"'destructured-renamed.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst { getImageAsync: readImage } = Clipboard\\nexport const r = readImage\"","value":{"kind":"property","key":"destructured-renamed.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nconst { getImageAsync: readImage } = Clipboard\nexport const r = readImage"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'destructured-renamed.ts': \"import * as Clipboard from 'expo-clipboard'\\nconst { getImageAsync: readImage } = Clipboard\\nexport const . Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":9,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":96,"end_line":97,"start":4726,"end":4920,"source":"'re-destructured.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst pasteboard = Clipboard\\nconst again = pasteboard\\nconst { getImageAsync } = again\\nexport const r = getImageAsync\"","value":{"kind":"property","key":"re-destructured.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nconst pasteboard = Clipboard\nconst again = pasteboard\nconst { getImageAsync } = again\nexport const r = getImageAsync"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 're-destructured.ts': \"import * as Clipboard from 'expo-clipboard'\\nconst pasteboard = Clipboard\\nconst again = pasteboard\\nconst { ge. Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":10,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":98,"end_line":99,"start":4926,"end":5068,"source":"'element-access.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard['getImageAsync']({ format: 'png' })\"","value":{"kind":"property","key":"element-access.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nexport const r = () => Clipboard['getImageAsync']({ format: 'png' })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'element-access.ts': \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard['getImageAsync']({ format: 'png' }. Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":11,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":100,"end_line":101,"start":5074,"end":5217,"source":"'template-access.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard[`getImageAsync`]({ format: 'png' })\"","value":{"kind":"property","key":"template-access.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nexport const r = () => Clipboard[`getImageAsync`]({ format: 'png' })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'template-access.ts': \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard[`getImageAsync`]({ format: 'png' . Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":12,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":106,"end_line":107,"start":5581,"end":5745,"source":"'computed-access.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst getImageAsync = 'getStringAsync'\\nexport const r = () => Clipboard[getImageAsync]()\"","value":{"kind":"property","key":"computed-access.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nconst getImageAsync = 'getStringAsync'\nexport const r = () => Clipboard[getImageAsync]()"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'computed-access.ts': \"import * as Clipboard from 'expo-clipboard'\\nconst getImageAsync = 'getStringAsync'\\nexport const r = () => Cli. Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":13,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":112,"end_line":113,"start":6107,"end":6320,"source":"'reverse-order-alias.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport function read() {\\n const { getImageAsync } = first\\n return getImageAsync\\n}\\nconst first = second\\nconst second = Clipboard\"","value":{"kind":"property","key":"reverse-order-alias.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nexport function read() {\n const { getImageAsync } = first\n return getImageAsync\n}\nconst first = second\nconst second = Clipboard"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'reverse-order-alias.ts': \"import * as Clipboard from 'expo-clipboard'\\nexport function read() {\\n const { getImageAsync } = first\\n . Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":14,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":116,"end_line":117,"start":6515,"end":6682,"source":"'dynamic-clipboard.ts':\n \"export async function r() {\\n const Clipboard = await import('expo-clipboard')\\n return Clipboard.getImageAsync({ format: 'png' })\\n}\"","value":{"kind":"property","key":"dynamic-clipboard.ts","value":{"kind":"string","value":"export async function r() {\n const Clipboard = await import('expo-clipboard')\n return Clipboard.getImageAsync({ format: 'png' })\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'dynamic-clipboard.ts': \"export async function r() {\\n const Clipboard = await import('expo-clipboard')\\n return Clipboard.getImageA. Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":15,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":118,"end_line":119,"start":6688,"end":6856,"source":"'dynamic-destructured.ts':\n \"export async function r() {\\n const { getImageAsync } = await import('expo-clipboard')\\n return getImageAsync({ format: 'png' })\\n}\"","value":{"kind":"property","key":"dynamic-destructured.ts","value":{"kind":"string","value":"export async function r() {\n const { getImageAsync } = await import('expo-clipboard')\n return getImageAsync({ format: 'png' })\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'dynamic-destructured.ts': \"export async function r() {\\n const { getImageAsync } = await import('expo-clipboard')\\n return getImage. Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":16,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":120,"end_line":121,"start":6862,"end":6965,"source":"'dynamic-picker.ts':\n \"export async function r() {\\n return await import('expo-image-picker')\\n}\"","value":{"kind":"property","key":"dynamic-picker.ts","value":{"kind":"string","value":"export async function r() {\n return await import('expo-image-picker')\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'dynamic-picker.ts': \"export async function r() {\\n return await import('expo-image-picker')\\n}\". Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":17,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":123,"end_line":124,"start":7070,"end":7182,"source":"'dynamic-template-picker.ts':\n 'export async function r() {\\n return await import(`expo-image-picker`)\\n}'","value":{"kind":"property","key":"dynamic-template-picker.ts","value":{"kind":"string","value":"export async function r() {\n return await import(`expo-image-picker`)\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'dynamic-template-picker.ts': 'export async function r() {\\n return await import(`expo-image-picker`)\\n}'. Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":18,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":125,"end_line":126,"start":7188,"end":7344,"source":"'dynamic-clipboard-text.ts':\n \"export async function r() {\\n const Clipboard = await import('expo-clipboard')\\n return Clipboard.getStringAsync()\\n}\"","value":{"kind":"property","key":"dynamic-clipboard-text.ts","value":{"kind":"string","value":"export async function r() {\n const Clipboard = await import('expo-clipboard')\n return Clipboard.getStringAsync()\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'dynamic-clipboard-text.ts': \"export async function r() {\\n const Clipboard = await import('expo-clipboard')\\n return Clipboard.getS. Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":19,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":127,"end_line":128,"start":7350,"end":7473,"source":"'clipboard-text.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard.getStringAsync()\"","value":{"kind":"property","key":"clipboard-text.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nexport const r = () => Clipboard.getStringAsync()"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'clipboard-text.ts': \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard.getStringAsync()\". Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":20,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":129,"end_line":130,"start":7479,"end":7625,"source":"'destructured-text.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst { getStringAsync } = Clipboard\\nexport const r = getStringAsync\"","value":{"kind":"property","key":"destructured-text.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nconst { getStringAsync } = Clipboard\nexport const r = getStringAsync"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'destructured-text.ts': \"import * as Clipboard from 'expo-clipboard'\\nconst { getStringAsync } = Clipboard\\nexport const r = getString. Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":21,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":131,"end_line":132,"start":7631,"end":7780,"source":"'mentions-only.ts':\n \"// expo-image-picker and Clipboard.getImageAsync are reached through the seam\\nexport const note = 'expo-document-picker'\"","value":{"kind":"property","key":"mentions-only.ts","value":{"kind":"string","value":"// expo-image-picker and Clipboard.getImageAsync are reached through the seam\nexport const note = 'expo-document-picker'"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'mentions-only.ts': \"// expo-image-picker and Clipboard.getImageAsync are reached through the seam\\nexport const note = 'expo-document. Retain the actual session closure and independent media-picker AST corpus; remove the redundant raw module-count check.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":11,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":12,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":13,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":14,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":15,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":16,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":17,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":18,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":19,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":20,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":21,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"42a74010b51c7f8b92056073140bd4237d963423443eba8c28de1c2ec0a7b393"}},{"id":"1:139:for-of:8","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":139,"end_line":141,"start":7991,"end":8112,"source":"Object.entries(PLANTED)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":139,"end_line":139,"start":8020,"end":8043},"binding":"const [name, source]","resolution":[{"name":"PLANTED","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":81,"end_line":133,"start":3786,"end":7784,"declaration_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":81,"end_line":133,"start":3776,"end":7784},"source":"{\n 'namespace-picker.ts':\n \"import * as ImagePicker from 'expo-image-picker'\\nexport const p = ImagePicker\",\n 'documents.ts':\n \"import { getDocumentAsync } from 'expo-document-picker'\\nexport const d = getDocumentAsync\",\n 'side-effect.ts': \"import 'expo-image-picker'\",\n 're-export.ts': \"export { getImageAsync } from 'expo-clipboard'\",\n 'clipboard-image.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard.getImageAsync({ format: 'png' })\",\n 'renamed-image-read.ts':\n \"import { getImageAsync as readImage } from 'expo-clipboard'\\nexport const r = readImage\",\n 'destructured.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst { getImageAsync } = Clipboard\\nexport const r = getImageAsync\",\n 'destructured-renamed.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst { getImageAsync: readImage } = Clipboard\\nexport const r = readImage\",\n 're-destructured.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst pasteboard = Clipboard\\nconst again = pasteboard\\nconst { getImageAsync } = again\\nexport const r = getImageAsync\",\n 'element-access.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard['getImageAsync']({ format: 'png' })\",\n 'template-access.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard[`getImageAsync`]({ format: 'png' })\",\n // A key held in a variable is not read: its value is not at the call site, and a census\n // reporting a line nobody can act on is one the next reader learns to ignore. The variable is\n // named after the method and holds a different one, so a rule that read the identifier's text\n // instead of a literal's would report a call that reads text.\n 'computed-access.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst getImageAsync = 'getStringAsync'\\nexport const r = () => Clipboard[getImageAsync]()\",\n // Deliberately back to front: the alias `first` reads from `second`, which is only learned\n // further down. Valid at run time, because the destructure is inside a function the module\n // body has finished before anything calls. A walk that learned aliases in source order would\n // never reach `first`, and this is the fixture that says so.\n 'reverse-order-alias.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport function read() {\\n const { getImageAsync } = first\\n return getImageAsync\\n}\\nconst first = second\\nconst second = Clipboard\",\n // Reached through `import()`, which the bundler resolves into the closure exactly as a static\n // import: the same two modules, the same offence, a form the static scan cannot see.\n 'dynamic-clipboard.ts':\n \"export async function r() {\\n const Clipboard = await import('expo-clipboard')\\n return Clipboard.getImageAsync({ format: 'png' })\\n}\",\n 'dynamic-destructured.ts':\n \"export async function r() {\\n const { getImageAsync } = await import('expo-clipboard')\\n return getImageAsync({ format: 'png' })\\n}\",\n 'dynamic-picker.ts':\n \"export async function r() {\\n return await import('expo-image-picker')\\n}\",\n // A backticked specifier without substitutions is as static as the quoted one to the bundler.\n 'dynamic-template-picker.ts':\n 'export async function r() {\\n return await import(`expo-image-picker`)\\n}',\n 'dynamic-clipboard-text.ts':\n \"export async function r() {\\n const Clipboard = await import('expo-clipboard')\\n return Clipboard.getStringAsync()\\n}\",\n 'clipboard-text.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard.getStringAsync()\",\n 'destructured-text.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst { getStringAsync } = Clipboard\\nexport const r = getStringAsync\",\n 'mentions-only.ts':\n \"// expo-image-picker and Clipboard.getImageAsync are reached through the seam\\nexport const note = 'expo-document-picker'\"\n }"}],"transform":"Object.entries: original object properties preserved; values decode keys/initializers, not transformed runtime tuples","enclosing_case":{"line":135,"title":"names every way in and nothing else"},"affected_case_lines":[],"decision":"keep","reason":"Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":82,"end_line":83,"start":3792,"end":3901,"source":"'namespace-picker.ts':\n \"import * as ImagePicker from 'expo-image-picker'\\nexport const p = ImagePicker\"","value":{"kind":"property","key":"namespace-picker.ts","value":{"kind":"string","value":"import * as ImagePicker from 'expo-image-picker'\nexport const p = ImagePicker"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'namespace-picker.ts': \"import * as ImagePicker from 'expo-image-picker'\\nexport const p = ImagePicker\". Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":84,"end_line":85,"start":3907,"end":4021,"source":"'documents.ts':\n \"import { getDocumentAsync } from 'expo-document-picker'\\nexport const d = getDocumentAsync\"","value":{"kind":"property","key":"documents.ts","value":{"kind":"string","value":"import { getDocumentAsync } from 'expo-document-picker'\nexport const d = getDocumentAsync"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'documents.ts': \"import { getDocumentAsync } from 'expo-document-picker'\\nexport const d = getDocumentAsync\". Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":86,"end_line":86,"start":4027,"end":4073,"source":"'side-effect.ts': \"import 'expo-image-picker'\"","value":{"kind":"property","key":"side-effect.ts","value":{"kind":"string","value":"import 'expo-image-picker'"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'side-effect.ts': \"import 'expo-image-picker'\". Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":87,"end_line":87,"start":4079,"end":4143,"source":"'re-export.ts': \"export { getImageAsync } from 'expo-clipboard'\"","value":{"kind":"property","key":"re-export.ts","value":{"kind":"string","value":"export { getImageAsync } from 'expo-clipboard'"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 're-export.ts': \"export { getImageAsync } from 'expo-clipboard'\". Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":5,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":88,"end_line":89,"start":4149,"end":4289,"source":"'clipboard-image.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard.getImageAsync({ format: 'png' })\"","value":{"kind":"property","key":"clipboard-image.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nexport const r = () => Clipboard.getImageAsync({ format: 'png' })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'clipboard-image.ts': \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard.getImageAsync({ format: 'png' })\". Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":6,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":90,"end_line":91,"start":4295,"end":4415,"source":"'renamed-image-read.ts':\n \"import { getImageAsync as readImage } from 'expo-clipboard'\\nexport const r = readImage\"","value":{"kind":"property","key":"renamed-image-read.ts","value":{"kind":"string","value":"import { getImageAsync as readImage } from 'expo-clipboard'\nexport const r = readImage"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'renamed-image-read.ts': \"import { getImageAsync as readImage } from 'expo-clipboard'\\nexport const r = readImage\". Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":7,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":92,"end_line":93,"start":4421,"end":4560,"source":"'destructured.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst { getImageAsync } = Clipboard\\nexport const r = getImageAsync\"","value":{"kind":"property","key":"destructured.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nconst { getImageAsync } = Clipboard\nexport const r = getImageAsync"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'destructured.ts': \"import * as Clipboard from 'expo-clipboard'\\nconst { getImageAsync } = Clipboard\\nexport const r = getImageAsync\". Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":8,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":94,"end_line":95,"start":4566,"end":4720,"source":"'destructured-renamed.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst { getImageAsync: readImage } = Clipboard\\nexport const r = readImage\"","value":{"kind":"property","key":"destructured-renamed.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nconst { getImageAsync: readImage } = Clipboard\nexport const r = readImage"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'destructured-renamed.ts': \"import * as Clipboard from 'expo-clipboard'\\nconst { getImageAsync: readImage } = Clipboard\\nexport const . Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":9,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":96,"end_line":97,"start":4726,"end":4920,"source":"'re-destructured.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst pasteboard = Clipboard\\nconst again = pasteboard\\nconst { getImageAsync } = again\\nexport const r = getImageAsync\"","value":{"kind":"property","key":"re-destructured.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nconst pasteboard = Clipboard\nconst again = pasteboard\nconst { getImageAsync } = again\nexport const r = getImageAsync"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 're-destructured.ts': \"import * as Clipboard from 'expo-clipboard'\\nconst pasteboard = Clipboard\\nconst again = pasteboard\\nconst { ge. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":10,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":98,"end_line":99,"start":4926,"end":5068,"source":"'element-access.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard['getImageAsync']({ format: 'png' })\"","value":{"kind":"property","key":"element-access.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nexport const r = () => Clipboard['getImageAsync']({ format: 'png' })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'element-access.ts': \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard['getImageAsync']({ format: 'png' }. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":11,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":100,"end_line":101,"start":5074,"end":5217,"source":"'template-access.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard[`getImageAsync`]({ format: 'png' })\"","value":{"kind":"property","key":"template-access.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nexport const r = () => Clipboard[`getImageAsync`]({ format: 'png' })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'template-access.ts': \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard[`getImageAsync`]({ format: 'png' . Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":12,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":106,"end_line":107,"start":5581,"end":5745,"source":"'computed-access.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst getImageAsync = 'getStringAsync'\\nexport const r = () => Clipboard[getImageAsync]()\"","value":{"kind":"property","key":"computed-access.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nconst getImageAsync = 'getStringAsync'\nexport const r = () => Clipboard[getImageAsync]()"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'computed-access.ts': \"import * as Clipboard from 'expo-clipboard'\\nconst getImageAsync = 'getStringAsync'\\nexport const r = () => Cli. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":13,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":112,"end_line":113,"start":6107,"end":6320,"source":"'reverse-order-alias.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport function read() {\\n const { getImageAsync } = first\\n return getImageAsync\\n}\\nconst first = second\\nconst second = Clipboard\"","value":{"kind":"property","key":"reverse-order-alias.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nexport function read() {\n const { getImageAsync } = first\n return getImageAsync\n}\nconst first = second\nconst second = Clipboard"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'reverse-order-alias.ts': \"import * as Clipboard from 'expo-clipboard'\\nexport function read() {\\n const { getImageAsync } = first\\n . Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":14,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":116,"end_line":117,"start":6515,"end":6682,"source":"'dynamic-clipboard.ts':\n \"export async function r() {\\n const Clipboard = await import('expo-clipboard')\\n return Clipboard.getImageAsync({ format: 'png' })\\n}\"","value":{"kind":"property","key":"dynamic-clipboard.ts","value":{"kind":"string","value":"export async function r() {\n const Clipboard = await import('expo-clipboard')\n return Clipboard.getImageAsync({ format: 'png' })\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'dynamic-clipboard.ts': \"export async function r() {\\n const Clipboard = await import('expo-clipboard')\\n return Clipboard.getImageA. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":15,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":118,"end_line":119,"start":6688,"end":6856,"source":"'dynamic-destructured.ts':\n \"export async function r() {\\n const { getImageAsync } = await import('expo-clipboard')\\n return getImageAsync({ format: 'png' })\\n}\"","value":{"kind":"property","key":"dynamic-destructured.ts","value":{"kind":"string","value":"export async function r() {\n const { getImageAsync } = await import('expo-clipboard')\n return getImageAsync({ format: 'png' })\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'dynamic-destructured.ts': \"export async function r() {\\n const { getImageAsync } = await import('expo-clipboard')\\n return getImage. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":16,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":120,"end_line":121,"start":6862,"end":6965,"source":"'dynamic-picker.ts':\n \"export async function r() {\\n return await import('expo-image-picker')\\n}\"","value":{"kind":"property","key":"dynamic-picker.ts","value":{"kind":"string","value":"export async function r() {\n return await import('expo-image-picker')\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'dynamic-picker.ts': \"export async function r() {\\n return await import('expo-image-picker')\\n}\". Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":17,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":123,"end_line":124,"start":7070,"end":7182,"source":"'dynamic-template-picker.ts':\n 'export async function r() {\\n return await import(`expo-image-picker`)\\n}'","value":{"kind":"property","key":"dynamic-template-picker.ts","value":{"kind":"string","value":"export async function r() {\n return await import(`expo-image-picker`)\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'dynamic-template-picker.ts': 'export async function r() {\\n return await import(`expo-image-picker`)\\n}'. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":18,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":125,"end_line":126,"start":7188,"end":7344,"source":"'dynamic-clipboard-text.ts':\n \"export async function r() {\\n const Clipboard = await import('expo-clipboard')\\n return Clipboard.getStringAsync()\\n}\"","value":{"kind":"property","key":"dynamic-clipboard-text.ts","value":{"kind":"string","value":"export async function r() {\n const Clipboard = await import('expo-clipboard')\n return Clipboard.getStringAsync()\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'dynamic-clipboard-text.ts': \"export async function r() {\\n const Clipboard = await import('expo-clipboard')\\n return Clipboard.getS. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":19,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":127,"end_line":128,"start":7350,"end":7473,"source":"'clipboard-text.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard.getStringAsync()\"","value":{"kind":"property","key":"clipboard-text.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nexport const r = () => Clipboard.getStringAsync()"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'clipboard-text.ts': \"import * as Clipboard from 'expo-clipboard'\\nexport const r = () => Clipboard.getStringAsync()\". Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":20,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":129,"end_line":130,"start":7479,"end":7625,"source":"'destructured-text.ts':\n \"import * as Clipboard from 'expo-clipboard'\\nconst { getStringAsync } = Clipboard\\nexport const r = getStringAsync\"","value":{"kind":"property","key":"destructured-text.ts","value":{"kind":"string","value":"import * as Clipboard from 'expo-clipboard'\nconst { getStringAsync } = Clipboard\nexport const r = getStringAsync"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'destructured-text.ts': \"import * as Clipboard from 'expo-clipboard'\\nconst { getStringAsync } = Clipboard\\nexport const r = getString. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":21,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":131,"end_line":132,"start":7631,"end":7780,"source":"'mentions-only.ts':\n \"// expo-image-picker and Clipboard.getImageAsync are reached through the seam\\nexport const note = 'expo-document-picker'\"","value":{"kind":"property","key":"mentions-only.ts","value":{"kind":"string","value":"// expo-image-picker and Clipboard.getImageAsync are reached through the seam\nexport const note = 'expo-document-picker'"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'mentions-only.ts': \"// expo-image-picker and Clipboard.getImageAsync are reached through the seam\\nexport const note = 'expo-document. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":11,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":12,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":13,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":14,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":15,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":16,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":17,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":18,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":19,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":20,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":21,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"42a74010b51c7f8b92056073140bd4237d963423443eba8c28de1c2ec0a7b393"}},{"id":"1:142:fixture-or-oracle-declaration:9","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":142,"end_line":142,"start":8125,"end":8195,"source":"{ local: Object.keys(PLANTED).map((name) => `src/${name}`) }","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":142,"end_line":142,"start":8135,"end":8195},"binding":"closure","resolution":[],"enclosing_case":{"line":135,"title":"names every way in and nothing else"},"affected_case_lines":[],"decision":"keep","reason":"Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":142,"end_line":142,"start":8137,"end":8193,"source":"local: Object.keys(PLANTED).map((name) => `src/${name}`)","value":{"kind":"property","key":"local","value":{"kind":"call-source","callee":"Object.keys(PLANTED).map","arguments":[{"kind":"source-expression","source":"(name) => `src/${name}`"}],"source":"Object.keys(PLANTED).map((name) => `src/${name}`)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: local: Object.keys(PLANTED).map((name) => `src/${name}`). Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"42a74010b51c7f8b92056073140bd4237d963423443eba8c28de1c2ec0a7b393"}},{"id":"1:143:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":143,"end_line":143,"start":8209,"end":8247,"source":"mediaPickerOffenders(scratch, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":143,"end_line":143,"start":8209,"end":8247},"binding":"mediaPickerOffenders","resolution":[],"enclosing_case":{"line":135,"title":"names every way in and nothing else"},"affected_case_lines":[],"decision":"keep","reason":"Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":143,"end_line":143,"start":8230,"end":8237,"source":"scratch","value":{"kind":"reference","source":"scratch","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":136,"end_line":136,"start":7858,"end":7915},"resolved":{"kind":"call-source","callee":"mkdtempSync","arguments":[{"kind":"call-source","callee":"join","arguments":[{"kind":"call-source","callee":"tmpdir","arguments":[],"source":"tmpdir()"},{"kind":"string","value":"orca-session-media-picker-"}],"source":"join(tmpdir(), 'orca-session-media-picker-')"}],"source":"mkdtempSync(join(tmpdir(), 'orca-session-media-picker-'))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scratch. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":143,"end_line":143,"start":8239,"end":8246,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":142,"end_line":142,"start":8135,"end":8195},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"call-source","callee":"Object.keys(PLANTED).map","arguments":[{"kind":"source-expression","source":"(name) => `src/${name}`"}],"source":"Object.keys(PLANTED).map((name) => `src/${name}`)"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Independent 21-entry planted corpus exercises 16 true import/alias/dynamic media offenders and five text/mention distractors against the real AST scanner.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"42a74010b51c7f8b92056073140bd4237d963423443eba8c28de1c2ec0a7b393"}},{"id":"1:171:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":171,"end_line":171,"start":9241,"end":9283,"source":"mediaPickerSites(source, 'src/generic.ts')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":171,"end_line":171,"start":9241,"end":9283},"binding":"mediaPickerSites","resolution":[],"enclosing_case":{"line":166,"title":"reads a .ts generic arrow as TypeScript, so nothing after one is swallowed"},"affected_case_lines":[],"decision":"keep","reason":"A generic-arrow TypeScript syntax regression independently expects the later clipboard offense at source line3.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":171,"end_line":171,"start":9258,"end":9264,"source":"source","value":{"kind":"reference","source":"source","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":168,"end_line":170,"start":9050,"end":9229},"resolved":{"kind":"source-expression","source":"\"import * as Clipboard from 'expo-clipboard'\\n\" +\n 'export const id = (value: T) => value\\n' +\n 'export const r = () => Clipboard.getImageAsync({ format: \"png\" })\\n'"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: source. A generic-arrow TypeScript syntax regression independently expects the later clipboard offense at source line3.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":171,"end_line":171,"start":9266,"end":9282,"source":"'src/generic.ts'","value":{"kind":"string","value":"src/generic.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'src/generic.ts'. A generic-arrow TypeScript syntax regression independently expects the later clipboard offense at source line3.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"42a74010b51c7f8b92056073140bd4237d963423443eba8c28de1c2ec0a7b393"}},{"id":"1:175:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":175,"end_line":175,"start":9402,"end":9452,"source":"mediaPickerOffenders(mobileDir, { local: [SEAM] })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":175,"end_line":175,"start":9402,"end":9452},"binding":"mediaPickerOffenders","resolution":[],"enclosing_case":{"line":174,"title":"exempts the seam itself, which is the one module allowed to reach them"},"affected_case_lines":[],"decision":"keep","reason":"The real seam module is the sole intentional exemption from the media API rule.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":175,"end_line":175,"start":9423,"end":9432,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":27,"end_line":27,"start":1324,"end":1383},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../mobile/', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../mobile/', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. The real seam module is the sole intentional exemption from the media API rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","line":175,"end_line":175,"start":9434,"end":9451,"source":"{ local: [SEAM] }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"reference","source":"SEAM","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-media-picker-seam.mjs","line":18,"end_line":18,"start":998,"end":1032},"resolved":{"kind":"string","value":"src/platform/media-picker.web.ts"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: [SEAM] }. The real seam module is the sole intentional exemption from the media API rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"42a74010b51c7f8b92056073140bd4237d963423443eba8c28de1c2ec0a7b393"}}],"original_review_sha256":"4bdb3707ec9a8542efb3620f83e10a985dc5d059de69d30986683c4c2dfe41a8","reviewer":"audit_config","reviewed_sha256":"42a74010b51c7f8b92056073140bd4237d963423443eba8c28de1c2ec0a7b393","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","final_declarations":6,"current_controls":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","each":[],"for_of":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","start":2722,"end":2787,"line":54,"end_line":54,"source":"['expo-image-picker', 'expo-document-picker', 'expo-file-system']","binding":"const absent","changed":false},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-media-picker.test.mjs","start":7678,"end":7701,"line":132,"end_line":132,"source":"Object.entries(PLANTED)","binding":"const [name, source]","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[{"original_line":63,"title":"is big enough that finding nothing would mean something","decision":"remove","change":"The >900 module count pins unrelated closure size; explicit seam/component positives already prevent an empty scan from passing."}],"manual_implementation_notes":[],"evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/platform-seams/mobile-web-app-media-picker-seam.mjs"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","sha256":"e2ccef36da2ee3e2e71ec69af9702e599332dd05931b3492ce7a0ee96c0ebb24","declarations":8,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"e2ccef36da2ee3e2e71ec69af9702e599332dd05931b3492ce7a0ee96c0ebb24","cases":[{"line":222,"title":"mounts the session screen rather than the unmatched route, with nothing on the console","decision":"fix","reason":"Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case.","explicit_input_controls":[{"control_id":"2:223:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":223,"source":"openRoute(SESSION_ROUTE, 'Terminal')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":223,"end_line":223,"start":9664,"end":9677,"source":"SESSION_ROUTE","value":{"kind":"reference","source":"SESSION_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":56,"end_line":56,"start":3221,"end":3256},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/session/${WORKTREE}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION_ROUTE. Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":223,"end_line":223,"start":9679,"end":9689,"source":"'Terminal'","value":{"kind":"string","value":"Terminal"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'Terminal'. Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"2:224:browser-event-input:16","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":224,"source":"opened.page.evaluate(() => document.body.innerText)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":224,"end_line":224,"start":9737,"end":9766,"source":"() => document.body.innerText","value":{"kind":"source-expression","source":"() => document.body.innerText"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => document.body.innerText. Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"2:227:for-of:17","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":227,"source":"['Esc', 'Tab', 'Ctrl+C', 'Ctrl+R']","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":227,"end_line":227,"start":9961,"end":9966,"source":"'Esc'","value":{"kind":"string","value":"Esc"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Esc'. Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":227,"end_line":227,"start":9968,"end":9973,"source":"'Tab'","value":{"kind":"string","value":"Tab"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Tab'. Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":227,"end_line":227,"start":9975,"end":9983,"source":"'Ctrl+C'","value":{"kind":"string","value":"Ctrl+C"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Ctrl+C'. Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":227,"end_line":227,"start":9985,"end":9993,"source":"'Ctrl+R'","value":{"kind":"string","value":"Ctrl+R"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Ctrl+R'. Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":223,"title":"mounts the session screen rather than the unmatched route, with nothing on the console","start":9541,"end":10477},"implementation_status":"implemented"},{"line":237,"title":"puts the Back control in the accessibility tree by name","decision":"keep","reason":"The actual route renders a Back control with button semantics and the observed DOM tag.","explicit_input_controls":[{"control_id":"2:239:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":239,"source":"openRoute(SESSION_ROUTE, 'Terminal')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":239,"end_line":239,"start":10550,"end":10563,"source":"SESSION_ROUTE","value":{"kind":"reference","source":"SESSION_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":56,"end_line":56,"start":3221,"end":3256},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/session/${WORKTREE}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION_ROUTE. The actual route renders a Back control with button semantics and the observed DOM tag.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":239,"end_line":239,"start":10565,"end":10575,"source":"'Terminal'","value":{"kind":"string","value":"Terminal"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'Terminal'. The actual route renders a Back control with button semantics and the observed DOM tag.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The actual route renders a Back control with button semantics and the observed DOM tag.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"2:240:browser-event-input:19","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":240,"source":"opened.page.evaluate((label) => {\n const found = document.querySelector(`[aria-label=\"${label}\"]`)\n return found === null ? null : { role: found.getAttribute('role'), tag: found.tagName }\n }, BACK_LABEL)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":240,"end_line":243,"start":10626,"end":10814,"source":"(label) => {\n const found = document.querySelector(`[aria-label=\"${label}\"]`)\n return found === null ? null : { role: found.getAttribute('role'), tag: found.tagName }\n }","value":{"kind":"source-expression","source":"(label) => {\n const found = document.querySelector(`[aria-label=\"${label}\"]`)\n return found === null ? null : { role: found.getAttribute('role'), tag: found.tagName }\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (label) => { const found = document.querySelector(`[aria-label=\"${label}\"]`) return found === null ? null : { role: found.ge. The actual route renders a Back control with button semantics and the observed DOM tag.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":243,"end_line":243,"start":10816,"end":10826,"source":"BACK_LABEL","value":{"kind":"reference","source":"BACK_LABEL","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":214,"end_line":214,"start":9266,"end":9285},"resolved":{"kind":"string","value":"Back to worktrees"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: BACK_LABEL. The actual route renders a Back control with button semantics and the observed DOM tag.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The actual route renders a Back control with button semantics and the observed DOM tag.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":239,"title":"puts the Back control in the accessibility tree by name","start":10483,"end":11326},"implementation_status":"retained"},{"line":251,"title":"fetches the session route's own chunk on a client-side navigation","decision":"keep","reason":"Client navigation fetches the builder-named deferred session chunk absent from the initial route.","explicit_input_controls":[{"control_id":"2:252:inline-api-or-fixture-input:20","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":252,"source":"openRoute(HOST_ROUTE, SHELL_HOST.name)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":252,"end_line":252,"start":11338,"end":11348,"source":"HOST_ROUTE","value":{"kind":"reference","source":"HOST_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":54,"end_line":54,"start":3152,"end":3174},"resolved":{"kind":"string","value":"/h/render-check-host"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: HOST_ROUTE. Client navigation fetches the builder-named deferred session chunk absent from the initial route.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":252,"end_line":252,"start":11350,"end":11365,"source":"SHELL_HOST.name","value":{"kind":"source-expression","source":"SHELL_HOST.name"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SHELL_HOST.name. Client navigation fetches the builder-named deferred session chunk absent from the initial route.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Client navigation fetches the builder-named deferred session chunk absent from the initial route.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"2:253:fixture-or-oracle-declaration:21","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":253,"source":"[...opened.scripts]","rows":[],"decision":"keep","reason":"Client navigation fetches the builder-named deferred session chunk absent from the initial route.","implementation_rows":[]},{"control_id":"2:254:browser-event-input:22","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":254,"source":"opened.page.evaluate((to) => {\n history.pushState(null, '', to)\n dispatchEvent(new PopStateEvent('popstate'))\n }, SESSION_ROUTE)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":254,"end_line":257,"start":11454,"end":11564,"source":"(to) => {\n history.pushState(null, '', to)\n dispatchEvent(new PopStateEvent('popstate'))\n }","value":{"kind":"source-expression","source":"(to) => {\n history.pushState(null, '', to)\n dispatchEvent(new PopStateEvent('popstate'))\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (to) => { history.pushState(null, '', to) dispatchEvent(new PopStateEvent('popstate')) }. Client navigation fetches the builder-named deferred session chunk absent from the initial route.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":257,"end_line":257,"start":11566,"end":11579,"source":"SESSION_ROUTE","value":{"kind":"reference","source":"SESSION_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":56,"end_line":56,"start":3221,"end":3256},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/session/${WORKTREE}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: SESSION_ROUTE. Client navigation fetches the builder-named deferred session chunk absent from the initial route.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Client navigation fetches the builder-named deferred session chunk absent from the initial route.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":253,"title":"fetches the session route's own chunk on a client-side navigation","start":11332,"end":12304},"implementation_status":"retained"},{"line":270,"title":"paints under the shipped policy without violating it or leaving the origin","decision":"remove","reason":"Same full route mount and error check as line222; consolidate its unique foreign-host request assertion into that retained journey.","explicit_input_controls":[{"control_id":"2:271:inline-api-or-fixture-input:23","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":271,"source":"openRoute(SESSION_ROUTE, 'Terminal')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":271,"end_line":271,"start":12325,"end":12338,"source":"SESSION_ROUTE","value":{"kind":"reference","source":"SESSION_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":56,"end_line":56,"start":3221,"end":3256},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/session/${WORKTREE}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: SESSION_ROUTE. Same full route mount and error check as line222; consolidate its unique foreign-host request assertion into that retained journey.","implementation":{"disposition":"consolidated","target_original_case_line":222,"reason":"The duplicate route mount was removed; its unique foreign-host absence is now asserted in the existing session mount."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":271,"end_line":271,"start":12340,"end":12350,"source":"'Terminal'","value":{"kind":"string","value":"Terminal"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: 'Terminal'. Same full route mount and error check as line222; consolidate its unique foreign-host request assertion into that retained journey.","implementation":{"disposition":"consolidated","target_original_case_line":222,"reason":"The duplicate route mount was removed; its unique foreign-host absence is now asserted in the existing session mount."}}],"decision":"remove","reason":"Same full route mount and error check as line222; consolidate its unique foreign-host request assertion into that retained journey.","implementation_rows":[{"index":1,"disposition":"consolidated","target_original_case_line":222,"reason":"The duplicate route mount was removed; its unique foreign-host absence is now asserted in the existing session mount."},{"index":2,"disposition":"consolidated","target_original_case_line":222,"reason":"The duplicate route mount was removed; its unique foreign-host absence is now asserted in the existing session mount."}]}],"current_declaration":null,"implementation_status":"removed"},{"line":284,"title":"asks the origin for no icon, which the shell has none to answer with","decision":"keep","reason":"A real browser networkidle boundary and positive document request make the absent favicon request observable.","explicit_input_controls":[{"control_id":"2:295:inline-api-or-fixture-input:24","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":295,"source":"openRoute(SESSION_ROUTE, 'Terminal')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":295,"end_line":295,"start":14080,"end":14093,"source":"SESSION_ROUTE","value":{"kind":"reference","source":"SESSION_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":56,"end_line":56,"start":3221,"end":3256},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/session/${WORKTREE}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION_ROUTE. A real browser networkidle boundary and positive document request make the absent favicon request observable.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":295,"end_line":295,"start":14095,"end":14105,"source":"'Terminal'","value":{"kind":"string","value":"Terminal"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'Terminal'. A real browser networkidle boundary and positive document request make the absent favicon request observable.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"A real browser networkidle boundary and positive document request make the absent favicon request observable.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":272,"title":"asks the origin for no icon, which the shell has none to answer with","start":12310,"end":13773},"implementation_status":"retained"},{"line":305,"title":"paints with DOM storage off, which is how the Android shell serves it","decision":"keep","reason":"Actual storage-null Android initialization is a distinct bridge boundary and must finish with no runtime errors.","explicit_input_controls":[{"control_id":"2:312:inline-api-or-fixture-input:25","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":312,"source":"openRoute(SESSION_ROUTE, 'Terminal', {}, { domStorageOff: true })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":312,"end_line":312,"start":15315,"end":15328,"source":"SESSION_ROUTE","value":{"kind":"reference","source":"SESSION_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":56,"end_line":56,"start":3221,"end":3256},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/session/${WORKTREE}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION_ROUTE. Actual storage-null Android initialization is a distinct bridge boundary and must finish with no runtime errors.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":312,"end_line":312,"start":15330,"end":15340,"source":"'Terminal'","value":{"kind":"string","value":"Terminal"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'Terminal'. Actual storage-null Android initialization is a distinct bridge boundary and must finish with no runtime errors.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":312,"end_line":312,"start":15342,"end":15344,"source":"{}","value":{"kind":"object","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: {}. Actual storage-null Android initialization is a distinct bridge boundary and must finish with no runtime errors.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":312,"end_line":312,"start":15346,"end":15369,"source":"{ domStorageOff: true }","value":{"kind":"object","value":[{"key":"domStorageOff","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { domStorageOff: true }. Actual storage-null Android initialization is a distinct bridge boundary and must finish with no runtime errors.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual storage-null Android initialization is a distinct bridge boundary and must finish with no runtime errors.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":293,"title":"paints with DOM storage off, which is how the Android shell serves it","start":13779,"end":14780},"implementation_status":"retained"},{"line":319,"title":"writes no storage key it was never handed, on a mount that read the host status","decision":"fix","reason":"Wait for actual status.get observation and browser completion before asserting no ungranted storage warning; current route-paint boundary can precede status handling.","explicit_input_controls":[{"control_id":"2:326:inline-api-or-fixture-input:26","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":326,"source":"openRoute(SESSION_ROUTE, 'Terminal', {\n 'status.get': {\n protocolVersion: 9,\n minCompatibleMobileVersion: 1,\n appVersion: '1.4.191',\n capabilities: []\n }\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":326,"end_line":326,"start":16319,"end":16332,"source":"SESSION_ROUTE","value":{"kind":"reference","source":"SESSION_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":56,"end_line":56,"start":3221,"end":3256},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/session/${WORKTREE}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION_ROUTE. Wait for actual status.get observation and browser completion before asserting no ungranted storage warning; current route-paint boundary can precede status handling.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":326,"end_line":326,"start":16334,"end":16344,"source":"'Terminal'","value":{"kind":"string","value":"Terminal"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'Terminal'. Wait for actual status.get observation and browser completion before asserting no ungranted storage warning; current route-paint boundary can precede status handling.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":326,"end_line":333,"start":16346,"end":16520,"source":"{\n 'status.get': {\n protocolVersion: 9,\n minCompatibleMobileVersion: 1,\n appVersion: '1.4.191',\n capabilities: []\n }\n }","value":{"kind":"object","value":[{"key":"'status.get'","value":{"kind":"object","value":[{"key":"protocolVersion","value":{"kind":"number","value":9}},{"key":"minCompatibleMobileVersion","value":{"kind":"number","value":1}},{"key":"appVersion","value":{"kind":"string","value":"1.4.191"}},{"key":"capabilities","value":{"kind":"array","value":[]}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { 'status.get': { protocolVersion: 9, minCompatibleMobileVersion: 1, appVersion: '1.4.191', . Wait for actual status.get observation and browser completion before asserting no ungranted storage warning; current route-paint boundary can precede status handling.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Wait for actual status.get observation and browser completion before asserting no ungranted storage warning; current route-paint boundary can precede status handling.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":307,"title":"writes no storage key it was never handed, on a mount that read the host status","start":14786,"end":16120},"implementation_status":"implemented"},{"line":340,"title":"asks the desktop for the session it was opened on, so the page above is live","decision":"fix","reason":"Assert every observed worktree.show/session.tabs.list/terminal.list request targets the expected id: worktree, rather than matching one JSON substring anywhere.","explicit_input_controls":[{"control_id":"2:348:inline-api-or-fixture-input:27","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":348,"source":"openRoute(SESSION_ROUTE, 'Terminal')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":348,"end_line":348,"start":17568,"end":17581,"source":"SESSION_ROUTE","value":{"kind":"reference","source":"SESSION_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":56,"end_line":56,"start":3221,"end":3256},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/session/${WORKTREE}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION_ROUTE. Assert every observed worktree.show/session.tabs.list/terminal.list request targets the expected id: worktree, rather than matching one JSON substring anywhere.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":348,"end_line":348,"start":17583,"end":17593,"source":"'Terminal'","value":{"kind":"string","value":"Terminal"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'Terminal'. Assert every observed worktree.show/session.tabs.list/terminal.list request targets the expected id: worktree, rather than matching one JSON substring anywhere.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Assert every observed worktree.show/session.tabs.list/terminal.list request targets the expected id: worktree, rather than matching one JSON substring anywhere.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"2:349:inline-api-or-fixture-input:28","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":349,"source":"waitForRecordedRequests(opened.page, SESSION_MOUNT_READS)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":349,"end_line":349,"start":17648,"end":17659,"source":"opened.page","value":{"kind":"source-expression","source":"opened.page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: opened.page. Assert every observed worktree.show/session.tabs.list/terminal.list request targets the expected id: worktree, rather than matching one JSON substring anywhere.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":349,"end_line":349,"start":17661,"end":17680,"source":"SESSION_MOUNT_READS","value":{"kind":"reference","source":"SESSION_MOUNT_READS","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":217,"end_line":217,"start":9392,"end":9447},"resolved":{"kind":"array","value":[{"kind":"string","value":"worktree.show"},{"kind":"string","value":"session.tabs.list"},{"kind":"string","value":"terminal.list"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION_MOUNT_READS. Assert every observed worktree.show/session.tabs.list/terminal.list request targets the expected id: worktree, rather than matching one JSON substring anywhere.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Assert every observed worktree.show/session.tabs.list/terminal.list request targets the expected id: worktree, rather than matching one JSON substring anywhere.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":330,"title":"asks the desktop for the session it was opened on, so the page above is live","start":16126,"end":17323},"implementation_status":"implemented"}],"lines":380,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","production_evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-render-harness.mjs","config/scripts/mobile-web-page-routes.mjs","mobile/src/session/mobile-session-tabs-stream-health.ts","mobile/src/session/use-live-worktree-name.ts","mobile/src/session/use-mobile-session-tabs-reconciliation.ts","mobile/src/session/use-mobile-session-terminal-list.ts"],"planned_changes":[{"original_line":222,"title":"mounts the session screen rather than the unmatched route, with nothing on the console","decision":"fix","change":"Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case."},{"original_line":270,"title":"paints under the shipped policy without violating it or leaving the origin","decision":"remove","change":"Same full route mount and error check as line222; consolidate its unique foreign-host request assertion into that retained journey."},{"original_line":319,"title":"writes no storage key it was never handed, on a mount that read the host status","decision":"fix","change":"Wait for actual status.get observation and browser completion before asserting no ungranted storage warning; current route-paint boundary can precede status handling."},{"original_line":340,"title":"asks the desktop for the session it was opened on, so the page above is live","decision":"fix","change":"Assert every observed worktree.show/session.tabs.list/terminal.list request targets the expected id: worktree, rather than matching one JSON substring anywhere."}],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"2:59:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":59,"end_line":59,"start":3420,"end":3474,"source":"['/h/[hostId]', SESSION_PATTERN]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":59,"end_line":59,"start":3442,"end":3474},"binding":"PAGE_ROUTE_PATTERNS","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":59,"end_line":59,"start":3443,"end":3456,"source":"'/h/[hostId]'","value":{"kind":"string","value":"/h/[hostId]"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: '/h/[hostId]'. Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":59,"end_line":59,"start":3458,"end":3473,"source":"SESSION_PATTERN","value":{"kind":"reference","source":"SESSION_PATTERN","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":57,"end_line":57,"start":3281,"end":3315},"resolved":{"kind":"string","value":"/h/[hostId]/session/[worktreeId]"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: SESSION_PATTERN. Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:62:fixture-or-oracle-declaration:2","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":62,"end_line":67,"start":3577,"end":3701,"source":"{\n id: 'render-check-host',\n name: 'Render Check Host',\n endpoint: 'ws://render-check',\n lastConnected: 1\n}","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":62,"end_line":67,"start":3590,"end":3701},"binding":"SHELL_HOST","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":63,"end_line":63,"start":3594,"end":3617,"source":"id: 'render-check-host'","value":{"kind":"property","key":"id","value":{"kind":"string","value":"render-check-host"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: id: 'render-check-host'. Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":64,"end_line":64,"start":3621,"end":3646,"source":"name: 'Render Check Host'","value":{"kind":"property","key":"name","value":{"kind":"string","value":"Render Check Host"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: name: 'Render Check Host'. Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":65,"end_line":65,"start":3650,"end":3679,"source":"endpoint: 'ws://render-check'","value":{"kind":"property","key":"endpoint","value":{"kind":"string","value":"ws://render-check"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: endpoint: 'ws://render-check'. Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":66,"end_line":66,"start":3683,"end":3699,"source":"lastConnected: 1","value":{"kind":"property","key":"lastConnected","value":{"kind":"number","value":1}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: lastConnected: 1. Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:92:fixture-or-oracle-declaration:3","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":92,"end_line":92,"start":4478,"end":4494,"source":"{}","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":92,"end_line":92,"start":4492,"end":4494},"binding":"routeChunks","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:93:fixture-or-oracle-declaration:4","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":93,"end_line":93,"start":4499,"end":4515,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":93,"end_line":93,"start":4513,"end":4515},"binding":"servedPaths","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:106:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":106,"end_line":106,"start":4869,"end":4929,"source":"buildMobileWebAppBundle({ outDir: join(scratch, 'bundle') })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":106,"end_line":106,"start":4869,"end":4929},"binding":"buildMobileWebAppBundle","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":106,"end_line":106,"start":4893,"end":4928,"source":"{ outDir: join(scratch, 'bundle') }","value":{"kind":"object","value":[{"key":"outDir","value":{"kind":"call-source","callee":"join","arguments":[{"kind":"source-expression","source":"scratch"},{"kind":"string","value":"bundle"}],"source":"join(scratch, 'bundle')"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { outDir: join(scratch, 'bundle') }. Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:108:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":108,"end_line":108,"start":4987,"end":5042,"source":"createBundleServer({ outDir: built.outDir, cspHeader })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":108,"end_line":108,"start":4987,"end":5042},"binding":"createBundleServer","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":108,"end_line":108,"start":5006,"end":5041,"source":"{ outDir: built.outDir, cspHeader }","value":{"kind":"object","value":[{"key":"outDir","value":{"kind":"source-expression","source":"built.outDir"}},{"source":"cspHeader"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { outDir: built.outDir, cspHeader }. Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:149:fixture-or-oracle-declaration:7","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":149,"end_line":149,"start":6697,"end":6708,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":149,"end_line":149,"start":6706,"end":6708},"binding":"errors","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:150:fixture-or-oracle-declaration:8","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":150,"end_line":150,"start":6717,"end":6730,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":150,"end_line":150,"start":6728,"end":6730},"binding":"warnings","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:151:fixture-or-oracle-declaration:9","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":151,"end_line":151,"start":6739,"end":6751,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":151,"end_line":151,"start":6749,"end":6751},"binding":"scripts","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:152:fixture-or-oracle-declaration:10","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":152,"end_line":152,"start":6760,"end":6779,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":152,"end_line":152,"start":6777,"end":6779},"binding":"requestedHosts","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:201:for-of:11","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":201,"end_line":203,"start":8758,"end":8892,"source":"await page.evaluate(() => globalThis.__orcaRenderCheckFaults ?? [])","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":201,"end_line":201,"start":8778,"end":8845},"binding":"const fault","resolution":[],"dynamic_source":"await page.evaluate(() => globalThis.__orcaRenderCheckFaults ?? [])","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:201:browser-event-input:12","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":201,"end_line":201,"start":8784,"end":8845,"source":"page.evaluate(() => globalThis.__orcaRenderCheckFaults ?? [])","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":201,"end_line":201,"start":8784,"end":8845},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":201,"end_line":201,"start":8798,"end":8844,"source":"() => globalThis.__orcaRenderCheckFaults ?? []","value":{"kind":"source-expression","source":"() => globalThis.__orcaRenderCheckFaults ?? []"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaRenderCheckFaults ?? []. Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:207:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":207,"end_line":207,"start":8992,"end":9025,"source":"openPage(route, replies, options)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":207,"end_line":207,"start":8992,"end":9025},"binding":"openPage","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":207,"end_line":207,"start":9001,"end":9006,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: route. Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":207,"end_line":207,"start":9008,"end":9015,"source":"replies","value":{"kind":"source-expression","source":"replies"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: replies. Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":207,"end_line":207,"start":9017,"end":9024,"source":"options","value":{"kind":"source-expression","source":"options"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: options. Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:217:fixture-or-oracle-declaration:14","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":217,"end_line":217,"start":9370,"end":9447,"source":"['worktree.show', 'session.tabs.list', 'terminal.list']","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":217,"end_line":217,"start":9392,"end":9447},"binding":"SESSION_MOUNT_READS","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":217,"end_line":217,"start":9393,"end":9408,"source":"'worktree.show'","value":{"kind":"string","value":"worktree.show"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'worktree.show'. Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":217,"end_line":217,"start":9410,"end":9429,"source":"'session.tabs.list'","value":{"kind":"string","value":"session.tabs.list"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'session.tabs.list'. Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":217,"end_line":217,"start":9431,"end":9446,"source":"'terminal.list'","value":{"kind":"string","value":"terminal.list"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'terminal.list'. Retain real session browser journeys; consolidate duplicated policy mount and strengthen status completion and per-method worktree observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:223:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":223,"end_line":223,"start":9654,"end":9690,"source":"openRoute(SESSION_ROUTE, 'Terminal')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":223,"end_line":223,"start":9654,"end":9690},"binding":"openRoute","resolution":[],"enclosing_case":{"line":222,"title":"mounts the session screen rather than the unmatched route, with nothing on the console"},"affected_case_lines":[],"decision":"keep","reason":"Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":223,"end_line":223,"start":9664,"end":9677,"source":"SESSION_ROUTE","value":{"kind":"reference","source":"SESSION_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":56,"end_line":56,"start":3221,"end":3256},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/session/${WORKTREE}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION_ROUTE. Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":223,"end_line":223,"start":9679,"end":9689,"source":"'Terminal'","value":{"kind":"string","value":"Terminal"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'Terminal'. Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:224:browser-event-input:16","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":224,"end_line":224,"start":9716,"end":9767,"source":"opened.page.evaluate(() => document.body.innerText)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":224,"end_line":224,"start":9716,"end":9767},"binding":"opened.page.evaluate","resolution":[],"enclosing_case":{"line":222,"title":"mounts the session screen rather than the unmatched route, with nothing on the console"},"affected_case_lines":[],"decision":"keep","reason":"Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":224,"end_line":224,"start":9737,"end":9766,"source":"() => document.body.innerText","value":{"kind":"source-expression","source":"() => document.body.innerText"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => document.body.innerText. Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:227:for-of:17","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":227,"end_line":229,"start":9942,"end":10041,"source":"['Esc', 'Tab', 'Ctrl+C', 'Ctrl+R']","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":227,"end_line":227,"start":9960,"end":9994},"binding":"const key","resolution":[],"enclosing_case":{"line":222,"title":"mounts the session screen rather than the unmatched route, with nothing on the console"},"affected_case_lines":[],"decision":"keep","reason":"Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":227,"end_line":227,"start":9961,"end":9966,"source":"'Esc'","value":{"kind":"string","value":"Esc"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Esc'. Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":227,"end_line":227,"start":9968,"end":9973,"source":"'Tab'","value":{"kind":"string","value":"Tab"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Tab'. Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":227,"end_line":227,"start":9975,"end":9983,"source":"'Ctrl+C'","value":{"kind":"string","value":"Ctrl+C"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Ctrl+C'. Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":227,"end_line":227,"start":9985,"end":9993,"source":"'Ctrl+R'","value":{"kind":"string","value":"Ctrl+R"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Ctrl+R'. Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:239:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":239,"end_line":239,"start":10540,"end":10576,"source":"openRoute(SESSION_ROUTE, 'Terminal')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":239,"end_line":239,"start":10540,"end":10576},"binding":"openRoute","resolution":[],"enclosing_case":{"line":237,"title":"puts the Back control in the accessibility tree by name"},"affected_case_lines":[],"decision":"keep","reason":"The actual route renders a Back control with button semantics and the observed DOM tag.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":239,"end_line":239,"start":10550,"end":10563,"source":"SESSION_ROUTE","value":{"kind":"reference","source":"SESSION_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":56,"end_line":56,"start":3221,"end":3256},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/session/${WORKTREE}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION_ROUTE. The actual route renders a Back control with button semantics and the observed DOM tag.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":239,"end_line":239,"start":10565,"end":10575,"source":"'Terminal'","value":{"kind":"string","value":"Terminal"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'Terminal'. The actual route renders a Back control with button semantics and the observed DOM tag.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:240:browser-event-input:19","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":240,"end_line":243,"start":10605,"end":10827,"source":"opened.page.evaluate((label) => {\n const found = document.querySelector(`[aria-label=\"${label}\"]`)\n return found === null ? null : { role: found.getAttribute('role'), tag: found.tagName }\n }, BACK_LABEL)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":240,"end_line":243,"start":10605,"end":10827},"binding":"opened.page.evaluate","resolution":[],"enclosing_case":{"line":237,"title":"puts the Back control in the accessibility tree by name"},"affected_case_lines":[],"decision":"keep","reason":"The actual route renders a Back control with button semantics and the observed DOM tag.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":240,"end_line":243,"start":10626,"end":10814,"source":"(label) => {\n const found = document.querySelector(`[aria-label=\"${label}\"]`)\n return found === null ? null : { role: found.getAttribute('role'), tag: found.tagName }\n }","value":{"kind":"source-expression","source":"(label) => {\n const found = document.querySelector(`[aria-label=\"${label}\"]`)\n return found === null ? null : { role: found.getAttribute('role'), tag: found.tagName }\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (label) => { const found = document.querySelector(`[aria-label=\"${label}\"]`) return found === null ? null : { role: found.ge. The actual route renders a Back control with button semantics and the observed DOM tag.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":243,"end_line":243,"start":10816,"end":10826,"source":"BACK_LABEL","value":{"kind":"reference","source":"BACK_LABEL","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":214,"end_line":214,"start":9266,"end":9285},"resolved":{"kind":"string","value":"Back to worktrees"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: BACK_LABEL. The actual route renders a Back control with button semantics and the observed DOM tag.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:252:inline-api-or-fixture-input:20","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":252,"end_line":252,"start":11328,"end":11366,"source":"openRoute(HOST_ROUTE, SHELL_HOST.name)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":252,"end_line":252,"start":11328,"end":11366},"binding":"openRoute","resolution":[],"enclosing_case":{"line":251,"title":"fetches the session route's own chunk on a client-side navigation"},"affected_case_lines":[],"decision":"keep","reason":"Client navigation fetches the builder-named deferred session chunk absent from the initial route.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":252,"end_line":252,"start":11338,"end":11348,"source":"HOST_ROUTE","value":{"kind":"reference","source":"HOST_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":54,"end_line":54,"start":3152,"end":3174},"resolved":{"kind":"string","value":"/h/render-check-host"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: HOST_ROUTE. Client navigation fetches the builder-named deferred session chunk absent from the initial route.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":252,"end_line":252,"start":11350,"end":11365,"source":"SHELL_HOST.name","value":{"kind":"source-expression","source":"SHELL_HOST.name"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SHELL_HOST.name. Client navigation fetches the builder-named deferred session chunk absent from the initial route.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:253:fixture-or-oracle-declaration:21","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":253,"end_line":253,"start":11379,"end":11420,"source":"[...opened.scripts]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":253,"end_line":253,"start":11401,"end":11420},"binding":"loadedForFirstRoute","resolution":[],"enclosing_case":{"line":251,"title":"fetches the session route's own chunk on a client-side navigation"},"affected_case_lines":[],"decision":"keep","reason":"Client navigation fetches the builder-named deferred session chunk absent from the initial route.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:254:browser-event-input:22","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":254,"end_line":257,"start":11433,"end":11580,"source":"opened.page.evaluate((to) => {\n history.pushState(null, '', to)\n dispatchEvent(new PopStateEvent('popstate'))\n }, SESSION_ROUTE)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":254,"end_line":257,"start":11433,"end":11580},"binding":"opened.page.evaluate","resolution":[],"enclosing_case":{"line":251,"title":"fetches the session route's own chunk on a client-side navigation"},"affected_case_lines":[],"decision":"keep","reason":"Client navigation fetches the builder-named deferred session chunk absent from the initial route.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":254,"end_line":257,"start":11454,"end":11564,"source":"(to) => {\n history.pushState(null, '', to)\n dispatchEvent(new PopStateEvent('popstate'))\n }","value":{"kind":"source-expression","source":"(to) => {\n history.pushState(null, '', to)\n dispatchEvent(new PopStateEvent('popstate'))\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (to) => { history.pushState(null, '', to) dispatchEvent(new PopStateEvent('popstate')) }. Client navigation fetches the builder-named deferred session chunk absent from the initial route.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":257,"end_line":257,"start":11566,"end":11579,"source":"SESSION_ROUTE","value":{"kind":"reference","source":"SESSION_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":56,"end_line":56,"start":3221,"end":3256},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/session/${WORKTREE}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: SESSION_ROUTE. Client navigation fetches the builder-named deferred session chunk absent from the initial route.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:271:inline-api-or-fixture-input:23","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":271,"end_line":271,"start":12315,"end":12351,"source":"openRoute(SESSION_ROUTE, 'Terminal')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":271,"end_line":271,"start":12315,"end":12351},"binding":"openRoute","resolution":[],"enclosing_case":{"line":270,"title":"paints under the shipped policy without violating it or leaving the origin"},"affected_case_lines":[],"decision":"remove","reason":"Same full route mount and error check as line222; consolidate its unique foreign-host request assertion into that retained journey.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":271,"end_line":271,"start":12325,"end":12338,"source":"SESSION_ROUTE","value":{"kind":"reference","source":"SESSION_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":56,"end_line":56,"start":3221,"end":3256},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/session/${WORKTREE}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: SESSION_ROUTE. Same full route mount and error check as line222; consolidate its unique foreign-host request assertion into that retained journey.","implementation":{"disposition":"consolidated","target_original_case_line":222,"reason":"The duplicate route mount was removed; its unique foreign-host absence is now asserted in the existing session mount."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":271,"end_line":271,"start":12340,"end":12350,"source":"'Terminal'","value":{"kind":"string","value":"Terminal"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: 'Terminal'. Same full route mount and error check as line222; consolidate its unique foreign-host request assertion into that retained journey.","implementation":{"disposition":"consolidated","target_original_case_line":222,"reason":"The duplicate route mount was removed; its unique foreign-host absence is now asserted in the existing session mount."}}],"implementation_rows":[{"index":1,"disposition":"consolidated","target_original_case_line":222,"reason":"The duplicate route mount was removed; its unique foreign-host absence is now asserted in the existing session mount."},{"index":2,"disposition":"consolidated","target_original_case_line":222,"reason":"The duplicate route mount was removed; its unique foreign-host absence is now asserted in the existing session mount."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:295:inline-api-or-fixture-input:24","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":295,"end_line":295,"start":14070,"end":14106,"source":"openRoute(SESSION_ROUTE, 'Terminal')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":295,"end_line":295,"start":14070,"end":14106},"binding":"openRoute","resolution":[],"enclosing_case":{"line":284,"title":"asks the origin for no icon, which the shell has none to answer with"},"affected_case_lines":[],"decision":"keep","reason":"A real browser networkidle boundary and positive document request make the absent favicon request observable.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":295,"end_line":295,"start":14080,"end":14093,"source":"SESSION_ROUTE","value":{"kind":"reference","source":"SESSION_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":56,"end_line":56,"start":3221,"end":3256},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/session/${WORKTREE}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION_ROUTE. A real browser networkidle boundary and positive document request make the absent favicon request observable.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":295,"end_line":295,"start":14095,"end":14105,"source":"'Terminal'","value":{"kind":"string","value":"Terminal"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'Terminal'. A real browser networkidle boundary and positive document request make the absent favicon request observable.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:312:inline-api-or-fixture-input:25","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":312,"end_line":312,"start":15305,"end":15370,"source":"openRoute(SESSION_ROUTE, 'Terminal', {}, { domStorageOff: true })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":312,"end_line":312,"start":15305,"end":15370},"binding":"openRoute","resolution":[],"enclosing_case":{"line":305,"title":"paints with DOM storage off, which is how the Android shell serves it"},"affected_case_lines":[],"decision":"keep","reason":"Actual storage-null Android initialization is a distinct bridge boundary and must finish with no runtime errors.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":312,"end_line":312,"start":15315,"end":15328,"source":"SESSION_ROUTE","value":{"kind":"reference","source":"SESSION_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":56,"end_line":56,"start":3221,"end":3256},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/session/${WORKTREE}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION_ROUTE. Actual storage-null Android initialization is a distinct bridge boundary and must finish with no runtime errors.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":312,"end_line":312,"start":15330,"end":15340,"source":"'Terminal'","value":{"kind":"string","value":"Terminal"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'Terminal'. Actual storage-null Android initialization is a distinct bridge boundary and must finish with no runtime errors.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":312,"end_line":312,"start":15342,"end":15344,"source":"{}","value":{"kind":"object","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: {}. Actual storage-null Android initialization is a distinct bridge boundary and must finish with no runtime errors.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":312,"end_line":312,"start":15346,"end":15369,"source":"{ domStorageOff: true }","value":{"kind":"object","value":[{"key":"domStorageOff","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { domStorageOff: true }. Actual storage-null Android initialization is a distinct bridge boundary and must finish with no runtime errors.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:326:inline-api-or-fixture-input:26","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":326,"end_line":333,"start":16309,"end":16521,"source":"openRoute(SESSION_ROUTE, 'Terminal', {\n 'status.get': {\n protocolVersion: 9,\n minCompatibleMobileVersion: 1,\n appVersion: '1.4.191',\n capabilities: []\n }\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":326,"end_line":333,"start":16309,"end":16521},"binding":"openRoute","resolution":[],"enclosing_case":{"line":319,"title":"writes no storage key it was never handed, on a mount that read the host status"},"affected_case_lines":[],"decision":"keep","reason":"Wait for actual status.get observation and browser completion before asserting no ungranted storage warning; current route-paint boundary can precede status handling.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":326,"end_line":326,"start":16319,"end":16332,"source":"SESSION_ROUTE","value":{"kind":"reference","source":"SESSION_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":56,"end_line":56,"start":3221,"end":3256},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/session/${WORKTREE}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION_ROUTE. Wait for actual status.get observation and browser completion before asserting no ungranted storage warning; current route-paint boundary can precede status handling.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":326,"end_line":326,"start":16334,"end":16344,"source":"'Terminal'","value":{"kind":"string","value":"Terminal"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'Terminal'. Wait for actual status.get observation and browser completion before asserting no ungranted storage warning; current route-paint boundary can precede status handling.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":326,"end_line":333,"start":16346,"end":16520,"source":"{\n 'status.get': {\n protocolVersion: 9,\n minCompatibleMobileVersion: 1,\n appVersion: '1.4.191',\n capabilities: []\n }\n }","value":{"kind":"object","value":[{"key":"'status.get'","value":{"kind":"object","value":[{"key":"protocolVersion","value":{"kind":"number","value":9}},{"key":"minCompatibleMobileVersion","value":{"kind":"number","value":1}},{"key":"appVersion","value":{"kind":"string","value":"1.4.191"}},{"key":"capabilities","value":{"kind":"array","value":[]}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { 'status.get': { protocolVersion: 9, minCompatibleMobileVersion: 1, appVersion: '1.4.191', . Wait for actual status.get observation and browser completion before asserting no ungranted storage warning; current route-paint boundary can precede status handling.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:348:inline-api-or-fixture-input:27","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":348,"end_line":348,"start":17558,"end":17594,"source":"openRoute(SESSION_ROUTE, 'Terminal')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":348,"end_line":348,"start":17558,"end":17594},"binding":"openRoute","resolution":[],"enclosing_case":{"line":340,"title":"asks the desktop for the session it was opened on, so the page above is live"},"affected_case_lines":[],"decision":"keep","reason":"Assert every observed worktree.show/session.tabs.list/terminal.list request targets the expected id: worktree, rather than matching one JSON substring anywhere.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":348,"end_line":348,"start":17568,"end":17581,"source":"SESSION_ROUTE","value":{"kind":"reference","source":"SESSION_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":56,"end_line":56,"start":3221,"end":3256},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/session/${WORKTREE}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION_ROUTE. Assert every observed worktree.show/session.tabs.list/terminal.list request targets the expected id: worktree, rather than matching one JSON substring anywhere.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":348,"end_line":348,"start":17583,"end":17593,"source":"'Terminal'","value":{"kind":"string","value":"Terminal"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'Terminal'. Assert every observed worktree.show/session.tabs.list/terminal.list request targets the expected id: worktree, rather than matching one JSON substring anywhere.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}},{"id":"2:349:inline-api-or-fixture-input:28","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":349,"end_line":349,"start":17624,"end":17681,"source":"waitForRecordedRequests(opened.page, SESSION_MOUNT_READS)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":349,"end_line":349,"start":17624,"end":17681},"binding":"waitForRecordedRequests","resolution":[],"enclosing_case":{"line":340,"title":"asks the desktop for the session it was opened on, so the page above is live"},"affected_case_lines":[],"decision":"keep","reason":"Assert every observed worktree.show/session.tabs.list/terminal.list request targets the expected id: worktree, rather than matching one JSON substring anywhere.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":349,"end_line":349,"start":17648,"end":17659,"source":"opened.page","value":{"kind":"source-expression","source":"opened.page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: opened.page. Assert every observed worktree.show/session.tabs.list/terminal.list request targets the expected id: worktree, rather than matching one JSON substring anywhere.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":349,"end_line":349,"start":17661,"end":17680,"source":"SESSION_MOUNT_READS","value":{"kind":"reference","source":"SESSION_MOUNT_READS","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","line":217,"end_line":217,"start":9392,"end":9447},"resolved":{"kind":"array","value":[{"kind":"string","value":"worktree.show"},{"kind":"string","value":"session.tabs.list"},{"kind":"string","value":"terminal.list"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION_MOUNT_READS. Assert every observed worktree.show/session.tabs.list/terminal.list request targets the expected id: worktree, rather than matching one JSON substring anywhere.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2"}}],"original_review_sha256":"6edea983541367112d9ed682ba7cc3500f11b14a540aee218aa057ab6b84b6ed","reviewer":"audit_config","reviewed_sha256":"4bcbed25bae8262d51f8bb8badfb49ffabebf3821b30d1c595d4fde43eecc6a2","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","final_declarations":7,"current_controls":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","each":[],"for_of":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","start":8799,"end":8866,"line":202,"end_line":202,"source":"await page.evaluate(() => globalThis.__orcaRenderCheckFaults ?? [])","binding":"const fault","changed":false},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","start":9981,"end":10015,"line":228,"end_line":228,"source":"['Esc', 'Tab', 'Ctrl+C', 'Ctrl+R']","binding":"const key","changed":false},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","start":16980,"end":16999,"line":340,"end_line":340,"source":"SESSION_MOUNT_READS","binding":"const method","changed":false},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","start":17173,"end":17181,"line":343,"end_line":343,"source":"observed","binding":"const request","changed":true}],"literal_nodes_without_original_source_match":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","start":15734,"end":15748,"line":322,"end_line":322,"source":"['status.get']","kind":"array"}]},"mutations":[{"name":"one-session-method-wrong-worktree","reason":"Corrupt only session.tabs.list while other methods still name expected worktree; per-method oracle must fail.","baseline_hashes":{"mobile/src/session/mobile-session-tabs-stream-health.ts":"033954c19ef5cac816d6437febc6f844ad7ce3d6c0d46b9914b34666d05847b4"},"test":"config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","pattern":"asks the desktop for the session","log":"/tmp/orca-config-0007-mutation-one-session-method-wrong-worktree.log","command":["pnpm","test","config/scripts/mobile-web-app/mobile-web-app-session-render.test.mjs","-t","asks the desktop for the session","--maxWorkers=1"],"seconds":4.63,"exit_code":1,"assertion_failure_seen":true,"expected_failure_seen":true,"failed_tests":["1 failed | 6 skipped (7)"],"restored_hashes":{"mobile/src/session/mobile-session-tabs-stream-health.ts":"033954c19ef5cac816d6437febc6f844ad7ce3d6c0d46b9914b34666d05847b4"},"restored":true,"log_sha256":"7d137ab06be7ba4ed1cf3ec1a7a6c07e67667dde4c24f4d6d431223d198090bb"}]},"implemented_changes":[{"original_line":222,"title":"mounts the session screen rather than the unmatched route, with nothing on the console","decision":"fix","change":"Retain actual command-dock mount and exact error oracle; incorporate the unique foreign-host request check from the duplicate policy-mount case."},{"original_line":270,"title":"paints under the shipped policy without violating it or leaving the origin","decision":"remove","change":"Same full route mount and error check as line222; consolidate its unique foreign-host request assertion into that retained journey."},{"original_line":319,"title":"writes no storage key it was never handed, on a mount that read the host status","decision":"fix","change":"Wait for actual status.get observation and browser completion before asserting no ungranted storage warning; current route-paint boundary can precede status handling."},{"original_line":340,"title":"asks the desktop for the session it was opened on, so the page above is live","decision":"fix","change":"Assert every observed worktree.show/session.tabs.list/terminal.list request targets the expected id: worktree, rather than matching one JSON substring anywhere."}],"manual_implementation_notes":[],"evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-render-harness.mjs","config/scripts/mobile-web-page-routes.mjs","mobile/src/session/mobile-session-tabs-stream-health.ts","mobile/src/session/use-live-worktree-name.ts","mobile/src/session/use-mobile-session-tabs-reconciliation.ts","mobile/src/session/use-mobile-session-terminal-list.ts"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","sha256":"f14c7b227f7c149c9b6adb6a845747f5d76a239834fb2dd59905fe78c6004d37","declarations":5,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"f14c7b227f7c149c9b6adb6a845747f5d76a239834fb2dd59905fe78c6004d37","cases":[{"line":486,"title":"gains the document, xterm and the addons, and sheds the engine string","decision":"fix","reason":"Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","explicit_input_controls":[{"control_id":"3:488:for-of:6","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":488,"source":"SHED","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":132,"end_line":132,"start":8462,"end":8496,"source":"'src/terminal/TerminalWebView.tsx'","value":{"kind":"string","value":"src/terminal/TerminalWebView.tsx"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/TerminalWebView.tsx'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":133,"end_line":133,"start":8500,"end":8551,"source":"'src/terminal/terminal-webview-engine.generated.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-engine.generated.ts"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-webview-engine.generated.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":134,"end_line":134,"start":8555,"end":8615,"source":"'src/terminal/terminal-webview-document-script.generated.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-document-script.generated.ts"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-webview-document-script.generated.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":135,"end_line":135,"start":8619,"end":8658,"source":"'src/terminal/terminal-webview-html.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-html.ts"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-webview-html.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":136,"end_line":136,"start":8662,"end":8716,"source":"'src/terminal/terminal-webview-html/document-shell.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-html/document-shell.ts"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-webview-html/document-shell.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":137,"end_line":137,"start":8720,"end":8774,"source":"'src/terminal/terminal-webview-html/document-close.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-html/document-close.ts"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-webview-html/document-close.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"3:491:for-of:7","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":491,"source":"GAINED_OUTSIDE_THE_DOCUMENT","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":142,"end_line":142,"start":8915,"end":8953,"source":"'src/terminal/TerminalWebView.web.tsx'","value":{"kind":"string","value":"src/terminal/TerminalWebView.web.tsx"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/TerminalWebView.web.tsx'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":143,"end_line":143,"start":8957,"end":9002,"source":"'src/terminal/terminal-web-document-mount.ts'","value":{"kind":"string","value":"src/terminal/terminal-web-document-mount.ts"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-web-document-mount.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":144,"end_line":144,"start":9006,"end":9061,"source":"'src/terminal/terminal-webview-engine-css.generated.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-engine-css.generated.ts"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-webview-engine-css.generated.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":145,"end_line":145,"start":9065,"end":9108,"source":"'src/terminal/terminal-webview-html.web.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-html.web.ts"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-webview-html.web.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":146,"end_line":146,"start":9112,"end":9167,"source":"'src/terminal/terminal-webview-html/document-markup.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-html/document-markup.ts"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-webview-html/document-markup.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":147,"end_line":147,"start":9171,"end":9225,"source":"'src/terminal/terminal-webview-html/document-style.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-html/document-style.ts"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-webview-html/document-style.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":148,"end_line":148,"start":9229,"end":9278,"source":"'src/terminal/terminal-webview-ready-promises.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-ready-promises.ts"},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-webview-ready-promises.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":149,"end_line":149,"start":9282,"end":9331,"source":"'src/terminal/use-terminal-webview-controller.ts'","value":{"kind":"string","value":"src/terminal/use-terminal-webview-controller.ts"},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/use-terminal-webview-controller.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":153,"end_line":153,"start":9620,"end":9665,"source":"'src/style-scoping/document-style-scoping.ts'","value":{"kind":"string","value":"src/style-scoping/document-style-scoping.ts"},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/style-scoping/document-style-scoping.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"3:494:for-of:8","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":494,"source":"XTERM_PACKAGES","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":156,"end_line":156,"start":9693,"end":9707,"source":"'@xterm/xterm'","value":{"kind":"string","value":"@xterm/xterm"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: '@xterm/xterm'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":156,"end_line":156,"start":9709,"end":9733,"source":"'@xterm/addon-unicode11'","value":{"kind":"string","value":"@xterm/addon-unicode11"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: '@xterm/addon-unicode11'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":156,"end_line":156,"start":9735,"end":9755,"source":"'@xterm/addon-webgl'","value":{"kind":"string","value":"@xterm/addon-webgl"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: '@xterm/addon-webgl'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":483,"title":"gains the document, xterm and the addons, and sheds the engine string","start":28787,"end":30291},"implementation_status":"implemented"},{"line":513,"title":"enters through the web sibling and the route body, not the switch","decision":"fix","reason":"Keep actual web route/body and absent native switch/shell; remove unrelated notification and bridge-init module inventory pins.","explicit_input_controls":[{"control_id":"3:515:for-of:9","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":515,"source":"ROUTE_ENTRY","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":465,"end_line":465,"start":28174,"end":28219,"source":"'app/h/[hostId]/session/[worktreeId].web.tsx'","value":{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].web.tsx"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'app/h/[hostId]/session/[worktreeId].web.tsx'. Keep actual web route/body and absent native switch/shell; remove unrelated notification and bridge-init module inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":466,"end_line":466,"start":28223,"end":28265,"source":"'src/session/MobileSessionRouteScreen.tsx'","value":{"kind":"string","value":"src/session/MobileSessionRouteScreen.tsx"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/session/MobileSessionRouteScreen.tsx'. Keep actual web route/body and absent native switch/shell; remove unrelated notification and bridge-init module inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":468,"end_line":468,"start":28352,"end":28390,"source":"'src/session/notification-pane-tab.ts'","value":{"kind":"string","value":"src/session/notification-pane-tab.ts"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/session/notification-pane-tab.ts'. Keep actual web route/body and absent native switch/shell; remove unrelated notification and bridge-init module inventory pins.","implementation":{"disposition":"removed-unrelated-inventory-row","reason":"Notification-pane and bridge-init filenames are unrelated pins; actual web-route/body positives and native route exclusions remain."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":469,"end_line":469,"start":28394,"end":28444,"source":"'src/mobile-web-shell/bridge/bridge-init-route.ts'","value":{"kind":"string","value":"src/mobile-web-shell/bridge/bridge-init-route.ts"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/mobile-web-shell/bridge/bridge-init-route.ts'. Keep actual web route/body and absent native switch/shell; remove unrelated notification and bridge-init module inventory pins.","implementation":{"disposition":"removed-unrelated-inventory-row","reason":"Notification-pane and bridge-init filenames are unrelated pins; actual web-route/body positives and native route exclusions remain."}}],"decision":"fix","reason":"Keep actual web route/body and absent native switch/shell; remove unrelated notification and bridge-init module inventory pins.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"removed-unrelated-inventory-row","reason":"Notification-pane and bridge-init filenames are unrelated pins; actual web-route/body positives and native route exclusions remain."},{"index":4,"disposition":"removed-unrelated-inventory-row","reason":"Notification-pane and bridge-init filenames are unrelated pins; actual web-route/body positives and native route exclusions remain."}]}],"current_declaration":{"line":509,"title":"enters through the web sibling and the route body, not the switch","start":30297,"end":30983},"implementation_status":"implemented"},{"line":525,"title":"reaches the engine as one deferred module and never as part of the download","decision":"fix","reason":"Keep unique deferred Mermaid artifact and static-route exclusion controls; remove >1000 static-input count.","explicit_input_controls":[{"control_id":"3:532:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":532,"source":"mobileWebAppRouteChunkClosure(SESSION_ROUTE)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":532,"end_line":532,"start":31695,"end":31708,"source":"SESSION_ROUTE","value":{"kind":"reference","source":"SESSION_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":128,"end_line":128,"start":8315,"end":8356},"resolved":{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].tsx"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION_ROUTE. Keep unique deferred Mermaid artifact and static-route exclusion controls; remove >1000 static-input count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Keep unique deferred Mermaid artifact and static-route exclusion controls; remove >1000 static-input count.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":521,"title":"reaches the engine as one deferred module and never as part of the download","start":30989,"end":32129},"implementation_status":"implemented"},{"line":544,"title":"leaves the 16px seam census exactly where C7.2 left it","decision":"fix","reason":"Keep real text-input seam, unresolved/offender census and web/native styles resolution; remove >900 module count.","explicit_input_controls":[{"control_id":"3:549:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":549,"source":"unresolvedTextInputStyles(mobileDir, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":549,"end_line":549,"start":32886,"end":32895,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":126,"end_line":126,"start":8265,"end":8291},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"projectDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":125,"end_line":125,"start":8195,"end":8246},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../..', import.meta.url)"}],"source":"fileURLToPath(new URL('../../..', import.meta.url))"}},{"kind":"string","value":"mobile"}],"source":"join(projectDir, 'mobile')"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. Keep real text-input seam, unresolved/offender census and web/native styles resolution; remove >900 module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":549,"end_line":549,"start":32897,"end":32904,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Keep real text-input seam, unresolved/offender census and web/native styles resolution; remove >900 module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Keep real text-input seam, unresolved/offender census and web/native styles resolution; remove >900 module count.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"3:550:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":550,"source":"textInputFontSizeOffenders(mobileDir, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":550,"end_line":550,"start":32959,"end":32968,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":126,"end_line":126,"start":8265,"end":8291},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"projectDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":125,"end_line":125,"start":8195,"end":8246},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../..', import.meta.url)"}],"source":"fileURLToPath(new URL('../../..', import.meta.url))"}},{"kind":"string","value":"mobile"}],"source":"join(projectDir, 'mobile')"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. Keep real text-input seam, unresolved/offender census and web/native styles resolution; remove >900 module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":550,"end_line":550,"start":32970,"end":32977,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Keep real text-input seam, unresolved/offender census and web/native styles resolution; remove >900 module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Keep real text-input seam, unresolved/offender census and web/native styles resolution; remove >900 module count.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":539,"title":"leaves the 16px seam census exactly where C7.2 left it","start":32135,"end":32848},"implementation_status":"implemented"},{"line":555,"title":"holds the editables the TextInput census cannot see to the same floor","decision":"fix","reason":"Keep unresolved/font census and positive known editor presence; replace exact singleton host inventory with containment so new valid hosts use the shared rule.","explicit_input_controls":[{"control_id":"3:560:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":560,"source":"editableHostsIn(mobileDir, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":560,"end_line":560,"start":33697,"end":33706,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":126,"end_line":126,"start":8265,"end":8291},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"projectDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":125,"end_line":125,"start":8195,"end":8246},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../..', import.meta.url)"}],"source":"fileURLToPath(new URL('../../..', import.meta.url))"}},{"kind":"string","value":"mobile"}],"source":"join(projectDir, 'mobile')"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. Keep unresolved/font census and positive known editor presence; replace exact singleton host inventory with containment so new valid hosts use the shared rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":560,"end_line":560,"start":33708,"end":33715,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Keep unresolved/font census and positive known editor presence; replace exact singleton host inventory with containment so new valid hosts use the shared rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Keep unresolved/font census and positive known editor presence; replace exact singleton host inventory with containment so new valid hosts use the shared rule.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"3:563:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":563,"source":"unresolvedEditableHostStyles(mobileDir, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":563,"end_line":563,"start":33861,"end":33870,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":126,"end_line":126,"start":8265,"end":8291},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"projectDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":125,"end_line":125,"start":8195,"end":8246},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../..', import.meta.url)"}],"source":"fileURLToPath(new URL('../../..', import.meta.url))"}},{"kind":"string","value":"mobile"}],"source":"join(projectDir, 'mobile')"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. Keep unresolved/font census and positive known editor presence; replace exact singleton host inventory with containment so new valid hosts use the shared rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":563,"end_line":563,"start":33872,"end":33879,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Keep unresolved/font census and positive known editor presence; replace exact singleton host inventory with containment so new valid hosts use the shared rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Keep unresolved/font census and positive known editor presence; replace exact singleton host inventory with containment so new valid hosts use the shared rule.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"3:564:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":564,"source":"editableHostFontSizeOffenders(mobileDir, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":564,"end_line":564,"start":33937,"end":33946,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":126,"end_line":126,"start":8265,"end":8291},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"projectDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":125,"end_line":125,"start":8195,"end":8246},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../..', import.meta.url)"}],"source":"fileURLToPath(new URL('../../..', import.meta.url))"}},{"kind":"string","value":"mobile"}],"source":"join(projectDir, 'mobile')"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. Keep unresolved/font census and positive known editor presence; replace exact singleton host inventory with containment so new valid hosts use the shared rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":564,"end_line":564,"start":33948,"end":33955,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Keep unresolved/font census and positive known editor presence; replace exact singleton host inventory with containment so new valid hosts use the shared rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Keep unresolved/font census and positive known editor presence; replace exact singleton host inventory with containment so new valid hosts use the shared rule.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":549,"title":"holds the editables the TextInput census cannot see to the same floor","start":32854,"end":33632},"implementation_status":"implemented"}],"lines":569,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","production_evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/mobile-web-app-route-chunk-closure.mjs","config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.mjs","config/scripts/mobile-web-app/platform-seams/mobile-web-app-text-input-font-size-seam.mjs"],"planned_changes":[{"original_line":486,"title":"gains the document, xterm and the addons, and sheds the engine string","decision":"fix","change":"Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count."},{"original_line":513,"title":"enters through the web sibling and the route body, not the switch","decision":"fix","change":"Keep actual web route/body and absent native switch/shell; remove unrelated notification and bridge-init module inventory pins."},{"original_line":525,"title":"reaches the engine as one deferred module and never as part of the download","decision":"fix","change":"Keep unique deferred Mermaid artifact and static-route exclusion controls; remove >1000 static-input count."},{"original_line":544,"title":"leaves the 16px seam census exactly where C7.2 left it","decision":"fix","change":"Keep real text-input seam, unresolved/offender census and web/native styles resolution; remove >900 module count."},{"original_line":555,"title":"holds the editables the TextInput census cannot see to the same floor","decision":"fix","change":"Keep unresolved/font census and positive known editor presence; replace exact singleton host inventory with containment so new valid hosts use the shared rule."}],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"3:131:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":131,"end_line":138,"start":8451,"end":8776,"source":"[\n 'src/terminal/TerminalWebView.tsx',\n 'src/terminal/terminal-webview-engine.generated.ts',\n 'src/terminal/terminal-webview-document-script.generated.ts',\n 'src/terminal/terminal-webview-html.ts',\n 'src/terminal/terminal-webview-html/document-shell.ts',\n 'src/terminal/terminal-webview-html/document-close.ts'\n]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":131,"end_line":138,"start":8458,"end":8776},"binding":"SHED","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":132,"end_line":132,"start":8462,"end":8496,"source":"'src/terminal/TerminalWebView.tsx'","value":{"kind":"string","value":"src/terminal/TerminalWebView.tsx"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/terminal/TerminalWebView.tsx'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":133,"end_line":133,"start":8500,"end":8551,"source":"'src/terminal/terminal-webview-engine.generated.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-engine.generated.ts"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/terminal/terminal-webview-engine.generated.ts'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":134,"end_line":134,"start":8555,"end":8615,"source":"'src/terminal/terminal-webview-document-script.generated.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-document-script.generated.ts"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/terminal/terminal-webview-document-script.generated.ts'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":135,"end_line":135,"start":8619,"end":8658,"source":"'src/terminal/terminal-webview-html.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-html.ts"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/terminal/terminal-webview-html.ts'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":136,"end_line":136,"start":8662,"end":8716,"source":"'src/terminal/terminal-webview-html/document-shell.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-html/document-shell.ts"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/terminal/terminal-webview-html/document-shell.ts'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":137,"end_line":137,"start":8720,"end":8774,"source":"'src/terminal/terminal-webview-html/document-close.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-html/document-close.ts"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/terminal/terminal-webview-html/document-close.ts'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2be0f5134cfdef0a2b81f1c669e4f2d43e0a580c51613b3806d23ac244b35fbe"}},{"id":"3:141:fixture-or-oracle-declaration:2","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":141,"end_line":154,"start":8881,"end":9667,"source":"[\n 'src/terminal/TerminalWebView.web.tsx',\n 'src/terminal/terminal-web-document-mount.ts',\n 'src/terminal/terminal-webview-engine-css.generated.ts',\n 'src/terminal/terminal-webview-html.web.ts',\n 'src/terminal/terminal-webview-html/document-markup.ts',\n 'src/terminal/terminal-webview-html/document-style.ts',\n 'src/terminal/terminal-webview-ready-promises.ts',\n 'src/terminal/use-terminal-webview-controller.ts',\n // The page's half of the stylesheet: the document-level rules are dropped and the rest is held\n // under the host, so what the page injects can only reach what the terminal owns. It sits\n // outside `src/terminal/` because the rich Markdown editor's mount reads the same rewrite.\n 'src/style-scoping/document-style-scoping.ts'\n]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":141,"end_line":154,"start":8911,"end":9667},"binding":"GAINED_OUTSIDE_THE_DOCUMENT","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":142,"end_line":142,"start":8915,"end":8953,"source":"'src/terminal/TerminalWebView.web.tsx'","value":{"kind":"string","value":"src/terminal/TerminalWebView.web.tsx"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/terminal/TerminalWebView.web.tsx'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":143,"end_line":143,"start":8957,"end":9002,"source":"'src/terminal/terminal-web-document-mount.ts'","value":{"kind":"string","value":"src/terminal/terminal-web-document-mount.ts"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/terminal/terminal-web-document-mount.ts'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":144,"end_line":144,"start":9006,"end":9061,"source":"'src/terminal/terminal-webview-engine-css.generated.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-engine-css.generated.ts"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/terminal/terminal-webview-engine-css.generated.ts'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":145,"end_line":145,"start":9065,"end":9108,"source":"'src/terminal/terminal-webview-html.web.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-html.web.ts"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/terminal/terminal-webview-html.web.ts'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":146,"end_line":146,"start":9112,"end":9167,"source":"'src/terminal/terminal-webview-html/document-markup.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-html/document-markup.ts"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/terminal/terminal-webview-html/document-markup.ts'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":147,"end_line":147,"start":9171,"end":9225,"source":"'src/terminal/terminal-webview-html/document-style.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-html/document-style.ts"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/terminal/terminal-webview-html/document-style.ts'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":148,"end_line":148,"start":9229,"end":9278,"source":"'src/terminal/terminal-webview-ready-promises.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-ready-promises.ts"},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/terminal/terminal-webview-ready-promises.ts'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":149,"end_line":149,"start":9282,"end":9331,"source":"'src/terminal/use-terminal-webview-controller.ts'","value":{"kind":"string","value":"src/terminal/use-terminal-webview-controller.ts"},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/terminal/use-terminal-webview-controller.ts'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":153,"end_line":153,"start":9620,"end":9665,"source":"'src/style-scoping/document-style-scoping.ts'","value":{"kind":"string","value":"src/style-scoping/document-style-scoping.ts"},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/style-scoping/document-style-scoping.ts'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2be0f5134cfdef0a2b81f1c669e4f2d43e0a580c51613b3806d23ac244b35fbe"}},{"id":"3:156:fixture-or-oracle-declaration:3","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":156,"end_line":156,"start":9675,"end":9756,"source":"['@xterm/xterm', '@xterm/addon-unicode11', '@xterm/addon-webgl']","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":156,"end_line":156,"start":9692,"end":9756},"binding":"XTERM_PACKAGES","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":156,"end_line":156,"start":9693,"end":9707,"source":"'@xterm/xterm'","value":{"kind":"string","value":"@xterm/xterm"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: '@xterm/xterm'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":156,"end_line":156,"start":9709,"end":9733,"source":"'@xterm/addon-unicode11'","value":{"kind":"string","value":"@xterm/addon-unicode11"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: '@xterm/addon-unicode11'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":156,"end_line":156,"start":9735,"end":9755,"source":"'@xterm/addon-webgl'","value":{"kind":"string","value":"@xterm/addon-webgl"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: '@xterm/addon-webgl'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2be0f5134cfdef0a2b81f1c669e4f2d43e0a580c51613b3806d23ac244b35fbe"}},{"id":"3:464:fixture-or-oracle-declaration:4","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":464,"end_line":470,"start":28156,"end":28446,"source":"[\n 'app/h/[hostId]/session/[worktreeId].web.tsx',\n 'src/session/MobileSessionRouteScreen.tsx',\n // Round 1's two, named for the reading above rather than left inside the total.\n 'src/session/notification-pane-tab.ts',\n 'src/mobile-web-shell/bridge/bridge-init-route.ts'\n]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":464,"end_line":470,"start":28170,"end":28446},"binding":"ROUTE_ENTRY","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":465,"end_line":465,"start":28174,"end":28219,"source":"'app/h/[hostId]/session/[worktreeId].web.tsx'","value":{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].web.tsx"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'app/h/[hostId]/session/[worktreeId].web.tsx'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":466,"end_line":466,"start":28223,"end":28265,"source":"'src/session/MobileSessionRouteScreen.tsx'","value":{"kind":"string","value":"src/session/MobileSessionRouteScreen.tsx"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/session/MobileSessionRouteScreen.tsx'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":468,"end_line":468,"start":28352,"end":28390,"source":"'src/session/notification-pane-tab.ts'","value":{"kind":"string","value":"src/session/notification-pane-tab.ts"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/session/notification-pane-tab.ts'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"removed-unrelated-inventory-row","reason":"Notification-pane and bridge-init filenames are unrelated pins; actual web-route/body positives and native route exclusions remain."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":469,"end_line":469,"start":28394,"end":28444,"source":"'src/mobile-web-shell/bridge/bridge-init-route.ts'","value":{"kind":"string","value":"src/mobile-web-shell/bridge/bridge-init-route.ts"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/mobile-web-shell/bridge/bridge-init-route.ts'. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"removed-unrelated-inventory-row","reason":"Notification-pane and bridge-init filenames are unrelated pins; actual web-route/body positives and native route exclusions remain."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"removed-unrelated-inventory-row","reason":"Notification-pane and bridge-init filenames are unrelated pins; actual web-route/body positives and native route exclusions remain."},{"index":4,"disposition":"removed-unrelated-inventory-row","reason":"Notification-pane and bridge-init filenames are unrelated pins; actual web-route/body positives and native route exclusions remain."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2be0f5134cfdef0a2b81f1c669e4f2d43e0a580c51613b3806d23ac244b35fbe"}},{"id":"3:483:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":483,"end_line":483,"start":28905,"end":28944,"source":"mobileWebAppRouteClosure(SESSION_ROUTE)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":483,"end_line":483,"start":28905,"end":28944},"binding":"mobileWebAppRouteClosure","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":483,"end_line":483,"start":28930,"end":28943,"source":"SESSION_ROUTE","value":{"kind":"reference","source":"SESSION_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":128,"end_line":128,"start":8315,"end":8356},"resolved":{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].tsx"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION_ROUTE. Keep actual session/document/deferred-engine architecture and scanner controls; remove unrelated size and module-inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2be0f5134cfdef0a2b81f1c669e4f2d43e0a580c51613b3806d23ac244b35fbe"}},{"id":"3:488:for-of:6","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":488,"end_line":490,"start":29103,"end":29214,"source":"SHED","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":488,"end_line":488,"start":29122,"end":29126},"binding":"const gone","resolution":[{"name":"SHED","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":131,"end_line":138,"start":8458,"end":8776,"declaration_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":131,"end_line":138,"start":8451,"end":8776},"source":"[\n 'src/terminal/TerminalWebView.tsx',\n 'src/terminal/terminal-webview-engine.generated.ts',\n 'src/terminal/terminal-webview-document-script.generated.ts',\n 'src/terminal/terminal-webview-html.ts',\n 'src/terminal/terminal-webview-html/document-shell.ts',\n 'src/terminal/terminal-webview-html/document-close.ts'\n]"}],"enclosing_case":{"line":486,"title":"gains the document, xterm and the addons, and sheds the engine string"},"affected_case_lines":[],"decision":"keep","reason":"Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":132,"end_line":132,"start":8462,"end":8496,"source":"'src/terminal/TerminalWebView.tsx'","value":{"kind":"string","value":"src/terminal/TerminalWebView.tsx"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/TerminalWebView.tsx'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":133,"end_line":133,"start":8500,"end":8551,"source":"'src/terminal/terminal-webview-engine.generated.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-engine.generated.ts"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-webview-engine.generated.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":134,"end_line":134,"start":8555,"end":8615,"source":"'src/terminal/terminal-webview-document-script.generated.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-document-script.generated.ts"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-webview-document-script.generated.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":135,"end_line":135,"start":8619,"end":8658,"source":"'src/terminal/terminal-webview-html.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-html.ts"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-webview-html.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":136,"end_line":136,"start":8662,"end":8716,"source":"'src/terminal/terminal-webview-html/document-shell.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-html/document-shell.ts"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-webview-html/document-shell.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":137,"end_line":137,"start":8720,"end":8774,"source":"'src/terminal/terminal-webview-html/document-close.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-html/document-close.ts"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-webview-html/document-close.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2be0f5134cfdef0a2b81f1c669e4f2d43e0a580c51613b3806d23ac244b35fbe"}},{"id":"3:491:for-of:7","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":491,"end_line":493,"start":29221,"end":29355,"source":"GAINED_OUTSIDE_THE_DOCUMENT","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":491,"end_line":491,"start":29242,"end":29269},"binding":"const gained","resolution":[{"name":"GAINED_OUTSIDE_THE_DOCUMENT","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":141,"end_line":154,"start":8911,"end":9667,"declaration_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":141,"end_line":154,"start":8881,"end":9667},"source":"[\n 'src/terminal/TerminalWebView.web.tsx',\n 'src/terminal/terminal-web-document-mount.ts',\n 'src/terminal/terminal-webview-engine-css.generated.ts',\n 'src/terminal/terminal-webview-html.web.ts',\n 'src/terminal/terminal-webview-html/document-markup.ts',\n 'src/terminal/terminal-webview-html/document-style.ts',\n 'src/terminal/terminal-webview-ready-promises.ts',\n 'src/terminal/use-terminal-webview-controller.ts',\n // The page's half of the stylesheet: the document-level rules are dropped and the rest is held\n // under the host, so what the page injects can only reach what the terminal owns. It sits\n // outside `src/terminal/` because the rich Markdown editor's mount reads the same rewrite.\n 'src/style-scoping/document-style-scoping.ts'\n]"}],"enclosing_case":{"line":486,"title":"gains the document, xterm and the addons, and sheds the engine string"},"affected_case_lines":[],"decision":"keep","reason":"Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":142,"end_line":142,"start":8915,"end":8953,"source":"'src/terminal/TerminalWebView.web.tsx'","value":{"kind":"string","value":"src/terminal/TerminalWebView.web.tsx"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/TerminalWebView.web.tsx'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":143,"end_line":143,"start":8957,"end":9002,"source":"'src/terminal/terminal-web-document-mount.ts'","value":{"kind":"string","value":"src/terminal/terminal-web-document-mount.ts"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-web-document-mount.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":144,"end_line":144,"start":9006,"end":9061,"source":"'src/terminal/terminal-webview-engine-css.generated.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-engine-css.generated.ts"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-webview-engine-css.generated.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":145,"end_line":145,"start":9065,"end":9108,"source":"'src/terminal/terminal-webview-html.web.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-html.web.ts"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-webview-html.web.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":146,"end_line":146,"start":9112,"end":9167,"source":"'src/terminal/terminal-webview-html/document-markup.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-html/document-markup.ts"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-webview-html/document-markup.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":147,"end_line":147,"start":9171,"end":9225,"source":"'src/terminal/terminal-webview-html/document-style.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-html/document-style.ts"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-webview-html/document-style.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":148,"end_line":148,"start":9229,"end":9278,"source":"'src/terminal/terminal-webview-ready-promises.ts'","value":{"kind":"string","value":"src/terminal/terminal-webview-ready-promises.ts"},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/terminal-webview-ready-promises.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":149,"end_line":149,"start":9282,"end":9331,"source":"'src/terminal/use-terminal-webview-controller.ts'","value":{"kind":"string","value":"src/terminal/use-terminal-webview-controller.ts"},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/use-terminal-webview-controller.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":153,"end_line":153,"start":9620,"end":9665,"source":"'src/style-scoping/document-style-scoping.ts'","value":{"kind":"string","value":"src/style-scoping/document-style-scoping.ts"},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/style-scoping/document-style-scoping.ts'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2be0f5134cfdef0a2b81f1c669e4f2d43e0a580c51613b3806d23ac244b35fbe"}},{"id":"3:494:for-of:8","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":494,"end_line":499,"start":29362,"end":29563,"source":"XTERM_PACKAGES","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":494,"end_line":494,"start":29381,"end":29395},"binding":"const name","resolution":[{"name":"XTERM_PACKAGES","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":156,"end_line":156,"start":9692,"end":9756,"declaration_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":156,"end_line":156,"start":9675,"end":9756},"source":"['@xterm/xterm', '@xterm/addon-unicode11', '@xterm/addon-webgl']"}],"enclosing_case":{"line":486,"title":"gains the document, xterm and the addons, and sheds the engine string"},"affected_case_lines":[],"decision":"keep","reason":"Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":156,"end_line":156,"start":9693,"end":9707,"source":"'@xterm/xterm'","value":{"kind":"string","value":"@xterm/xterm"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: '@xterm/xterm'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":156,"end_line":156,"start":9709,"end":9733,"source":"'@xterm/addon-unicode11'","value":{"kind":"string","value":"@xterm/addon-unicode11"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: '@xterm/addon-unicode11'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":156,"end_line":156,"start":9735,"end":9755,"source":"'@xterm/addon-webgl'","value":{"kind":"string","value":"@xterm/addon-webgl"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: '@xterm/addon-webgl'. Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2be0f5134cfdef0a2b81f1c669e4f2d43e0a580c51613b3806d23ac244b35fbe"}},{"id":"3:515:for-of:9","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":515,"end_line":517,"start":30664,"end":30779,"source":"ROUTE_ENTRY","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":515,"end_line":515,"start":30684,"end":30695},"binding":"const entry","resolution":[{"name":"ROUTE_ENTRY","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":464,"end_line":470,"start":28170,"end":28446,"declaration_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":464,"end_line":470,"start":28156,"end":28446},"source":"[\n 'app/h/[hostId]/session/[worktreeId].web.tsx',\n 'src/session/MobileSessionRouteScreen.tsx',\n // Round 1's two, named for the reading above rather than left inside the total.\n 'src/session/notification-pane-tab.ts',\n 'src/mobile-web-shell/bridge/bridge-init-route.ts'\n]"}],"enclosing_case":{"line":513,"title":"enters through the web sibling and the route body, not the switch"},"affected_case_lines":[],"decision":"keep","reason":"Keep actual web route/body and absent native switch/shell; remove unrelated notification and bridge-init module inventory pins.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":465,"end_line":465,"start":28174,"end":28219,"source":"'app/h/[hostId]/session/[worktreeId].web.tsx'","value":{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].web.tsx"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'app/h/[hostId]/session/[worktreeId].web.tsx'. Keep actual web route/body and absent native switch/shell; remove unrelated notification and bridge-init module inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":466,"end_line":466,"start":28223,"end":28265,"source":"'src/session/MobileSessionRouteScreen.tsx'","value":{"kind":"string","value":"src/session/MobileSessionRouteScreen.tsx"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/session/MobileSessionRouteScreen.tsx'. Keep actual web route/body and absent native switch/shell; remove unrelated notification and bridge-init module inventory pins.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":468,"end_line":468,"start":28352,"end":28390,"source":"'src/session/notification-pane-tab.ts'","value":{"kind":"string","value":"src/session/notification-pane-tab.ts"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/session/notification-pane-tab.ts'. Keep actual web route/body and absent native switch/shell; remove unrelated notification and bridge-init module inventory pins.","implementation":{"disposition":"removed-unrelated-inventory-row","reason":"Notification-pane and bridge-init filenames are unrelated pins; actual web-route/body positives and native route exclusions remain."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":469,"end_line":469,"start":28394,"end":28444,"source":"'src/mobile-web-shell/bridge/bridge-init-route.ts'","value":{"kind":"string","value":"src/mobile-web-shell/bridge/bridge-init-route.ts"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/mobile-web-shell/bridge/bridge-init-route.ts'. Keep actual web route/body and absent native switch/shell; remove unrelated notification and bridge-init module inventory pins.","implementation":{"disposition":"removed-unrelated-inventory-row","reason":"Notification-pane and bridge-init filenames are unrelated pins; actual web-route/body positives and native route exclusions remain."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"removed-unrelated-inventory-row","reason":"Notification-pane and bridge-init filenames are unrelated pins; actual web-route/body positives and native route exclusions remain."},{"index":4,"disposition":"removed-unrelated-inventory-row","reason":"Notification-pane and bridge-init filenames are unrelated pins; actual web-route/body positives and native route exclusions remain."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2be0f5134cfdef0a2b81f1c669e4f2d43e0a580c51613b3806d23ac244b35fbe"}},{"id":"3:532:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":532,"end_line":532,"start":31665,"end":31709,"source":"mobileWebAppRouteChunkClosure(SESSION_ROUTE)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":532,"end_line":532,"start":31665,"end":31709},"binding":"mobileWebAppRouteChunkClosure","resolution":[],"enclosing_case":{"line":525,"title":"reaches the engine as one deferred module and never as part of the download"},"affected_case_lines":[],"decision":"keep","reason":"Keep unique deferred Mermaid artifact and static-route exclusion controls; remove >1000 static-input count.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":532,"end_line":532,"start":31695,"end":31708,"source":"SESSION_ROUTE","value":{"kind":"reference","source":"SESSION_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":128,"end_line":128,"start":8315,"end":8356},"resolved":{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].tsx"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION_ROUTE. Keep unique deferred Mermaid artifact and static-route exclusion controls; remove >1000 static-input count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2be0f5134cfdef0a2b81f1c669e4f2d43e0a580c51613b3806d23ac244b35fbe"}},{"id":"3:549:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":549,"end_line":549,"start":32860,"end":32905,"source":"unresolvedTextInputStyles(mobileDir, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":549,"end_line":549,"start":32860,"end":32905},"binding":"unresolvedTextInputStyles","resolution":[],"enclosing_case":{"line":544,"title":"leaves the 16px seam census exactly where C7.2 left it"},"affected_case_lines":[],"decision":"keep","reason":"Keep real text-input seam, unresolved/offender census and web/native styles resolution; remove >900 module count.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":549,"end_line":549,"start":32886,"end":32895,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":126,"end_line":126,"start":8265,"end":8291},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"projectDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":125,"end_line":125,"start":8195,"end":8246},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../..', import.meta.url)"}],"source":"fileURLToPath(new URL('../../..', import.meta.url))"}},{"kind":"string","value":"mobile"}],"source":"join(projectDir, 'mobile')"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. Keep real text-input seam, unresolved/offender census and web/native styles resolution; remove >900 module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":549,"end_line":549,"start":32897,"end":32904,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Keep real text-input seam, unresolved/offender census and web/native styles resolution; remove >900 module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2be0f5134cfdef0a2b81f1c669e4f2d43e0a580c51613b3806d23ac244b35fbe"}},{"id":"3:550:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":550,"end_line":550,"start":32932,"end":32978,"source":"textInputFontSizeOffenders(mobileDir, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":550,"end_line":550,"start":32932,"end":32978},"binding":"textInputFontSizeOffenders","resolution":[],"enclosing_case":{"line":544,"title":"leaves the 16px seam census exactly where C7.2 left it"},"affected_case_lines":[],"decision":"keep","reason":"Keep real text-input seam, unresolved/offender census and web/native styles resolution; remove >900 module count.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":550,"end_line":550,"start":32959,"end":32968,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":126,"end_line":126,"start":8265,"end":8291},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"projectDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":125,"end_line":125,"start":8195,"end":8246},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../..', import.meta.url)"}],"source":"fileURLToPath(new URL('../../..', import.meta.url))"}},{"kind":"string","value":"mobile"}],"source":"join(projectDir, 'mobile')"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. Keep real text-input seam, unresolved/offender census and web/native styles resolution; remove >900 module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":550,"end_line":550,"start":32970,"end":32977,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Keep real text-input seam, unresolved/offender census and web/native styles resolution; remove >900 module count.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2be0f5134cfdef0a2b81f1c669e4f2d43e0a580c51613b3806d23ac244b35fbe"}},{"id":"3:560:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":560,"end_line":560,"start":33681,"end":33716,"source":"editableHostsIn(mobileDir, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":560,"end_line":560,"start":33681,"end":33716},"binding":"editableHostsIn","resolution":[],"enclosing_case":{"line":555,"title":"holds the editables the TextInput census cannot see to the same floor"},"affected_case_lines":[],"decision":"keep","reason":"Keep unresolved/font census and positive known editor presence; replace exact singleton host inventory with containment so new valid hosts use the shared rule.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":560,"end_line":560,"start":33697,"end":33706,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":126,"end_line":126,"start":8265,"end":8291},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"projectDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":125,"end_line":125,"start":8195,"end":8246},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../..', import.meta.url)"}],"source":"fileURLToPath(new URL('../../..', import.meta.url))"}},{"kind":"string","value":"mobile"}],"source":"join(projectDir, 'mobile')"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. Keep unresolved/font census and positive known editor presence; replace exact singleton host inventory with containment so new valid hosts use the shared rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":560,"end_line":560,"start":33708,"end":33715,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Keep unresolved/font census and positive known editor presence; replace exact singleton host inventory with containment so new valid hosts use the shared rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2be0f5134cfdef0a2b81f1c669e4f2d43e0a580c51613b3806d23ac244b35fbe"}},{"id":"3:563:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":563,"end_line":563,"start":33832,"end":33880,"source":"unresolvedEditableHostStyles(mobileDir, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":563,"end_line":563,"start":33832,"end":33880},"binding":"unresolvedEditableHostStyles","resolution":[],"enclosing_case":{"line":555,"title":"holds the editables the TextInput census cannot see to the same floor"},"affected_case_lines":[],"decision":"keep","reason":"Keep unresolved/font census and positive known editor presence; replace exact singleton host inventory with containment so new valid hosts use the shared rule.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":563,"end_line":563,"start":33861,"end":33870,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":126,"end_line":126,"start":8265,"end":8291},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"projectDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":125,"end_line":125,"start":8195,"end":8246},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../..', import.meta.url)"}],"source":"fileURLToPath(new URL('../../..', import.meta.url))"}},{"kind":"string","value":"mobile"}],"source":"join(projectDir, 'mobile')"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. Keep unresolved/font census and positive known editor presence; replace exact singleton host inventory with containment so new valid hosts use the shared rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":563,"end_line":563,"start":33872,"end":33879,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Keep unresolved/font census and positive known editor presence; replace exact singleton host inventory with containment so new valid hosts use the shared rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2be0f5134cfdef0a2b81f1c669e4f2d43e0a580c51613b3806d23ac244b35fbe"}},{"id":"3:564:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":564,"end_line":564,"start":33907,"end":33956,"source":"editableHostFontSizeOffenders(mobileDir, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":564,"end_line":564,"start":33907,"end":33956},"binding":"editableHostFontSizeOffenders","resolution":[],"enclosing_case":{"line":555,"title":"holds the editables the TextInput census cannot see to the same floor"},"affected_case_lines":[],"decision":"keep","reason":"Keep unresolved/font census and positive known editor presence; replace exact singleton host inventory with containment so new valid hosts use the shared rule.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":564,"end_line":564,"start":33937,"end":33946,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":126,"end_line":126,"start":8265,"end":8291},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"projectDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":125,"end_line":125,"start":8195,"end":8246},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../..', import.meta.url)"}],"source":"fileURLToPath(new URL('../../..', import.meta.url))"}},{"kind":"string","value":"mobile"}],"source":"join(projectDir, 'mobile')"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. Keep unresolved/font census and positive known editor presence; replace exact singleton host inventory with containment so new valid hosts use the shared rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","line":564,"end_line":564,"start":33948,"end":33955,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Keep unresolved/font census and positive known editor presence; replace exact singleton host inventory with containment so new valid hosts use the shared rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2be0f5134cfdef0a2b81f1c669e4f2d43e0a580c51613b3806d23ac244b35fbe"}}],"original_review_sha256":"b433f237c699700f7a4a635ef0a47592b7dc09079910f780889b34a530fca618","reviewer":"audit_config","reviewed_sha256":"2be0f5134cfdef0a2b81f1c669e4f2d43e0a580c51613b3806d23ac244b35fbe","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","final_declarations":5,"current_controls":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","each":[],"for_of":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","start":28943,"end":28947,"line":485,"end_line":485,"source":"SHED","binding":"const gone","changed":false},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","start":29063,"end":29090,"line":488,"end_line":488,"source":"GAINED_OUTSIDE_THE_DOCUMENT","binding":"const gained","changed":false},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","start":29202,"end":29216,"line":491,"end_line":491,"source":"XTERM_PACKAGES","binding":"const name","changed":false},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","start":30441,"end":30452,"line":511,"end_line":511,"source":"ROUTE_ENTRY","binding":"const entry","changed":false}],"literal_nodes_without_original_source_match":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","start":28170,"end":28267,"line":464,"end_line":467,"source":"[\n 'app/h/[hostId]/session/[worktreeId].web.tsx',\n 'src/session/MobileSessionRouteScreen.tsx'\n]","kind":"array"},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-closure.test.mjs","start":33369,"end":33464,"line":554,"end_line":557,"source":"{\n file: 'src/components/rich-markdown/document-markup.ts',\n id: 'editor'\n }","kind":"object"}]},"mutations":[]},"implemented_changes":[{"original_line":486,"title":"gains the document, xterm and the addons, and sheds the engine string","decision":"fix","change":"Retain explicit gained/shed document modules, xterm packages and absent native entry; remove >=36 raw module count."},{"original_line":513,"title":"enters through the web sibling and the route body, not the switch","decision":"fix","change":"Keep actual web route/body and absent native switch/shell; remove unrelated notification and bridge-init module inventory pins."},{"original_line":525,"title":"reaches the engine as one deferred module and never as part of the download","decision":"fix","change":"Keep unique deferred Mermaid artifact and static-route exclusion controls; remove >1000 static-input count."},{"original_line":544,"title":"leaves the 16px seam census exactly where C7.2 left it","decision":"fix","change":"Keep real text-input seam, unresolved/offender census and web/native styles resolution; remove >900 module count."},{"original_line":555,"title":"holds the editables the TextInput census cannot see to the same floor","decision":"fix","change":"Keep unresolved/font census and positive known editor presence; replace exact singleton host inventory with containment so new valid hosts use the shared rule."}],"manual_implementation_notes":[],"evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/mobile-web-app-route-chunk-closure.mjs","config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.mjs","config/scripts/mobile-web-app/platform-seams/mobile-web-app-text-input-font-size-seam.mjs"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","sha256":"905a52b32b2789bc7c89ba9955bd48b1774e1c5a3ae341d4d8d5d4176b66d953","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"905a52b32b2789bc7c89ba9955bd48b1774e1c5a3ae341d4d8d5d4176b66d953","cases":[{"line":233,"title":"subscribes to the terminal the tab snapshot named, carrying a client identity","decision":"keep","reason":"Actual host tab snapshot must make the session generate terminal.subscribe for the correct handle and client identity.","explicit_input_controls":[],"current_declaration":{"line":233,"title":"subscribes to the terminal the tab snapshot named, carrying a client identity","start":8565,"end":9302},"implementation_status":"retained"},{"line":247,"title":"receives init in the document and measures a non-zero grid","decision":"keep","reason":"Actual scrollback event must create an xterm screen with an80x24 nonzero cell grid and no runtime errors.","explicit_input_controls":[{"control_id":"4:250:browser-event-input:12","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":250,"source":"page.evaluate(\n ([id, event]) => globalThis.__orcaRenderCheckEmitEvent(id, event),\n [subscribe.id, SCROLLBACK_EVENT]\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":251,"end_line":251,"start":9563,"end":9628,"source":"([id, event]) => globalThis.__orcaRenderCheckEmitEvent(id, event)","value":{"kind":"source-expression","source":"([id, event]) => globalThis.__orcaRenderCheckEmitEvent(id, event)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: ([id, event]) => globalThis.__orcaRenderCheckEmitEvent(id, event). Actual scrollback event must create an xterm screen with an80x24 nonzero cell grid and no runtime errors.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":252,"end_line":252,"start":9638,"end":9670,"source":"[subscribe.id, SCROLLBACK_EVENT]","value":{"kind":"array","value":[{"kind":"source-expression","source":"subscribe.id"},{"kind":"reference","source":"SCROLLBACK_EVENT","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":77,"end_line":84,"start":3225,"end":3349},"resolved":{"kind":"object","value":[{"key":"type","value":{"kind":"string","value":"scrollback"}},{"key":"seq","value":{"kind":"number","value":1}},{"key":"cols","value":{"kind":"number","value":80}},{"key":"rows","value":{"kind":"number","value":24}},{"key":"serialized","value":{"kind":"source-expression","source":"`${SCROLLBACK_MARKER}\\r\\n`"}},{"key":"displayMode","value":{"kind":"string","value":"phone"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: [subscribe.id, SCROLLBACK_EVENT]. Actual scrollback event must create an xterm screen with an80x24 nonzero cell grid and no runtime errors.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual scrollback event must create an xterm screen with an80x24 nonzero cell grid and no runtime errors.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"4:275:browser-event-input:13","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":275,"source":"page.evaluate(readTerminalGrid)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":275,"end_line":275,"start":10686,"end":10702,"source":"readTerminalGrid","value":{"kind":"source-expression","source":"readTerminalGrid"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: readTerminalGrid. Actual scrollback event must create an xterm screen with an80x24 nonzero cell grid and no runtime errors.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual scrollback event must create an xterm screen with an80x24 nonzero cell grid and no runtime errors.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":247,"title":"receives init in the document and measures a non-zero grid","start":9308,"end":11566},"implementation_status":"retained"}],"lines":292,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","production_evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-render-harness.mjs","config/scripts/mobile-web-page-routes.mjs"],"planned_changes":[],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"4:42:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":42,"end_line":42,"start":2166,"end":2205,"source":"[SESSION_PATTERN]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":42,"end_line":42,"start":2188,"end":2205},"binding":"PAGE_ROUTE_PATTERNS","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":42,"end_line":42,"start":2189,"end":2204,"source":"SESSION_PATTERN","value":{"kind":"reference","source":"SESSION_PATTERN","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":41,"end_line":41,"start":2125,"end":2159},"resolved":{"kind":"string","value":"/h/[hostId]/session/[worktreeId]"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: SESSION_PATTERN. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"905a52b32b2789bc7c89ba9955bd48b1774e1c5a3ae341d4d8d5d4176b66d953"}},{"id":"4:45:fixture-or-oracle-declaration:2","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":45,"end_line":50,"start":2306,"end":2420,"source":"{\n id: HOST_ID,\n name: 'Terminal Init Host',\n endpoint: 'ws://terminal-init',\n lastConnected: 1\n}","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":45,"end_line":50,"start":2319,"end":2420},"binding":"SHELL_HOST","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":46,"end_line":46,"start":2323,"end":2334,"source":"id: HOST_ID","value":{"kind":"property","key":"id","value":{"kind":"reference","source":"HOST_ID","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":38,"end_line":38,"start":1998,"end":2018},"resolved":{"kind":"string","value":"terminal-init-host"}}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: id: HOST_ID. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":47,"end_line":47,"start":2338,"end":2364,"source":"name: 'Terminal Init Host'","value":{"kind":"property","key":"name","value":{"kind":"string","value":"Terminal Init Host"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: name: 'Terminal Init Host'. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":48,"end_line":48,"start":2368,"end":2398,"source":"endpoint: 'ws://terminal-init'","value":{"kind":"property","key":"endpoint","value":{"kind":"string","value":"ws://terminal-init"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: endpoint: 'ws://terminal-init'. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":49,"end_line":49,"start":2402,"end":2418,"source":"lastConnected: 1","value":{"kind":"property","key":"lastConnected","value":{"kind":"number","value":1}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: lastConnected: 1. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"905a52b32b2789bc7c89ba9955bd48b1774e1c5a3ae341d4d8d5d4176b66d953"}},{"id":"4:57:fixture-or-oracle-declaration:3","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":57,"end_line":74,"start":2754,"end":3097,"source":"{\n type: 'snapshot',\n worktree: `id:${WORKTREE}`,\n publicationEpoch: 'terminal-init-epoch',\n snapshotVersion: 1,\n activeTabId: TAB_ID,\n activeTabType: 'terminal',\n tabs: [\n {\n type: 'terminal',\n id: TAB_ID,\n title: 'bash',\n terminal: HANDLE,\n status: 'ready',\n isActive: true\n }\n ]\n}","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":57,"end_line":74,"start":2770,"end":3097},"binding":"TABS_SNAPSHOT","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":58,"end_line":58,"start":2774,"end":2790,"source":"type: 'snapshot'","value":{"kind":"property","key":"type","value":{"kind":"string","value":"snapshot"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: type: 'snapshot'. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":59,"end_line":59,"start":2794,"end":2820,"source":"worktree: `id:${WORKTREE}`","value":{"kind":"property","key":"worktree","value":{"kind":"source-expression","source":"`id:${WORKTREE}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: worktree: `id:${WORKTREE}`. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":60,"end_line":60,"start":2824,"end":2863,"source":"publicationEpoch: 'terminal-init-epoch'","value":{"kind":"property","key":"publicationEpoch","value":{"kind":"string","value":"terminal-init-epoch"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: publicationEpoch: 'terminal-init-epoch'. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":61,"end_line":61,"start":2867,"end":2885,"source":"snapshotVersion: 1","value":{"kind":"property","key":"snapshotVersion","value":{"kind":"number","value":1}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: snapshotVersion: 1. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":5,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":62,"end_line":62,"start":2889,"end":2908,"source":"activeTabId: TAB_ID","value":{"kind":"property","key":"activeTabId","value":{"kind":"reference","source":"TAB_ID","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":52,"end_line":52,"start":2478,"end":2497},"resolved":{"kind":"string","value":"tab-terminal-init"}}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: activeTabId: TAB_ID. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":6,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":63,"end_line":63,"start":2912,"end":2937,"source":"activeTabType: 'terminal'","value":{"kind":"property","key":"activeTabType","value":{"kind":"string","value":"terminal"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: activeTabType: 'terminal'. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":7,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":64,"end_line":73,"start":2941,"end":3095,"source":"tabs: [\n {\n type: 'terminal',\n id: TAB_ID,\n title: 'bash',\n terminal: HANDLE,\n status: 'ready',\n isActive: true\n }\n ]","value":{"kind":"property","key":"tabs","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"type","value":{"kind":"string","value":"terminal"}},{"key":"id","value":{"kind":"reference","source":"TAB_ID","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":52,"end_line":52,"start":2478,"end":2497},"resolved":{"kind":"string","value":"tab-terminal-init"}}},{"key":"title","value":{"kind":"string","value":"bash"}},{"key":"terminal","value":{"kind":"reference","source":"HANDLE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":51,"end_line":51,"start":2436,"end":2462},"resolved":{"kind":"string","value":"pty-handle-terminal-init"}}},{"key":"status","value":{"kind":"string","value":"ready"}},{"key":"isActive","value":{"kind":"boolean","value":true}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: tabs: [ { type: 'terminal', id: TAB_ID, title: 'bash', terminal: HANDLE, status: 'ready', isActive: . Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"905a52b32b2789bc7c89ba9955bd48b1774e1c5a3ae341d4d8d5d4176b66d953"}},{"id":"4:77:fixture-or-oracle-declaration:4","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":77,"end_line":84,"start":3206,"end":3349,"source":"{\n type: 'scrollback',\n seq: 1,\n cols: 80,\n rows: 24,\n serialized: `${SCROLLBACK_MARKER}\\r\\n`,\n displayMode: 'phone'\n}","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":77,"end_line":84,"start":3225,"end":3349},"binding":"SCROLLBACK_EVENT","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":78,"end_line":78,"start":3229,"end":3247,"source":"type: 'scrollback'","value":{"kind":"property","key":"type","value":{"kind":"string","value":"scrollback"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: type: 'scrollback'. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":79,"end_line":79,"start":3251,"end":3257,"source":"seq: 1","value":{"kind":"property","key":"seq","value":{"kind":"number","value":1}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: seq: 1. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":80,"end_line":80,"start":3261,"end":3269,"source":"cols: 80","value":{"kind":"property","key":"cols","value":{"kind":"number","value":80}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: cols: 80. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":81,"end_line":81,"start":3273,"end":3281,"source":"rows: 24","value":{"kind":"property","key":"rows","value":{"kind":"number","value":24}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: rows: 24. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":5,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":82,"end_line":82,"start":3285,"end":3323,"source":"serialized: `${SCROLLBACK_MARKER}\\r\\n`","value":{"kind":"property","key":"serialized","value":{"kind":"source-expression","source":"`${SCROLLBACK_MARKER}\\r\\n`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: serialized: `${SCROLLBACK_MARKER}\\r\\n`. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":6,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":83,"end_line":83,"start":3327,"end":3347,"source":"displayMode: 'phone'","value":{"kind":"property","key":"displayMode","value":{"kind":"string","value":"phone"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: displayMode: 'phone'. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"905a52b32b2789bc7c89ba9955bd48b1774e1c5a3ae341d4d8d5d4176b66d953"}},{"id":"4:116:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":116,"end_line":116,"start":4288,"end":4348,"source":"buildMobileWebAppBundle({ outDir: join(scratch, 'bundle') })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":116,"end_line":116,"start":4288,"end":4348},"binding":"buildMobileWebAppBundle","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":116,"end_line":116,"start":4312,"end":4347,"source":"{ outDir: join(scratch, 'bundle') }","value":{"kind":"object","value":[{"key":"outDir","value":{"kind":"call-source","callee":"join","arguments":[{"kind":"source-expression","source":"scratch"},{"kind":"string","value":"bundle"}],"source":"join(scratch, 'bundle')"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { outDir: join(scratch, 'bundle') }. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"905a52b32b2789bc7c89ba9955bd48b1774e1c5a3ae341d4d8d5d4176b66d953"}},{"id":"4:117:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":117,"end_line":117,"start":4372,"end":4427,"source":"createBundleServer({ outDir: built.outDir, cspHeader })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":117,"end_line":117,"start":4372,"end":4427},"binding":"createBundleServer","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":117,"end_line":117,"start":4391,"end":4426,"source":"{ outDir: built.outDir, cspHeader }","value":{"kind":"object","value":[{"key":"outDir","value":{"kind":"source-expression","source":"built.outDir"}},{"source":"cspHeader"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { outDir: built.outDir, cspHeader }. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"905a52b32b2789bc7c89ba9955bd48b1774e1c5a3ae341d4d8d5d4176b66d953"}},{"id":"4:159:fixture-or-oracle-declaration:7","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":159,"end_line":159,"start":5886,"end":5897,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":159,"end_line":159,"start":5895,"end":5897},"binding":"errors","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"905a52b32b2789bc7c89ba9955bd48b1774e1c5a3ae341d4d8d5d4176b66d953"}},{"id":"4:168:browser-event-input:8","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":168,"end_line":171,"start":6271,"end":6389,"source":"page.evaluate(\n ([id, event]) => globalThis.__orcaRenderCheckEmitEvent(id, event),\n [tabs.id, TABS_SNAPSHOT]\n )","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":168,"end_line":171,"start":6271,"end":6389},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":169,"end_line":169,"start":6290,"end":6355,"source":"([id, event]) => globalThis.__orcaRenderCheckEmitEvent(id, event)","value":{"kind":"source-expression","source":"([id, event]) => globalThis.__orcaRenderCheckEmitEvent(id, event)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: ([id, event]) => globalThis.__orcaRenderCheckEmitEvent(id, event). Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":170,"end_line":170,"start":6361,"end":6385,"source":"[tabs.id, TABS_SNAPSHOT]","value":{"kind":"array","value":[{"kind":"source-expression","source":"tabs.id"},{"kind":"reference","source":"TABS_SNAPSHOT","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":57,"end_line":74,"start":2770,"end":3097},"resolved":{"kind":"object","value":[{"key":"type","value":{"kind":"string","value":"snapshot"}},{"key":"worktree","value":{"kind":"source-expression","source":"`id:${WORKTREE}`"}},{"key":"publicationEpoch","value":{"kind":"string","value":"terminal-init-epoch"}},{"key":"snapshotVersion","value":{"kind":"number","value":1}},{"key":"activeTabId","value":{"kind":"reference","source":"TAB_ID","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":52,"end_line":52,"start":2478,"end":2497},"resolved":{"kind":"string","value":"tab-terminal-init"}}},{"key":"activeTabType","value":{"kind":"string","value":"terminal"}},{"key":"tabs","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"type","value":{"kind":"string","value":"terminal"}},{"key":"id","value":{"kind":"reference","source":"TAB_ID","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":52,"end_line":52,"start":2478,"end":2497},"resolved":{"kind":"string","value":"tab-terminal-init"}}},{"key":"title","value":{"kind":"string","value":"bash"}},{"key":"terminal","value":{"kind":"reference","source":"HANDLE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":51,"end_line":51,"start":2436,"end":2462},"resolved":{"kind":"string","value":"pty-handle-terminal-init"}}},{"key":"status","value":{"kind":"string","value":"ready"}},{"key":"isActive","value":{"kind":"boolean","value":true}}]}]}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: [tabs.id, TABS_SNAPSHOT]. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"905a52b32b2789bc7c89ba9955bd48b1774e1c5a3ae341d4d8d5d4176b66d953"}},{"id":"4:185:fixture-or-oracle-declaration:9","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":185,"end_line":185,"start":6898,"end":6982,"source":"{ surface: { width: Math.round(box.width), height: Math.round(box.height) } }","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":185,"end_line":185,"start":6905,"end":6982},"binding":"read","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":185,"end_line":185,"start":6907,"end":6980,"source":"surface: { width: Math.round(box.width), height: Math.round(box.height) }","value":{"kind":"property","key":"surface","value":{"kind":"object","value":[{"key":"width","value":{"kind":"call-source","callee":"Math.round","arguments":[{"kind":"source-expression","source":"box.width"}],"source":"Math.round(box.width)"}},{"key":"height","value":{"kind":"call-source","callee":"Math.round","arguments":[{"kind":"source-expression","source":"box.height"}],"source":"Math.round(box.height)"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: surface: { width: Math.round(box.width), height: Math.round(box.height) }. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"905a52b32b2789bc7c89ba9955bd48b1774e1c5a3ae341d4d8d5d4176b66d953"}},{"id":"4:216:browser-event-input:10","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":216,"end_line":216,"start":8080,"end":8145,"source":"page.evaluate(() => globalThis.__orcaRenderCheckSubscribes ?? [])","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":216,"end_line":216,"start":8080,"end":8145},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":216,"end_line":216,"start":8094,"end":8144,"source":"() => globalThis.__orcaRenderCheckSubscribes ?? []","value":{"kind":"source-expression","source":"() => globalThis.__orcaRenderCheckSubscribes ?? []"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaRenderCheckSubscribes ?? []. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"905a52b32b2789bc7c89ba9955bd48b1774e1c5a3ae341d4d8d5d4176b66d953"}},{"id":"4:223:browser-event-input:11","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":223,"end_line":226,"start":8333,"end":8459,"source":"page.evaluate(\n (name) => (globalThis.__orcaRenderCheckSubscribes ?? []).find((one) => one.method === name),\n method\n )","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":223,"end_line":226,"start":8333,"end":8459},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":224,"end_line":224,"start":8352,"end":8443,"source":"(name) => (globalThis.__orcaRenderCheckSubscribes ?? []).find((one) => one.method === name)","value":{"kind":"source-expression","source":"(name) => (globalThis.__orcaRenderCheckSubscribes ?? []).find((one) => one.method === name)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (name) => (globalThis.__orcaRenderCheckSubscribes ?? []).find((one) => one.method === name). Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":225,"end_line":225,"start":8449,"end":8455,"source":"method","value":{"kind":"source-expression","source":"method"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: method. Both cases exercise actual session-to-terminal integration through real bridge events and rendered xterm.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"905a52b32b2789bc7c89ba9955bd48b1774e1c5a3ae341d4d8d5d4176b66d953"}},{"id":"4:250:browser-event-input:12","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":250,"end_line":253,"start":9540,"end":9678,"source":"page.evaluate(\n ([id, event]) => globalThis.__orcaRenderCheckEmitEvent(id, event),\n [subscribe.id, SCROLLBACK_EVENT]\n )","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":250,"end_line":253,"start":9540,"end":9678},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":247,"title":"receives init in the document and measures a non-zero grid"},"affected_case_lines":[],"decision":"keep","reason":"Actual scrollback event must create an xterm screen with an80x24 nonzero cell grid and no runtime errors.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":251,"end_line":251,"start":9563,"end":9628,"source":"([id, event]) => globalThis.__orcaRenderCheckEmitEvent(id, event)","value":{"kind":"source-expression","source":"([id, event]) => globalThis.__orcaRenderCheckEmitEvent(id, event)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: ([id, event]) => globalThis.__orcaRenderCheckEmitEvent(id, event). Actual scrollback event must create an xterm screen with an80x24 nonzero cell grid and no runtime errors.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":252,"end_line":252,"start":9638,"end":9670,"source":"[subscribe.id, SCROLLBACK_EVENT]","value":{"kind":"array","value":[{"kind":"source-expression","source":"subscribe.id"},{"kind":"reference","source":"SCROLLBACK_EVENT","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":77,"end_line":84,"start":3225,"end":3349},"resolved":{"kind":"object","value":[{"key":"type","value":{"kind":"string","value":"scrollback"}},{"key":"seq","value":{"kind":"number","value":1}},{"key":"cols","value":{"kind":"number","value":80}},{"key":"rows","value":{"kind":"number","value":24}},{"key":"serialized","value":{"kind":"source-expression","source":"`${SCROLLBACK_MARKER}\\r\\n`"}},{"key":"displayMode","value":{"kind":"string","value":"phone"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: [subscribe.id, SCROLLBACK_EVENT]. Actual scrollback event must create an xterm screen with an80x24 nonzero cell grid and no runtime errors.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"905a52b32b2789bc7c89ba9955bd48b1774e1c5a3ae341d4d8d5d4176b66d953"}},{"id":"4:275:browser-event-input:13","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":275,"end_line":275,"start":10672,"end":10703,"source":"page.evaluate(readTerminalGrid)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":275,"end_line":275,"start":10672,"end":10703},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":247,"title":"receives init in the document and measures a non-zero grid"},"affected_case_lines":[],"decision":"keep","reason":"Actual scrollback event must create an xterm screen with an80x24 nonzero cell grid and no runtime errors.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","line":275,"end_line":275,"start":10686,"end":10702,"source":"readTerminalGrid","value":{"kind":"source-expression","source":"readTerminalGrid"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: readTerminalGrid. Actual scrollback event must create an xterm screen with an80x24 nonzero cell grid and no runtime errors.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"905a52b32b2789bc7c89ba9955bd48b1774e1c5a3ae341d4d8d5d4176b66d953"}}],"original_review_sha256":"34fc5d5aa1c64a0b5d907876f84745e584854f20be60f03bdbdd4131d82f8d50","reviewer":"audit_config","reviewed_sha256":"905a52b32b2789bc7c89ba9955bd48b1774e1c5a3ae341d4d8d5d4176b66d953","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","final_declarations":2,"current_controls":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-terminal-init.test.mjs","each":[],"for_of":[],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-render-harness.mjs","config/scripts/mobile-web-page-routes.mjs"],"runtime_validation":[]}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","sha256":"4290104097470d5b2dafb4006065504e3810a4c4099dff5fd5bd4123b05e60fb","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"4290104097470d5b2dafb4006065504e3810a4c4099dff5fd5bd4123b05e60fb","cases":[{"line":21,"title":"resolves all four web components, and the terminal without its native sibling","decision":"keep","reason":"Actual route-to-web-consumer integration proves session resolves the markdown, HTML, Mermaid and terminal page implementations; detached probes do not prove these bindings.","explicit_input_controls":[{"control_id":"5:22:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":22,"source":"mobileWebAppRouteClosure(SESSION)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":22,"end_line":22,"start":939,"end":946,"source":"SESSION","value":{"kind":"reference","source":"SESSION","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":8,"end_line":8,"start":399,"end":440},"resolved":{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].tsx"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION. Actual route-to-web-consumer integration proves session resolves the markdown, HTML, Mermaid and terminal page implementations; detached probes do not prove these bindings.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual route-to-web-consumer integration proves session resolves the markdown, HTML, Mermaid and terminal page implementations; detached probes do not prove these bindings.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"5:23:for-of:3","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":23,"source":"ANSWERED","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":12,"end_line":12,"start":529,"end":574,"source":"'src/components/MobileRichMarkdownEditor.tsx'","value":{"kind":"string","value":"src/components/MobileRichMarkdownEditor.tsx"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/components/MobileRichMarkdownEditor.tsx'. Actual route-to-web-consumer integration proves session resolves the markdown, HTML, Mermaid and terminal page implementations; detached probes do not prove these bindings.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":13,"end_line":13,"start":578,"end":616,"source":"'src/components/MobileHtmlPreview.tsx'","value":{"kind":"string","value":"src/components/MobileHtmlPreview.tsx"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/components/MobileHtmlPreview.tsx'. Actual route-to-web-consumer integration proves session resolves the markdown, HTML, Mermaid and terminal page implementations; detached probes do not prove these bindings.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":14,"end_line":14,"start":620,"end":666,"source":"'src/components/pr-sidebar/MermaidDiagram.tsx'","value":{"kind":"string","value":"src/components/pr-sidebar/MermaidDiagram.tsx"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/components/pr-sidebar/MermaidDiagram.tsx'. Actual route-to-web-consumer integration proves session resolves the markdown, HTML, Mermaid and terminal page implementations; detached probes do not prove these bindings.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":15,"end_line":15,"start":670,"end":708,"source":"'src/terminal/TerminalWebView.web.tsx'","value":{"kind":"string","value":"src/terminal/TerminalWebView.web.tsx"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/TerminalWebView.web.tsx'. Actual route-to-web-consumer integration proves session resolves the markdown, HTML, Mermaid and terminal page implementations; detached probes do not prove these bindings.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual route-to-web-consumer integration proves session resolves the markdown, HTML, Mermaid and terminal page implementations; detached probes do not prove these bindings.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":21,"title":"resolves all four web components, and the terminal without its native sibling","start":788,"end":1129},"implementation_status":"retained"}],"lines":31,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"The actual session closure resolves shipped page implementations instead of native TerminalWebView.","production_evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs"],"planned_changes":[],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"5:11:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":11,"end_line":16,"start":514,"end":710,"source":"[\n 'src/components/MobileRichMarkdownEditor.tsx',\n 'src/components/MobileHtmlPreview.tsx',\n 'src/components/pr-sidebar/MermaidDiagram.tsx',\n 'src/terminal/TerminalWebView.web.tsx'\n]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":11,"end_line":16,"start":525,"end":710},"binding":"ANSWERED","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"The actual session closure resolves shipped page implementations instead of native TerminalWebView.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":12,"end_line":12,"start":529,"end":574,"source":"'src/components/MobileRichMarkdownEditor.tsx'","value":{"kind":"string","value":"src/components/MobileRichMarkdownEditor.tsx"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/components/MobileRichMarkdownEditor.tsx'. The actual session closure resolves shipped page implementations instead of native TerminalWebView.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":13,"end_line":13,"start":578,"end":616,"source":"'src/components/MobileHtmlPreview.tsx'","value":{"kind":"string","value":"src/components/MobileHtmlPreview.tsx"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/components/MobileHtmlPreview.tsx'. The actual session closure resolves shipped page implementations instead of native TerminalWebView.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":14,"end_line":14,"start":620,"end":666,"source":"'src/components/pr-sidebar/MermaidDiagram.tsx'","value":{"kind":"string","value":"src/components/pr-sidebar/MermaidDiagram.tsx"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/components/pr-sidebar/MermaidDiagram.tsx'. The actual session closure resolves shipped page implementations instead of native TerminalWebView.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":15,"end_line":15,"start":670,"end":708,"source":"'src/terminal/TerminalWebView.web.tsx'","value":{"kind":"string","value":"src/terminal/TerminalWebView.web.tsx"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/terminal/TerminalWebView.web.tsx'. The actual session closure resolves shipped page implementations instead of native TerminalWebView.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4290104097470d5b2dafb4006065504e3810a4c4099dff5fd5bd4123b05e60fb"}},{"id":"5:22:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":22,"end_line":22,"start":914,"end":947,"source":"mobileWebAppRouteClosure(SESSION)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":22,"end_line":22,"start":914,"end":947},"binding":"mobileWebAppRouteClosure","resolution":[],"enclosing_case":{"line":21,"title":"resolves all four web components, and the terminal without its native sibling"},"affected_case_lines":[],"decision":"keep","reason":"Actual route-to-web-consumer integration proves session resolves the markdown, HTML, Mermaid and terminal page implementations; detached probes do not prove these bindings.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":22,"end_line":22,"start":939,"end":946,"source":"SESSION","value":{"kind":"reference","source":"SESSION","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":8,"end_line":8,"start":399,"end":440},"resolved":{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].tsx"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SESSION. Actual route-to-web-consumer integration proves session resolves the markdown, HTML, Mermaid and terminal page implementations; detached probes do not prove these bindings.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4290104097470d5b2dafb4006065504e3810a4c4099dff5fd5bd4123b05e60fb"}},{"id":"5:23:for-of:3","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":23,"end_line":25,"start":954,"end":1044,"source":"ANSWERED","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":23,"end_line":23,"start":973,"end":981},"binding":"const file","resolution":[{"name":"ANSWERED","path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":11,"end_line":16,"start":525,"end":710,"declaration_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":11,"end_line":16,"start":514,"end":710},"source":"[\n 'src/components/MobileRichMarkdownEditor.tsx',\n 'src/components/MobileHtmlPreview.tsx',\n 'src/components/pr-sidebar/MermaidDiagram.tsx',\n 'src/terminal/TerminalWebView.web.tsx'\n]"}],"enclosing_case":{"line":21,"title":"resolves all four web components, and the terminal without its native sibling"},"affected_case_lines":[],"decision":"keep","reason":"Actual route-to-web-consumer integration proves session resolves the markdown, HTML, Mermaid and terminal page implementations; detached probes do not prove these bindings.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":12,"end_line":12,"start":529,"end":574,"source":"'src/components/MobileRichMarkdownEditor.tsx'","value":{"kind":"string","value":"src/components/MobileRichMarkdownEditor.tsx"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/components/MobileRichMarkdownEditor.tsx'. Actual route-to-web-consumer integration proves session resolves the markdown, HTML, Mermaid and terminal page implementations; detached probes do not prove these bindings.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":13,"end_line":13,"start":578,"end":616,"source":"'src/components/MobileHtmlPreview.tsx'","value":{"kind":"string","value":"src/components/MobileHtmlPreview.tsx"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/components/MobileHtmlPreview.tsx'. Actual route-to-web-consumer integration proves session resolves the markdown, HTML, Mermaid and terminal page implementations; detached probes do not prove these bindings.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":14,"end_line":14,"start":620,"end":666,"source":"'src/components/pr-sidebar/MermaidDiagram.tsx'","value":{"kind":"string","value":"src/components/pr-sidebar/MermaidDiagram.tsx"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/components/pr-sidebar/MermaidDiagram.tsx'. Actual route-to-web-consumer integration proves session resolves the markdown, HTML, Mermaid and terminal page implementations; detached probes do not prove these bindings.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","line":15,"end_line":15,"start":670,"end":708,"source":"'src/terminal/TerminalWebView.web.tsx'","value":{"kind":"string","value":"src/terminal/TerminalWebView.web.tsx"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/terminal/TerminalWebView.web.tsx'. Actual route-to-web-consumer integration proves session resolves the markdown, HTML, Mermaid and terminal page implementations; detached probes do not prove these bindings.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4290104097470d5b2dafb4006065504e3810a4c4099dff5fd5bd4123b05e60fb"}}],"original_review_sha256":"2419702e6f4bc7dd57a5720e210cd0710f0224c57d062983be15f4b871cdf2e9","reviewer":"audit_config","reviewed_sha256":"4290104097470d5b2dafb4006065504e3810a4c4099dff5fd5bd4123b05e60fb","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","final_declarations":1,"current_controls":{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","each":[],"for_of":[{"path":"config/scripts/mobile-web-app/mobile-web-app-session-webview-consumers.test.mjs","start":973,"end":981,"line":23,"end_line":23,"source":"ANSWERED","binding":"const file","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs"],"runtime_validation":[]}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","sha256":"d5cabd18489360f180518a20341965f2b18ebe5b6bc18351fbd035ae07e13690","declarations":5,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"d5cabd18489360f180518a20341965f2b18ebe5b6bc18351fbd035ae07e13690","cases":[{"line":41,"title":"opens every external URL through the seam: %s","decision":"keep","reason":"Retain both hub/review route inputs: opens every external URL through the seam: %s observes the real bundled consumer/seam or forbidden API boundary.","explicit_input_controls":[{"control_id":"6:41:parameter-table:1","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":41,"source":"[HUB, REVIEW]","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":41,"end_line":41,"start":1973,"end":1976,"source":"HUB","value":{"kind":"reference","source":"HUB","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":29,"end_line":29,"start":1496,"end":1544},"resolved":{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: HUB. Retain both hub/review route inputs: opens every external URL through the seam: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":41,"end_line":41,"start":1978,"end":1984,"source":"REVIEW","value":{"kind":"reference","source":"REVIEW","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":30,"end_line":30,"start":1560,"end":1600},"resolved":{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: REVIEW. Retain both hub/review route inputs: opens every external URL through the seam: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Retain both hub/review route inputs: opens every external URL through the seam: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"6:42:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":42,"source":"mobileWebAppRouteClosure(route)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":42,"end_line":42,"start":2108,"end":2113,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: route. Retain both hub/review route inputs: opens every external URL through the seam: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Retain both hub/review route inputs: opens every external URL through the seam: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"6:43:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":43,"source":"externalLinkOffenders(mobileDir, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":43,"end_line":43,"start":2150,"end":2159,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":26,"end_line":26,"start":1338,"end":1397},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../mobile/', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../mobile/', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. Retain both hub/review route inputs: opens every external URL through the seam: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":43,"end_line":43,"start":2161,"end":2168,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":42,"end_line":42,"start":2077,"end":2114},"resolved":{"kind":"source-expression","source":"await mobileWebAppRouteClosure(route)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Retain both hub/review route inputs: opens every external URL through the seam: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Retain both hub/review route inputs: opens every external URL through the seam: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":41,"title":"opens every external URL through the seam: %s","start":1964,"end":2189},"implementation_status":"retained"},{"line":46,"title":"contains the seam, so the rule is not vacuous: %s","decision":"fix","reason":"Remove the unrelated >400 local-module count; retain the explicit seam presence in both actual hub/review closures.","explicit_input_controls":[{"control_id":"6:46:parameter-table:4","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":46,"source":"[HUB, REVIEW]","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":46,"end_line":46,"start":2204,"end":2207,"source":"HUB","value":{"kind":"reference","source":"HUB","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":29,"end_line":29,"start":1496,"end":1544},"resolved":{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: HUB. Remove the unrelated >400 local-module count; retain the explicit seam presence in both actual hub/review closures.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":46,"end_line":46,"start":2209,"end":2215,"source":"REVIEW","value":{"kind":"reference","source":"REVIEW","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":30,"end_line":30,"start":1560,"end":1600},"resolved":{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: REVIEW. Remove the unrelated >400 local-module count; retain the explicit seam presence in both actual hub/review closures.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Remove the unrelated >400 local-module count; retain the explicit seam presence in both actual hub/review closures.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"6:49:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":49,"source":"mobileWebAppRouteClosure(route)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":49,"end_line":49,"start":2526,"end":2531,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: route. Remove the unrelated >400 local-module count; retain the explicit seam presence in both actual hub/review closures.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Remove the unrelated >400 local-module count; retain the explicit seam presence in both actual hub/review closures.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":46,"title":"contains the seam, so the rule is not vacuous: %s","start":2195,"end":2583},"implementation_status":"implemented"},{"line":54,"title":"reaches the openers from the PR sidebar, which both routes render","decision":"keep","reason":"Retain both hub/review route inputs: reaches the openers from the PR sidebar, which both routes render observes the real bundled consumer/seam or forbidden API boundary.","explicit_input_controls":[{"control_id":"6:58:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":58,"source":"mobileWebAppRouteClosure(HUB)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":58,"end_line":58,"start":3006,"end":3009,"source":"HUB","value":{"kind":"reference","source":"HUB","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":29,"end_line":29,"start":1496,"end":1544},"resolved":{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: HUB. Retain both hub/review route inputs: reaches the openers from the PR sidebar, which both routes render observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Retain both hub/review route inputs: reaches the openers from the PR sidebar, which both routes render observes the real bundled consumer/seam or forbidden API boundary.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"6:59:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":59,"source":"mobileWebAppRouteClosure(REVIEW)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":59,"end_line":59,"start":3045,"end":3051,"source":"REVIEW","value":{"kind":"reference","source":"REVIEW","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":30,"end_line":30,"start":1560,"end":1600},"resolved":{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: REVIEW. Retain both hub/review route inputs: reaches the openers from the PR sidebar, which both routes render observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Retain both hub/review route inputs: reaches the openers from the PR sidebar, which both routes render observes the real bundled consumer/seam or forbidden API boundary.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":53,"title":"reaches the openers from the PR sidebar, which both routes render","start":2589,"end":3117},"implementation_status":"retained"},{"line":83,"title":"does not carry expo-clipboard's web module at all: %s","decision":"keep","reason":"Retain both hub/review route inputs: does not carry expo-clipboard's web module at all: %s observes the real bundled consumer/seam or forbidden API boundary.","explicit_input_controls":[{"control_id":"6:83:parameter-table:8","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":83,"source":"[HUB, REVIEW]","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":83,"end_line":83,"start":4019,"end":4022,"source":"HUB","value":{"kind":"reference","source":"HUB","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":29,"end_line":29,"start":1496,"end":1544},"resolved":{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: HUB. Retain both hub/review route inputs: does not carry expo-clipboard's web module at all: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":83,"end_line":83,"start":4024,"end":4030,"source":"REVIEW","value":{"kind":"reference","source":"REVIEW","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":30,"end_line":30,"start":1560,"end":1600},"resolved":{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: REVIEW. Retain both hub/review route inputs: does not carry expo-clipboard's web module at all: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Retain both hub/review route inputs: does not carry expo-clipboard's web module at all: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"6:86:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":86,"source":"mobileWebAppRouteClosure(route)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":86,"end_line":86,"start":4177,"end":4182,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: route. Retain both hub/review route inputs: does not carry expo-clipboard's web module at all: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Retain both hub/review route inputs: does not carry expo-clipboard's web module at all: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":82,"title":"does not carry expo-clipboard's web module at all: %s","start":3954,"end":4241},"implementation_status":"retained"},{"line":91,"title":"carries the seam that replaced it, so the absence above is not vacuous: %s","decision":"keep","reason":"Retain both hub/review route inputs: carries the seam that replaced it, so the absence above is not vacuous: %s observes the real bundled consumer/seam or forbidden API boundary.","explicit_input_controls":[{"control_id":"6:91:parameter-table:10","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":91,"source":"[HUB, REVIEW]","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":91,"end_line":91,"start":4312,"end":4315,"source":"HUB","value":{"kind":"reference","source":"HUB","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":29,"end_line":29,"start":1496,"end":1544},"resolved":{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: HUB. Retain both hub/review route inputs: carries the seam that replaced it, so the absence above is not vacuous: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":91,"end_line":91,"start":4317,"end":4323,"source":"REVIEW","value":{"kind":"reference","source":"REVIEW","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":30,"end_line":30,"start":1560,"end":1600},"resolved":{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: REVIEW. Retain both hub/review route inputs: carries the seam that replaced it, so the absence above is not vacuous: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Retain both hub/review route inputs: carries the seam that replaced it, so the absence above is not vacuous: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"6:95:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":95,"source":"mobileWebAppRouteClosure(route)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":95,"end_line":95,"start":4588,"end":4593,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: route. Retain both hub/review route inputs: carries the seam that replaced it, so the absence above is not vacuous: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Retain both hub/review route inputs: carries the seam that replaced it, so the absence above is not vacuous: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":90,"title":"carries the seam that replaced it, so the absence above is not vacuous: %s","start":4247,"end":4608},"implementation_status":"retained"}],"lines":102,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"Retain the two real source-control closures and external-link/clipboard seam rules; drop arbitrary closure size.","production_evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.mjs"],"planned_changes":[{"original_line":46,"title":"contains the seam, so the rule is not vacuous: %s","decision":"fix","change":"Remove the unrelated >400 local-module count; retain the explicit seam presence in both actual hub/review closures."}],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"6:41:parameter-table:1","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":41,"end_line":44,"start":1964,"end":2189,"source":"[HUB, REVIEW]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":41,"end_line":41,"start":1972,"end":1985},"binding":"it.each","resolution":[],"enclosing_case":{"line":41,"title":"opens every external URL through the seam: %s"},"affected_case_lines":[41],"decision":"keep","reason":"Retain both hub/review route inputs: opens every external URL through the seam: %s observes the real bundled consumer/seam or forbidden API boundary.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":41,"end_line":41,"start":1973,"end":1976,"source":"HUB","value":{"kind":"reference","source":"HUB","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":29,"end_line":29,"start":1496,"end":1544},"resolved":{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: HUB. Retain both hub/review route inputs: opens every external URL through the seam: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":41,"end_line":41,"start":1978,"end":1984,"source":"REVIEW","value":{"kind":"reference","source":"REVIEW","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":30,"end_line":30,"start":1560,"end":1600},"resolved":{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: REVIEW. Retain both hub/review route inputs: opens every external URL through the seam: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1fd979a2d977549c81034d71de182808cd33de141ab58f006d4d2b841847b7d6"}},{"id":"6:42:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":42,"end_line":42,"start":2083,"end":2114,"source":"mobileWebAppRouteClosure(route)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":42,"end_line":42,"start":2083,"end":2114},"binding":"mobileWebAppRouteClosure","resolution":[],"enclosing_case":{"line":41,"title":"opens every external URL through the seam: %s"},"affected_case_lines":[],"decision":"keep","reason":"Retain both hub/review route inputs: opens every external URL through the seam: %s observes the real bundled consumer/seam or forbidden API boundary.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":42,"end_line":42,"start":2108,"end":2113,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: route. Retain both hub/review route inputs: opens every external URL through the seam: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1fd979a2d977549c81034d71de182808cd33de141ab58f006d4d2b841847b7d6"}},{"id":"6:43:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":43,"end_line":43,"start":2128,"end":2169,"source":"externalLinkOffenders(mobileDir, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":43,"end_line":43,"start":2128,"end":2169},"binding":"externalLinkOffenders","resolution":[],"enclosing_case":{"line":41,"title":"opens every external URL through the seam: %s"},"affected_case_lines":[],"decision":"keep","reason":"Retain both hub/review route inputs: opens every external URL through the seam: %s observes the real bundled consumer/seam or forbidden API boundary.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":43,"end_line":43,"start":2150,"end":2159,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":26,"end_line":26,"start":1338,"end":1397},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../mobile/', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../mobile/', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. Retain both hub/review route inputs: opens every external URL through the seam: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":43,"end_line":43,"start":2161,"end":2168,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":42,"end_line":42,"start":2077,"end":2114},"resolved":{"kind":"source-expression","source":"await mobileWebAppRouteClosure(route)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Retain both hub/review route inputs: opens every external URL through the seam: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1fd979a2d977549c81034d71de182808cd33de141ab58f006d4d2b841847b7d6"}},{"id":"6:46:parameter-table:4","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":46,"end_line":52,"start":2195,"end":2639,"source":"[HUB, REVIEW]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":46,"end_line":46,"start":2203,"end":2216},"binding":"it.each","resolution":[],"enclosing_case":{"line":46,"title":"contains the seam, so the rule is not vacuous: %s"},"affected_case_lines":[46],"decision":"keep","reason":"Remove the unrelated >400 local-module count; retain the explicit seam presence in both actual hub/review closures.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":46,"end_line":46,"start":2204,"end":2207,"source":"HUB","value":{"kind":"reference","source":"HUB","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":29,"end_line":29,"start":1496,"end":1544},"resolved":{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: HUB. Remove the unrelated >400 local-module count; retain the explicit seam presence in both actual hub/review closures.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":46,"end_line":46,"start":2209,"end":2215,"source":"REVIEW","value":{"kind":"reference","source":"REVIEW","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":30,"end_line":30,"start":1560,"end":1600},"resolved":{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: REVIEW. Remove the unrelated >400 local-module count; retain the explicit seam presence in both actual hub/review closures.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1fd979a2d977549c81034d71de182808cd33de141ab58f006d4d2b841847b7d6"}},{"id":"6:49:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":49,"end_line":49,"start":2501,"end":2532,"source":"mobileWebAppRouteClosure(route)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":49,"end_line":49,"start":2501,"end":2532},"binding":"mobileWebAppRouteClosure","resolution":[],"enclosing_case":{"line":46,"title":"contains the seam, so the rule is not vacuous: %s"},"affected_case_lines":[],"decision":"keep","reason":"Remove the unrelated >400 local-module count; retain the explicit seam presence in both actual hub/review closures.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":49,"end_line":49,"start":2526,"end":2531,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: route. Remove the unrelated >400 local-module count; retain the explicit seam presence in both actual hub/review closures.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1fd979a2d977549c81034d71de182808cd33de141ab58f006d4d2b841847b7d6"}},{"id":"6:58:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":58,"end_line":58,"start":2981,"end":3010,"source":"mobileWebAppRouteClosure(HUB)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":58,"end_line":58,"start":2981,"end":3010},"binding":"mobileWebAppRouteClosure","resolution":[],"enclosing_case":{"line":54,"title":"reaches the openers from the PR sidebar, which both routes render"},"affected_case_lines":[],"decision":"keep","reason":"Retain both hub/review route inputs: reaches the openers from the PR sidebar, which both routes render observes the real bundled consumer/seam or forbidden API boundary.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":58,"end_line":58,"start":3006,"end":3009,"source":"HUB","value":{"kind":"reference","source":"HUB","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":29,"end_line":29,"start":1496,"end":1544},"resolved":{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: HUB. Retain both hub/review route inputs: reaches the openers from the PR sidebar, which both routes render observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1fd979a2d977549c81034d71de182808cd33de141ab58f006d4d2b841847b7d6"}},{"id":"6:59:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":59,"end_line":59,"start":3020,"end":3052,"source":"mobileWebAppRouteClosure(REVIEW)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":59,"end_line":59,"start":3020,"end":3052},"binding":"mobileWebAppRouteClosure","resolution":[],"enclosing_case":{"line":54,"title":"reaches the openers from the PR sidebar, which both routes render"},"affected_case_lines":[],"decision":"keep","reason":"Retain both hub/review route inputs: reaches the openers from the PR sidebar, which both routes render observes the real bundled consumer/seam or forbidden API boundary.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":59,"end_line":59,"start":3045,"end":3051,"source":"REVIEW","value":{"kind":"reference","source":"REVIEW","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":30,"end_line":30,"start":1560,"end":1600},"resolved":{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: REVIEW. Retain both hub/review route inputs: reaches the openers from the PR sidebar, which both routes render observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1fd979a2d977549c81034d71de182808cd33de141ab58f006d4d2b841847b7d6"}},{"id":"6:83:parameter-table:8","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":83,"end_line":89,"start":4010,"end":4297,"source":"[HUB, REVIEW]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":83,"end_line":83,"start":4018,"end":4031},"binding":"it.each","resolution":[],"enclosing_case":{"line":83,"title":"does not carry expo-clipboard's web module at all: %s"},"affected_case_lines":[83],"decision":"keep","reason":"Retain both hub/review route inputs: does not carry expo-clipboard's web module at all: %s observes the real bundled consumer/seam or forbidden API boundary.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":83,"end_line":83,"start":4019,"end":4022,"source":"HUB","value":{"kind":"reference","source":"HUB","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":29,"end_line":29,"start":1496,"end":1544},"resolved":{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: HUB. Retain both hub/review route inputs: does not carry expo-clipboard's web module at all: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":83,"end_line":83,"start":4024,"end":4030,"source":"REVIEW","value":{"kind":"reference","source":"REVIEW","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":30,"end_line":30,"start":1560,"end":1600},"resolved":{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: REVIEW. Retain both hub/review route inputs: does not carry expo-clipboard's web module at all: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1fd979a2d977549c81034d71de182808cd33de141ab58f006d4d2b841847b7d6"}},{"id":"6:86:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":86,"end_line":86,"start":4152,"end":4183,"source":"mobileWebAppRouteClosure(route)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":86,"end_line":86,"start":4152,"end":4183},"binding":"mobileWebAppRouteClosure","resolution":[],"enclosing_case":{"line":83,"title":"does not carry expo-clipboard's web module at all: %s"},"affected_case_lines":[],"decision":"keep","reason":"Retain both hub/review route inputs: does not carry expo-clipboard's web module at all: %s observes the real bundled consumer/seam or forbidden API boundary.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":86,"end_line":86,"start":4177,"end":4182,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: route. Retain both hub/review route inputs: does not carry expo-clipboard's web module at all: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1fd979a2d977549c81034d71de182808cd33de141ab58f006d4d2b841847b7d6"}},{"id":"6:91:parameter-table:10","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":91,"end_line":98,"start":4303,"end":4664,"source":"[HUB, REVIEW]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":91,"end_line":91,"start":4311,"end":4324},"binding":"it.each","resolution":[],"enclosing_case":{"line":91,"title":"carries the seam that replaced it, so the absence above is not vacuous: %s"},"affected_case_lines":[91],"decision":"keep","reason":"Retain both hub/review route inputs: carries the seam that replaced it, so the absence above is not vacuous: %s observes the real bundled consumer/seam or forbidden API boundary.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":91,"end_line":91,"start":4312,"end":4315,"source":"HUB","value":{"kind":"reference","source":"HUB","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":29,"end_line":29,"start":1496,"end":1544},"resolved":{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: HUB. Retain both hub/review route inputs: carries the seam that replaced it, so the absence above is not vacuous: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":91,"end_line":91,"start":4317,"end":4323,"source":"REVIEW","value":{"kind":"reference","source":"REVIEW","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":30,"end_line":30,"start":1560,"end":1600},"resolved":{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: REVIEW. Retain both hub/review route inputs: carries the seam that replaced it, so the absence above is not vacuous: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1fd979a2d977549c81034d71de182808cd33de141ab58f006d4d2b841847b7d6"}},{"id":"6:95:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":95,"end_line":95,"start":4563,"end":4594,"source":"mobileWebAppRouteClosure(route)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":95,"end_line":95,"start":4563,"end":4594},"binding":"mobileWebAppRouteClosure","resolution":[],"enclosing_case":{"line":91,"title":"carries the seam that replaced it, so the absence above is not vacuous: %s"},"affected_case_lines":[],"decision":"keep","reason":"Retain both hub/review route inputs: carries the seam that replaced it, so the absence above is not vacuous: %s observes the real bundled consumer/seam or forbidden API boundary.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","line":95,"end_line":95,"start":4588,"end":4593,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: route. Retain both hub/review route inputs: carries the seam that replaced it, so the absence above is not vacuous: %s observes the real bundled consumer/seam or forbidden API boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1fd979a2d977549c81034d71de182808cd33de141ab58f006d4d2b841847b7d6"}}],"original_review_sha256":"566f9b83572ff7016e5261b2ddf2da121150394fb0715c2646ceba0474ab701a","reviewer":"audit_config","reviewed_sha256":"1fd979a2d977549c81034d71de182808cd33de141ab58f006d4d2b841847b7d6","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","final_declarations":5,"current_controls":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","each":[{"input":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","start":1972,"end":1985,"line":41,"end_line":41,"source":"[HUB, REVIEW]"},"rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","start":1973,"end":1976,"line":41,"end_line":41,"source":"HUB"},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","start":1978,"end":1984,"line":41,"end_line":41,"source":"REVIEW"}]},{"input":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","start":2203,"end":2216,"line":46,"end_line":46,"source":"[HUB, REVIEW]"},"rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","start":2204,"end":2207,"line":46,"end_line":46,"source":"HUB"},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","start":2209,"end":2215,"line":46,"end_line":46,"source":"REVIEW"}]},{"input":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","start":3962,"end":3975,"line":82,"end_line":82,"source":"[HUB, REVIEW]"},"rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","start":3963,"end":3966,"line":82,"end_line":82,"source":"HUB"},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","start":3968,"end":3974,"line":82,"end_line":82,"source":"REVIEW"}]},{"input":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","start":4255,"end":4268,"line":90,"end_line":90,"source":"[HUB, REVIEW]"},"rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","start":4256,"end":4259,"line":90,"end_line":90,"source":"HUB"},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-external-links.test.mjs","start":4261,"end":4267,"line":90,"end_line":90,"source":"REVIEW"}]}],"for_of":[],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[{"original_line":46,"title":"contains the seam, so the rule is not vacuous: %s","decision":"fix","change":"Remove the unrelated >400 local-module count; retain the explicit seam presence in both actual hub/review closures."}],"manual_implementation_notes":[],"evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.mjs"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","sha256":"66cd644a6bc773693f62577e0297ef3fcffb28f4eb4239af332fa916e371f1e5","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"66cd644a6bc773693f62577e0297ef3fcffb28f4eb4239af332fa916e371f1e5","cases":[{"line":15,"title":"includes the web keyboard seam: %s","decision":"keep","reason":"The hub and review closure controls independently prove platform resolution to keyboard-occlusion.web.ts.","explicit_input_controls":[{"control_id":"7:15:parameter-table:1","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","line":15,"source":"[HUB, REVIEW]","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","line":15,"end_line":15,"start":648,"end":651,"source":"HUB","value":{"kind":"reference","source":"HUB","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","line":8,"end_line":8,"start":385,"end":433},"resolved":{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: HUB. The hub and review closure controls independently prove platform resolution to keyboard-occlusion.web.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","line":15,"end_line":15,"start":653,"end":659,"source":"REVIEW","value":{"kind":"reference","source":"REVIEW","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","line":9,"end_line":9,"start":449,"end":489},"resolved":{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: REVIEW. The hub and review closure controls independently prove platform resolution to keyboard-occlusion.web.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The hub and review closure controls independently prove platform resolution to keyboard-occlusion.web.ts.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"7:16:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","line":16,"source":"mobileWebAppRouteClosure(route)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","line":16,"end_line":16,"start":772,"end":777,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: route. The hub and review closure controls independently prove platform resolution to keyboard-occlusion.web.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The hub and review closure controls independently prove platform resolution to keyboard-occlusion.web.ts.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":15,"title":"includes the web keyboard seam: %s","start":639,"end":829},"implementation_status":"retained"}],"lines":22,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Both actual source-control routes must resolve the web keyboard-occlusion implementation.","production_evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs"],"planned_changes":[],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"7:15:parameter-table:1","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","line":15,"end_line":18,"start":639,"end":829,"source":"[HUB, REVIEW]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","line":15,"end_line":15,"start":647,"end":660},"binding":"it.each","resolution":[],"enclosing_case":{"line":15,"title":"includes the web keyboard seam: %s"},"affected_case_lines":[15],"decision":"keep","reason":"The hub and review closure controls independently prove platform resolution to keyboard-occlusion.web.ts.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","line":15,"end_line":15,"start":648,"end":651,"source":"HUB","value":{"kind":"reference","source":"HUB","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","line":8,"end_line":8,"start":385,"end":433},"resolved":{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: HUB. The hub and review closure controls independently prove platform resolution to keyboard-occlusion.web.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","line":15,"end_line":15,"start":653,"end":659,"source":"REVIEW","value":{"kind":"reference","source":"REVIEW","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","line":9,"end_line":9,"start":449,"end":489},"resolved":{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: REVIEW. The hub and review closure controls independently prove platform resolution to keyboard-occlusion.web.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"66cd644a6bc773693f62577e0297ef3fcffb28f4eb4239af332fa916e371f1e5"}},{"id":"7:16:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","line":16,"end_line":16,"start":747,"end":778,"source":"mobileWebAppRouteClosure(route)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","line":16,"end_line":16,"start":747,"end":778},"binding":"mobileWebAppRouteClosure","resolution":[],"enclosing_case":{"line":15,"title":"includes the web keyboard seam: %s"},"affected_case_lines":[],"decision":"keep","reason":"The hub and review closure controls independently prove platform resolution to keyboard-occlusion.web.ts.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","line":16,"end_line":16,"start":772,"end":777,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: route. The hub and review closure controls independently prove platform resolution to keyboard-occlusion.web.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"66cd644a6bc773693f62577e0297ef3fcffb28f4eb4239af332fa916e371f1e5"}}],"original_review_sha256":"7c74a72b65c313bcc2964c9763e0181fcdd5c4be1135bc11e365d619223f2d02","reviewer":"audit_config","reviewed_sha256":"66cd644a6bc773693f62577e0297ef3fcffb28f4eb4239af332fa916e371f1e5","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","final_declarations":1,"current_controls":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","each":[{"input":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","start":647,"end":660,"line":15,"end_line":15,"source":"[HUB, REVIEW]"},"rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","start":648,"end":651,"line":15,"end_line":15,"source":"HUB"},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-keyboard.test.mjs","start":653,"end":659,"line":15,"end_line":15,"source":"REVIEW"}]}],"for_of":[],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs"],"runtime_validation":[]}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","sha256":"4c986c4f0a441e406b23249d12dad4692639dd5891e1887fe16042aac7588de4","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"4c986c4f0a441e406b23249d12dad4692639dd5891e1887fe16042aac7588de4","cases":[{"line":193,"title":"mounts the source-control hub rather than the unmatched route","decision":"fix","reason":"Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","explicit_input_controls":[{"control_id":"8:194:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":194,"source":"openRoute(HUB_ROUTE, 'Source Control')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":194,"end_line":194,"start":8011,"end":8020,"source":"HUB_ROUTE","value":{"kind":"reference","source":"HUB_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":48,"end_line":48,"start":2482,"end":2524},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/source-control/${WORKTREE}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: HUB_ROUTE. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":194,"end_line":194,"start":8022,"end":8038,"source":"'Source Control'","value":{"kind":"string","value":"Source Control"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'Source Control'. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"8:195:browser-event-input:14","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":195,"source":"opened.page.evaluate(() => document.body.innerText)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":195,"end_line":195,"start":8086,"end":8115,"source":"() => document.body.innerText","value":{"kind":"source-expression","source":"() => document.body.innerText"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => document.body.innerText. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"8:197:for-of:15","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":197,"source":"['Changes', 'Pull Request', 'Commits']","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":197,"end_line":197,"start":8242,"end":8251,"source":"'Changes'","value":{"kind":"string","value":"Changes"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Changes'. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":197,"end_line":197,"start":8253,"end":8267,"source":"'Pull Request'","value":{"kind":"string","value":"Pull Request"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Pull Request'. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":197,"end_line":197,"start":8269,"end":8278,"source":"'Commits'","value":{"kind":"string","value":"Commits"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Commits'. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":193,"title":"mounts the source-control hub rather than the unmatched route","start":7892,"end":8555},"implementation_status":"implemented"},{"line":205,"title":"mounts diff review rather than the unmatched route","decision":"fix","reason":"Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","explicit_input_controls":[{"control_id":"8:206:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":206,"source":"openRoute(REVIEW_ROUTE, 'reviewed')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":206,"end_line":206,"start":8573,"end":8585,"source":"REVIEW_ROUTE","value":{"kind":"reference","source":"REVIEW_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":49,"end_line":49,"start":2546,"end":2580},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/review/${WORKTREE}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: REVIEW_ROUTE. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":206,"end_line":206,"start":8587,"end":8597,"source":"'reviewed'","value":{"kind":"string","value":"reviewed"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'reviewed'. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"8:207:browser-event-input:17","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":207,"source":"opened.page.evaluate(() => document.body.innerText)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":207,"end_line":207,"start":8645,"end":8674,"source":"() => document.body.innerText","value":{"kind":"source-expression","source":"() => document.body.innerText"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => document.body.innerText. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"8:209:for-of:18","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":209,"source":"['All', 'Unreviewed', 'Notes']","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":209,"end_line":209,"start":8778,"end":8783,"source":"'All'","value":{"kind":"string","value":"All"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'All'. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":209,"end_line":209,"start":8785,"end":8797,"source":"'Unreviewed'","value":{"kind":"string","value":"Unreviewed"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Unreviewed'. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":209,"end_line":209,"start":8799,"end":8806,"source":"'Notes'","value":{"kind":"string","value":"Notes"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Notes'. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":206,"title":"mounts diff review rather than the unmatched route","start":8561,"end":9181},"implementation_status":"implemented"},{"line":217,"title":"fetches %s's own chunk on a client-side navigation","decision":"keep","reason":"Real source-control browser observation: fetches %s's own chunk on a client-side navigation","explicit_input_controls":[{"control_id":"8:217:parameter-table:19","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":217,"source":"[\n ['source-control', HUB_ROUTE, 'Source Control', HUB_CHUNK_KEY],\n ['review', REVIEW_ROUTE, 'reviewed', REVIEW_CHUNK_KEY]\n ]","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":218,"end_line":218,"start":9011,"end":9073,"source":"['source-control', HUB_ROUTE, 'Source Control', HUB_CHUNK_KEY]","value":{"kind":"array","value":[{"kind":"string","value":"source-control"},{"kind":"reference","source":"HUB_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":48,"end_line":48,"start":2482,"end":2524},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/source-control/${WORKTREE}`"}},{"kind":"string","value":"Source Control"},{"kind":"reference","source":"HUB_CHUNK_KEY","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":64,"end_line":64,"start":3133,"end":3179},"resolved":{"kind":"string","value":"./h/[hostId]/source-control/[worktreeId].tsx"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['source-control', HUB_ROUTE, 'Source Control', HUB_CHUNK_KEY]. Real source-control browser observation: fetches %s's own chunk on a client-side navigation","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":219,"end_line":219,"start":9081,"end":9135,"source":"['review', REVIEW_ROUTE, 'reviewed', REVIEW_CHUNK_KEY]","value":{"kind":"array","value":[{"kind":"string","value":"review"},{"kind":"reference","source":"REVIEW_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":49,"end_line":49,"start":2546,"end":2580},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/review/${WORKTREE}`"}},{"kind":"string","value":"reviewed"},{"kind":"reference","source":"REVIEW_CHUNK_KEY","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":65,"end_line":65,"start":3205,"end":3243},"resolved":{"kind":"string","value":"./h/[hostId]/review/[worktreeId].tsx"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['review', REVIEW_ROUTE, 'reviewed', REVIEW_CHUNK_KEY]. Real source-control browser observation: fetches %s's own chunk on a client-side navigation","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real source-control browser observation: fetches %s's own chunk on a client-side navigation","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"8:223:inline-api-or-fixture-input:20","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":223,"source":"openRoute(HOST_ROUTE, SHELL_HOST.name)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":223,"end_line":223,"start":9286,"end":9296,"source":"HOST_ROUTE","value":{"kind":"reference","source":"HOST_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":46,"end_line":46,"start":2417,"end":2439},"resolved":{"kind":"string","value":"/h/render-check-host"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: HOST_ROUTE. Real source-control browser observation: fetches %s's own chunk on a client-side navigation","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":223,"end_line":223,"start":9298,"end":9313,"source":"SHELL_HOST.name","value":{"kind":"source-expression","source":"SHELL_HOST.name"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SHELL_HOST.name. Real source-control browser observation: fetches %s's own chunk on a client-side navigation","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real source-control browser observation: fetches %s's own chunk on a client-side navigation","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"8:224:fixture-or-oracle-declaration:21","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":224,"source":"[...opened.scripts]","rows":[],"decision":"keep","reason":"Real source-control browser observation: fetches %s's own chunk on a client-side navigation","implementation_rows":[]},{"control_id":"8:225:browser-event-input:22","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":225,"source":"opened.page.evaluate((to) => {\n history.pushState(null, '', to)\n dispatchEvent(new PopStateEvent('popstate'))\n }, route)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":225,"end_line":228,"start":9406,"end":9522,"source":"(to) => {\n history.pushState(null, '', to)\n dispatchEvent(new PopStateEvent('popstate'))\n }","value":{"kind":"source-expression","source":"(to) => {\n history.pushState(null, '', to)\n dispatchEvent(new PopStateEvent('popstate'))\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (to) => { history.pushState(null, '', to) dispatchEvent(new PopStateEvent('popstate')) }. Real source-control browser observation: fetches %s's own chunk on a client-side navigation","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":228,"end_line":228,"start":9524,"end":9529,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: route. Real source-control browser observation: fetches %s's own chunk on a client-side navigation","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real source-control browser observation: fetches %s's own chunk on a client-side navigation","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":219,"title":"fetches %s's own chunk on a client-side navigation","start":9187,"end":10334},"implementation_status":"retained"},{"line":243,"title":"serves the shipped image policy and neither route violates it","decision":"fix","reason":"Move duplicated route browser mounts/network observations into the existing hub/review mount cases. Retain the distinct Android/Swift shipped image-policy comparison as a focused policy case.","explicit_input_controls":[{"control_id":"8:254:for-of:23","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":254,"source":"[\n [HUB_ROUTE, 'Source Control'],\n [REVIEW_ROUTE, 'reviewed']\n ]","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":255,"end_line":255,"start":10802,"end":10831,"source":"[HUB_ROUTE, 'Source Control']","value":{"kind":"array","value":[{"kind":"reference","source":"HUB_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":48,"end_line":48,"start":2482,"end":2524},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/source-control/${WORKTREE}`"}},{"kind":"string","value":"Source Control"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: [HUB_ROUTE, 'Source Control']. Move duplicated route browser mounts/network observations into the existing hub/review mount cases. Retain the distinct Android/Swift shipped image-policy comparison as a focused policy case.","implementation":{"disposition":"consolidated","target_original_case_lines":[193,205],"reason":"Both HUB_ROUTE/Source Control and REVIEW_ROUTE/reviewed mounts already run in their dedicated cases; those now also retain the foreign-host absence. Android/Swift image-policy comparison remains in the focused policy case."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":256,"end_line":256,"start":10841,"end":10867,"source":"[REVIEW_ROUTE, 'reviewed']","value":{"kind":"array","value":[{"kind":"reference","source":"REVIEW_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":49,"end_line":49,"start":2546,"end":2580},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/review/${WORKTREE}`"}},{"kind":"string","value":"reviewed"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: [REVIEW_ROUTE, 'reviewed']. Move duplicated route browser mounts/network observations into the existing hub/review mount cases. Retain the distinct Android/Swift shipped image-policy comparison as a focused policy case.","implementation":{"disposition":"consolidated","target_original_case_lines":[193,205],"reason":"Both HUB_ROUTE/Source Control and REVIEW_ROUTE/reviewed mounts already run in their dedicated cases; those now also retain the foreign-host absence. Android/Swift image-policy comparison remains in the focused policy case."}}],"decision":"fix","reason":"Move duplicated route browser mounts/network observations into the existing hub/review mount cases. Retain the distinct Android/Swift shipped image-policy comparison as a focused policy case.","implementation_rows":[{"index":1,"disposition":"consolidated","target_original_case_lines":[193,205],"reason":"Both HUB_ROUTE/Source Control and REVIEW_ROUTE/reviewed mounts already run in their dedicated cases; those now also retain the foreign-host absence. Android/Swift image-policy comparison remains in the focused policy case."},{"index":2,"disposition":"consolidated","target_original_case_lines":[193,205],"reason":"Both HUB_ROUTE/Source Control and REVIEW_ROUTE/reviewed mounts already run in their dedicated cases; those now also retain the foreign-host absence. Android/Swift image-policy comparison remains in the focused policy case."}]},{"control_id":"8:258:inline-api-or-fixture-input:24","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":258,"source":"openRoute(route, text)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":258,"end_line":258,"start":10918,"end":10923,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: route. Move duplicated route browser mounts/network observations into the existing hub/review mount cases. Retain the distinct Android/Swift shipped image-policy comparison as a focused policy case.","implementation":{"disposition":"consolidated","target_original_case_lines":[193,205],"reason":"Both HUB_ROUTE/Source Control and REVIEW_ROUTE/reviewed mounts already run in their dedicated cases; those now also retain the foreign-host absence. Android/Swift image-policy comparison remains in the focused policy case."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":258,"end_line":258,"start":10925,"end":10929,"source":"text","value":{"kind":"reference","source":"text","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":207,"end_line":207,"start":8618,"end":8675},"resolved":{"kind":"source-expression","source":"await opened.page.evaluate(() => document.body.innerText)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: text. Move duplicated route browser mounts/network observations into the existing hub/review mount cases. Retain the distinct Android/Swift shipped image-policy comparison as a focused policy case.","implementation":{"disposition":"consolidated","target_original_case_lines":[193,205],"reason":"Both HUB_ROUTE/Source Control and REVIEW_ROUTE/reviewed mounts already run in their dedicated cases; those now also retain the foreign-host absence. Android/Swift image-policy comparison remains in the focused policy case."}}],"decision":"fix","reason":"Move duplicated route browser mounts/network observations into the existing hub/review mount cases. Retain the distinct Android/Swift shipped image-policy comparison as a focused policy case.","implementation_rows":[{"index":1,"disposition":"consolidated","target_original_case_lines":[193,205],"reason":"Both HUB_ROUTE/Source Control and REVIEW_ROUTE/reviewed mounts already run in their dedicated cases; those now also retain the foreign-host absence. Android/Swift image-policy comparison remains in the focused policy case."},{"index":2,"disposition":"consolidated","target_original_case_lines":[193,205],"reason":"Both HUB_ROUTE/Source Control and REVIEW_ROUTE/reviewed mounts already run in their dedicated cases; those now also retain the foreign-host absence. Android/Swift image-policy comparison remains in the focused policy case."}]}],"current_declaration":{"line":245,"title":"configures the shipped Android and iOS image policy","start":10340,"end":10954},"implementation_status":"implemented"}],"lines":293,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","production_evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-render-harness.mjs"],"planned_changes":[{"original_line":193,"title":"mounts the source-control hub rather than the unmatched route","decision":"fix","change":"Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243."},{"original_line":205,"title":"mounts diff review rather than the unmatched route","decision":"fix","change":"Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243."},{"original_line":243,"title":"serves the shipped image policy and neither route violates it","decision":"fix","change":"Move duplicated route browser mounts/network observations into the existing hub/review mount cases. Retain the distinct Android/Swift shipped image-policy comparison as a focused policy case."}],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"8:57:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":57,"end_line":62,"start":2950,"end":3074,"source":"{\n id: 'render-check-host',\n name: 'Render Check Host',\n endpoint: 'ws://render-check',\n lastConnected: 1\n}","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":57,"end_line":62,"start":2963,"end":3074},"binding":"SHELL_HOST","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":58,"end_line":58,"start":2967,"end":2990,"source":"id: 'render-check-host'","value":{"kind":"property","key":"id","value":{"kind":"string","value":"render-check-host"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: id: 'render-check-host'. Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":59,"end_line":59,"start":2994,"end":3019,"source":"name: 'Render Check Host'","value":{"kind":"property","key":"name","value":{"kind":"string","value":"Render Check Host"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: name: 'Render Check Host'. Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":60,"end_line":60,"start":3023,"end":3052,"source":"endpoint: 'ws://render-check'","value":{"kind":"property","key":"endpoint","value":{"kind":"string","value":"ws://render-check"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: endpoint: 'ws://render-check'. Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":61,"end_line":61,"start":3056,"end":3072,"source":"lastConnected: 1","value":{"kind":"property","key":"lastConnected","value":{"kind":"number","value":1}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: lastConnected: 1. Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:67:fixture-or-oracle-declaration:2","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":67,"end_line":67,"start":3350,"end":3438,"source":"['navigate', 'storage', 'externalLink', 'haptics', 'native.clipboard.write']","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":67,"end_line":67,"start":3362,"end":3438},"binding":"C4_GRANTS","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":67,"end_line":67,"start":3363,"end":3373,"source":"'navigate'","value":{"kind":"string","value":"navigate"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'navigate'. Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":67,"end_line":67,"start":3375,"end":3384,"source":"'storage'","value":{"kind":"string","value":"storage"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'storage'. Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":67,"end_line":67,"start":3386,"end":3400,"source":"'externalLink'","value":{"kind":"string","value":"externalLink"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'externalLink'. Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":67,"end_line":67,"start":3402,"end":3411,"source":"'haptics'","value":{"kind":"string","value":"haptics"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'haptics'. Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":67,"end_line":67,"start":3413,"end":3437,"source":"'native.clipboard.write'","value":{"kind":"string","value":"native.clipboard.write"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'native.clipboard.write'. Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:76:fixture-or-oracle-declaration:3","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":76,"end_line":76,"start":3798,"end":3862,"source":"{ 'github.repoSlug': { owner: 'orca', repo: 'orca' } }","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":76,"end_line":76,"start":3808,"end":3862},"binding":"REPLIES","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":76,"end_line":76,"start":3810,"end":3860,"source":"'github.repoSlug': { owner: 'orca', repo: 'orca' }","value":{"kind":"property","key":"github.repoSlug","value":{"kind":"object","value":[{"key":"owner","value":{"kind":"string","value":"orca"}},{"key":"repo","value":{"kind":"string","value":"orca"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'github.repoSlug': { owner: 'orca', repo: 'orca' }. Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:85:fixture-or-oracle-declaration:4","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":85,"end_line":85,"start":4023,"end":4039,"source":"{}","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":85,"end_line":85,"start":4037,"end":4039},"binding":"routeChunks","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:98:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":98,"end_line":98,"start":4400,"end":4460,"source":"buildMobileWebAppBundle({ outDir: join(scratch, 'bundle') })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":98,"end_line":98,"start":4400,"end":4460},"binding":"buildMobileWebAppBundle","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":98,"end_line":98,"start":4424,"end":4459,"source":"{ outDir: join(scratch, 'bundle') }","value":{"kind":"object","value":[{"key":"outDir","value":{"kind":"call-source","callee":"join","arguments":[{"kind":"source-expression","source":"scratch"},{"kind":"string","value":"bundle"}],"source":"join(scratch, 'bundle')"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { outDir: join(scratch, 'bundle') }. Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:100:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":100,"end_line":100,"start":4518,"end":4573,"source":"createBundleServer({ outDir: built.outDir, cspHeader })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":100,"end_line":100,"start":4518,"end":4573},"binding":"createBundleServer","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":100,"end_line":100,"start":4537,"end":4572,"source":"{ outDir: built.outDir, cspHeader }","value":{"kind":"object","value":[{"key":"outDir","value":{"kind":"source-expression","source":"built.outDir"}},{"source":"cspHeader"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { outDir: built.outDir, cspHeader }. Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:132:fixture-or-oracle-declaration:7","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":132,"end_line":132,"start":5689,"end":5700,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":132,"end_line":132,"start":5698,"end":5700},"binding":"errors","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:133:fixture-or-oracle-declaration:8","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":133,"end_line":133,"start":5709,"end":5721,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":133,"end_line":133,"start":5719,"end":5721},"binding":"scripts","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:134:fixture-or-oracle-declaration:9","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":134,"end_line":134,"start":5730,"end":5749,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":134,"end_line":134,"start":5747,"end":5749},"binding":"requestedHosts","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:178:for-of:10","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":178,"end_line":180,"start":7452,"end":7586,"source":"await page.evaluate(() => globalThis.__orcaRenderCheckFaults ?? [])","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":178,"end_line":178,"start":7472,"end":7539},"binding":"const fault","resolution":[],"dynamic_source":"await page.evaluate(() => globalThis.__orcaRenderCheckFaults ?? [])","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:178:browser-event-input:11","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":178,"end_line":178,"start":7478,"end":7539,"source":"page.evaluate(() => globalThis.__orcaRenderCheckFaults ?? [])","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":178,"end_line":178,"start":7478,"end":7539},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":178,"end_line":178,"start":7492,"end":7538,"source":"() => globalThis.__orcaRenderCheckFaults ?? []","value":{"kind":"source-expression","source":"() => globalThis.__orcaRenderCheckFaults ?? []"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaRenderCheckFaults ?? []. Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:184:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":184,"end_line":184,"start":7658,"end":7673,"source":"openPage(route)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":184,"end_line":184,"start":7658,"end":7673},"binding":"openPage","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":184,"end_line":184,"start":7667,"end":7672,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: route. Retain the real hub/review mounts and route-chunk journeys; consolidate repeated policy/network observations into those mounts and retain the distinct Android/Swift policy comparison.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:194:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":194,"end_line":194,"start":8001,"end":8039,"source":"openRoute(HUB_ROUTE, 'Source Control')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":194,"end_line":194,"start":8001,"end":8039},"binding":"openRoute","resolution":[],"enclosing_case":{"line":193,"title":"mounts the source-control hub rather than the unmatched route"},"affected_case_lines":[],"decision":"keep","reason":"Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":194,"end_line":194,"start":8011,"end":8020,"source":"HUB_ROUTE","value":{"kind":"reference","source":"HUB_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":48,"end_line":48,"start":2482,"end":2524},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/source-control/${WORKTREE}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: HUB_ROUTE. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":194,"end_line":194,"start":8022,"end":8038,"source":"'Source Control'","value":{"kind":"string","value":"Source Control"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'Source Control'. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:195:browser-event-input:14","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":195,"end_line":195,"start":8065,"end":8116,"source":"opened.page.evaluate(() => document.body.innerText)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":195,"end_line":195,"start":8065,"end":8116},"binding":"opened.page.evaluate","resolution":[],"enclosing_case":{"line":193,"title":"mounts the source-control hub rather than the unmatched route"},"affected_case_lines":[],"decision":"keep","reason":"Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":195,"end_line":195,"start":8086,"end":8115,"source":"() => document.body.innerText","value":{"kind":"source-expression","source":"() => document.body.innerText"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => document.body.innerText. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:197:for-of:15","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":197,"end_line":199,"start":8222,"end":8327,"source":"['Changes', 'Pull Request', 'Commits']","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":197,"end_line":197,"start":8241,"end":8279},"binding":"const chip","resolution":[],"enclosing_case":{"line":193,"title":"mounts the source-control hub rather than the unmatched route"},"affected_case_lines":[],"decision":"keep","reason":"Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":197,"end_line":197,"start":8242,"end":8251,"source":"'Changes'","value":{"kind":"string","value":"Changes"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Changes'. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":197,"end_line":197,"start":8253,"end":8267,"source":"'Pull Request'","value":{"kind":"string","value":"Pull Request"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Pull Request'. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":197,"end_line":197,"start":8269,"end":8278,"source":"'Commits'","value":{"kind":"string","value":"Commits"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Commits'. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:206:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":206,"end_line":206,"start":8563,"end":8598,"source":"openRoute(REVIEW_ROUTE, 'reviewed')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":206,"end_line":206,"start":8563,"end":8598},"binding":"openRoute","resolution":[],"enclosing_case":{"line":205,"title":"mounts diff review rather than the unmatched route"},"affected_case_lines":[],"decision":"keep","reason":"Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":206,"end_line":206,"start":8573,"end":8585,"source":"REVIEW_ROUTE","value":{"kind":"reference","source":"REVIEW_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":49,"end_line":49,"start":2546,"end":2580},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/review/${WORKTREE}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: REVIEW_ROUTE. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":206,"end_line":206,"start":8587,"end":8597,"source":"'reviewed'","value":{"kind":"string","value":"reviewed"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'reviewed'. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:207:browser-event-input:17","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":207,"end_line":207,"start":8624,"end":8675,"source":"opened.page.evaluate(() => document.body.innerText)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":207,"end_line":207,"start":8624,"end":8675},"binding":"opened.page.evaluate","resolution":[],"enclosing_case":{"line":205,"title":"mounts diff review rather than the unmatched route"},"affected_case_lines":[],"decision":"keep","reason":"Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":207,"end_line":207,"start":8645,"end":8674,"source":"() => document.body.innerText","value":{"kind":"source-expression","source":"() => document.body.innerText"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => document.body.innerText. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:209:for-of:18","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":209,"end_line":211,"start":8756,"end":8857,"source":"['All', 'Unreviewed', 'Notes']","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":209,"end_line":209,"start":8777,"end":8807},"binding":"const filter","resolution":[],"enclosing_case":{"line":205,"title":"mounts diff review rather than the unmatched route"},"affected_case_lines":[],"decision":"keep","reason":"Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":209,"end_line":209,"start":8778,"end":8783,"source":"'All'","value":{"kind":"string","value":"All"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'All'. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":209,"end_line":209,"start":8785,"end":8797,"source":"'Unreviewed'","value":{"kind":"string","value":"Unreviewed"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Unreviewed'. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":209,"end_line":209,"start":8799,"end":8806,"source":"'Notes'","value":{"kind":"string","value":"Notes"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Notes'. Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:217:parameter-table:19","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":217,"end_line":241,"start":8995,"end":10142,"source":"[\n ['source-control', HUB_ROUTE, 'Source Control', HUB_CHUNK_KEY],\n ['review', REVIEW_ROUTE, 'reviewed', REVIEW_CHUNK_KEY]\n ]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":217,"end_line":220,"start":9003,"end":9141},"binding":"it.each","resolution":[],"enclosing_case":{"line":217,"title":"fetches %s's own chunk on a client-side navigation"},"affected_case_lines":[217],"decision":"keep","reason":"Real source-control browser observation: fetches %s's own chunk on a client-side navigation","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":218,"end_line":218,"start":9011,"end":9073,"source":"['source-control', HUB_ROUTE, 'Source Control', HUB_CHUNK_KEY]","value":{"kind":"array","value":[{"kind":"string","value":"source-control"},{"kind":"reference","source":"HUB_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":48,"end_line":48,"start":2482,"end":2524},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/source-control/${WORKTREE}`"}},{"kind":"string","value":"Source Control"},{"kind":"reference","source":"HUB_CHUNK_KEY","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":64,"end_line":64,"start":3133,"end":3179},"resolved":{"kind":"string","value":"./h/[hostId]/source-control/[worktreeId].tsx"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['source-control', HUB_ROUTE, 'Source Control', HUB_CHUNK_KEY]. Real source-control browser observation: fetches %s's own chunk on a client-side navigation","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":219,"end_line":219,"start":9081,"end":9135,"source":"['review', REVIEW_ROUTE, 'reviewed', REVIEW_CHUNK_KEY]","value":{"kind":"array","value":[{"kind":"string","value":"review"},{"kind":"reference","source":"REVIEW_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":49,"end_line":49,"start":2546,"end":2580},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/review/${WORKTREE}`"}},{"kind":"string","value":"reviewed"},{"kind":"reference","source":"REVIEW_CHUNK_KEY","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":65,"end_line":65,"start":3205,"end":3243},"resolved":{"kind":"string","value":"./h/[hostId]/review/[worktreeId].tsx"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['review', REVIEW_ROUTE, 'reviewed', REVIEW_CHUNK_KEY]. Real source-control browser observation: fetches %s's own chunk on a client-side navigation","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:223:inline-api-or-fixture-input:20","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":223,"end_line":223,"start":9276,"end":9314,"source":"openRoute(HOST_ROUTE, SHELL_HOST.name)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":223,"end_line":223,"start":9276,"end":9314},"binding":"openRoute","resolution":[],"enclosing_case":{"line":217,"title":"fetches %s's own chunk on a client-side navigation"},"affected_case_lines":[],"decision":"keep","reason":"Real source-control browser observation: fetches %s's own chunk on a client-side navigation","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":223,"end_line":223,"start":9286,"end":9296,"source":"HOST_ROUTE","value":{"kind":"reference","source":"HOST_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":46,"end_line":46,"start":2417,"end":2439},"resolved":{"kind":"string","value":"/h/render-check-host"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: HOST_ROUTE. Real source-control browser observation: fetches %s's own chunk on a client-side navigation","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":223,"end_line":223,"start":9298,"end":9313,"source":"SHELL_HOST.name","value":{"kind":"source-expression","source":"SHELL_HOST.name"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SHELL_HOST.name. Real source-control browser observation: fetches %s's own chunk on a client-side navigation","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:224:fixture-or-oracle-declaration:21","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":224,"end_line":224,"start":9329,"end":9370,"source":"[...opened.scripts]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":224,"end_line":224,"start":9351,"end":9370},"binding":"loadedForFirstRoute","resolution":[],"enclosing_case":{"line":217,"title":"fetches %s's own chunk on a client-side navigation"},"affected_case_lines":[],"decision":"keep","reason":"Real source-control browser observation: fetches %s's own chunk on a client-side navigation","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:225:browser-event-input:22","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":225,"end_line":228,"start":9385,"end":9530,"source":"opened.page.evaluate((to) => {\n history.pushState(null, '', to)\n dispatchEvent(new PopStateEvent('popstate'))\n }, route)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":225,"end_line":228,"start":9385,"end":9530},"binding":"opened.page.evaluate","resolution":[],"enclosing_case":{"line":217,"title":"fetches %s's own chunk on a client-side navigation"},"affected_case_lines":[],"decision":"keep","reason":"Real source-control browser observation: fetches %s's own chunk on a client-side navigation","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":225,"end_line":228,"start":9406,"end":9522,"source":"(to) => {\n history.pushState(null, '', to)\n dispatchEvent(new PopStateEvent('popstate'))\n }","value":{"kind":"source-expression","source":"(to) => {\n history.pushState(null, '', to)\n dispatchEvent(new PopStateEvent('popstate'))\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (to) => { history.pushState(null, '', to) dispatchEvent(new PopStateEvent('popstate')) }. Real source-control browser observation: fetches %s's own chunk on a client-side navigation","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":228,"end_line":228,"start":9524,"end":9529,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: route. Real source-control browser observation: fetches %s's own chunk on a client-side navigation","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:254:for-of:23","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":254,"end_line":271,"start":10764,"end":11851,"source":"[\n [HUB_ROUTE, 'Source Control'],\n [REVIEW_ROUTE, 'reviewed']\n ]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":254,"end_line":257,"start":10792,"end":10875},"binding":"const [route, text]","resolution":[],"enclosing_case":{"line":243,"title":"serves the shipped image policy and neither route violates it"},"affected_case_lines":[],"decision":"keep","reason":"Move duplicated route browser mounts/network observations into the existing hub/review mount cases. Retain the distinct Android/Swift shipped image-policy comparison as a focused policy case.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":255,"end_line":255,"start":10802,"end":10831,"source":"[HUB_ROUTE, 'Source Control']","value":{"kind":"array","value":[{"kind":"reference","source":"HUB_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":48,"end_line":48,"start":2482,"end":2524},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/source-control/${WORKTREE}`"}},{"kind":"string","value":"Source Control"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: [HUB_ROUTE, 'Source Control']. Move duplicated route browser mounts/network observations into the existing hub/review mount cases. Retain the distinct Android/Swift shipped image-policy comparison as a focused policy case.","implementation":{"disposition":"consolidated","target_original_case_lines":[193,205],"reason":"Both HUB_ROUTE/Source Control and REVIEW_ROUTE/reviewed mounts already run in their dedicated cases; those now also retain the foreign-host absence. Android/Swift image-policy comparison remains in the focused policy case."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":256,"end_line":256,"start":10841,"end":10867,"source":"[REVIEW_ROUTE, 'reviewed']","value":{"kind":"array","value":[{"kind":"reference","source":"REVIEW_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":49,"end_line":49,"start":2546,"end":2580},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/review/${WORKTREE}`"}},{"kind":"string","value":"reviewed"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: [REVIEW_ROUTE, 'reviewed']. Move duplicated route browser mounts/network observations into the existing hub/review mount cases. Retain the distinct Android/Swift shipped image-policy comparison as a focused policy case.","implementation":{"disposition":"consolidated","target_original_case_lines":[193,205],"reason":"Both HUB_ROUTE/Source Control and REVIEW_ROUTE/reviewed mounts already run in their dedicated cases; those now also retain the foreign-host absence. Android/Swift image-policy comparison remains in the focused policy case."}}],"implementation_rows":[{"index":1,"disposition":"consolidated","target_original_case_lines":[193,205],"reason":"Both HUB_ROUTE/Source Control and REVIEW_ROUTE/reviewed mounts already run in their dedicated cases; those now also retain the foreign-host absence. Android/Swift image-policy comparison remains in the focused policy case."},{"index":2,"disposition":"consolidated","target_original_case_lines":[193,205],"reason":"Both HUB_ROUTE/Source Control and REVIEW_ROUTE/reviewed mounts already run in their dedicated cases; those now also retain the foreign-host absence. Android/Swift image-policy comparison remains in the focused policy case."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}},{"id":"8:258:inline-api-or-fixture-input:24","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":258,"end_line":258,"start":10908,"end":10930,"source":"openRoute(route, text)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":258,"end_line":258,"start":10908,"end":10930},"binding":"openRoute","resolution":[],"enclosing_case":{"line":243,"title":"serves the shipped image policy and neither route violates it"},"affected_case_lines":[],"decision":"keep","reason":"Move duplicated route browser mounts/network observations into the existing hub/review mount cases. Retain the distinct Android/Swift shipped image-policy comparison as a focused policy case.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":258,"end_line":258,"start":10918,"end":10923,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: route. Move duplicated route browser mounts/network observations into the existing hub/review mount cases. Retain the distinct Android/Swift shipped image-policy comparison as a focused policy case.","implementation":{"disposition":"consolidated","target_original_case_lines":[193,205],"reason":"Both HUB_ROUTE/Source Control and REVIEW_ROUTE/reviewed mounts already run in their dedicated cases; those now also retain the foreign-host absence. Android/Swift image-policy comparison remains in the focused policy case."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":258,"end_line":258,"start":10925,"end":10929,"source":"text","value":{"kind":"reference","source":"text","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","line":207,"end_line":207,"start":8618,"end":8675},"resolved":{"kind":"source-expression","source":"await opened.page.evaluate(() => document.body.innerText)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: text. Move duplicated route browser mounts/network observations into the existing hub/review mount cases. Retain the distinct Android/Swift shipped image-policy comparison as a focused policy case.","implementation":{"disposition":"consolidated","target_original_case_lines":[193,205],"reason":"Both HUB_ROUTE/Source Control and REVIEW_ROUTE/reviewed mounts already run in their dedicated cases; those now also retain the foreign-host absence. Android/Swift image-policy comparison remains in the focused policy case."}}],"implementation_rows":[{"index":1,"disposition":"consolidated","target_original_case_lines":[193,205],"reason":"Both HUB_ROUTE/Source Control and REVIEW_ROUTE/reviewed mounts already run in their dedicated cases; those now also retain the foreign-host absence. Android/Swift image-policy comparison remains in the focused policy case."},{"index":2,"disposition":"consolidated","target_original_case_lines":[193,205],"reason":"Both HUB_ROUTE/Source Control and REVIEW_ROUTE/reviewed mounts already run in their dedicated cases; those now also retain the foreign-host absence. Android/Swift image-policy comparison remains in the focused policy case."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1"}}],"original_review_sha256":"8b95271df07833d2ebe1a1719487b6ddc5f94b892178693616e27e1d3e59a757","reviewer":"audit_config","reviewed_sha256":"8870a8649082814942128c9ad2677b7c0bc0b0dc0c905c37bbc0b6a4bb5a4dc1","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","final_declarations":4,"current_controls":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","each":[{"input":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","start":9195,"end":9333,"line":219,"end_line":222,"source":"[\n ['source-control', HUB_ROUTE, 'Source Control', HUB_CHUNK_KEY],\n ['review', REVIEW_ROUTE, 'reviewed', REVIEW_CHUNK_KEY]\n ]"},"rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","start":9203,"end":9265,"line":220,"end_line":220,"source":"['source-control', HUB_ROUTE, 'Source Control', HUB_CHUNK_KEY]"},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","start":9273,"end":9327,"line":221,"end_line":221,"source":"['review', REVIEW_ROUTE, 'reviewed', REVIEW_CHUNK_KEY]"}]}],"for_of":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","start":7472,"end":7539,"line":178,"end_line":178,"source":"await page.evaluate(() => globalThis.__orcaRenderCheckFaults ?? [])","binding":"const fault","changed":false},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","start":8241,"end":8279,"line":197,"end_line":197,"source":"['Changes', 'Pull Request', 'Commits']","binding":"const chip","changed":false},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-render.test.mjs","start":8873,"end":8903,"line":210,"end_line":210,"source":"['All', 'Unreviewed', 'Notes']","binding":"const filter","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[{"original_line":193,"title":"mounts the source-control hub rather than the unmatched route","decision":"fix","change":"Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243."},{"original_line":205,"title":"mounts diff review rather than the unmatched route","decision":"fix","change":"Retain actual route mount and error oracle; incorporate this route's existing foreign-host/CSP observation from the duplicate policy mounts at line243."},{"original_line":243,"title":"serves the shipped image policy and neither route violates it","decision":"fix","change":"Move duplicated route browser mounts/network observations into the existing hub/review mount cases. Retain the distinct Android/Swift shipped image-policy comparison as a focused policy case."}],"manual_implementation_notes":[],"evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-render-harness.mjs"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06","declarations":18,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06","cases":[{"line":65,"title":"names the line the size is set on, which may not be the file the input is in","decision":"keep","reason":"Independent external stylesheet fixture expects exact offender location.","explicit_input_controls":[{"control_id":"9:80:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":80,"source":"textInputFontSizeOffenders(root, { local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts'] })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":80,"end_line":80,"start":3552,"end":3556,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":66,"end_line":77,"start":3132,"end":3492},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Field.tsx'","value":{"kind":"call-source","callee":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join('\\n')"}},{"key":"'src/ui/field-styles.ts'","value":{"kind":"call-source","callee":"[\n 'export const styles = {',\n ' label: { fontSize: 12 },',\n ' input: { fontSize: 14 }',\n '}'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'export const styles = {',\n ' label: { fontSize: 12 },',\n ' input: { fontSize: 14 }',\n '}'\n ].join('\\n')"}}]}],"source":"plant({\n 'src/ui/Field.tsx': [\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join('\\n'),\n 'src/ui/field-styles.ts': [\n 'export const styles = {',\n ' label: { fontSize: 12 },',\n ' input: { fontSize: 14 }',\n '}'\n ].join('\\n')\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Independent external stylesheet fixture expects exact offender location.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":80,"end_line":80,"start":3558,"end":3615,"source":"{ local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts'] }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts'] }. Independent external stylesheet fixture expects exact offender location.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Independent external stylesheet fixture expects exact offender location.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":65,"title":"names the line the size is set on, which may not be the file the input is in","start":3024,"end":3742},"implementation_status":"retained"},{"line":87,"title":"follows a spread into the module that really holds the key","decision":"keep","reason":"Follows a spread to the real imported style key rather than silently missing its font size.","explicit_input_controls":[{"control_id":"9:103:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":103,"source":"textInputFontSizeOffenders(root, {\n local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts', 'src/ui/list-styles.ts']\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":103,"end_line":103,"start":4522,"end":4526,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":90,"end_line":100,"start":4032,"end":4462},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Field.tsx'","value":{"kind":"call-source","callee":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join('\\n')"}},{"key":"'src/ui/field-styles.ts'","value":{"kind":"call-source","callee":"[\n \"import { listStyles } from './list-styles'\",\n 'export const styles = { ...listStyles }'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { listStyles } from './list-styles'\",\n 'export const styles = { ...listStyles }'\n ].join('\\n')"}},{"key":"'src/ui/list-styles.ts'","value":{"kind":"string","value":"export const listStyles = { input: { fontSize: 14 } }"}}]}],"source":"plant({\n 'src/ui/Field.tsx': [\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join('\\n'),\n 'src/ui/field-styles.ts': [\n \"import { listStyles } from './list-styles'\",\n 'export const styles = { ...listStyles }'\n ].join('\\n'),\n 'src/ui/list-styles.ts': 'export const listStyles = { input: { fontSize: 14 } }'\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Follows a spread to the real imported style key rather than silently missing its font size.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":103,"end_line":105,"start":4528,"end":4628,"source":"{\n local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts', 'src/ui/list-styles.ts']\n }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.ts"},{"kind":"string","value":"src/ui/list-styles.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts', 'src/ui/list-styles.ts'] }. Follows a spread to the real imported style key rather than silently missing its font size.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Follows a spread to the real imported style key rather than silently missing its font size.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":87,"title":"follows a spread into the module that really holds the key","start":3746,"end":4754},"implementation_status":"retained"},{"line":112,"title":"separates a style it could not follow from one that sets no size","decision":"keep","reason":"Distinguishes unresolved style imports from resolved styles with no explicit size.","explicit_input_controls":[{"control_id":"9:125:fixture-or-oracle-declaration:6","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":125,"source":"{ local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts'] }","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":125,"end_line":125,"start":5455,"end":5508,"source":"local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts']","value":{"kind":"property","key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.ts"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts']. Distinguishes unresolved style imports from resolved styles with no explicit size.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Distinguishes unresolved style imports from resolved styles with no explicit size.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"9:126:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":126,"source":"textInputFontSizeOffenders(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":126,"end_line":126,"start":5551,"end":5555,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":115,"end_line":123,"start":5033,"end":5420},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Field.tsx'","value":{"kind":"call-source","callee":"[\n \"import { styles } from './field-styles'\",\n \"import { missing } from 'some-package'\",\n 'export const Bare = () => ',\n 'export const Gone = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './field-styles'\",\n \"import { missing } from 'some-package'\",\n 'export const Bare = () => ',\n 'export const Gone = () => '\n ].join('\\n')"}},{"key":"'src/ui/field-styles.ts'","value":{"kind":"string","value":"export const styles = { bare: { padding: 8 } }"}}]}],"source":"plant({\n 'src/ui/Field.tsx': [\n \"import { styles } from './field-styles'\",\n \"import { missing } from 'some-package'\",\n 'export const Bare = () => ',\n 'export const Gone = () => '\n ].join('\\n'),\n 'src/ui/field-styles.ts': 'export const styles = { bare: { padding: 8 } }'\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Distinguishes unresolved style imports from resolved styles with no explicit size.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":126,"end_line":126,"start":5557,"end":5564,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":125,"end_line":125,"start":5453,"end":5510},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.ts"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Distinguishes unresolved style imports from resolved styles with no explicit size.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Distinguishes unresolved style imports from resolved styles with no explicit size.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"9:127:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":127,"source":"unresolvedTextInputStyles(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":127,"end_line":127,"start":5618,"end":5622,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":115,"end_line":123,"start":5033,"end":5420},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Field.tsx'","value":{"kind":"call-source","callee":"[\n \"import { styles } from './field-styles'\",\n \"import { missing } from 'some-package'\",\n 'export const Bare = () => ',\n 'export const Gone = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './field-styles'\",\n \"import { missing } from 'some-package'\",\n 'export const Bare = () => ',\n 'export const Gone = () => '\n ].join('\\n')"}},{"key":"'src/ui/field-styles.ts'","value":{"kind":"string","value":"export const styles = { bare: { padding: 8 } }"}}]}],"source":"plant({\n 'src/ui/Field.tsx': [\n \"import { styles } from './field-styles'\",\n \"import { missing } from 'some-package'\",\n 'export const Bare = () => ',\n 'export const Gone = () => '\n ].join('\\n'),\n 'src/ui/field-styles.ts': 'export const styles = { bare: { padding: 8 } }'\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Distinguishes unresolved style imports from resolved styles with no explicit size.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":127,"end_line":127,"start":5624,"end":5631,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":125,"end_line":125,"start":5453,"end":5510},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.ts"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Distinguishes unresolved style imports from resolved styles with no explicit size.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Distinguishes unresolved style imports from resolved styles with no explicit size.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":112,"title":"separates a style it could not follow from one that sets no size","start":4758,"end":5753},"implementation_status":"retained"},{"line":133,"title":"takes the seam as the answer, and an absent size as nothing to answer for","decision":"keep","reason":"Accepts the real seam binding while retaining absence-of-font-size behavior.","explicit_input_controls":[{"control_id":"9:154:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":154,"source":"textInputFontSizeOffenders(root, { local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts'] })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":154,"end_line":154,"start":6695,"end":6699,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":135,"end_line":151,"start":5953,"end":6635},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Field.tsx'","value":{"kind":"call-source","callee":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => ',\n 'export const Other = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => ',\n 'export const Other = () => '\n ].join('\\n')"}},{"key":"'src/ui/field-styles.ts'","value":{"kind":"call-source","callee":"[\n SEAM_IMPORT,\n 'export const styles = {',\n ' input: { fontSize: TEXT_INPUT_FONT_SIZE },',\n ' bare: { padding: 8 }',\n '}'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n SEAM_IMPORT,\n 'export const styles = {',\n ' input: { fontSize: TEXT_INPUT_FONT_SIZE },',\n ' bare: { padding: 8 }',\n '}'\n ].join('\\n')"}},{"source":"...SEAM_SOURCE"}]}],"source":"plant({\n 'src/ui/Field.tsx': [\n \"import { styles } from './field-styles'\",\n 'export const Field = () => ',\n 'export const Other = () => '\n ].join('\\n'),\n // Imported, not merely spelled: the rule reads the binding now, so a fixture that wrote the\n // name without importing it from the seam would be an offender like any other shadow.\n 'src/ui/field-styles.ts': [\n SEAM_IMPORT,\n 'export const styles = {',\n ' input: { fontSize: TEXT_INPUT_FONT_SIZE },',\n ' bare: { padding: 8 }',\n '}'\n ].join('\\n'),\n ...SEAM_SOURCE\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Accepts the real seam binding while retaining absence-of-font-size behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":154,"end_line":154,"start":6701,"end":6758,"source":"{ local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts'] }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts'] }. Accepts the real seam binding while retaining absence-of-font-size behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Accepts the real seam binding while retaining absence-of-font-size behavior.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":133,"title":"takes the seam as the answer, and an absent size as nothing to answer for","start":5757,"end":6859},"implementation_status":"retained"},{"line":161,"title":"reads an inline style literal in place rather than losing it","decision":"keep","reason":"Separates a literal14 offender from a padding-only inherited style.","explicit_input_controls":[{"control_id":"9:171:fixture-or-oracle-declaration:10","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":171,"source":"{ local: ['src/ui/Inline.tsx'] }","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":171,"end_line":171,"start":7369,"end":7397,"source":"local: ['src/ui/Inline.tsx']","value":{"kind":"property","key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Inline.tsx"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: local: ['src/ui/Inline.tsx']. Separates a literal14 offender from a padding-only inherited style.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Separates a literal14 offender from a padding-only inherited style.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"9:172:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":172,"source":"textInputFontSizeOffenders(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":172,"end_line":172,"start":7440,"end":7444,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":164,"end_line":169,"start":7122,"end":7334},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Inline.tsx'","value":{"kind":"call-source","callee":"[\n 'export const Sized = () => ',\n 'export const Bare = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'export const Sized = () => ',\n 'export const Bare = () => '\n ].join('\\n')"}}]}],"source":"plant({\n 'src/ui/Inline.tsx': [\n 'export const Sized = () => ',\n 'export const Bare = () => '\n ].join('\\n')\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Separates a literal14 offender from a padding-only inherited style.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":172,"end_line":172,"start":7446,"end":7453,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":171,"end_line":171,"start":7367,"end":7399},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Inline.tsx"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Separates a literal14 offender from a padding-only inherited style.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Separates a literal14 offender from a padding-only inherited style.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"9:173:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":173,"source":"unresolvedTextInputStyles(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":173,"end_line":173,"start":7528,"end":7532,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":164,"end_line":169,"start":7122,"end":7334},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Inline.tsx'","value":{"kind":"call-source","callee":"[\n 'export const Sized = () => ',\n 'export const Bare = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'export const Sized = () => ',\n 'export const Bare = () => '\n ].join('\\n')"}}]}],"source":"plant({\n 'src/ui/Inline.tsx': [\n 'export const Sized = () => ',\n 'export const Bare = () => '\n ].join('\\n')\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Separates a literal14 offender from a padding-only inherited style.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":173,"end_line":173,"start":7534,"end":7541,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":171,"end_line":171,"start":7367,"end":7399},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Inline.tsx"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Separates a literal14 offender from a padding-only inherited style.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Separates a literal14 offender from a padding-only inherited style.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":161,"title":"reads an inline style literal in place rather than losing it","start":6863,"end":7635},"implementation_status":"retained"},{"line":179,"title":"reads an inline literal beside a style key, and the condition between them","decision":"keep","reason":"Flattens arrays and conditional inline styles and independently expects the reachable unsafe literals.","explicit_input_controls":[{"control_id":"9:199:fixture-or-oracle-declaration:13","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":199,"source":"{\n local: ['src/ui/Mixed.tsx', 'src/ui/mixed-styles.ts', ...Object.keys(SEAM_SOURCE)]\n }","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":200,"end_line":200,"start":8486,"end":8568,"source":"local: ['src/ui/Mixed.tsx', 'src/ui/mixed-styles.ts', ...Object.keys(SEAM_SOURCE)]","value":{"kind":"property","key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Mixed.tsx"},{"kind":"string","value":"src/ui/mixed-styles.ts"},{"kind":"source-expression","source":"...Object.keys(SEAM_SOURCE)"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: local: ['src/ui/Mixed.tsx', 'src/ui/mixed-styles.ts', ...Object.keys(SEAM_SOURCE)]. Flattens arrays and conditional inline styles and independently expects the reachable unsafe literals.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Flattens arrays and conditional inline styles and independently expects the reachable unsafe literals.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"9:202:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":202,"source":"textInputFontSizeOffenders(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":202,"end_line":202,"start":8617,"end":8621,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":182,"end_line":197,"start":7942,"end":8443},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Mixed.tsx'","value":{"kind":"call-source","callee":"[\n \"import { styles } from './mixed-styles'\",\n 'export const Mixed = () => (',\n ' ',\n ')'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './mixed-styles'\",\n 'export const Mixed = () => (',\n ' ',\n ')'\n ].join('\\n')"}},{"key":"'src/ui/mixed-styles.ts'","value":{"kind":"call-source","callee":"[\n SEAM_IMPORT,\n 'export const styles = {',\n ' input: { fontSize: TEXT_INPUT_FONT_SIZE },',\n ' disabled: { opacity: 0.5 }',\n '}'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n SEAM_IMPORT,\n 'export const styles = {',\n ' input: { fontSize: TEXT_INPUT_FONT_SIZE },',\n ' disabled: { opacity: 0.5 }',\n '}'\n ].join('\\n')"}},{"source":"...SEAM_SOURCE"}]}],"source":"plant({\n 'src/ui/Mixed.tsx': [\n \"import { styles } from './mixed-styles'\",\n 'export const Mixed = () => (',\n ' ',\n ')'\n ].join('\\n'),\n 'src/ui/mixed-styles.ts': [\n SEAM_IMPORT,\n 'export const styles = {',\n ' input: { fontSize: TEXT_INPUT_FONT_SIZE },',\n ' disabled: { opacity: 0.5 }',\n '}'\n ].join('\\n'),\n ...SEAM_SOURCE\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Flattens arrays and conditional inline styles and independently expects the reachable unsafe literals.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":202,"end_line":202,"start":8623,"end":8630,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":199,"end_line":201,"start":8476,"end":8576},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Mixed.tsx"},{"kind":"string","value":"src/ui/mixed-styles.ts"},{"kind":"source-expression","source":"...Object.keys(SEAM_SOURCE)"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Flattens arrays and conditional inline styles and independently expects the reachable unsafe literals.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Flattens arrays and conditional inline styles and independently expects the reachable unsafe literals.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"9:203:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":203,"source":"unresolvedTextInputStyles(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":203,"end_line":203,"start":8704,"end":8708,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":182,"end_line":197,"start":7942,"end":8443},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Mixed.tsx'","value":{"kind":"call-source","callee":"[\n \"import { styles } from './mixed-styles'\",\n 'export const Mixed = () => (',\n ' ',\n ')'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './mixed-styles'\",\n 'export const Mixed = () => (',\n ' ',\n ')'\n ].join('\\n')"}},{"key":"'src/ui/mixed-styles.ts'","value":{"kind":"call-source","callee":"[\n SEAM_IMPORT,\n 'export const styles = {',\n ' input: { fontSize: TEXT_INPUT_FONT_SIZE },',\n ' disabled: { opacity: 0.5 }',\n '}'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n SEAM_IMPORT,\n 'export const styles = {',\n ' input: { fontSize: TEXT_INPUT_FONT_SIZE },',\n ' disabled: { opacity: 0.5 }',\n '}'\n ].join('\\n')"}},{"source":"...SEAM_SOURCE"}]}],"source":"plant({\n 'src/ui/Mixed.tsx': [\n \"import { styles } from './mixed-styles'\",\n 'export const Mixed = () => (',\n ' ',\n ')'\n ].join('\\n'),\n 'src/ui/mixed-styles.ts': [\n SEAM_IMPORT,\n 'export const styles = {',\n ' input: { fontSize: TEXT_INPUT_FONT_SIZE },',\n ' disabled: { opacity: 0.5 }',\n '}'\n ].join('\\n'),\n ...SEAM_SOURCE\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Flattens arrays and conditional inline styles and independently expects the reachable unsafe literals.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":203,"end_line":203,"start":8710,"end":8717,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":199,"end_line":201,"start":8476,"end":8576},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Mixed.tsx"},{"kind":"string","value":"src/ui/mixed-styles.ts"},{"kind":"source-expression","source":"...Object.keys(SEAM_SOURCE)"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Flattens arrays and conditional inline styles and independently expects the reachable unsafe literals.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Flattens arrays and conditional inline styles and independently expects the reachable unsafe literals.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":179,"title":"reads an inline literal beside a style key, and the condition between them","start":7639,"end":8811},"implementation_status":"retained"},{"line":217,"title":"reads a literal %s","decision":"keep","reason":"Literal15 fails while16 and22 satisfy the declared seam floor.","explicit_input_controls":[{"control_id":"9:217:parameter-table:16","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":217,"source":"[\n ['under the floor, which is the offence the seam exists for', 15, ['src/ui/Sized.tsx:1']],\n ['exactly the floor', 16, []],\n ['well above the floor, which no binding could keep', 22, []]\n ]","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":218,"end_line":218,"start":9281,"end":9370,"source":"['under the floor, which is the offence the seam exists for', 15, ['src/ui/Sized.tsx:1']]","value":{"kind":"array","value":[{"kind":"string","value":"under the floor, which is the offence the seam exists for"},{"kind":"number","value":15},{"kind":"array","value":[{"kind":"string","value":"src/ui/Sized.tsx:1"}]}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['under the floor, which is the offence the seam exists for', 15, ['src/ui/Sized.tsx:1']]. Literal15 fails while16 and22 satisfy the declared seam floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":219,"end_line":219,"start":9376,"end":9405,"source":"['exactly the floor', 16, []]","value":{"kind":"array","value":[{"kind":"string","value":"exactly the floor"},{"kind":"number","value":16},{"kind":"array","value":[]}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['exactly the floor', 16, []]. Literal15 fails while16 and22 satisfy the declared seam floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":220,"end_line":220,"start":9411,"end":9472,"source":"['well above the floor, which no binding could keep', 22, []]","value":{"kind":"array","value":[{"kind":"string","value":"well above the floor, which no binding could keep"},{"kind":"number","value":22},{"kind":"array","value":[]}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['well above the floor, which no binding could keep', 22, []]. Literal15 fails while16 and22 satisfy the declared seam floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Literal15 fails while16 and22 satisfy the declared seam floor.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"9:227:fixture-or-oracle-declaration:17","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":227,"source":"{ local: ['src/ui/Sized.tsx'] }","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":227,"end_line":227,"start":9717,"end":9744,"source":"local: ['src/ui/Sized.tsx']","value":{"kind":"property","key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Sized.tsx"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: local: ['src/ui/Sized.tsx']. Literal15 fails while16 and22 satisfy the declared seam floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Literal15 fails while16 and22 satisfy the declared seam floor.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"9:228:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":228,"source":"textInputFontSizeOffenders(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":228,"end_line":228,"start":9787,"end":9791,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":222,"end_line":225,"start":9547,"end":9682},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Sized.tsx'","value":{"kind":"source-expression","source":"`export const Sized = () => `"}},{"source":"...SEAM_SOURCE"}]}],"source":"plant({\n 'src/ui/Sized.tsx': `export const Sized = () => `,\n ...SEAM_SOURCE\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Literal15 fails while16 and22 satisfy the declared seam floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":228,"end_line":228,"start":9793,"end":9800,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":227,"end_line":227,"start":9715,"end":9746},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Sized.tsx"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Literal15 fails while16 and22 satisfy the declared seam floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Literal15 fails while16 and22 satisfy the declared seam floor.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"9:229:inline-api-or-fixture-input:19","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":229,"source":"unresolvedTextInputStyles(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":229,"end_line":229,"start":9860,"end":9864,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":222,"end_line":225,"start":9547,"end":9682},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Sized.tsx'","value":{"kind":"source-expression","source":"`export const Sized = () => `"}},{"source":"...SEAM_SOURCE"}]}],"source":"plant({\n 'src/ui/Sized.tsx': `export const Sized = () => `,\n ...SEAM_SOURCE\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Literal15 fails while16 and22 satisfy the declared seam floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":229,"end_line":229,"start":9866,"end":9873,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":227,"end_line":227,"start":9715,"end":9746},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Sized.tsx"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Literal15 fails while16 and22 satisfy the declared seam floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Literal15 fails while16 and22 satisfy the declared seam floor.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":217,"title":"reads a literal %s","start":9267,"end":9967},"implementation_status":"retained"},{"line":243,"title":"judges against the floor the seam declares, not against a number of its own","decision":"keep","reason":"Reads a changed seam floor20 so literal18 fails without copying the floor constant.","explicit_input_controls":[{"control_id":"9:252:inline-api-or-fixture-input:20","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":252,"source":"textInputFontSizeFloor(root)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":252,"end_line":252,"start":10856,"end":10860,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":244,"end_line":250,"start":10524,"end":10809},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Sized.tsx'","value":{"kind":"string","value":"export const Sized = () => "}},{"key":"'src/platform/text-input-font-size.web.ts'","value":{"kind":"call-source","callee":"[\n 'export const TEXT_INPUT_FONT_SIZE_FLOOR = 20',\n 'export const TEXT_INPUT_FONT_SIZE = 20'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'export const TEXT_INPUT_FONT_SIZE_FLOOR = 20',\n 'export const TEXT_INPUT_FONT_SIZE = 20'\n ].join('\\n')"}}]}],"source":"plant({\n 'src/ui/Sized.tsx': 'export const Sized = () => ',\n 'src/platform/text-input-font-size.web.ts': [\n 'export const TEXT_INPUT_FONT_SIZE_FLOOR = 20',\n 'export const TEXT_INPUT_FONT_SIZE = 20'\n ].join('\\n')\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Reads a changed seam floor20 so literal18 fails without copying the floor constant.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Reads a changed seam floor20 so literal18 fails without copying the floor constant.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"9:253:inline-api-or-fixture-input:21","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":253,"source":"textInputFontSizeOffenders(root, { local: ['src/ui/Sized.tsx'] })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":253,"end_line":253,"start":10912,"end":10916,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":244,"end_line":250,"start":10524,"end":10809},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Sized.tsx'","value":{"kind":"string","value":"export const Sized = () => "}},{"key":"'src/platform/text-input-font-size.web.ts'","value":{"kind":"call-source","callee":"[\n 'export const TEXT_INPUT_FONT_SIZE_FLOOR = 20',\n 'export const TEXT_INPUT_FONT_SIZE = 20'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'export const TEXT_INPUT_FONT_SIZE_FLOOR = 20',\n 'export const TEXT_INPUT_FONT_SIZE = 20'\n ].join('\\n')"}}]}],"source":"plant({\n 'src/ui/Sized.tsx': 'export const Sized = () => ',\n 'src/platform/text-input-font-size.web.ts': [\n 'export const TEXT_INPUT_FONT_SIZE_FLOOR = 20',\n 'export const TEXT_INPUT_FONT_SIZE = 20'\n ].join('\\n')\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Reads a changed seam floor20 so literal18 fails without copying the floor constant.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":253,"end_line":253,"start":10918,"end":10949,"source":"{ local: ['src/ui/Sized.tsx'] }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Sized.tsx"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: ['src/ui/Sized.tsx'] }. Reads a changed seam floor20 so literal18 fails without copying the floor constant.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Reads a changed seam floor20 so literal18 fails without copying the floor constant.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":243,"title":"judges against the floor the seam declares, not against a number of its own","start":10417,"end":11079},"implementation_status":"retained"},{"line":261,"title":"refuses to judge a tree whose seam declares no floor, rather than assuming one","decision":"keep","reason":"A missing numeric seam floor must throw rather than silently default.","explicit_input_controls":[{"control_id":"9:268:inline-api-or-fixture-input:22","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":268,"source":"textInputFontSizeOffenders(root, { local: ['src/ui/Sized.tsx'] })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":268,"end_line":268,"start":11538,"end":11542,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":262,"end_line":266,"start":11193,"end":11481},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Sized.tsx'","value":{"kind":"string","value":"export const Sized = () => "}},{"key":"'src/platform/text-input-font-size.ts'","value":{"kind":"string","value":"export const TEXT_INPUT_FONT_SIZE = 14"}},{"key":"'src/platform/text-input-font-size.web.ts'","value":{"kind":"string","value":"export const TEXT_INPUT_FONT_SIZE = 16"}}]}],"source":"plant({\n 'src/ui/Sized.tsx': 'export const Sized = () => ',\n 'src/platform/text-input-font-size.ts': 'export const TEXT_INPUT_FONT_SIZE = 14',\n 'src/platform/text-input-font-size.web.ts': 'export const TEXT_INPUT_FONT_SIZE = 16'\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. A missing numeric seam floor must throw rather than silently default.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":268,"end_line":268,"start":11544,"end":11575,"source":"{ local: ['src/ui/Sized.tsx'] }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Sized.tsx"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: ['src/ui/Sized.tsx'] }. A missing numeric seam floor must throw rather than silently default.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"A missing numeric seam floor must throw rather than silently default.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":261,"title":"refuses to judge a tree whose seam declares no floor, rather than assuming one","start":11083,"end":11704},"implementation_status":"retained"},{"line":276,"title":"names a style shape it cannot follow rather than dropping it","decision":"keep","reason":"An opaque style function remains explicitly unresolved.","explicit_input_controls":[{"control_id":"9:281:inline-api-or-fixture-input:23","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":281,"source":"unresolvedTextInputStyles(root, { local: ['src/ui/Called.tsx'] })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":281,"end_line":281,"start":11955,"end":11959,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":277,"end_line":279,"start":11800,"end":11905},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Called.tsx'","value":{"kind":"string","value":"export const Called = () => "}}]}],"source":"plant({\n 'src/ui/Called.tsx': 'export const Called = () => '\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. An opaque style function remains explicitly unresolved.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":281,"end_line":281,"start":11961,"end":11993,"source":"{ local: ['src/ui/Called.tsx'] }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Called.tsx"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: ['src/ui/Called.tsx'] }. An opaque style function remains explicitly unresolved.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"An opaque style function remains explicitly unresolved.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":276,"title":"names a style shape it cannot follow rather than dropping it","start":11708,"end":12138},"implementation_status":"retained"},{"line":289,"title":"lets a later spread beat a direct key, as the runtime object does","decision":"keep","reason":"The later style spread overrides a directly declared safe key.","explicit_input_controls":[{"control_id":"9:307:inline-api-or-fixture-input:24","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":307,"source":"textInputFontSizeOffenders(root, {\n local: [\n 'src/ui/Order.tsx',\n 'src/ui/order-styles.ts',\n 'src/ui/legacy-styles.ts',\n ...Object.keys(SEAM_SOURCE)\n ]\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":307,"end_line":307,"start":12960,"end":12964,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":292,"end_line":304,"start":12392,"end":12900},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Order.tsx'","value":{"kind":"call-source","callee":"[\n \"import { styles } from './order-styles'\",\n 'export const Order = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './order-styles'\",\n 'export const Order = () => '\n ].join('\\n')"}},{"key":"'src/ui/order-styles.ts'","value":{"kind":"call-source","callee":"[\n SEAM_IMPORT,\n \"import { legacy } from './legacy-styles'\",\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE }, ...legacy }'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n SEAM_IMPORT,\n \"import { legacy } from './legacy-styles'\",\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE }, ...legacy }'\n ].join('\\n')"}},{"key":"'src/ui/legacy-styles.ts'","value":{"kind":"string","value":"export const legacy = { input: { fontSize: 14 } }"}},{"source":"...SEAM_SOURCE"}]}],"source":"plant({\n 'src/ui/Order.tsx': [\n \"import { styles } from './order-styles'\",\n 'export const Order = () => '\n ].join('\\n'),\n 'src/ui/order-styles.ts': [\n SEAM_IMPORT,\n \"import { legacy } from './legacy-styles'\",\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE }, ...legacy }'\n ].join('\\n'),\n 'src/ui/legacy-styles.ts': 'export const legacy = { input: { fontSize: 14 } }',\n ...SEAM_SOURCE\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The later style spread overrides a directly declared safe key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":307,"end_line":314,"start":12966,"end":13157,"source":"{\n local: [\n 'src/ui/Order.tsx',\n 'src/ui/order-styles.ts',\n 'src/ui/legacy-styles.ts',\n ...Object.keys(SEAM_SOURCE)\n ]\n }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Order.tsx"},{"kind":"string","value":"src/ui/order-styles.ts"},{"kind":"string","value":"src/ui/legacy-styles.ts"},{"kind":"source-expression","source":"...Object.keys(SEAM_SOURCE)"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: [ 'src/ui/Order.tsx', 'src/ui/order-styles.ts', 'src/ui/legacy-styles.ts', . The later style spread overrides a directly declared safe key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The later style spread overrides a directly declared safe key.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":289,"title":"lets a later spread beat a direct key, as the runtime object does","start":12142,"end":13285},"implementation_status":"retained"},{"line":321,"title":"reads the seam as a binding, not a spelling: %s","decision":"keep","reason":"A local or foreign binding with the seam name remains an offender; binding origin matters.","explicit_input_controls":[{"control_id":"9:321:parameter-table:25","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":321,"source":"[\n ['a local constant wearing the name', 'const TEXT_INPUT_FONT_SIZE = 14'],\n ['an import of the name from elsewhere', \"import { TEXT_INPUT_FONT_SIZE } from './elsewhere'\"]\n ]","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":322,"end_line":322,"start":13303,"end":13375,"source":"['a local constant wearing the name', 'const TEXT_INPUT_FONT_SIZE = 14']","value":{"kind":"array","value":[{"kind":"string","value":"a local constant wearing the name"},{"kind":"string","value":"const TEXT_INPUT_FONT_SIZE = 14"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['a local constant wearing the name', 'const TEXT_INPUT_FONT_SIZE = 14']. A local or foreign binding with the seam name remains an offender; binding origin matters.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":323,"end_line":323,"start":13381,"end":13475,"source":"['an import of the name from elsewhere', \"import { TEXT_INPUT_FONT_SIZE } from './elsewhere'\"]","value":{"kind":"array","value":[{"kind":"string","value":"an import of the name from elsewhere"},{"kind":"string","value":"import { TEXT_INPUT_FONT_SIZE } from './elsewhere'"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['an import of the name from elsewhere', \"import { TEXT_INPUT_FONT_SIZE } from './elsewhere'\"]. A local or foreign binding with the seam name remains an offender; binding origin matters.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"A local or foreign binding with the seam name remains an offender; binding origin matters.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"9:339:inline-api-or-fixture-input:26","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":339,"source":"textInputFontSizeOffenders(root, {\n local: [\n 'src/ui/Shadow.tsx',\n 'src/ui/shadow-styles.ts',\n 'src/ui/elsewhere.ts',\n ...Object.keys(SEAM_SOURCE)\n ]\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":339,"end_line":339,"start":14064,"end":14068,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":325,"end_line":336,"start":13573,"end":14004},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Shadow.tsx'","value":{"kind":"call-source","callee":"[\n \"import { styles } from './shadow-styles'\",\n 'export const Shadow = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './shadow-styles'\",\n 'export const Shadow = () => '\n ].join('\\n')"}},{"key":"'src/ui/shadow-styles.ts'","value":{"kind":"call-source","callee":"[\n preamble,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n preamble,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n')"}},{"key":"'src/ui/elsewhere.ts'","value":{"kind":"string","value":"export const TEXT_INPUT_FONT_SIZE = 14"}},{"source":"...SEAM_SOURCE"}]}],"source":"plant({\n 'src/ui/Shadow.tsx': [\n \"import { styles } from './shadow-styles'\",\n 'export const Shadow = () => '\n ].join('\\n'),\n 'src/ui/shadow-styles.ts': [\n preamble,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n'),\n 'src/ui/elsewhere.ts': 'export const TEXT_INPUT_FONT_SIZE = 14',\n ...SEAM_SOURCE\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. A local or foreign binding with the seam name remains an offender; binding origin matters.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":339,"end_line":346,"start":14070,"end":14259,"source":"{\n local: [\n 'src/ui/Shadow.tsx',\n 'src/ui/shadow-styles.ts',\n 'src/ui/elsewhere.ts',\n ...Object.keys(SEAM_SOURCE)\n ]\n }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Shadow.tsx"},{"kind":"string","value":"src/ui/shadow-styles.ts"},{"kind":"string","value":"src/ui/elsewhere.ts"},{"kind":"source-expression","source":"...Object.keys(SEAM_SOURCE)"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: [ 'src/ui/Shadow.tsx', 'src/ui/shadow-styles.ts', 'src/ui/elsewhere.ts', . A local or foreign binding with the seam name remains an offender; binding origin matters.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"A local or foreign binding with the seam name remains an offender; binding origin matters.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":321,"title":"reads the seam as a binding, not a spelling: %s","start":13289,"end":14387},"implementation_status":"retained"},{"line":368,"title":"is read through its .web sibling, so a raised web size clears the native one","decision":"keep","reason":"Web-safe styles take precedence over an unsafe native sibling.","explicit_input_controls":[{"control_id":"9:379:fixture-or-oracle-declaration:27","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":379,"source":"{ local: ['src/ui/Field.tsx', 'src/ui/field-styles.web.ts'] }","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":379,"end_line":379,"start":15566,"end":15623,"source":"local: ['src/ui/Field.tsx', 'src/ui/field-styles.web.ts']","value":{"kind":"property","key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.web.ts"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: local: ['src/ui/Field.tsx', 'src/ui/field-styles.web.ts']. Web-safe styles take precedence over an unsafe native sibling.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Web-safe styles take precedence over an unsafe native sibling.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"9:380:inline-api-or-fixture-input:28","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":380,"source":"textInputFontSizeOffenders(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":380,"end_line":380,"start":15666,"end":15670,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":369,"end_line":377,"start":15183,"end":15531},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Field.tsx'","value":{"kind":"reference","source":"FIELD","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":363,"end_line":366,"start":14940,"end":15071},"resolved":{"kind":"call-source","callee":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join('\\n')"}}},{"key":"'src/ui/field-styles.ts'","value":{"kind":"string","value":"export const styles = { input: { fontSize: 12 } }"}},{"key":"'src/ui/field-styles.web.ts'","value":{"kind":"call-source","callee":"[\n SEAM_IMPORT.replace('../platform', '../platform'),\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n SEAM_IMPORT.replace('../platform', '../platform'),\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n')"}},{"source":"...SEAM_SOURCE"}]}],"source":"plant({\n 'src/ui/Field.tsx': FIELD,\n 'src/ui/field-styles.ts': 'export const styles = { input: { fontSize: 12 } }',\n 'src/ui/field-styles.web.ts': [\n SEAM_IMPORT.replace('../platform', '../platform'),\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n'),\n ...SEAM_SOURCE\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Web-safe styles take precedence over an unsafe native sibling.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":380,"end_line":380,"start":15672,"end":15679,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":379,"end_line":379,"start":15564,"end":15625},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.web.ts"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Web-safe styles take precedence over an unsafe native sibling.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Web-safe styles take precedence over an unsafe native sibling.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"9:381:inline-api-or-fixture-input:29","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":381,"source":"unresolvedTextInputStyles(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":381,"end_line":381,"start":15733,"end":15737,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":369,"end_line":377,"start":15183,"end":15531},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Field.tsx'","value":{"kind":"reference","source":"FIELD","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":363,"end_line":366,"start":14940,"end":15071},"resolved":{"kind":"call-source","callee":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join('\\n')"}}},{"key":"'src/ui/field-styles.ts'","value":{"kind":"string","value":"export const styles = { input: { fontSize: 12 } }"}},{"key":"'src/ui/field-styles.web.ts'","value":{"kind":"call-source","callee":"[\n SEAM_IMPORT.replace('../platform', '../platform'),\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n SEAM_IMPORT.replace('../platform', '../platform'),\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n')"}},{"source":"...SEAM_SOURCE"}]}],"source":"plant({\n 'src/ui/Field.tsx': FIELD,\n 'src/ui/field-styles.ts': 'export const styles = { input: { fontSize: 12 } }',\n 'src/ui/field-styles.web.ts': [\n SEAM_IMPORT.replace('../platform', '../platform'),\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n'),\n ...SEAM_SOURCE\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Web-safe styles take precedence over an unsafe native sibling.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":381,"end_line":381,"start":15739,"end":15746,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":379,"end_line":379,"start":15564,"end":15625},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.web.ts"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Web-safe styles take precedence over an unsafe native sibling.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Web-safe styles take precedence over an unsafe native sibling.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":368,"title":"is read through its .web sibling, so a raised web size clears the native one","start":15075,"end":15840},"implementation_status":"retained"},{"line":387,"title":"is reported when the .web half is the one off the seam, native half notwithstanding","decision":"keep","reason":"Unsafe web style cannot hide behind a safe native sibling.","explicit_input_controls":[{"control_id":"9:399:inline-api-or-fixture-input:30","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":399,"source":"textInputFontSizeOffenders(root, {\n local: ['src/ui/Field.tsx', 'src/ui/field-styles.web.ts']\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":399,"end_line":399,"start":16329,"end":16333,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":388,"end_line":396,"start":15959,"end":16269},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Field.tsx'","value":{"kind":"reference","source":"FIELD","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":363,"end_line":366,"start":14940,"end":15071},"resolved":{"kind":"call-source","callee":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join('\\n')"}}},{"key":"'src/ui/field-styles.ts'","value":{"kind":"call-source","callee":"[\n SEAM_IMPORT,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n SEAM_IMPORT,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n')"}},{"key":"'src/ui/field-styles.web.ts'","value":{"kind":"string","value":"export const styles = { input: { fontSize: 12 } }"}},{"source":"...SEAM_SOURCE"}]}],"source":"plant({\n 'src/ui/Field.tsx': FIELD,\n 'src/ui/field-styles.ts': [\n SEAM_IMPORT,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n'),\n 'src/ui/field-styles.web.ts': 'export const styles = { input: { fontSize: 12 } }',\n ...SEAM_SOURCE\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Unsafe web style cannot hide behind a safe native sibling.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":399,"end_line":401,"start":16335,"end":16414,"source":"{\n local: ['src/ui/Field.tsx', 'src/ui/field-styles.web.ts']\n }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.web.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: ['src/ui/Field.tsx', 'src/ui/field-styles.web.ts'] }. Unsafe web style cannot hide behind a safe native sibling.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Unsafe web style cannot hide behind a safe native sibling.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":387,"title":"is reported when the .web half is the one off the seam, native half notwithstanding","start":15844,"end":16545},"implementation_status":"retained"},{"line":413,"title":"still counts the seam as the seam when the seam itself is the split one","decision":"keep","reason":"A web sibling seam binding is accepted by module identity without demanding numeric evaluation.","explicit_input_controls":[{"control_id":"9:424:fixture-or-oracle-declaration:31","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":424,"source":"{ local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts'] }","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":424,"end_line":424,"start":17303,"end":17356,"source":"local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts']","value":{"kind":"property","key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.ts"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts']. A web sibling seam binding is accepted by module identity without demanding numeric evaluation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"A web sibling seam binding is accepted by module identity without demanding numeric evaluation.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"9:425:inline-api-or-fixture-input:32","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":425,"source":"textInputFontSizeOffenders(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":425,"end_line":425,"start":17399,"end":17403,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":414,"end_line":422,"start":16955,"end":17268},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Field.tsx'","value":{"kind":"reference","source":"FIELD","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":363,"end_line":366,"start":14940,"end":15071},"resolved":{"kind":"call-source","callee":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join('\\n')"}}},{"key":"'src/ui/field-styles.ts'","value":{"kind":"call-source","callee":"[\n SEAM_IMPORT,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n SEAM_IMPORT,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n')"}},{"source":"...SEAM_SOURCE"},{"key":"'src/platform/text-input-font-size.web.ts'","value":{"kind":"string","value":"export const TEXT_INPUT_FONT_SIZE = 16"}}]}],"source":"plant({\n 'src/ui/Field.tsx': FIELD,\n 'src/ui/field-styles.ts': [\n SEAM_IMPORT,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n'),\n ...SEAM_SOURCE,\n 'src/platform/text-input-font-size.web.ts': 'export const TEXT_INPUT_FONT_SIZE = 16'\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. A web sibling seam binding is accepted by module identity without demanding numeric evaluation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":425,"end_line":425,"start":17405,"end":17412,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":424,"end_line":424,"start":17301,"end":17358},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.ts"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. A web sibling seam binding is accepted by module identity without demanding numeric evaluation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"A web sibling seam binding is accepted by module identity without demanding numeric evaluation.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"9:426:inline-api-or-fixture-input:33","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":426,"source":"unresolvedTextInputStyles(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":426,"end_line":426,"start":17466,"end":17470,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":414,"end_line":422,"start":16955,"end":17268},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Field.tsx'","value":{"kind":"reference","source":"FIELD","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":363,"end_line":366,"start":14940,"end":15071},"resolved":{"kind":"call-source","callee":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join('\\n')"}}},{"key":"'src/ui/field-styles.ts'","value":{"kind":"call-source","callee":"[\n SEAM_IMPORT,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n SEAM_IMPORT,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n')"}},{"source":"...SEAM_SOURCE"},{"key":"'src/platform/text-input-font-size.web.ts'","value":{"kind":"string","value":"export const TEXT_INPUT_FONT_SIZE = 16"}}]}],"source":"plant({\n 'src/ui/Field.tsx': FIELD,\n 'src/ui/field-styles.ts': [\n SEAM_IMPORT,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n'),\n ...SEAM_SOURCE,\n 'src/platform/text-input-font-size.web.ts': 'export const TEXT_INPUT_FONT_SIZE = 16'\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. A web sibling seam binding is accepted by module identity without demanding numeric evaluation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":426,"end_line":426,"start":17472,"end":17479,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":424,"end_line":424,"start":17301,"end":17358},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.ts"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. A web sibling seam binding is accepted by module identity without demanding numeric evaluation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"A web sibling seam binding is accepted by module identity without demanding numeric evaluation.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":413,"title":"still counts the seam as the seam when the seam itself is the split one","start":16852,"end":17573},"implementation_status":"retained"},{"line":436,"title":"takes every input size through the seam: %s","decision":"keep","reason":"Both actual source-control closures satisfy the text-input offender rule.","explicit_input_controls":[{"control_id":"9:436:parameter-table:34","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":436,"source":"[HUB, REVIEW]","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":436,"end_line":436,"start":17681,"end":17684,"source":"HUB","value":{"kind":"reference","source":"HUB","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":31,"end_line":31,"start":1570,"end":1618},"resolved":{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: HUB. Both actual source-control closures satisfy the text-input offender rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":436,"end_line":436,"start":17686,"end":17692,"source":"REVIEW","value":{"kind":"reference","source":"REVIEW","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":32,"end_line":32,"start":1634,"end":1674},"resolved":{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: REVIEW. Both actual source-control closures satisfy the text-input offender rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Both actual source-control closures satisfy the text-input offender rule.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"9:437:inline-api-or-fixture-input:35","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":437,"source":"mobileWebAppRouteClosure(route)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":437,"end_line":437,"start":17814,"end":17819,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: route. Both actual source-control closures satisfy the text-input offender rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Both actual source-control closures satisfy the text-input offender rule.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"9:438:inline-api-or-fixture-input:36","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":438,"source":"textInputFontSizeOffenders(mobileDir, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":438,"end_line":438,"start":17861,"end":17870,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":28,"end_line":28,"start":1412,"end":1471},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../mobile/', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../mobile/', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. Both actual source-control closures satisfy the text-input offender rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":438,"end_line":438,"start":17872,"end":17879,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":437,"end_line":437,"start":17783,"end":17820},"resolved":{"kind":"source-expression","source":"await mobileWebAppRouteClosure(route)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Both actual source-control closures satisfy the text-input offender rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Both actual source-control closures satisfy the text-input offender rule.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":436,"title":"takes every input size through the seam: %s","start":17672,"end":17900},"implementation_status":"retained"},{"line":441,"title":"reads every input it found, so the list above is complete: %s","decision":"keep","reason":"Both actual source-control closures leave no unresolved input styles.","explicit_input_controls":[{"control_id":"9:441:parameter-table:37","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":441,"source":"[HUB, REVIEW]","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":441,"end_line":441,"start":17915,"end":17918,"source":"HUB","value":{"kind":"reference","source":"HUB","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":31,"end_line":31,"start":1570,"end":1618},"resolved":{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: HUB. Both actual source-control closures leave no unresolved input styles.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":441,"end_line":441,"start":17920,"end":17926,"source":"REVIEW","value":{"kind":"reference","source":"REVIEW","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":32,"end_line":32,"start":1634,"end":1674},"resolved":{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: REVIEW. Both actual source-control closures leave no unresolved input styles.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Both actual source-control closures leave no unresolved input styles.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"9:444:inline-api-or-fixture-input:38","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":444,"source":"mobileWebAppRouteClosure(route)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":444,"end_line":444,"start":18081,"end":18086,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: route. Both actual source-control closures leave no unresolved input styles.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Both actual source-control closures leave no unresolved input styles.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"9:445:inline-api-or-fixture-input:39","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":445,"source":"unresolvedTextInputStyles(mobileDir, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":445,"end_line":445,"start":18129,"end":18138,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":28,"end_line":28,"start":1412,"end":1471},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../mobile/', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../mobile/', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. Both actual source-control closures leave no unresolved input styles.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":445,"end_line":445,"start":18140,"end":18147,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":444,"end_line":444,"start":18050,"end":18087},"resolved":{"kind":"source-expression","source":"await mobileWebAppRouteClosure(route)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Both actual source-control closures leave no unresolved input styles.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Both actual source-control closures leave no unresolved input styles.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":441,"title":"reads every input it found, so the list above is complete: %s","start":17906,"end":18175},"implementation_status":"retained"},{"line":449,"title":"carries the seam, so the rule is not vacuous: %s","decision":"keep","reason":"Both actual closures positively include the shipped web font-size seam.","explicit_input_controls":[{"control_id":"9:449:parameter-table:40","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":449,"source":"[HUB, REVIEW]","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":449,"end_line":449,"start":18190,"end":18193,"source":"HUB","value":{"kind":"reference","source":"HUB","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":31,"end_line":31,"start":1570,"end":1618},"resolved":{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: HUB. Both actual closures positively include the shipped web font-size seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":449,"end_line":449,"start":18195,"end":18201,"source":"REVIEW","value":{"kind":"reference","source":"REVIEW","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":32,"end_line":32,"start":1634,"end":1674},"resolved":{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: REVIEW. Both actual closures positively include the shipped web font-size seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Both actual closures positively include the shipped web font-size seam.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"9:452:inline-api-or-fixture-input:41","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":452,"source":"mobileWebAppRouteClosure(route)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":452,"end_line":452,"start":18519,"end":18524,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: route. Both actual closures positively include the shipped web font-size seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Both actual closures positively include the shipped web font-size seam.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":449,"title":"carries the seam, so the rule is not vacuous: %s","start":18181,"end":18597},"implementation_status":"retained"}],"lines":458,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Retain independent AST/style-resolution regressions and both actual source-control closure controls.","production_evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/platform-seams/mobile-web-app-text-input-font-size-seam.mjs"],"planned_changes":[],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"9:35:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":35,"end_line":37,"start":1775,"end":1875,"source":"{\n 'src/platform/text-input-font-size.ts': 'export const TEXT_INPUT_FONT_SIZE = 14'\n}","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":35,"end_line":37,"start":1789,"end":1875},"binding":"SEAM_SOURCE","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain independent AST/style-resolution regressions and both actual source-control closure controls.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":36,"end_line":36,"start":1793,"end":1873,"source":"'src/platform/text-input-font-size.ts': 'export const TEXT_INPUT_FONT_SIZE = 14'","value":{"kind":"property","key":"src/platform/text-input-font-size.ts","value":{"kind":"string","value":"export const TEXT_INPUT_FONT_SIZE = 14"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/platform/text-input-font-size.ts': 'export const TEXT_INPUT_FONT_SIZE = 14'. Retain independent AST/style-resolution regressions and both actual source-control closure controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:46:fixture-or-oracle-declaration:2","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":46,"end_line":51,"start":2252,"end":2430,"source":"{\n 'src/platform/text-input-font-size.web.ts': [\n 'export const TEXT_INPUT_FONT_SIZE_FLOOR = 16',\n 'export const TEXT_INPUT_FONT_SIZE = 16'\n ].join('\\n')\n}","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":46,"end_line":51,"start":2267,"end":2430},"binding":"FLOOR_SOURCE","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain independent AST/style-resolution regressions and both actual source-control closure controls.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":47,"end_line":50,"start":2271,"end":2428,"source":"'src/platform/text-input-font-size.web.ts': [\n 'export const TEXT_INPUT_FONT_SIZE_FLOOR = 16',\n 'export const TEXT_INPUT_FONT_SIZE = 16'\n ].join('\\n')","value":{"kind":"property","key":"src/platform/text-input-font-size.web.ts","value":{"kind":"call-source","callee":"[\n 'export const TEXT_INPUT_FONT_SIZE_FLOOR = 16',\n 'export const TEXT_INPUT_FONT_SIZE = 16'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'export const TEXT_INPUT_FONT_SIZE_FLOOR = 16',\n 'export const TEXT_INPUT_FONT_SIZE = 16'\n ].join('\\n')"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'src/platform/text-input-font-size.web.ts': [ 'export const TEXT_INPUT_FONT_SIZE_FLOOR = 16', 'export const TEXT_INPUT_FONT_SIZE = 1. Retain independent AST/style-resolution regressions and both actual source-control closure controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:57:for-of:3","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":57,"end_line":60,"start":2719,"end":2929,"source":"Object.entries({ ...FLOOR_SOURCE, ...files })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":57,"end_line":57,"start":2748,"end":2793},"binding":"const [path, source]","resolution":[],"transform":"Object.entries: original object properties preserved; values decode keys/initializers, not transformed runtime tuples","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain independent AST/style-resolution regressions and both actual source-control closure controls.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":57,"end_line":57,"start":2765,"end":2780,"source":"...FLOOR_SOURCE","value":{"kind":"source-expression","source":"...FLOOR_SOURCE"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ...FLOOR_SOURCE. Retain independent AST/style-resolution regressions and both actual source-control closure controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":57,"end_line":57,"start":2782,"end":2790,"source":"...files","value":{"kind":"source-expression","source":"...files"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ...files. Retain independent AST/style-resolution regressions and both actual source-control closure controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:80:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":80,"end_line":80,"start":3525,"end":3616,"source":"textInputFontSizeOffenders(root, { local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts'] })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":80,"end_line":80,"start":3525,"end":3616},"binding":"textInputFontSizeOffenders","resolution":[],"enclosing_case":{"line":65,"title":"names the line the size is set on, which may not be the file the input is in"},"affected_case_lines":[],"decision":"keep","reason":"Independent external stylesheet fixture expects exact offender location.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":80,"end_line":80,"start":3552,"end":3556,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":66,"end_line":77,"start":3132,"end":3492},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Field.tsx'","value":{"kind":"call-source","callee":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join('\\n')"}},{"key":"'src/ui/field-styles.ts'","value":{"kind":"call-source","callee":"[\n 'export const styles = {',\n ' label: { fontSize: 12 },',\n ' input: { fontSize: 14 }',\n '}'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'export const styles = {',\n ' label: { fontSize: 12 },',\n ' input: { fontSize: 14 }',\n '}'\n ].join('\\n')"}}]}],"source":"plant({\n 'src/ui/Field.tsx': [\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join('\\n'),\n 'src/ui/field-styles.ts': [\n 'export const styles = {',\n ' label: { fontSize: 12 },',\n ' input: { fontSize: 14 }',\n '}'\n ].join('\\n')\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Independent external stylesheet fixture expects exact offender location.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":80,"end_line":80,"start":3558,"end":3615,"source":"{ local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts'] }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts'] }. Independent external stylesheet fixture expects exact offender location.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:103:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":103,"end_line":105,"start":4495,"end":4629,"source":"textInputFontSizeOffenders(root, {\n local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts', 'src/ui/list-styles.ts']\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":103,"end_line":105,"start":4495,"end":4629},"binding":"textInputFontSizeOffenders","resolution":[],"enclosing_case":{"line":87,"title":"follows a spread into the module that really holds the key"},"affected_case_lines":[],"decision":"keep","reason":"Follows a spread to the real imported style key rather than silently missing its font size.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":103,"end_line":103,"start":4522,"end":4526,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":90,"end_line":100,"start":4032,"end":4462},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Field.tsx'","value":{"kind":"call-source","callee":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join('\\n')"}},{"key":"'src/ui/field-styles.ts'","value":{"kind":"call-source","callee":"[\n \"import { listStyles } from './list-styles'\",\n 'export const styles = { ...listStyles }'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { listStyles } from './list-styles'\",\n 'export const styles = { ...listStyles }'\n ].join('\\n')"}},{"key":"'src/ui/list-styles.ts'","value":{"kind":"string","value":"export const listStyles = { input: { fontSize: 14 } }"}}]}],"source":"plant({\n 'src/ui/Field.tsx': [\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join('\\n'),\n 'src/ui/field-styles.ts': [\n \"import { listStyles } from './list-styles'\",\n 'export const styles = { ...listStyles }'\n ].join('\\n'),\n 'src/ui/list-styles.ts': 'export const listStyles = { input: { fontSize: 14 } }'\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Follows a spread to the real imported style key rather than silently missing its font size.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":103,"end_line":105,"start":4528,"end":4628,"source":"{\n local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts', 'src/ui/list-styles.ts']\n }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.ts"},{"kind":"string","value":"src/ui/list-styles.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts', 'src/ui/list-styles.ts'] }. Follows a spread to the real imported style key rather than silently missing its font size.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:125:fixture-or-oracle-declaration:6","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":125,"end_line":125,"start":5443,"end":5510,"source":"{ local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts'] }","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":125,"end_line":125,"start":5453,"end":5510},"binding":"closure","resolution":[],"enclosing_case":{"line":112,"title":"separates a style it could not follow from one that sets no size"},"affected_case_lines":[],"decision":"keep","reason":"Distinguishes unresolved style imports from resolved styles with no explicit size.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":125,"end_line":125,"start":5455,"end":5508,"source":"local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts']","value":{"kind":"property","key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.ts"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts']. Distinguishes unresolved style imports from resolved styles with no explicit size.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:126:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":126,"end_line":126,"start":5524,"end":5565,"source":"textInputFontSizeOffenders(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":126,"end_line":126,"start":5524,"end":5565},"binding":"textInputFontSizeOffenders","resolution":[],"enclosing_case":{"line":112,"title":"separates a style it could not follow from one that sets no size"},"affected_case_lines":[],"decision":"keep","reason":"Distinguishes unresolved style imports from resolved styles with no explicit size.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":126,"end_line":126,"start":5551,"end":5555,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":115,"end_line":123,"start":5033,"end":5420},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Field.tsx'","value":{"kind":"call-source","callee":"[\n \"import { styles } from './field-styles'\",\n \"import { missing } from 'some-package'\",\n 'export const Bare = () => ',\n 'export const Gone = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './field-styles'\",\n \"import { missing } from 'some-package'\",\n 'export const Bare = () => ',\n 'export const Gone = () => '\n ].join('\\n')"}},{"key":"'src/ui/field-styles.ts'","value":{"kind":"string","value":"export const styles = { bare: { padding: 8 } }"}}]}],"source":"plant({\n 'src/ui/Field.tsx': [\n \"import { styles } from './field-styles'\",\n \"import { missing } from 'some-package'\",\n 'export const Bare = () => ',\n 'export const Gone = () => '\n ].join('\\n'),\n 'src/ui/field-styles.ts': 'export const styles = { bare: { padding: 8 } }'\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Distinguishes unresolved style imports from resolved styles with no explicit size.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":126,"end_line":126,"start":5557,"end":5564,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":125,"end_line":125,"start":5453,"end":5510},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.ts"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Distinguishes unresolved style imports from resolved styles with no explicit size.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:127:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":127,"end_line":127,"start":5592,"end":5632,"source":"unresolvedTextInputStyles(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":127,"end_line":127,"start":5592,"end":5632},"binding":"unresolvedTextInputStyles","resolution":[],"enclosing_case":{"line":112,"title":"separates a style it could not follow from one that sets no size"},"affected_case_lines":[],"decision":"keep","reason":"Distinguishes unresolved style imports from resolved styles with no explicit size.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":127,"end_line":127,"start":5618,"end":5622,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":115,"end_line":123,"start":5033,"end":5420},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Field.tsx'","value":{"kind":"call-source","callee":"[\n \"import { styles } from './field-styles'\",\n \"import { missing } from 'some-package'\",\n 'export const Bare = () => ',\n 'export const Gone = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './field-styles'\",\n \"import { missing } from 'some-package'\",\n 'export const Bare = () => ',\n 'export const Gone = () => '\n ].join('\\n')"}},{"key":"'src/ui/field-styles.ts'","value":{"kind":"string","value":"export const styles = { bare: { padding: 8 } }"}}]}],"source":"plant({\n 'src/ui/Field.tsx': [\n \"import { styles } from './field-styles'\",\n \"import { missing } from 'some-package'\",\n 'export const Bare = () => ',\n 'export const Gone = () => '\n ].join('\\n'),\n 'src/ui/field-styles.ts': 'export const styles = { bare: { padding: 8 } }'\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Distinguishes unresolved style imports from resolved styles with no explicit size.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":127,"end_line":127,"start":5624,"end":5631,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":125,"end_line":125,"start":5453,"end":5510},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.ts"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Distinguishes unresolved style imports from resolved styles with no explicit size.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:154:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":154,"end_line":154,"start":6668,"end":6759,"source":"textInputFontSizeOffenders(root, { local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts'] })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":154,"end_line":154,"start":6668,"end":6759},"binding":"textInputFontSizeOffenders","resolution":[],"enclosing_case":{"line":133,"title":"takes the seam as the answer, and an absent size as nothing to answer for"},"affected_case_lines":[],"decision":"keep","reason":"Accepts the real seam binding while retaining absence-of-font-size behavior.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":154,"end_line":154,"start":6695,"end":6699,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":135,"end_line":151,"start":5953,"end":6635},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Field.tsx'","value":{"kind":"call-source","callee":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => ',\n 'export const Other = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => ',\n 'export const Other = () => '\n ].join('\\n')"}},{"key":"'src/ui/field-styles.ts'","value":{"kind":"call-source","callee":"[\n SEAM_IMPORT,\n 'export const styles = {',\n ' input: { fontSize: TEXT_INPUT_FONT_SIZE },',\n ' bare: { padding: 8 }',\n '}'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n SEAM_IMPORT,\n 'export const styles = {',\n ' input: { fontSize: TEXT_INPUT_FONT_SIZE },',\n ' bare: { padding: 8 }',\n '}'\n ].join('\\n')"}},{"source":"...SEAM_SOURCE"}]}],"source":"plant({\n 'src/ui/Field.tsx': [\n \"import { styles } from './field-styles'\",\n 'export const Field = () => ',\n 'export const Other = () => '\n ].join('\\n'),\n // Imported, not merely spelled: the rule reads the binding now, so a fixture that wrote the\n // name without importing it from the seam would be an offender like any other shadow.\n 'src/ui/field-styles.ts': [\n SEAM_IMPORT,\n 'export const styles = {',\n ' input: { fontSize: TEXT_INPUT_FONT_SIZE },',\n ' bare: { padding: 8 }',\n '}'\n ].join('\\n'),\n ...SEAM_SOURCE\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Accepts the real seam binding while retaining absence-of-font-size behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":154,"end_line":154,"start":6701,"end":6758,"source":"{ local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts'] }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts'] }. Accepts the real seam binding while retaining absence-of-font-size behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:171:fixture-or-oracle-declaration:10","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":171,"end_line":171,"start":7357,"end":7399,"source":"{ local: ['src/ui/Inline.tsx'] }","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":171,"end_line":171,"start":7367,"end":7399},"binding":"closure","resolution":[],"enclosing_case":{"line":161,"title":"reads an inline style literal in place rather than losing it"},"affected_case_lines":[],"decision":"keep","reason":"Separates a literal14 offender from a padding-only inherited style.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":171,"end_line":171,"start":7369,"end":7397,"source":"local: ['src/ui/Inline.tsx']","value":{"kind":"property","key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Inline.tsx"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: local: ['src/ui/Inline.tsx']. Separates a literal14 offender from a padding-only inherited style.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:172:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":172,"end_line":172,"start":7413,"end":7454,"source":"textInputFontSizeOffenders(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":172,"end_line":172,"start":7413,"end":7454},"binding":"textInputFontSizeOffenders","resolution":[],"enclosing_case":{"line":161,"title":"reads an inline style literal in place rather than losing it"},"affected_case_lines":[],"decision":"keep","reason":"Separates a literal14 offender from a padding-only inherited style.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":172,"end_line":172,"start":7440,"end":7444,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":164,"end_line":169,"start":7122,"end":7334},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Inline.tsx'","value":{"kind":"call-source","callee":"[\n 'export const Sized = () => ',\n 'export const Bare = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'export const Sized = () => ',\n 'export const Bare = () => '\n ].join('\\n')"}}]}],"source":"plant({\n 'src/ui/Inline.tsx': [\n 'export const Sized = () => ',\n 'export const Bare = () => '\n ].join('\\n')\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Separates a literal14 offender from a padding-only inherited style.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":172,"end_line":172,"start":7446,"end":7453,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":171,"end_line":171,"start":7367,"end":7399},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Inline.tsx"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Separates a literal14 offender from a padding-only inherited style.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:173:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":173,"end_line":173,"start":7502,"end":7542,"source":"unresolvedTextInputStyles(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":173,"end_line":173,"start":7502,"end":7542},"binding":"unresolvedTextInputStyles","resolution":[],"enclosing_case":{"line":161,"title":"reads an inline style literal in place rather than losing it"},"affected_case_lines":[],"decision":"keep","reason":"Separates a literal14 offender from a padding-only inherited style.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":173,"end_line":173,"start":7528,"end":7532,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":164,"end_line":169,"start":7122,"end":7334},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Inline.tsx'","value":{"kind":"call-source","callee":"[\n 'export const Sized = () => ',\n 'export const Bare = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'export const Sized = () => ',\n 'export const Bare = () => '\n ].join('\\n')"}}]}],"source":"plant({\n 'src/ui/Inline.tsx': [\n 'export const Sized = () => ',\n 'export const Bare = () => '\n ].join('\\n')\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Separates a literal14 offender from a padding-only inherited style.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":173,"end_line":173,"start":7534,"end":7541,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":171,"end_line":171,"start":7367,"end":7399},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Inline.tsx"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Separates a literal14 offender from a padding-only inherited style.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:199:fixture-or-oracle-declaration:13","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":199,"end_line":201,"start":8466,"end":8576,"source":"{\n local: ['src/ui/Mixed.tsx', 'src/ui/mixed-styles.ts', ...Object.keys(SEAM_SOURCE)]\n }","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":199,"end_line":201,"start":8476,"end":8576},"binding":"closure","resolution":[],"enclosing_case":{"line":179,"title":"reads an inline literal beside a style key, and the condition between them"},"affected_case_lines":[],"decision":"keep","reason":"Flattens arrays and conditional inline styles and independently expects the reachable unsafe literals.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":200,"end_line":200,"start":8486,"end":8568,"source":"local: ['src/ui/Mixed.tsx', 'src/ui/mixed-styles.ts', ...Object.keys(SEAM_SOURCE)]","value":{"kind":"property","key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Mixed.tsx"},{"kind":"string","value":"src/ui/mixed-styles.ts"},{"kind":"source-expression","source":"...Object.keys(SEAM_SOURCE)"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: local: ['src/ui/Mixed.tsx', 'src/ui/mixed-styles.ts', ...Object.keys(SEAM_SOURCE)]. Flattens arrays and conditional inline styles and independently expects the reachable unsafe literals.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:202:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":202,"end_line":202,"start":8590,"end":8631,"source":"textInputFontSizeOffenders(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":202,"end_line":202,"start":8590,"end":8631},"binding":"textInputFontSizeOffenders","resolution":[],"enclosing_case":{"line":179,"title":"reads an inline literal beside a style key, and the condition between them"},"affected_case_lines":[],"decision":"keep","reason":"Flattens arrays and conditional inline styles and independently expects the reachable unsafe literals.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":202,"end_line":202,"start":8617,"end":8621,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":182,"end_line":197,"start":7942,"end":8443},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Mixed.tsx'","value":{"kind":"call-source","callee":"[\n \"import { styles } from './mixed-styles'\",\n 'export const Mixed = () => (',\n ' ',\n ')'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './mixed-styles'\",\n 'export const Mixed = () => (',\n ' ',\n ')'\n ].join('\\n')"}},{"key":"'src/ui/mixed-styles.ts'","value":{"kind":"call-source","callee":"[\n SEAM_IMPORT,\n 'export const styles = {',\n ' input: { fontSize: TEXT_INPUT_FONT_SIZE },',\n ' disabled: { opacity: 0.5 }',\n '}'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n SEAM_IMPORT,\n 'export const styles = {',\n ' input: { fontSize: TEXT_INPUT_FONT_SIZE },',\n ' disabled: { opacity: 0.5 }',\n '}'\n ].join('\\n')"}},{"source":"...SEAM_SOURCE"}]}],"source":"plant({\n 'src/ui/Mixed.tsx': [\n \"import { styles } from './mixed-styles'\",\n 'export const Mixed = () => (',\n ' ',\n ')'\n ].join('\\n'),\n 'src/ui/mixed-styles.ts': [\n SEAM_IMPORT,\n 'export const styles = {',\n ' input: { fontSize: TEXT_INPUT_FONT_SIZE },',\n ' disabled: { opacity: 0.5 }',\n '}'\n ].join('\\n'),\n ...SEAM_SOURCE\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Flattens arrays and conditional inline styles and independently expects the reachable unsafe literals.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":202,"end_line":202,"start":8623,"end":8630,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":199,"end_line":201,"start":8476,"end":8576},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Mixed.tsx"},{"kind":"string","value":"src/ui/mixed-styles.ts"},{"kind":"source-expression","source":"...Object.keys(SEAM_SOURCE)"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Flattens arrays and conditional inline styles and independently expects the reachable unsafe literals.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:203:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":203,"end_line":203,"start":8678,"end":8718,"source":"unresolvedTextInputStyles(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":203,"end_line":203,"start":8678,"end":8718},"binding":"unresolvedTextInputStyles","resolution":[],"enclosing_case":{"line":179,"title":"reads an inline literal beside a style key, and the condition between them"},"affected_case_lines":[],"decision":"keep","reason":"Flattens arrays and conditional inline styles and independently expects the reachable unsafe literals.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":203,"end_line":203,"start":8704,"end":8708,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":182,"end_line":197,"start":7942,"end":8443},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Mixed.tsx'","value":{"kind":"call-source","callee":"[\n \"import { styles } from './mixed-styles'\",\n 'export const Mixed = () => (',\n ' ',\n ')'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './mixed-styles'\",\n 'export const Mixed = () => (',\n ' ',\n ')'\n ].join('\\n')"}},{"key":"'src/ui/mixed-styles.ts'","value":{"kind":"call-source","callee":"[\n SEAM_IMPORT,\n 'export const styles = {',\n ' input: { fontSize: TEXT_INPUT_FONT_SIZE },',\n ' disabled: { opacity: 0.5 }',\n '}'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n SEAM_IMPORT,\n 'export const styles = {',\n ' input: { fontSize: TEXT_INPUT_FONT_SIZE },',\n ' disabled: { opacity: 0.5 }',\n '}'\n ].join('\\n')"}},{"source":"...SEAM_SOURCE"}]}],"source":"plant({\n 'src/ui/Mixed.tsx': [\n \"import { styles } from './mixed-styles'\",\n 'export const Mixed = () => (',\n ' ',\n ')'\n ].join('\\n'),\n 'src/ui/mixed-styles.ts': [\n SEAM_IMPORT,\n 'export const styles = {',\n ' input: { fontSize: TEXT_INPUT_FONT_SIZE },',\n ' disabled: { opacity: 0.5 }',\n '}'\n ].join('\\n'),\n ...SEAM_SOURCE\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Flattens arrays and conditional inline styles and independently expects the reachable unsafe literals.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":203,"end_line":203,"start":8710,"end":8717,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":199,"end_line":201,"start":8476,"end":8576},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Mixed.tsx"},{"kind":"string","value":"src/ui/mixed-styles.ts"},{"kind":"source-expression","source":"...Object.keys(SEAM_SOURCE)"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Flattens arrays and conditional inline styles and independently expects the reachable unsafe literals.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:217:parameter-table:16","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":217,"end_line":233,"start":9267,"end":9967,"source":"[\n ['under the floor, which is the offence the seam exists for', 15, ['src/ui/Sized.tsx:1']],\n ['exactly the floor', 16, []],\n ['well above the floor, which no binding could keep', 22, []]\n ]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":217,"end_line":221,"start":9275,"end":9476},"binding":"it.each","resolution":[],"enclosing_case":{"line":217,"title":"reads a literal %s"},"affected_case_lines":[217],"decision":"keep","reason":"Literal15 fails while16 and22 satisfy the declared seam floor.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":218,"end_line":218,"start":9281,"end":9370,"source":"['under the floor, which is the offence the seam exists for', 15, ['src/ui/Sized.tsx:1']]","value":{"kind":"array","value":[{"kind":"string","value":"under the floor, which is the offence the seam exists for"},{"kind":"number","value":15},{"kind":"array","value":[{"kind":"string","value":"src/ui/Sized.tsx:1"}]}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['under the floor, which is the offence the seam exists for', 15, ['src/ui/Sized.tsx:1']]. Literal15 fails while16 and22 satisfy the declared seam floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":219,"end_line":219,"start":9376,"end":9405,"source":"['exactly the floor', 16, []]","value":{"kind":"array","value":[{"kind":"string","value":"exactly the floor"},{"kind":"number","value":16},{"kind":"array","value":[]}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['exactly the floor', 16, []]. Literal15 fails while16 and22 satisfy the declared seam floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":220,"end_line":220,"start":9411,"end":9472,"source":"['well above the floor, which no binding could keep', 22, []]","value":{"kind":"array","value":[{"kind":"string","value":"well above the floor, which no binding could keep"},{"kind":"number","value":22},{"kind":"array","value":[]}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['well above the floor, which no binding could keep', 22, []]. Literal15 fails while16 and22 satisfy the declared seam floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:227:fixture-or-oracle-declaration:17","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":227,"end_line":227,"start":9705,"end":9746,"source":"{ local: ['src/ui/Sized.tsx'] }","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":227,"end_line":227,"start":9715,"end":9746},"binding":"closure","resolution":[],"enclosing_case":{"line":217,"title":"reads a literal %s"},"affected_case_lines":[],"decision":"keep","reason":"Literal15 fails while16 and22 satisfy the declared seam floor.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":227,"end_line":227,"start":9717,"end":9744,"source":"local: ['src/ui/Sized.tsx']","value":{"kind":"property","key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Sized.tsx"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: local: ['src/ui/Sized.tsx']. Literal15 fails while16 and22 satisfy the declared seam floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:228:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":228,"end_line":228,"start":9760,"end":9801,"source":"textInputFontSizeOffenders(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":228,"end_line":228,"start":9760,"end":9801},"binding":"textInputFontSizeOffenders","resolution":[],"enclosing_case":{"line":217,"title":"reads a literal %s"},"affected_case_lines":[],"decision":"keep","reason":"Literal15 fails while16 and22 satisfy the declared seam floor.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":228,"end_line":228,"start":9787,"end":9791,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":222,"end_line":225,"start":9547,"end":9682},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Sized.tsx'","value":{"kind":"source-expression","source":"`export const Sized = () => `"}},{"source":"...SEAM_SOURCE"}]}],"source":"plant({\n 'src/ui/Sized.tsx': `export const Sized = () => `,\n ...SEAM_SOURCE\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Literal15 fails while16 and22 satisfy the declared seam floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":228,"end_line":228,"start":9793,"end":9800,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":227,"end_line":227,"start":9715,"end":9746},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Sized.tsx"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Literal15 fails while16 and22 satisfy the declared seam floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:229:inline-api-or-fixture-input:19","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":229,"end_line":229,"start":9834,"end":9874,"source":"unresolvedTextInputStyles(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":229,"end_line":229,"start":9834,"end":9874},"binding":"unresolvedTextInputStyles","resolution":[],"enclosing_case":{"line":217,"title":"reads a literal %s"},"affected_case_lines":[],"decision":"keep","reason":"Literal15 fails while16 and22 satisfy the declared seam floor.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":229,"end_line":229,"start":9860,"end":9864,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":222,"end_line":225,"start":9547,"end":9682},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Sized.tsx'","value":{"kind":"source-expression","source":"`export const Sized = () => `"}},{"source":"...SEAM_SOURCE"}]}],"source":"plant({\n 'src/ui/Sized.tsx': `export const Sized = () => `,\n ...SEAM_SOURCE\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Literal15 fails while16 and22 satisfy the declared seam floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":229,"end_line":229,"start":9866,"end":9873,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":227,"end_line":227,"start":9715,"end":9746},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Sized.tsx"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Literal15 fails while16 and22 satisfy the declared seam floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:252:inline-api-or-fixture-input:20","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":252,"end_line":252,"start":10833,"end":10861,"source":"textInputFontSizeFloor(root)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":252,"end_line":252,"start":10833,"end":10861},"binding":"textInputFontSizeFloor","resolution":[],"enclosing_case":{"line":243,"title":"judges against the floor the seam declares, not against a number of its own"},"affected_case_lines":[],"decision":"keep","reason":"Reads a changed seam floor20 so literal18 fails without copying the floor constant.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":252,"end_line":252,"start":10856,"end":10860,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":244,"end_line":250,"start":10524,"end":10809},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Sized.tsx'","value":{"kind":"string","value":"export const Sized = () => "}},{"key":"'src/platform/text-input-font-size.web.ts'","value":{"kind":"call-source","callee":"[\n 'export const TEXT_INPUT_FONT_SIZE_FLOOR = 20',\n 'export const TEXT_INPUT_FONT_SIZE = 20'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'export const TEXT_INPUT_FONT_SIZE_FLOOR = 20',\n 'export const TEXT_INPUT_FONT_SIZE = 20'\n ].join('\\n')"}}]}],"source":"plant({\n 'src/ui/Sized.tsx': 'export const Sized = () => ',\n 'src/platform/text-input-font-size.web.ts': [\n 'export const TEXT_INPUT_FONT_SIZE_FLOOR = 20',\n 'export const TEXT_INPUT_FONT_SIZE = 20'\n ].join('\\n')\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Reads a changed seam floor20 so literal18 fails without copying the floor constant.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:253:inline-api-or-fixture-input:21","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":253,"end_line":253,"start":10885,"end":10950,"source":"textInputFontSizeOffenders(root, { local: ['src/ui/Sized.tsx'] })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":253,"end_line":253,"start":10885,"end":10950},"binding":"textInputFontSizeOffenders","resolution":[],"enclosing_case":{"line":243,"title":"judges against the floor the seam declares, not against a number of its own"},"affected_case_lines":[],"decision":"keep","reason":"Reads a changed seam floor20 so literal18 fails without copying the floor constant.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":253,"end_line":253,"start":10912,"end":10916,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":244,"end_line":250,"start":10524,"end":10809},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Sized.tsx'","value":{"kind":"string","value":"export const Sized = () => "}},{"key":"'src/platform/text-input-font-size.web.ts'","value":{"kind":"call-source","callee":"[\n 'export const TEXT_INPUT_FONT_SIZE_FLOOR = 20',\n 'export const TEXT_INPUT_FONT_SIZE = 20'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'export const TEXT_INPUT_FONT_SIZE_FLOOR = 20',\n 'export const TEXT_INPUT_FONT_SIZE = 20'\n ].join('\\n')"}}]}],"source":"plant({\n 'src/ui/Sized.tsx': 'export const Sized = () => ',\n 'src/platform/text-input-font-size.web.ts': [\n 'export const TEXT_INPUT_FONT_SIZE_FLOOR = 20',\n 'export const TEXT_INPUT_FONT_SIZE = 20'\n ].join('\\n')\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Reads a changed seam floor20 so literal18 fails without copying the floor constant.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":253,"end_line":253,"start":10918,"end":10949,"source":"{ local: ['src/ui/Sized.tsx'] }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Sized.tsx"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: ['src/ui/Sized.tsx'] }. Reads a changed seam floor20 so literal18 fails without copying the floor constant.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:268:inline-api-or-fixture-input:22","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":268,"end_line":268,"start":11511,"end":11576,"source":"textInputFontSizeOffenders(root, { local: ['src/ui/Sized.tsx'] })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":268,"end_line":268,"start":11511,"end":11576},"binding":"textInputFontSizeOffenders","resolution":[],"enclosing_case":{"line":261,"title":"refuses to judge a tree whose seam declares no floor, rather than assuming one"},"affected_case_lines":[],"decision":"keep","reason":"A missing numeric seam floor must throw rather than silently default.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":268,"end_line":268,"start":11538,"end":11542,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":262,"end_line":266,"start":11193,"end":11481},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Sized.tsx'","value":{"kind":"string","value":"export const Sized = () => "}},{"key":"'src/platform/text-input-font-size.ts'","value":{"kind":"string","value":"export const TEXT_INPUT_FONT_SIZE = 14"}},{"key":"'src/platform/text-input-font-size.web.ts'","value":{"kind":"string","value":"export const TEXT_INPUT_FONT_SIZE = 16"}}]}],"source":"plant({\n 'src/ui/Sized.tsx': 'export const Sized = () => ',\n 'src/platform/text-input-font-size.ts': 'export const TEXT_INPUT_FONT_SIZE = 14',\n 'src/platform/text-input-font-size.web.ts': 'export const TEXT_INPUT_FONT_SIZE = 16'\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. A missing numeric seam floor must throw rather than silently default.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":268,"end_line":268,"start":11544,"end":11575,"source":"{ local: ['src/ui/Sized.tsx'] }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Sized.tsx"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: ['src/ui/Sized.tsx'] }. A missing numeric seam floor must throw rather than silently default.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:281:inline-api-or-fixture-input:23","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":281,"end_line":281,"start":11929,"end":11994,"source":"unresolvedTextInputStyles(root, { local: ['src/ui/Called.tsx'] })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":281,"end_line":281,"start":11929,"end":11994},"binding":"unresolvedTextInputStyles","resolution":[],"enclosing_case":{"line":276,"title":"names a style shape it cannot follow rather than dropping it"},"affected_case_lines":[],"decision":"keep","reason":"An opaque style function remains explicitly unresolved.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":281,"end_line":281,"start":11955,"end":11959,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":277,"end_line":279,"start":11800,"end":11905},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Called.tsx'","value":{"kind":"string","value":"export const Called = () => "}}]}],"source":"plant({\n 'src/ui/Called.tsx': 'export const Called = () => '\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. An opaque style function remains explicitly unresolved.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":281,"end_line":281,"start":11961,"end":11993,"source":"{ local: ['src/ui/Called.tsx'] }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Called.tsx"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: ['src/ui/Called.tsx'] }. An opaque style function remains explicitly unresolved.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:307:inline-api-or-fixture-input:24","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":307,"end_line":314,"start":12933,"end":13158,"source":"textInputFontSizeOffenders(root, {\n local: [\n 'src/ui/Order.tsx',\n 'src/ui/order-styles.ts',\n 'src/ui/legacy-styles.ts',\n ...Object.keys(SEAM_SOURCE)\n ]\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":307,"end_line":314,"start":12933,"end":13158},"binding":"textInputFontSizeOffenders","resolution":[],"enclosing_case":{"line":289,"title":"lets a later spread beat a direct key, as the runtime object does"},"affected_case_lines":[],"decision":"keep","reason":"The later style spread overrides a directly declared safe key.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":307,"end_line":307,"start":12960,"end":12964,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":292,"end_line":304,"start":12392,"end":12900},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Order.tsx'","value":{"kind":"call-source","callee":"[\n \"import { styles } from './order-styles'\",\n 'export const Order = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './order-styles'\",\n 'export const Order = () => '\n ].join('\\n')"}},{"key":"'src/ui/order-styles.ts'","value":{"kind":"call-source","callee":"[\n SEAM_IMPORT,\n \"import { legacy } from './legacy-styles'\",\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE }, ...legacy }'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n SEAM_IMPORT,\n \"import { legacy } from './legacy-styles'\",\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE }, ...legacy }'\n ].join('\\n')"}},{"key":"'src/ui/legacy-styles.ts'","value":{"kind":"string","value":"export const legacy = { input: { fontSize: 14 } }"}},{"source":"...SEAM_SOURCE"}]}],"source":"plant({\n 'src/ui/Order.tsx': [\n \"import { styles } from './order-styles'\",\n 'export const Order = () => '\n ].join('\\n'),\n 'src/ui/order-styles.ts': [\n SEAM_IMPORT,\n \"import { legacy } from './legacy-styles'\",\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE }, ...legacy }'\n ].join('\\n'),\n 'src/ui/legacy-styles.ts': 'export const legacy = { input: { fontSize: 14 } }',\n ...SEAM_SOURCE\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The later style spread overrides a directly declared safe key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":307,"end_line":314,"start":12966,"end":13157,"source":"{\n local: [\n 'src/ui/Order.tsx',\n 'src/ui/order-styles.ts',\n 'src/ui/legacy-styles.ts',\n ...Object.keys(SEAM_SOURCE)\n ]\n }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Order.tsx"},{"kind":"string","value":"src/ui/order-styles.ts"},{"kind":"string","value":"src/ui/legacy-styles.ts"},{"kind":"source-expression","source":"...Object.keys(SEAM_SOURCE)"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: [ 'src/ui/Order.tsx', 'src/ui/order-styles.ts', 'src/ui/legacy-styles.ts', . The later style spread overrides a directly declared safe key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:321:parameter-table:25","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":321,"end_line":351,"start":13289,"end":14387,"source":"[\n ['a local constant wearing the name', 'const TEXT_INPUT_FONT_SIZE = 14'],\n ['an import of the name from elsewhere', \"import { TEXT_INPUT_FONT_SIZE } from './elsewhere'\"]\n ]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":321,"end_line":324,"start":13297,"end":13479},"binding":"it.each","resolution":[],"enclosing_case":{"line":321,"title":"reads the seam as a binding, not a spelling: %s"},"affected_case_lines":[321],"decision":"keep","reason":"A local or foreign binding with the seam name remains an offender; binding origin matters.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":322,"end_line":322,"start":13303,"end":13375,"source":"['a local constant wearing the name', 'const TEXT_INPUT_FONT_SIZE = 14']","value":{"kind":"array","value":[{"kind":"string","value":"a local constant wearing the name"},{"kind":"string","value":"const TEXT_INPUT_FONT_SIZE = 14"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['a local constant wearing the name', 'const TEXT_INPUT_FONT_SIZE = 14']. A local or foreign binding with the seam name remains an offender; binding origin matters.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":323,"end_line":323,"start":13381,"end":13475,"source":"['an import of the name from elsewhere', \"import { TEXT_INPUT_FONT_SIZE } from './elsewhere'\"]","value":{"kind":"array","value":[{"kind":"string","value":"an import of the name from elsewhere"},{"kind":"string","value":"import { TEXT_INPUT_FONT_SIZE } from './elsewhere'"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['an import of the name from elsewhere', \"import { TEXT_INPUT_FONT_SIZE } from './elsewhere'\"]. A local or foreign binding with the seam name remains an offender; binding origin matters.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:339:inline-api-or-fixture-input:26","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":339,"end_line":346,"start":14037,"end":14260,"source":"textInputFontSizeOffenders(root, {\n local: [\n 'src/ui/Shadow.tsx',\n 'src/ui/shadow-styles.ts',\n 'src/ui/elsewhere.ts',\n ...Object.keys(SEAM_SOURCE)\n ]\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":339,"end_line":346,"start":14037,"end":14260},"binding":"textInputFontSizeOffenders","resolution":[],"enclosing_case":{"line":321,"title":"reads the seam as a binding, not a spelling: %s"},"affected_case_lines":[],"decision":"keep","reason":"A local or foreign binding with the seam name remains an offender; binding origin matters.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":339,"end_line":339,"start":14064,"end":14068,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":325,"end_line":336,"start":13573,"end":14004},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Shadow.tsx'","value":{"kind":"call-source","callee":"[\n \"import { styles } from './shadow-styles'\",\n 'export const Shadow = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './shadow-styles'\",\n 'export const Shadow = () => '\n ].join('\\n')"}},{"key":"'src/ui/shadow-styles.ts'","value":{"kind":"call-source","callee":"[\n preamble,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n preamble,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n')"}},{"key":"'src/ui/elsewhere.ts'","value":{"kind":"string","value":"export const TEXT_INPUT_FONT_SIZE = 14"}},{"source":"...SEAM_SOURCE"}]}],"source":"plant({\n 'src/ui/Shadow.tsx': [\n \"import { styles } from './shadow-styles'\",\n 'export const Shadow = () => '\n ].join('\\n'),\n 'src/ui/shadow-styles.ts': [\n preamble,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n'),\n 'src/ui/elsewhere.ts': 'export const TEXT_INPUT_FONT_SIZE = 14',\n ...SEAM_SOURCE\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. A local or foreign binding with the seam name remains an offender; binding origin matters.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":339,"end_line":346,"start":14070,"end":14259,"source":"{\n local: [\n 'src/ui/Shadow.tsx',\n 'src/ui/shadow-styles.ts',\n 'src/ui/elsewhere.ts',\n ...Object.keys(SEAM_SOURCE)\n ]\n }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Shadow.tsx"},{"kind":"string","value":"src/ui/shadow-styles.ts"},{"kind":"string","value":"src/ui/elsewhere.ts"},{"kind":"source-expression","source":"...Object.keys(SEAM_SOURCE)"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: [ 'src/ui/Shadow.tsx', 'src/ui/shadow-styles.ts', 'src/ui/elsewhere.ts', . A local or foreign binding with the seam name remains an offender; binding origin matters.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:379:fixture-or-oracle-declaration:27","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":379,"end_line":379,"start":15554,"end":15625,"source":"{ local: ['src/ui/Field.tsx', 'src/ui/field-styles.web.ts'] }","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":379,"end_line":379,"start":15564,"end":15625},"binding":"closure","resolution":[],"enclosing_case":{"line":368,"title":"is read through its .web sibling, so a raised web size clears the native one"},"affected_case_lines":[],"decision":"keep","reason":"Web-safe styles take precedence over an unsafe native sibling.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":379,"end_line":379,"start":15566,"end":15623,"source":"local: ['src/ui/Field.tsx', 'src/ui/field-styles.web.ts']","value":{"kind":"property","key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.web.ts"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: local: ['src/ui/Field.tsx', 'src/ui/field-styles.web.ts']. Web-safe styles take precedence over an unsafe native sibling.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:380:inline-api-or-fixture-input:28","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":380,"end_line":380,"start":15639,"end":15680,"source":"textInputFontSizeOffenders(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":380,"end_line":380,"start":15639,"end":15680},"binding":"textInputFontSizeOffenders","resolution":[],"enclosing_case":{"line":368,"title":"is read through its .web sibling, so a raised web size clears the native one"},"affected_case_lines":[],"decision":"keep","reason":"Web-safe styles take precedence over an unsafe native sibling.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":380,"end_line":380,"start":15666,"end":15670,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":369,"end_line":377,"start":15183,"end":15531},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Field.tsx'","value":{"kind":"reference","source":"FIELD","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":363,"end_line":366,"start":14940,"end":15071},"resolved":{"kind":"call-source","callee":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join('\\n')"}}},{"key":"'src/ui/field-styles.ts'","value":{"kind":"string","value":"export const styles = { input: { fontSize: 12 } }"}},{"key":"'src/ui/field-styles.web.ts'","value":{"kind":"call-source","callee":"[\n SEAM_IMPORT.replace('../platform', '../platform'),\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n SEAM_IMPORT.replace('../platform', '../platform'),\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n')"}},{"source":"...SEAM_SOURCE"}]}],"source":"plant({\n 'src/ui/Field.tsx': FIELD,\n 'src/ui/field-styles.ts': 'export const styles = { input: { fontSize: 12 } }',\n 'src/ui/field-styles.web.ts': [\n SEAM_IMPORT.replace('../platform', '../platform'),\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n'),\n ...SEAM_SOURCE\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Web-safe styles take precedence over an unsafe native sibling.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":380,"end_line":380,"start":15672,"end":15679,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":379,"end_line":379,"start":15564,"end":15625},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.web.ts"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Web-safe styles take precedence over an unsafe native sibling.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:381:inline-api-or-fixture-input:29","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":381,"end_line":381,"start":15707,"end":15747,"source":"unresolvedTextInputStyles(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":381,"end_line":381,"start":15707,"end":15747},"binding":"unresolvedTextInputStyles","resolution":[],"enclosing_case":{"line":368,"title":"is read through its .web sibling, so a raised web size clears the native one"},"affected_case_lines":[],"decision":"keep","reason":"Web-safe styles take precedence over an unsafe native sibling.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":381,"end_line":381,"start":15733,"end":15737,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":369,"end_line":377,"start":15183,"end":15531},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Field.tsx'","value":{"kind":"reference","source":"FIELD","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":363,"end_line":366,"start":14940,"end":15071},"resolved":{"kind":"call-source","callee":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join('\\n')"}}},{"key":"'src/ui/field-styles.ts'","value":{"kind":"string","value":"export const styles = { input: { fontSize: 12 } }"}},{"key":"'src/ui/field-styles.web.ts'","value":{"kind":"call-source","callee":"[\n SEAM_IMPORT.replace('../platform', '../platform'),\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n SEAM_IMPORT.replace('../platform', '../platform'),\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n')"}},{"source":"...SEAM_SOURCE"}]}],"source":"plant({\n 'src/ui/Field.tsx': FIELD,\n 'src/ui/field-styles.ts': 'export const styles = { input: { fontSize: 12 } }',\n 'src/ui/field-styles.web.ts': [\n SEAM_IMPORT.replace('../platform', '../platform'),\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n'),\n ...SEAM_SOURCE\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Web-safe styles take precedence over an unsafe native sibling.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":381,"end_line":381,"start":15739,"end":15746,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":379,"end_line":379,"start":15564,"end":15625},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.web.ts"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Web-safe styles take precedence over an unsafe native sibling.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:399:inline-api-or-fixture-input:30","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":399,"end_line":401,"start":16302,"end":16415,"source":"textInputFontSizeOffenders(root, {\n local: ['src/ui/Field.tsx', 'src/ui/field-styles.web.ts']\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":399,"end_line":401,"start":16302,"end":16415},"binding":"textInputFontSizeOffenders","resolution":[],"enclosing_case":{"line":387,"title":"is reported when the .web half is the one off the seam, native half notwithstanding"},"affected_case_lines":[],"decision":"keep","reason":"Unsafe web style cannot hide behind a safe native sibling.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":399,"end_line":399,"start":16329,"end":16333,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":388,"end_line":396,"start":15959,"end":16269},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Field.tsx'","value":{"kind":"reference","source":"FIELD","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":363,"end_line":366,"start":14940,"end":15071},"resolved":{"kind":"call-source","callee":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join('\\n')"}}},{"key":"'src/ui/field-styles.ts'","value":{"kind":"call-source","callee":"[\n SEAM_IMPORT,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n SEAM_IMPORT,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n')"}},{"key":"'src/ui/field-styles.web.ts'","value":{"kind":"string","value":"export const styles = { input: { fontSize: 12 } }"}},{"source":"...SEAM_SOURCE"}]}],"source":"plant({\n 'src/ui/Field.tsx': FIELD,\n 'src/ui/field-styles.ts': [\n SEAM_IMPORT,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n'),\n 'src/ui/field-styles.web.ts': 'export const styles = { input: { fontSize: 12 } }',\n ...SEAM_SOURCE\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. Unsafe web style cannot hide behind a safe native sibling.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":399,"end_line":401,"start":16335,"end":16414,"source":"{\n local: ['src/ui/Field.tsx', 'src/ui/field-styles.web.ts']\n }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.web.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: ['src/ui/Field.tsx', 'src/ui/field-styles.web.ts'] }. Unsafe web style cannot hide behind a safe native sibling.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:424:fixture-or-oracle-declaration:31","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":424,"end_line":424,"start":17291,"end":17358,"source":"{ local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts'] }","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":424,"end_line":424,"start":17301,"end":17358},"binding":"closure","resolution":[],"enclosing_case":{"line":413,"title":"still counts the seam as the seam when the seam itself is the split one"},"affected_case_lines":[],"decision":"keep","reason":"A web sibling seam binding is accepted by module identity without demanding numeric evaluation.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":424,"end_line":424,"start":17303,"end":17356,"source":"local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts']","value":{"kind":"property","key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.ts"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: local: ['src/ui/Field.tsx', 'src/ui/field-styles.ts']. A web sibling seam binding is accepted by module identity without demanding numeric evaluation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:425:inline-api-or-fixture-input:32","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":425,"end_line":425,"start":17372,"end":17413,"source":"textInputFontSizeOffenders(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":425,"end_line":425,"start":17372,"end":17413},"binding":"textInputFontSizeOffenders","resolution":[],"enclosing_case":{"line":413,"title":"still counts the seam as the seam when the seam itself is the split one"},"affected_case_lines":[],"decision":"keep","reason":"A web sibling seam binding is accepted by module identity without demanding numeric evaluation.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":425,"end_line":425,"start":17399,"end":17403,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":414,"end_line":422,"start":16955,"end":17268},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Field.tsx'","value":{"kind":"reference","source":"FIELD","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":363,"end_line":366,"start":14940,"end":15071},"resolved":{"kind":"call-source","callee":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join('\\n')"}}},{"key":"'src/ui/field-styles.ts'","value":{"kind":"call-source","callee":"[\n SEAM_IMPORT,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n SEAM_IMPORT,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n')"}},{"source":"...SEAM_SOURCE"},{"key":"'src/platform/text-input-font-size.web.ts'","value":{"kind":"string","value":"export const TEXT_INPUT_FONT_SIZE = 16"}}]}],"source":"plant({\n 'src/ui/Field.tsx': FIELD,\n 'src/ui/field-styles.ts': [\n SEAM_IMPORT,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n'),\n ...SEAM_SOURCE,\n 'src/platform/text-input-font-size.web.ts': 'export const TEXT_INPUT_FONT_SIZE = 16'\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. A web sibling seam binding is accepted by module identity without demanding numeric evaluation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":425,"end_line":425,"start":17405,"end":17412,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":424,"end_line":424,"start":17301,"end":17358},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.ts"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. A web sibling seam binding is accepted by module identity without demanding numeric evaluation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:426:inline-api-or-fixture-input:33","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":426,"end_line":426,"start":17440,"end":17480,"source":"unresolvedTextInputStyles(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":426,"end_line":426,"start":17440,"end":17480},"binding":"unresolvedTextInputStyles","resolution":[],"enclosing_case":{"line":413,"title":"still counts the seam as the seam when the seam itself is the split one"},"affected_case_lines":[],"decision":"keep","reason":"A web sibling seam binding is accepted by module identity without demanding numeric evaluation.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":426,"end_line":426,"start":17466,"end":17470,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":414,"end_line":422,"start":16955,"end":17268},"resolved":{"kind":"call-source","callee":"plant","arguments":[{"kind":"object","value":[{"key":"'src/ui/Field.tsx'","value":{"kind":"reference","source":"FIELD","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":363,"end_line":366,"start":14940,"end":15071},"resolved":{"kind":"call-source","callee":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { styles } from './field-styles'\",\n 'export const Field = () => '\n ].join('\\n')"}}},{"key":"'src/ui/field-styles.ts'","value":{"kind":"call-source","callee":"[\n SEAM_IMPORT,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n SEAM_IMPORT,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n')"}},{"source":"...SEAM_SOURCE"},{"key":"'src/platform/text-input-font-size.web.ts'","value":{"kind":"string","value":"export const TEXT_INPUT_FONT_SIZE = 16"}}]}],"source":"plant({\n 'src/ui/Field.tsx': FIELD,\n 'src/ui/field-styles.ts': [\n SEAM_IMPORT,\n 'export const styles = { input: { fontSize: TEXT_INPUT_FONT_SIZE } }'\n ].join('\\n'),\n ...SEAM_SOURCE,\n 'src/platform/text-input-font-size.web.ts': 'export const TEXT_INPUT_FONT_SIZE = 16'\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. A web sibling seam binding is accepted by module identity without demanding numeric evaluation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":426,"end_line":426,"start":17472,"end":17479,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":424,"end_line":424,"start":17301,"end":17358},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/ui/Field.tsx"},{"kind":"string","value":"src/ui/field-styles.ts"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. A web sibling seam binding is accepted by module identity without demanding numeric evaluation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:436:parameter-table:34","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":436,"end_line":439,"start":17672,"end":17900,"source":"[HUB, REVIEW]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":436,"end_line":436,"start":17680,"end":17693},"binding":"it.each","resolution":[],"enclosing_case":{"line":436,"title":"takes every input size through the seam: %s"},"affected_case_lines":[436],"decision":"keep","reason":"Both actual source-control closures satisfy the text-input offender rule.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":436,"end_line":436,"start":17681,"end":17684,"source":"HUB","value":{"kind":"reference","source":"HUB","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":31,"end_line":31,"start":1570,"end":1618},"resolved":{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: HUB. Both actual source-control closures satisfy the text-input offender rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":436,"end_line":436,"start":17686,"end":17692,"source":"REVIEW","value":{"kind":"reference","source":"REVIEW","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":32,"end_line":32,"start":1634,"end":1674},"resolved":{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: REVIEW. Both actual source-control closures satisfy the text-input offender rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:437:inline-api-or-fixture-input:35","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":437,"end_line":437,"start":17789,"end":17820,"source":"mobileWebAppRouteClosure(route)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":437,"end_line":437,"start":17789,"end":17820},"binding":"mobileWebAppRouteClosure","resolution":[],"enclosing_case":{"line":436,"title":"takes every input size through the seam: %s"},"affected_case_lines":[],"decision":"keep","reason":"Both actual source-control closures satisfy the text-input offender rule.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":437,"end_line":437,"start":17814,"end":17819,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: route. Both actual source-control closures satisfy the text-input offender rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:438:inline-api-or-fixture-input:36","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":438,"end_line":438,"start":17834,"end":17880,"source":"textInputFontSizeOffenders(mobileDir, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":438,"end_line":438,"start":17834,"end":17880},"binding":"textInputFontSizeOffenders","resolution":[],"enclosing_case":{"line":436,"title":"takes every input size through the seam: %s"},"affected_case_lines":[],"decision":"keep","reason":"Both actual source-control closures satisfy the text-input offender rule.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":438,"end_line":438,"start":17861,"end":17870,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":28,"end_line":28,"start":1412,"end":1471},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../mobile/', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../mobile/', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. Both actual source-control closures satisfy the text-input offender rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":438,"end_line":438,"start":17872,"end":17879,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":437,"end_line":437,"start":17783,"end":17820},"resolved":{"kind":"source-expression","source":"await mobileWebAppRouteClosure(route)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Both actual source-control closures satisfy the text-input offender rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:441:parameter-table:37","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":441,"end_line":447,"start":17906,"end":18175,"source":"[HUB, REVIEW]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":441,"end_line":441,"start":17914,"end":17927},"binding":"it.each","resolution":[],"enclosing_case":{"line":441,"title":"reads every input it found, so the list above is complete: %s"},"affected_case_lines":[441],"decision":"keep","reason":"Both actual source-control closures leave no unresolved input styles.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":441,"end_line":441,"start":17915,"end":17918,"source":"HUB","value":{"kind":"reference","source":"HUB","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":31,"end_line":31,"start":1570,"end":1618},"resolved":{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: HUB. Both actual source-control closures leave no unresolved input styles.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":441,"end_line":441,"start":17920,"end":17926,"source":"REVIEW","value":{"kind":"reference","source":"REVIEW","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":32,"end_line":32,"start":1634,"end":1674},"resolved":{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: REVIEW. Both actual source-control closures leave no unresolved input styles.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:444:inline-api-or-fixture-input:38","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":444,"end_line":444,"start":18056,"end":18087,"source":"mobileWebAppRouteClosure(route)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":444,"end_line":444,"start":18056,"end":18087},"binding":"mobileWebAppRouteClosure","resolution":[],"enclosing_case":{"line":441,"title":"reads every input it found, so the list above is complete: %s"},"affected_case_lines":[],"decision":"keep","reason":"Both actual source-control closures leave no unresolved input styles.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":444,"end_line":444,"start":18081,"end":18086,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: route. Both actual source-control closures leave no unresolved input styles.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:445:inline-api-or-fixture-input:39","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":445,"end_line":445,"start":18103,"end":18148,"source":"unresolvedTextInputStyles(mobileDir, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":445,"end_line":445,"start":18103,"end":18148},"binding":"unresolvedTextInputStyles","resolution":[],"enclosing_case":{"line":441,"title":"reads every input it found, so the list above is complete: %s"},"affected_case_lines":[],"decision":"keep","reason":"Both actual source-control closures leave no unresolved input styles.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":445,"end_line":445,"start":18129,"end":18138,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":28,"end_line":28,"start":1412,"end":1471},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../mobile/', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../mobile/', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. Both actual source-control closures leave no unresolved input styles.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":445,"end_line":445,"start":18140,"end":18147,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":444,"end_line":444,"start":18050,"end":18087},"resolved":{"kind":"source-expression","source":"await mobileWebAppRouteClosure(route)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Both actual source-control closures leave no unresolved input styles.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:449:parameter-table:40","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":449,"end_line":454,"start":18181,"end":18597,"source":"[HUB, REVIEW]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":449,"end_line":449,"start":18189,"end":18202},"binding":"it.each","resolution":[],"enclosing_case":{"line":449,"title":"carries the seam, so the rule is not vacuous: %s"},"affected_case_lines":[449],"decision":"keep","reason":"Both actual closures positively include the shipped web font-size seam.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":449,"end_line":449,"start":18190,"end":18193,"source":"HUB","value":{"kind":"reference","source":"HUB","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":31,"end_line":31,"start":1570,"end":1618},"resolved":{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: HUB. Both actual closures positively include the shipped web font-size seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":449,"end_line":449,"start":18195,"end":18201,"source":"REVIEW","value":{"kind":"reference","source":"REVIEW","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":32,"end_line":32,"start":1634,"end":1674},"resolved":{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: REVIEW. Both actual closures positively include the shipped web font-size seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}},{"id":"9:452:inline-api-or-fixture-input:41","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":452,"end_line":452,"start":18494,"end":18525,"source":"mobileWebAppRouteClosure(route)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":452,"end_line":452,"start":18494,"end":18525},"binding":"mobileWebAppRouteClosure","resolution":[],"enclosing_case":{"line":449,"title":"carries the seam, so the rule is not vacuous: %s"},"affected_case_lines":[],"decision":"keep","reason":"Both actual closures positively include the shipped web font-size seam.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","line":452,"end_line":452,"start":18519,"end":18524,"source":"route","value":{"kind":"source-expression","source":"route"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: route. Both actual closures positively include the shipped web font-size seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06"}}],"original_review_sha256":"13aa0fa7540bc6bfab438f65a0c1a6089ece8ece50d9782a57b9426844daba1a","reviewer":"audit_config","reviewed_sha256":"c00bf1a73efa99622719037329e6d82d733c3890158ddccb621dadc0b8f94f06","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","final_declarations":18,"current_controls":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","each":[{"input":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","start":9275,"end":9476,"line":217,"end_line":221,"source":"[\n ['under the floor, which is the offence the seam exists for', 15, ['src/ui/Sized.tsx:1']],\n ['exactly the floor', 16, []],\n ['well above the floor, which no binding could keep', 22, []]\n ]"},"rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","start":9281,"end":9370,"line":218,"end_line":218,"source":"['under the floor, which is the offence the seam exists for', 15, ['src/ui/Sized.tsx:1']]"},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","start":9376,"end":9405,"line":219,"end_line":219,"source":"['exactly the floor', 16, []]"},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","start":9411,"end":9472,"line":220,"end_line":220,"source":"['well above the floor, which no binding could keep', 22, []]"}]},{"input":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","start":13297,"end":13479,"line":321,"end_line":324,"source":"[\n ['a local constant wearing the name', 'const TEXT_INPUT_FONT_SIZE = 14'],\n ['an import of the name from elsewhere', \"import { TEXT_INPUT_FONT_SIZE } from './elsewhere'\"]\n ]"},"rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","start":13303,"end":13375,"line":322,"end_line":322,"source":"['a local constant wearing the name', 'const TEXT_INPUT_FONT_SIZE = 14']"},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","start":13381,"end":13475,"line":323,"end_line":323,"source":"['an import of the name from elsewhere', \"import { TEXT_INPUT_FONT_SIZE } from './elsewhere'\"]"}]},{"input":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","start":17680,"end":17693,"line":436,"end_line":436,"source":"[HUB, REVIEW]"},"rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","start":17681,"end":17684,"line":436,"end_line":436,"source":"HUB"},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","start":17686,"end":17692,"line":436,"end_line":436,"source":"REVIEW"}]},{"input":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","start":17914,"end":17927,"line":441,"end_line":441,"source":"[HUB, REVIEW]"},"rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","start":17915,"end":17918,"line":441,"end_line":441,"source":"HUB"},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","start":17920,"end":17926,"line":441,"end_line":441,"source":"REVIEW"}]},{"input":{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","start":18189,"end":18202,"line":449,"end_line":449,"source":"[HUB, REVIEW]"},"rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","start":18190,"end":18193,"line":449,"end_line":449,"source":"HUB"},{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","start":18195,"end":18201,"line":449,"end_line":449,"source":"REVIEW"}]}],"for_of":[{"path":"config/scripts/mobile-web-app/mobile-web-app-source-control-text-inputs.test.mjs","start":2748,"end":2793,"line":57,"end_line":57,"source":"Object.entries({ ...FLOOR_SOURCE, ...files })","binding":"const [path, source]","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/platform-seams/mobile-web-app-text-input-font-size-seam.mjs"],"runtime_validation":[]}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":10,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79","cases":[{"line":259,"title":"slides the session in from the right on push, over the list","decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: slides the session in from the right on push, over the list.","explicit_input_controls":[{"control_id":"10:256:for-of:14","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":256,"source":"ENGINES","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":40,"end_line":46,"start":1688,"end":1909,"source":"{\n name: 'chromium',\n launch: () => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }\n }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"chromium"}},{"key":"launch","value":{"kind":"source-expression","source":"() => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'chromium', launch: () => { const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER return chromium.la. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":47,"end_line":47,"start":1913,"end":1980,"source":"{ name: 'webkit', launch: () => webkit.launch({ headless: true }) }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"webkit"}},{"key":"launch","value":{"kind":"source-expression","source":"() => webkit.launch({ headless: true })"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'webkit', launch: () => webkit.launch({ headless: true }) }. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: slides the session in from the right on push, over the list.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":259,"title":"slides the session in from the right on push, over the list","start":10284,"end":11123},"implementation_status":"retained"},{"line":273,"title":"slides the session out to the right on Back, revealing the list","decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: slides the session out to the right on Back, revealing the list.","explicit_input_controls":[{"control_id":"10:256:for-of:14","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":256,"source":"ENGINES","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":40,"end_line":46,"start":1688,"end":1909,"source":"{\n name: 'chromium',\n launch: () => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }\n }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"chromium"}},{"key":"launch","value":{"kind":"source-expression","source":"() => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'chromium', launch: () => { const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER return chromium.la. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":47,"end_line":47,"start":1913,"end":1980,"source":"{ name: 'webkit', launch: () => webkit.launch({ headless: true }) }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"webkit"}},{"key":"launch","value":{"kind":"source-expression","source":"() => webkit.launch({ headless: true })"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'webkit', launch: () => webkit.launch({ headless: true }) }. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: slides the session out to the right on Back, revealing the list.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":273,"title":"slides the session out to the right on Back, revealing the list","start":11131,"end":11873},"implementation_status":"retained"},{"line":287,"title":"pops with the slide on the device Back key and drops the popped screen","decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: pops with the slide on the device Back key and drops the popped screen.","explicit_input_controls":[{"control_id":"10:256:for-of:14","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":256,"source":"ENGINES","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":40,"end_line":46,"start":1688,"end":1909,"source":"{\n name: 'chromium',\n launch: () => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }\n }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"chromium"}},{"key":"launch","value":{"kind":"source-expression","source":"() => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'chromium', launch: () => { const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER return chromium.la. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":47,"end_line":47,"start":1913,"end":1980,"source":"{ name: 'webkit', launch: () => webkit.launch({ headless: true }) }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"webkit"}},{"key":"launch","value":{"kind":"source-expression","source":"() => webkit.launch({ headless: true })"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'webkit', launch: () => webkit.launch({ headless: true }) }. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: pops with the slide on the device Back key and drops the popped screen.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":287,"title":"pops with the slide on the device Back key and drops the popped screen","start":11881,"end":12485},"implementation_status":"retained"},{"line":300,"title":"leaves no slot behind when a push interrupts a pop","decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: leaves no slot behind when a push interrupts a pop.","explicit_input_controls":[{"control_id":"10:256:for-of:14","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":256,"source":"ENGINES","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":40,"end_line":46,"start":1688,"end":1909,"source":"{\n name: 'chromium',\n launch: () => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }\n }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"chromium"}},{"key":"launch","value":{"kind":"source-expression","source":"() => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'chromium', launch: () => { const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER return chromium.la. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":47,"end_line":47,"start":1913,"end":1980,"source":"{ name: 'webkit', launch: () => webkit.launch({ headless: true }) }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"webkit"}},{"key":"launch","value":{"kind":"source-expression","source":"() => webkit.launch({ headless: true })"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'webkit', launch: () => webkit.launch({ headless: true }) }. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: leaves no slot behind when a push interrupts a pop.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"10:313:browser-event-input:16","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":313,"source":"page.evaluate(\n () => document.querySelectorAll('[data-testid=\"stack-probe-session\"]').length\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":314,"end_line":314,"start":13104,"end":13181,"source":"() => document.querySelectorAll('[data-testid=\"stack-probe-session\"]').length","value":{"kind":"source-expression","source":"() => document.querySelectorAll('[data-testid=\"stack-probe-session\"]').length"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => document.querySelectorAll('[data-testid=\"stack-probe-session\"]').length. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: leaves no slot behind when a push interrupts a pop.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: leaves no slot behind when a push interrupts a pop.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":300,"title":"leaves no slot behind when a push interrupts a pop","start":12493,"end":13291},"implementation_status":"retained"},{"line":321,"title":"settles on the list when Back interrupts an unfinished push","decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: settles on the list when Back interrupts an unfinished push.","explicit_input_controls":[{"control_id":"10:256:for-of:14","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":256,"source":"ENGINES","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":40,"end_line":46,"start":1688,"end":1909,"source":"{\n name: 'chromium',\n launch: () => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }\n }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"chromium"}},{"key":"launch","value":{"kind":"source-expression","source":"() => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'chromium', launch: () => { const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER return chromium.la. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":47,"end_line":47,"start":1913,"end":1980,"source":"{ name: 'webkit', launch: () => webkit.launch({ headless: true }) }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"webkit"}},{"key":"launch","value":{"kind":"source-expression","source":"() => webkit.launch({ headless: true })"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'webkit', launch: () => webkit.launch({ headless: true }) }. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: settles on the list when Back interrupts an unfinished push.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":321,"title":"settles on the list when Back interrupts an unfinished push","start":13299,"end":14693},"implementation_status":"retained"},{"line":350,"title":"slides a screen out from rest after a push that once interrupted its entry","decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: slides a screen out from rest after a push that once interrupted its entry.","explicit_input_controls":[{"control_id":"10:256:for-of:14","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":256,"source":"ENGINES","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":40,"end_line":46,"start":1688,"end":1909,"source":"{\n name: 'chromium',\n launch: () => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }\n }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"chromium"}},{"key":"launch","value":{"kind":"source-expression","source":"() => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'chromium', launch: () => { const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER return chromium.la. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":47,"end_line":47,"start":1913,"end":1980,"source":"{ name: 'webkit', launch: () => webkit.launch({ headless: true }) }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"webkit"}},{"key":"launch","value":{"kind":"source-expression","source":"() => webkit.launch({ headless: true })"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'webkit', launch: () => webkit.launch({ headless: true }) }. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: slides a screen out from rest after a push that once interrupted its entry.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":350,"title":"slides a screen out from rest after a push that once interrupted its entry","start":14701,"end":15503},"implementation_status":"retained"},{"line":365,"title":"swaps instantly in the tablet split view and under reduced motion","decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: swaps instantly in the tablet split view and under reduced motion.","explicit_input_controls":[{"control_id":"10:256:for-of:14","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":256,"source":"ENGINES","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":40,"end_line":46,"start":1688,"end":1909,"source":"{\n name: 'chromium',\n launch: () => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }\n }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"chromium"}},{"key":"launch","value":{"kind":"source-expression","source":"() => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'chromium', launch: () => { const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER return chromium.la. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":47,"end_line":47,"start":1913,"end":1980,"source":"{ name: 'webkit', launch: () => webkit.launch({ headless: true }) }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"webkit"}},{"key":"launch","value":{"kind":"source-expression","source":"() => webkit.launch({ headless: true })"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'webkit', launch: () => webkit.launch({ headless: true }) }. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: swaps instantly in the tablet split view and under reduced motion.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"10:366:for-of:17","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":366,"source":"[{ animation: 'none' }, { reducedMotion: 'reduce' }]","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":366,"end_line":366,"start":15628,"end":15649,"source":"{ animation: 'none' }","value":{"kind":"object","value":[{"key":"animation","value":{"kind":"string","value":"none"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { animation: 'none' }. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: swaps instantly in the tablet split view and under reduced motion.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":366,"end_line":366,"start":15651,"end":15678,"source":"{ reducedMotion: 'reduce' }","value":{"kind":"object","value":[{"key":"reducedMotion","value":{"kind":"string","value":"reduce"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { reducedMotion: 'reduce' }. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: swaps instantly in the tablet split view and under reduced motion.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: swaps instantly in the tablet split view and under reduced motion.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"10:367:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":367,"source":"open(options)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":367,"end_line":367,"start":15729,"end":15736,"source":"options","value":{"kind":"source-expression","source":"options"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: options. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: swaps instantly in the tablet split view and under reduced motion.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: swaps instantly in the tablet split view and under reduced motion.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":365,"title":"swaps instantly in the tablet split view and under reduced motion","start":15511,"end":16216},"implementation_status":"retained"}],"lines":381,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","planned_changes":[],"production_evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/mobile-web-app-route-manifest.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-render-harness.mjs","mobile/src/navigation/host-stack.web.tsx"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"10:31:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":31,"end_line":31,"start":1373,"end":1411,"source":"{ width: 390, height: 844 }","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":31,"end_line":31,"start":1384,"end":1411},"binding":"VIEWPORT","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":31,"end_line":31,"start":1386,"end":1396,"source":"width: 390","value":{"kind":"property","key":"width","value":{"kind":"number","value":390}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: width: 390. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":31,"end_line":31,"start":1398,"end":1409,"source":"height: 844","value":{"kind":"property","key":"height","value":{"kind":"number","value":844}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: height: 844. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79"}},{"id":"10:39:fixture-or-oracle-declaration:2","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":39,"end_line":48,"start":1674,"end":1982,"source":"[\n {\n name: 'chromium',\n launch: () => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }\n },\n { name: 'webkit', launch: () => webkit.launch({ headless: true }) }\n]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":39,"end_line":48,"start":1684,"end":1982},"binding":"ENGINES","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":40,"end_line":46,"start":1688,"end":1909,"source":"{\n name: 'chromium',\n launch: () => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }\n }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"chromium"}},{"key":"launch","value":{"kind":"source-expression","source":"() => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { name: 'chromium', launch: () => { const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER return chromium.la. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":47,"end_line":47,"start":1913,"end":1980,"source":"{ name: 'webkit', launch: () => webkit.launch({ headless: true }) }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"webkit"}},{"key":"launch","value":{"kind":"source-expression","source":"() => webkit.launch({ headless: true })"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { name: 'webkit', launch: () => webkit.launch({ headless: true }) }. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79"}},{"id":"10:117:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":117,"end_line":124,"start":4652,"end":4945,"source":"buildMobileWebAppBundle({\n appDir: join(scratch, 'app'),\n outDir: join(scratch, 'bundle'),\n pageRoutes: [\n { pathname: `/${MOBILE_WEB_APP_ROUTE_ROOT}/[hostId]`, grants: [] },\n { pathname: `/${MOBILE_WEB_APP_ROUTE_ROOT}/[hostId]/session/[worktreeId]`, grants: [] }\n ]\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":117,"end_line":124,"start":4652,"end":4945},"binding":"buildMobileWebAppBundle","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":117,"end_line":124,"start":4676,"end":4944,"source":"{\n appDir: join(scratch, 'app'),\n outDir: join(scratch, 'bundle'),\n pageRoutes: [\n { pathname: `/${MOBILE_WEB_APP_ROUTE_ROOT}/[hostId]`, grants: [] },\n { pathname: `/${MOBILE_WEB_APP_ROUTE_ROOT}/[hostId]/session/[worktreeId]`, grants: [] }\n ]\n }","value":{"kind":"object","value":[{"key":"appDir","value":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"scratch","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":52,"end_line":52,"start":2043,"end":2047},"resolved":{"kind":"null","value":null}},{"kind":"string","value":"app"}],"source":"join(scratch, 'app')"}},{"key":"outDir","value":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"scratch","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":52,"end_line":52,"start":2043,"end":2047},"resolved":{"kind":"null","value":null}},{"kind":"string","value":"bundle"}],"source":"join(scratch, 'bundle')"}},{"key":"pageRoutes","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"pathname","value":{"kind":"source-expression","source":"`/${MOBILE_WEB_APP_ROUTE_ROOT}/[hostId]`"}},{"key":"grants","value":{"kind":"array","value":[]}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"source-expression","source":"`/${MOBILE_WEB_APP_ROUTE_ROOT}/[hostId]/session/[worktreeId]`"}},{"key":"grants","value":{"kind":"array","value":[]}}]}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { appDir: join(scratch, 'app'), outDir: join(scratch, 'bundle'), pageRoutes: [ { pathname: `/${MOBILE_WEB_APP_ROUTE_ROOT}/. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79"}},{"id":"10:125:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":125,"end_line":125,"start":4969,"end":5024,"source":"createBundleServer({ outDir: built.outDir, cspHeader })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":125,"end_line":125,"start":4969,"end":5024},"binding":"createBundleServer","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":125,"end_line":125,"start":4988,"end":5023,"source":"{ outDir: built.outDir, cspHeader }","value":{"kind":"object","value":[{"key":"outDir","value":{"kind":"source-expression","source":"built.outDir"}},{"source":"cspHeader"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { outDir: built.outDir, cspHeader }. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79"}},{"id":"10:128:for-of:5","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":128,"end_line":130,"start":5077,"end":5165,"source":"ENGINES","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":128,"end_line":128,"start":5098,"end":5105},"binding":"const engine","resolution":[{"name":"ENGINES","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":39,"end_line":48,"start":1684,"end":1982,"declaration_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":39,"end_line":48,"start":1674,"end":1982},"source":"[\n {\n name: 'chromium',\n launch: () => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }\n },\n { name: 'webkit', launch: () => webkit.launch({ headless: true }) }\n]"}],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":40,"end_line":46,"start":1688,"end":1909,"source":"{\n name: 'chromium',\n launch: () => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }\n }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"chromium"}},{"key":"launch","value":{"kind":"source-expression","source":"() => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'chromium', launch: () => { const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER return chromium.la. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":47,"end_line":47,"start":1913,"end":1980,"source":"{ name: 'webkit', launch: () => webkit.launch({ headless: true }) }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"webkit"}},{"key":"launch","value":{"kind":"source-expression","source":"() => webkit.launch({ headless: true })"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'webkit', launch: () => webkit.launch({ headless: true }) }. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79"}},{"id":"10:134:for-of:6","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":134,"end_line":136,"start":5204,"end":5276,"source":"browsers.values()","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":134,"end_line":134,"start":5226,"end":5243},"binding":"const browser","resolution":[{"name":"browsers","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":50,"end_line":50,"start":2001,"end":2010,"declaration_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":50,"end_line":50,"start":1990,"end":2010},"source":"new Map()"}],"transform":"browsers.values()","dynamic_source":"new Map()","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79"}},{"id":"10:163:fixture-or-oracle-declaration:7","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":163,"end_line":163,"start":6189,"end":6200,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":163,"end_line":163,"start":6198,"end":6200},"binding":"errors","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79"}},{"id":"10:182:browser-event-input:8","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":182,"end_line":232,"start":6826,"end":9219,"source":"page.evaluate(\n ([name, sampleMs, nextAction, followAt, settledGraceMs, fullWindow]) =>\n new Promise((resolve) => {\n const leftOf = (id) => {\n const node = document.querySelector(`[data-testid=\"${id}\"]`)\n const rect = node?.getBoundingClientRect()\n return rect && rect.width > 0 ? Math.round(rect.left) : null\n }\n const hitAt = () =>\n document\n .elementFromPoint(innerWidth / 2, innerHeight / 2)\n ?.closest('[data-testid^=\"stack-probe-\"]')\n ?.getAttribute('data-testid')\n ?.replace('stack-probe-', '') ?? null\n const frames = []\n const start = performance.now()\n let settledAt = null\n const destination = nextAction ?? name\n const pushing = destination === 'push' || destination === 'pushOther'\n globalThis.__orcaStackProbe[name]()\n const tick = () => {\n if (nextAction !== null && frames.length === followAt) {\n globalThis.__orcaStackProbe[nextAction]()\n }\n frames.push({\n list: leftOf('stack-probe-list'),\n session: leftOf('stack-probe-session'),\n hit: hitAt(),\n // Where the running slide starts, which is how a slide that restarts from 0 shows.\n from: document.getAnimations()[0]?.effect?.getKeyframes()[0]?.transform ?? null\n })\n const last = frames.at(-1)\n const arrived = pushing\n ? last.list === null && last.session === 0 && last.hit === 'session'\n : last.list === 0 && last.session === null && last.hit === 'list'\n const followUpDelivered = nextAction === null || frames.length > followAt\n const settled = arrived && followUpDelivered && document.getAnimations().length === 0\n const now = performance.now()\n settledAt = settled ? (settledAt ?? now) : null\n // Observe cleanup after actual arrival; retain the full window for interruption races.\n const finished = !fullWindow && settledAt !== null && now - settledAt >= settledGraceMs\n if (!finished && now - start < sampleMs) {\n requestAnimationFrame(tick)\n } else {\n resolve(frames)\n }\n }\n requestAnimationFrame(tick)\n }),\n [action, SAMPLE_MS, followUp, afterFrames, SETTLED_GRACE_MS, observeFullWindow]\n )","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":182,"end_line":232,"start":6826,"end":9219},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":183,"end_line":230,"start":6845,"end":9130,"source":"([name, sampleMs, nextAction, followAt, settledGraceMs, fullWindow]) =>\n new Promise((resolve) => {\n const leftOf = (id) => {\n const node = document.querySelector(`[data-testid=\"${id}\"]`)\n const rect = node?.getBoundingClientRect()\n return rect && rect.width > 0 ? Math.round(rect.left) : null\n }\n const hitAt = () =>\n document\n .elementFromPoint(innerWidth / 2, innerHeight / 2)\n ?.closest('[data-testid^=\"stack-probe-\"]')\n ?.getAttribute('data-testid')\n ?.replace('stack-probe-', '') ?? null\n const frames = []\n const start = performance.now()\n let settledAt = null\n const destination = nextAction ?? name\n const pushing = destination === 'push' || destination === 'pushOther'\n globalThis.__orcaStackProbe[name]()\n const tick = () => {\n if (nextAction !== null && frames.length === followAt) {\n globalThis.__orcaStackProbe[nextAction]()\n }\n frames.push({\n list: leftOf('stack-probe-list'),\n session: leftOf('stack-probe-session'),\n hit: hitAt(),\n // Where the running slide starts, which is how a slide that restarts from 0 shows.\n from: document.getAnimations()[0]?.effect?.getKeyframes()[0]?.transform ?? null\n })\n const last = frames.at(-1)\n const arrived = pushing\n ? last.list === null && last.session === 0 && last.hit === 'session'\n : last.list === 0 && last.session === null && last.hit === 'list'\n const followUpDelivered = nextAction === null || frames.length > followAt\n const settled = arrived && followUpDelivered && document.getAnimations().length === 0\n const now = performance.now()\n settledAt = settled ? (settledAt ?? now) : null\n // Observe cleanup after actual arrival; retain the full window for interruption races.\n const finished = !fullWindow && settledAt !== null && now - settledAt >= settledGraceMs\n if (!finished && now - start < sampleMs) {\n requestAnimationFrame(tick)\n } else {\n resolve(frames)\n }\n }\n requestAnimationFrame(tick)\n })","value":{"kind":"source-expression","source":"([name, sampleMs, nextAction, followAt, settledGraceMs, fullWindow]) =>\n new Promise((resolve) => {\n const leftOf = (id) => {\n const node = document.querySelector(`[data-testid=\"${id}\"]`)\n const rect = node?.getBoundingClientRect()\n return rect && rect.width > 0 ? Math.round(rect.left) : null\n }\n const hitAt = () =>\n document\n .elementFromPoint(innerWidth / 2, innerHeight / 2)\n ?.closest('[data-testid^=\"stack-probe-\"]')\n ?.getAttribute('data-testid')\n ?.replace('stack-probe-', '') ?? null\n const frames = []\n const start = performance.now()\n let settledAt = null\n const destination = nextAction ?? name\n const pushing = destination === 'push' || destination === 'pushOther'\n globalThis.__orcaStackProbe[name]()\n const tick = () => {\n if (nextAction !== null && frames.length === followAt) {\n globalThis.__orcaStackProbe[nextAction]()\n }\n frames.push({\n list: leftOf('stack-probe-list'),\n session: leftOf('stack-probe-session'),\n hit: hitAt(),\n // Where the running slide starts, which is how a slide that restarts from 0 shows.\n from: document.getAnimations()[0]?.effect?.getKeyframes()[0]?.transform ?? null\n })\n const last = frames.at(-1)\n const arrived = pushing\n ? last.list === null && last.session === 0 && last.hit === 'session'\n : last.list === 0 && last.session === null && last.hit === 'list'\n const followUpDelivered = nextAction === null || frames.length > followAt\n const settled = arrived && followUpDelivered && document.getAnimations().length === 0\n const now = performance.now()\n settledAt = settled ? (settledAt ?? now) : null\n // Observe cleanup after actual arrival; retain the full window for interruption races.\n const finished = !fullWindow && settledAt !== null && now - settledAt >= settledGraceMs\n if (!finished && now - start < sampleMs) {\n requestAnimationFrame(tick)\n } else {\n resolve(frames)\n }\n }\n requestAnimationFrame(tick)\n })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: ([name, sampleMs, nextAction, followAt, settledGraceMs, fullWindow]) => new Promise((resolve) => { const leftOf = (id) => { . Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":231,"end_line":231,"start":9136,"end":9215,"source":"[action, SAMPLE_MS, followUp, afterFrames, SETTLED_GRACE_MS, observeFullWindow]","value":{"kind":"array","value":[{"kind":"source-expression","source":"action"},{"kind":"reference","source":"SAMPLE_MS","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":32,"end_line":32,"start":1430,"end":1434},"resolved":{"kind":"number","value":1500}},{"kind":"source-expression","source":"followUp"},{"kind":"source-expression","source":"afterFrames"},{"kind":"reference","source":"SETTLED_GRACE_MS","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":33,"end_line":33,"start":1460,"end":1463},"resolved":{"kind":"number","value":150}},{"kind":"source-expression","source":"observeFullWindow"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: [action, SAMPLE_MS, followUp, afterFrames, SETTLED_GRACE_MS, observeFullWindow]. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79"}},{"id":"10:196:fixture-or-oracle-declaration:9","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":196,"end_line":196,"start":7459,"end":7470,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":196,"end_line":196,"start":7468,"end":7470},"binding":"frames","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79"}},{"id":"10:236:browser-event-input:10","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":236,"end_line":236,"start":9341,"end":9399,"source":"page.evaluate(() => document.querySelectorAll('*').length)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":236,"end_line":236,"start":9341,"end":9399},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":236,"end_line":236,"start":9355,"end":9398,"source":"() => document.querySelectorAll('*').length","value":{"kind":"source-expression","source":"() => document.querySelectorAll('*').length"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => document.querySelectorAll('*').length. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79"}},{"id":"10:251:fixture-or-oracle-declaration:11","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":251,"end_line":251,"start":9833,"end":9905,"source":"{ list: null, session: 0, hit: 'session', from: null }","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":251,"end_line":251,"start":9851,"end":9905},"binding":"SESSION_SETTLED","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":251,"end_line":251,"start":9853,"end":9863,"source":"list: null","value":{"kind":"property","key":"list","value":{"kind":"null","value":null}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: list: null. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":251,"end_line":251,"start":9865,"end":9875,"source":"session: 0","value":{"kind":"property","key":"session","value":{"kind":"number","value":0}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: session: 0. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":251,"end_line":251,"start":9877,"end":9891,"source":"hit: 'session'","value":{"kind":"property","key":"hit","value":{"kind":"string","value":"session"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: hit: 'session'. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":251,"end_line":251,"start":9893,"end":9903,"source":"from: null","value":{"kind":"property","key":"from","value":{"kind":"null","value":null}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: from: null. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79"}},{"id":"10:252:fixture-or-oracle-declaration:12","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":252,"end_line":252,"start":9912,"end":9978,"source":"{ list: 0, session: null, hit: 'list', from: null }","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":252,"end_line":252,"start":9927,"end":9978},"binding":"LIST_SETTLED","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":252,"end_line":252,"start":9929,"end":9936,"source":"list: 0","value":{"kind":"property","key":"list","value":{"kind":"number","value":0}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: list: 0. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":252,"end_line":252,"start":9938,"end":9951,"source":"session: null","value":{"kind":"property","key":"session","value":{"kind":"null","value":null}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: session: null. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":252,"end_line":252,"start":9953,"end":9964,"source":"hit: 'list'","value":{"kind":"property","key":"hit","value":{"kind":"string","value":"list"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: hit: 'list'. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":252,"end_line":252,"start":9966,"end":9976,"source":"from: null","value":{"kind":"property","key":"from","value":{"kind":"null","value":null}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: from: null. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79"}},{"id":"10:253:browser-event-input:13","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":253,"end_line":253,"start":10011,"end":10067,"source":"page.evaluate(() => globalThis.__orcaSessionMounts ?? 0)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":253,"end_line":253,"start":10011,"end":10067},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":253,"end_line":253,"start":10025,"end":10066,"source":"() => globalThis.__orcaSessionMounts ?? 0","value":{"kind":"source-expression","source":"() => globalThis.__orcaSessionMounts ?? 0"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaSessionMounts ?? 0. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79"}},{"id":"10:256:for-of:14","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":256,"end_line":379,"start":10135,"end":16227,"source":"ENGINES","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":256,"end_line":256,"start":10156,"end":10163},"binding":"const engine","resolution":[{"name":"ENGINES","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":39,"end_line":48,"start":1684,"end":1982,"declaration_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":39,"end_line":48,"start":1674,"end":1982},"source":"[\n {\n name: 'chromium',\n launch: () => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }\n },\n { name: 'webkit', launch: () => webkit.launch({ headless: true }) }\n]"}],"enclosing_case":null,"affected_case_lines":[259,273,287,300,321,350,365],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":40,"end_line":46,"start":1688,"end":1909,"source":"{\n name: 'chromium',\n launch: () => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }\n }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"chromium"}},{"key":"launch","value":{"kind":"source-expression","source":"() => {\n const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER\n return chromium.launch({ headless: true, ...(executablePath ? { executablePath } : {}) })\n }"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'chromium', launch: () => { const executablePath = process.env.ORCA_MOBILE_WEB_RENDER_BROWSER return chromium.la. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":47,"end_line":47,"start":1913,"end":1980,"source":"{ name: 'webkit', launch: () => webkit.launch({ headless: true }) }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"webkit"}},{"key":"launch","value":{"kind":"source-expression","source":"() => webkit.launch({ headless: true })"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'webkit', launch: () => webkit.launch({ headless: true }) }. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79"}},{"id":"10:258:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":258,"end_line":258,"start":10233,"end":10277,"source":"openList(browsers.get(engine.name), options)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":258,"end_line":258,"start":10233,"end":10277},"binding":"openList","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":258,"end_line":258,"start":10242,"end":10267,"source":"browsers.get(engine.name)","value":{"kind":"call-source","callee":"browsers.get","arguments":[{"kind":"source-expression","source":"engine.name"}],"source":"browsers.get(engine.name)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browsers.get(engine.name). Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":258,"end_line":258,"start":10269,"end":10276,"source":"options","value":{"kind":"source-expression","source":"options"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: options. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79"}},{"id":"10:313:browser-event-input:16","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":313,"end_line":315,"start":13077,"end":13193,"source":"page.evaluate(\n () => document.querySelectorAll('[data-testid=\"stack-probe-session\"]').length\n )","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":313,"end_line":315,"start":13077,"end":13193},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":300,"title":"leaves no slot behind when a push interrupts a pop"},"affected_case_lines":[],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: leaves no slot behind when a push interrupts a pop.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":314,"end_line":314,"start":13104,"end":13181,"source":"() => document.querySelectorAll('[data-testid=\"stack-probe-session\"]').length","value":{"kind":"source-expression","source":"() => document.querySelectorAll('[data-testid=\"stack-probe-session\"]').length"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => document.querySelectorAll('[data-testid=\"stack-probe-session\"]').length. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: leaves no slot behind when a push interrupts a pop.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79"}},{"id":"10:366:for-of:17","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":366,"end_line":376,"start":15605,"end":16198,"source":"[{ animation: 'none' }, { reducedMotion: 'reduce' }]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":366,"end_line":366,"start":15627,"end":15679},"binding":"const options","resolution":[],"enclosing_case":{"line":365,"title":"swaps instantly in the tablet split view and under reduced motion"},"affected_case_lines":[],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: swaps instantly in the tablet split view and under reduced motion.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":366,"end_line":366,"start":15628,"end":15649,"source":"{ animation: 'none' }","value":{"kind":"object","value":[{"key":"animation","value":{"kind":"string","value":"none"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { animation: 'none' }. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: swaps instantly in the tablet split view and under reduced motion.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":366,"end_line":366,"start":15651,"end":15678,"source":"{ reducedMotion: 'reduce' }","value":{"kind":"object","value":[{"key":"reducedMotion","value":{"kind":"string","value":"reduce"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { reducedMotion: 'reduce' }. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: swaps instantly in the tablet split view and under reduced motion.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79"}},{"id":"10:367:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":367,"end_line":367,"start":15724,"end":15737,"source":"open(options)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":367,"end_line":367,"start":15724,"end":15737},"binding":"open","resolution":[],"enclosing_case":{"line":365,"title":"swaps instantly in the tablet split view and under reduced motion"},"affected_case_lines":[],"decision":"keep","reason":"Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: swaps instantly in the tablet split view and under reduced motion.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","line":367,"end_line":367,"start":15729,"end":15736,"source":"options","value":{"kind":"source-expression","source":"options"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: options. Real Chromium/WebKit frame samples drive the shipped HostStack, route handoff and device Back claim; this scenario independently observes positions, hit targets, remount counts or released DOM slots. Scenario: swaps instantly in the tablet split view and under reduced motion.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79"}}],"original_review_sha256":"20ba9ad5f2266b6fef703fc13b517aeb00a688d55d1e4d117e769538328d221e","reviewer":"audit_config","reviewed_sha256":"c8867a5949dc56cacd2415f0ff5ef12d1bee34d581bf970e1097695654160e79","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","final_declarations":7,"current_controls":{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","each":[],"for_of":[{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","start":5098,"end":5105,"line":128,"end_line":128,"source":"ENGINES","binding":"const engine","changed":false},{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","start":5226,"end":5243,"line":134,"end_line":134,"source":"browsers.values()","binding":"const browser","changed":false},{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","start":10156,"end":10163,"line":256,"end_line":256,"source":"ENGINES","binding":"const engine","changed":false},{"path":"config/scripts/mobile-web-app/mobile-web-app-stack-transition-render.test.mjs","start":15627,"end":15679,"line":366,"end_line":366,"source":"[{ animation: 'none' }, { reducedMotion: 'reduce' }]","binding":"const options","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/mobile-web-app-route-manifest.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-render-harness.mjs","mobile/src/navigation/host-stack.web.tsx"],"runtime_validation":[]}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","sha256":"210ad8f33041d59def8a6abce804d8c6c7882a9c308a8943712bc8dc68548c5a","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":11,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"210ad8f33041d59def8a6abce804d8c6c7882a9c308a8943712bc8dc68548c5a","cases":[{"line":29,"title":"opens every external URL through the platform seam","decision":"keep","reason":"Actual tasks closure independently observes opens every external URL through the platform seam","explicit_input_controls":[{"control_id":"11:30:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":30,"source":"mobileWebAppRouteClosure('app/h/[hostId]/tasks.tsx')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":30,"end_line":30,"start":1429,"end":1455,"source":"'app/h/[hostId]/tasks.tsx'","value":{"kind":"string","value":"app/h/[hostId]/tasks.tsx"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'app/h/[hostId]/tasks.tsx'. Actual tasks closure independently observes opens every external URL through the platform seam","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual tasks closure independently observes opens every external URL through the platform seam","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"11:33:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":33,"source":"externalLinkOffenders(mobileDir, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":33,"end_line":33,"start":1680,"end":1689,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":23,"end_line":23,"start":1100,"end":1159},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../mobile/', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../mobile/', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. Actual tasks closure independently observes opens every external URL through the platform seam","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":33,"end_line":33,"start":1691,"end":1698,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":30,"end_line":30,"start":1398,"end":1456},"resolved":{"kind":"source-expression","source":"await mobileWebAppRouteClosure('app/h/[hostId]/tasks.tsx')"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Actual tasks closure independently observes opens every external URL through the platform seam","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual tasks closure independently observes opens every external URL through the platform seam","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":29,"title":"opens every external URL through the platform seam","start":1305,"end":1719},"implementation_status":"retained"},{"line":36,"title":"contains the seam, so the rule above is not vacuous","decision":"fix","reason":"Remove the unrelated >400 local-module count; retain the actual tasks seam positive.","explicit_input_controls":[{"control_id":"11:39:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":39,"source":"mobileWebAppRouteClosure('app/h/[hostId]/tasks.tsx')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":39,"end_line":39,"start":2037,"end":2063,"source":"'app/h/[hostId]/tasks.tsx'","value":{"kind":"string","value":"app/h/[hostId]/tasks.tsx"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'app/h/[hostId]/tasks.tsx'. Remove the unrelated >400 local-module count; retain the actual tasks seam positive.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Remove the unrelated >400 local-module count; retain the actual tasks seam positive.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":36,"title":"contains the seam, so the rule above is not vacuous","start":1725,"end":2115},"implementation_status":"implemented"},{"line":61,"title":"does not carry expo-clipboard's web module at all","decision":"keep","reason":"Actual tasks closure independently observes does not carry expo-clipboard's web module at all","explicit_input_controls":[{"control_id":"11:62:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":62,"source":"mobileWebAppRouteClosure('app/h/[hostId]/tasks.tsx')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":62,"end_line":62,"start":3010,"end":3036,"source":"'app/h/[hostId]/tasks.tsx'","value":{"kind":"string","value":"app/h/[hostId]/tasks.tsx"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'app/h/[hostId]/tasks.tsx'. Actual tasks closure independently observes does not carry expo-clipboard's web module at all","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual tasks closure independently observes does not carry expo-clipboard's web module at all","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":60,"title":"does not carry expo-clipboard's web module at all","start":2831,"end":3149},"implementation_status":"retained"},{"line":69,"title":"carries the seam that replaced it, so the absence above is not vacuous","decision":"keep","reason":"Actual tasks closure independently observes carries the seam that replaced it, so the absence above is not vacuous","explicit_input_controls":[{"control_id":"11:71:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":71,"source":"mobileWebAppRouteClosure('app/h/[hostId]/tasks.tsx')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":71,"end_line":71,"start":3450,"end":3476,"source":"'app/h/[hostId]/tasks.tsx'","value":{"kind":"string","value":"app/h/[hostId]/tasks.tsx"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'app/h/[hostId]/tasks.tsx'. Actual tasks closure independently observes carries the seam that replaced it, so the absence above is not vacuous","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual tasks closure independently observes carries the seam that replaced it, so the absence above is not vacuous","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":68,"title":"carries the seam that replaced it, so the absence above is not vacuous","start":3155,"end":3499},"implementation_status":"retained"}],"lines":77,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"Retain actual tasks route external-link/clipboard seam boundaries; remove unrelated size pin.","production_evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.mjs"],"planned_changes":[{"original_line":36,"title":"contains the seam, so the rule above is not vacuous","decision":"fix","change":"Remove the unrelated >400 local-module count; retain the actual tasks seam positive."}],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"11:30:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":30,"end_line":30,"start":1404,"end":1456,"source":"mobileWebAppRouteClosure('app/h/[hostId]/tasks.tsx')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":30,"end_line":30,"start":1404,"end":1456},"binding":"mobileWebAppRouteClosure","resolution":[],"enclosing_case":{"line":29,"title":"opens every external URL through the platform seam"},"affected_case_lines":[],"decision":"keep","reason":"Actual tasks closure independently observes opens every external URL through the platform seam","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":30,"end_line":30,"start":1429,"end":1455,"source":"'app/h/[hostId]/tasks.tsx'","value":{"kind":"string","value":"app/h/[hostId]/tasks.tsx"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'app/h/[hostId]/tasks.tsx'. Actual tasks closure independently observes opens every external URL through the platform seam","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"d81f3c4f60d384a64b77f93974788955169e27e4be0557379a40fd21423f0344"}},{"id":"11:33:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":33,"end_line":33,"start":1658,"end":1699,"source":"externalLinkOffenders(mobileDir, closure)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":33,"end_line":33,"start":1658,"end":1699},"binding":"externalLinkOffenders","resolution":[],"enclosing_case":{"line":29,"title":"opens every external URL through the platform seam"},"affected_case_lines":[],"decision":"keep","reason":"Actual tasks closure independently observes opens every external URL through the platform seam","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":33,"end_line":33,"start":1680,"end":1689,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":23,"end_line":23,"start":1100,"end":1159},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../mobile/', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../mobile/', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. Actual tasks closure independently observes opens every external URL through the platform seam","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":33,"end_line":33,"start":1691,"end":1698,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":30,"end_line":30,"start":1398,"end":1456},"resolved":{"kind":"source-expression","source":"await mobileWebAppRouteClosure('app/h/[hostId]/tasks.tsx')"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. Actual tasks closure independently observes opens every external URL through the platform seam","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"d81f3c4f60d384a64b77f93974788955169e27e4be0557379a40fd21423f0344"}},{"id":"11:39:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":39,"end_line":39,"start":2012,"end":2064,"source":"mobileWebAppRouteClosure('app/h/[hostId]/tasks.tsx')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":39,"end_line":39,"start":2012,"end":2064},"binding":"mobileWebAppRouteClosure","resolution":[],"enclosing_case":{"line":36,"title":"contains the seam, so the rule above is not vacuous"},"affected_case_lines":[],"decision":"keep","reason":"Remove the unrelated >400 local-module count; retain the actual tasks seam positive.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":39,"end_line":39,"start":2037,"end":2063,"source":"'app/h/[hostId]/tasks.tsx'","value":{"kind":"string","value":"app/h/[hostId]/tasks.tsx"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'app/h/[hostId]/tasks.tsx'. Remove the unrelated >400 local-module count; retain the actual tasks seam positive.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"d81f3c4f60d384a64b77f93974788955169e27e4be0557379a40fd21423f0344"}},{"id":"11:62:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":62,"end_line":62,"start":2985,"end":3037,"source":"mobileWebAppRouteClosure('app/h/[hostId]/tasks.tsx')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":62,"end_line":62,"start":2985,"end":3037},"binding":"mobileWebAppRouteClosure","resolution":[],"enclosing_case":{"line":61,"title":"does not carry expo-clipboard's web module at all"},"affected_case_lines":[],"decision":"keep","reason":"Actual tasks closure independently observes does not carry expo-clipboard's web module at all","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":62,"end_line":62,"start":3010,"end":3036,"source":"'app/h/[hostId]/tasks.tsx'","value":{"kind":"string","value":"app/h/[hostId]/tasks.tsx"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'app/h/[hostId]/tasks.tsx'. Actual tasks closure independently observes does not carry expo-clipboard's web module at all","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"d81f3c4f60d384a64b77f93974788955169e27e4be0557379a40fd21423f0344"}},{"id":"11:71:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":71,"end_line":71,"start":3425,"end":3477,"source":"mobileWebAppRouteClosure('app/h/[hostId]/tasks.tsx')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":71,"end_line":71,"start":3425,"end":3477},"binding":"mobileWebAppRouteClosure","resolution":[],"enclosing_case":{"line":69,"title":"carries the seam that replaced it, so the absence above is not vacuous"},"affected_case_lines":[],"decision":"keep","reason":"Actual tasks closure independently observes carries the seam that replaced it, so the absence above is not vacuous","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","line":71,"end_line":71,"start":3450,"end":3476,"source":"'app/h/[hostId]/tasks.tsx'","value":{"kind":"string","value":"app/h/[hostId]/tasks.tsx"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'app/h/[hostId]/tasks.tsx'. Actual tasks closure independently observes carries the seam that replaced it, so the absence above is not vacuous","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"d81f3c4f60d384a64b77f93974788955169e27e4be0557379a40fd21423f0344"}}],"original_review_sha256":"78655322593ca786a810b2c31a21f9fe72d5d2415a09a19c768b67bbac19f46a","reviewer":"audit_config","reviewed_sha256":"d81f3c4f60d384a64b77f93974788955169e27e4be0557379a40fd21423f0344","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","final_declarations":4,"current_controls":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-external-links.test.mjs","each":[],"for_of":[],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[{"original_line":36,"title":"contains the seam, so the rule above is not vacuous","decision":"fix","change":"Remove the unrelated >400 local-module count; retain the actual tasks seam positive."}],"manual_implementation_notes":[],"evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.mjs"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e","declarations":3,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":12,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e","cases":[{"line":181,"title":"mounts the tasks screen rather than the unmatched route","decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: mounts the tasks screen rather than the unmatched route.","explicit_input_controls":[{"control_id":"12:182:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":182,"source":"openRoute(TASKS_ROUTE, 'Tasks', {\n shellGrants: [faultGrant, ...TASKS_GRANTS],\n shellPageRoutes: PAGE_ROUTE_PATTERNS\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":182,"end_line":182,"start":6735,"end":6746,"source":"TASKS_ROUTE","value":{"kind":"reference","source":"TASKS_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":28,"end_line":28,"start":1080,"end":1101},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/tasks`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: TASKS_ROUTE. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: mounts the tasks screen rather than the unmatched route.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":182,"end_line":182,"start":6748,"end":6755,"source":"'Tasks'","value":{"kind":"string","value":"Tasks"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'Tasks'. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: mounts the tasks screen rather than the unmatched route.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":182,"end_line":185,"start":6757,"end":6857,"source":"{\n shellGrants: [faultGrant, ...TASKS_GRANTS],\n shellPageRoutes: PAGE_ROUTE_PATTERNS\n }","value":{"kind":"object","value":[{"key":"shellGrants","value":{"kind":"array","value":[{"kind":"reference","source":"faultGrant","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":54,"end_line":54,"start":2004,"end":2008},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"...TASKS_GRANTS"}]}},{"key":"shellPageRoutes","value":{"kind":"reference","source":"PAGE_ROUTE_PATTERNS","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":30,"end_line":30,"start":1228,"end":1264},"resolved":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]"},{"kind":"string","value":"/h/[hostId]/tasks"}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { shellGrants: [faultGrant, ...TASKS_GRANTS], shellPageRoutes: PAGE_ROUTE_PATTERNS }. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: mounts the tasks screen rather than the unmatched route.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: mounts the tasks screen rather than the unmatched route.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"12:186:browser-event-input:14","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":186,"source":"opened.page.evaluate(() => document.body.innerText)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":186,"end_line":186,"start":6903,"end":6932,"source":"() => document.body.innerText","value":{"kind":"source-expression","source":"() => document.body.innerText"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => document.body.innerText. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: mounts the tasks screen rather than the unmatched route.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: mounts the tasks screen rather than the unmatched route.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":181,"title":"mounts the tasks screen rather than the unmatched route","start":6624,"end":7092},"implementation_status":"retained"},{"line":193,"title":"carries the provider the shell named into the url the screen reads","decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: carries the provider the shell named into the url the screen reads.","explicit_input_controls":[{"control_id":"12:196:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":196,"source":"openPage({\n shellRoute: { pathname: TASKS_ROUTE, params: { taskSource: 'linear' } },\n shellGrants: [faultGrant, ...TASKS_GRANTS],\n shellPageRoutes: PAGE_ROUTE_PATTERNS\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":196,"end_line":200,"start":7390,"end":7569,"source":"{\n shellRoute: { pathname: TASKS_ROUTE, params: { taskSource: 'linear' } },\n shellGrants: [faultGrant, ...TASKS_GRANTS],\n shellPageRoutes: PAGE_ROUTE_PATTERNS\n }","value":{"kind":"object","value":[{"key":"shellRoute","value":{"kind":"object","value":[{"key":"pathname","value":{"kind":"reference","source":"TASKS_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":28,"end_line":28,"start":1080,"end":1101},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/tasks`"}}},{"key":"params","value":{"kind":"object","value":[{"key":"taskSource","value":{"kind":"string","value":"linear"}}]}}]}},{"key":"shellGrants","value":{"kind":"array","value":[{"kind":"reference","source":"faultGrant","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":54,"end_line":54,"start":2004,"end":2008},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"...TASKS_GRANTS"}]}},{"key":"shellPageRoutes","value":{"kind":"reference","source":"PAGE_ROUTE_PATTERNS","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":30,"end_line":30,"start":1228,"end":1264},"resolved":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]"},{"kind":"string","value":"/h/[hostId]/tasks"}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { shellRoute: { pathname: TASKS_ROUTE, params: { taskSource: 'linear' } }, shellGrants: [faultGrant, ...TASKS_GRANTS], she. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: carries the provider the shell named into the url the screen reads.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: carries the provider the shell named into the url the screen reads.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"12:203:browser-event-input:16","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":203,"source":"opened.page.evaluate(() => location.pathname + location.search)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":203,"end_line":203,"start":7731,"end":7772,"source":"() => location.pathname + location.search","value":{"kind":"source-expression","source":"() => location.pathname + location.search"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => location.pathname + location.search. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: carries the provider the shell named into the url the screen reads.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: carries the provider the shell named into the url the screen reads.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":193,"title":"carries the provider the shell named into the url the screen reads","start":7096,"end":7911},"implementation_status":"retained"},{"line":209,"title":"fetches this route's own chunk on a client-side navigation","decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: fetches this route's own chunk on a client-side navigation.","explicit_input_controls":[{"control_id":"12:210:inline-api-or-fixture-input:17","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":210,"source":"openRoute(HOST_ROUTE, SHELL_HOST.name, {\n shellGrants: [faultGrant, ...TASKS_GRANTS],\n shellPageRoutes: PAGE_ROUTE_PATTERNS\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":210,"end_line":210,"start":8029,"end":8039,"source":"HOST_ROUTE","value":{"kind":"reference","source":"HOST_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":27,"end_line":27,"start":1037,"end":1059},"resolved":{"kind":"string","value":"/h/render-check-host"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: HOST_ROUTE. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: fetches this route's own chunk on a client-side navigation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":210,"end_line":210,"start":8041,"end":8056,"source":"SHELL_HOST.name","value":{"kind":"source-expression","source":"SHELL_HOST.name"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SHELL_HOST.name. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: fetches this route's own chunk on a client-side navigation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":210,"end_line":213,"start":8058,"end":8158,"source":"{\n shellGrants: [faultGrant, ...TASKS_GRANTS],\n shellPageRoutes: PAGE_ROUTE_PATTERNS\n }","value":{"kind":"object","value":[{"key":"shellGrants","value":{"kind":"array","value":[{"kind":"reference","source":"faultGrant","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":54,"end_line":54,"start":2004,"end":2008},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"...TASKS_GRANTS"}]}},{"key":"shellPageRoutes","value":{"kind":"reference","source":"PAGE_ROUTE_PATTERNS","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":30,"end_line":30,"start":1228,"end":1264},"resolved":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]"},{"kind":"string","value":"/h/[hostId]/tasks"}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { shellGrants: [faultGrant, ...TASKS_GRANTS], shellPageRoutes: PAGE_ROUTE_PATTERNS }. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: fetches this route's own chunk on a client-side navigation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: fetches this route's own chunk on a client-side navigation.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"12:214:fixture-or-oracle-declaration:18","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":214,"source":"[...opened.scripts]","rows":[],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: fetches this route's own chunk on a client-side navigation.","implementation_rows":[]},{"control_id":"12:215:browser-event-input:19","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":215,"source":"opened.page.evaluate((to) => {\n history.pushState(null, '', to)\n dispatchEvent(new PopStateEvent('popstate'))\n }, TASKS_ROUTE)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":215,"end_line":218,"start":8243,"end":8347,"source":"(to) => {\n history.pushState(null, '', to)\n dispatchEvent(new PopStateEvent('popstate'))\n }","value":{"kind":"source-expression","source":"(to) => {\n history.pushState(null, '', to)\n dispatchEvent(new PopStateEvent('popstate'))\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (to) => { history.pushState(null, '', to) dispatchEvent(new PopStateEvent('popstate')) }. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: fetches this route's own chunk on a client-side navigation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":218,"end_line":218,"start":8349,"end":8360,"source":"TASKS_ROUTE","value":{"kind":"reference","source":"TASKS_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":28,"end_line":28,"start":1080,"end":1101},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/tasks`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: TASKS_ROUTE. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: fetches this route's own chunk on a client-side navigation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: fetches this route's own chunk on a client-side navigation.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":209,"title":"fetches this route's own chunk on a client-side navigation","start":7915,"end":8932},"implementation_status":"retained"}],"lines":233,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","planned_changes":[],"production_evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-render-harness.mjs"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"12:30:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":30,"end_line":30,"start":1206,"end":1264,"source":"['/h/[hostId]', '/h/[hostId]/tasks']","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":30,"end_line":30,"start":1228,"end":1264},"binding":"PAGE_ROUTE_PATTERNS","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":30,"end_line":30,"start":1229,"end":1242,"source":"'/h/[hostId]'","value":{"kind":"string","value":"/h/[hostId]"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: '/h/[hostId]'. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":30,"end_line":30,"start":1244,"end":1263,"source":"'/h/[hostId]/tasks'","value":{"kind":"string","value":"/h/[hostId]/tasks"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: '/h/[hostId]/tasks'. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e"}},{"id":"12:33:fixture-or-oracle-declaration:2","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":33,"end_line":38,"start":1363,"end":1487,"source":"{\n id: 'render-check-host',\n name: 'Render Check Host',\n endpoint: 'ws://render-check',\n lastConnected: 1\n}","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":33,"end_line":38,"start":1376,"end":1487},"binding":"SHELL_HOST","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":34,"end_line":34,"start":1380,"end":1403,"source":"id: 'render-check-host'","value":{"kind":"property","key":"id","value":{"kind":"string","value":"render-check-host"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: id: 'render-check-host'. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":35,"end_line":35,"start":1407,"end":1432,"source":"name: 'Render Check Host'","value":{"kind":"property","key":"name","value":{"kind":"string","value":"Render Check Host"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: name: 'Render Check Host'. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":36,"end_line":36,"start":1436,"end":1465,"source":"endpoint: 'ws://render-check'","value":{"kind":"property","key":"endpoint","value":{"kind":"string","value":"ws://render-check"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: endpoint: 'ws://render-check'. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":37,"end_line":37,"start":1469,"end":1485,"source":"lastConnected: 1","value":{"kind":"property","key":"lastConnected","value":{"kind":"number","value":1}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: lastConnected: 1. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e"}},{"id":"12:42:fixture-or-oracle-declaration:3","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":42,"end_line":42,"start":1672,"end":1763,"source":"['navigate', 'storage', 'externalLink', 'haptics', 'native.clipboard.write']","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":42,"end_line":42,"start":1687,"end":1763},"binding":"TASKS_GRANTS","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":42,"end_line":42,"start":1688,"end":1698,"source":"'navigate'","value":{"kind":"string","value":"navigate"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'navigate'. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":42,"end_line":42,"start":1700,"end":1709,"source":"'storage'","value":{"kind":"string","value":"storage"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'storage'. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":42,"end_line":42,"start":1711,"end":1725,"source":"'externalLink'","value":{"kind":"string","value":"externalLink"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'externalLink'. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":42,"end_line":42,"start":1727,"end":1736,"source":"'haptics'","value":{"kind":"string","value":"haptics"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'haptics'. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":42,"end_line":42,"start":1738,"end":1762,"source":"'native.clipboard.write'","value":{"kind":"string","value":"native.clipboard.write"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'native.clipboard.write'. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e"}},{"id":"12:51:fixture-or-oracle-declaration:4","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":51,"end_line":51,"start":1924,"end":1940,"source":"{}","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":51,"end_line":51,"start":1938,"end":1940},"binding":"routeChunks","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e"}},{"id":"12:64:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":64,"end_line":64,"start":2292,"end":2352,"source":"buildMobileWebAppBundle({ outDir: join(scratch, 'bundle') })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":64,"end_line":64,"start":2292,"end":2352},"binding":"buildMobileWebAppBundle","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":64,"end_line":64,"start":2316,"end":2351,"source":"{ outDir: join(scratch, 'bundle') }","value":{"kind":"object","value":[{"key":"outDir","value":{"kind":"call-source","callee":"join","arguments":[{"kind":"source-expression","source":"scratch"},{"kind":"string","value":"bundle"}],"source":"join(scratch, 'bundle')"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { outDir: join(scratch, 'bundle') }. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e"}},{"id":"12:66:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":66,"end_line":66,"start":2410,"end":2465,"source":"createBundleServer({ outDir: built.outDir, cspHeader })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":66,"end_line":66,"start":2410,"end":2465},"binding":"createBundleServer","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":66,"end_line":66,"start":2429,"end":2464,"source":"{ outDir: built.outDir, cspHeader }","value":{"kind":"object","value":[{"key":"outDir","value":{"kind":"source-expression","source":"built.outDir"}},{"source":"cspHeader"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { outDir: built.outDir, cspHeader }. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e"}},{"id":"12:98:fixture-or-oracle-declaration:7","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":98,"end_line":98,"start":3682,"end":3693,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":98,"end_line":98,"start":3691,"end":3693},"binding":"errors","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e"}},{"id":"12:99:fixture-or-oracle-declaration:8","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":99,"end_line":99,"start":3702,"end":3714,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":99,"end_line":99,"start":3712,"end":3714},"binding":"scripts","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e"}},{"id":"12:144:browser-event-input:9","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":144,"end_line":146,"start":5089,"end":5179,"source":"page.evaluate(\n () => document.documentElement.dataset.orcaWebEntry ?? 'absent'\n )","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":144,"end_line":146,"start":5089,"end":5179},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":145,"end_line":145,"start":5110,"end":5173,"source":"() => document.documentElement.dataset.orcaWebEntry ?? 'absent'","value":{"kind":"source-expression","source":"() => document.documentElement.dataset.orcaWebEntry ?? 'absent'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => document.documentElement.dataset.orcaWebEntry ?? 'absent'. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e"}},{"id":"12:158:for-of:10","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":158,"end_line":160,"start":5531,"end":5665,"source":"await page.evaluate(() => globalThis.__orcaRenderCheckFaults ?? [])","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":158,"end_line":158,"start":5551,"end":5618},"binding":"const fault","resolution":[],"dynamic_source":"await page.evaluate(() => globalThis.__orcaRenderCheckFaults ?? [])","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e"}},{"id":"12:158:browser-event-input:11","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":158,"end_line":158,"start":5557,"end":5618,"source":"page.evaluate(() => globalThis.__orcaRenderCheckFaults ?? [])","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":158,"end_line":158,"start":5557,"end":5618},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":158,"end_line":158,"start":5571,"end":5617,"source":"() => globalThis.__orcaRenderCheckFaults ?? []","value":{"kind":"source-expression","source":"() => globalThis.__orcaRenderCheckFaults ?? []"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaRenderCheckFaults ?? []. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e"}},{"id":"12:165:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":165,"end_line":165,"start":5848,"end":5905,"source":"openPage({ shellRoute: { pathname: route }, ...options })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":165,"end_line":165,"start":5848,"end":5905},"binding":"openPage","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":165,"end_line":165,"start":5857,"end":5904,"source":"{ shellRoute: { pathname: route }, ...options }","value":{"kind":"object","value":[{"key":"shellRoute","value":{"kind":"object","value":[{"key":"pathname","value":{"kind":"source-expression","source":"route"}}]}},{"source":"...options"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { shellRoute: { pathname: route }, ...options }. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e"}},{"id":"12:182:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":182,"end_line":185,"start":6725,"end":6858,"source":"openRoute(TASKS_ROUTE, 'Tasks', {\n shellGrants: [faultGrant, ...TASKS_GRANTS],\n shellPageRoutes: PAGE_ROUTE_PATTERNS\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":182,"end_line":185,"start":6725,"end":6858},"binding":"openRoute","resolution":[],"enclosing_case":{"line":181,"title":"mounts the tasks screen rather than the unmatched route"},"affected_case_lines":[],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: mounts the tasks screen rather than the unmatched route.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":182,"end_line":182,"start":6735,"end":6746,"source":"TASKS_ROUTE","value":{"kind":"reference","source":"TASKS_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":28,"end_line":28,"start":1080,"end":1101},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/tasks`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: TASKS_ROUTE. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: mounts the tasks screen rather than the unmatched route.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":182,"end_line":182,"start":6748,"end":6755,"source":"'Tasks'","value":{"kind":"string","value":"Tasks"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'Tasks'. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: mounts the tasks screen rather than the unmatched route.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":182,"end_line":185,"start":6757,"end":6857,"source":"{\n shellGrants: [faultGrant, ...TASKS_GRANTS],\n shellPageRoutes: PAGE_ROUTE_PATTERNS\n }","value":{"kind":"object","value":[{"key":"shellGrants","value":{"kind":"array","value":[{"kind":"reference","source":"faultGrant","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":54,"end_line":54,"start":2004,"end":2008},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"...TASKS_GRANTS"}]}},{"key":"shellPageRoutes","value":{"kind":"reference","source":"PAGE_ROUTE_PATTERNS","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":30,"end_line":30,"start":1228,"end":1264},"resolved":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]"},{"kind":"string","value":"/h/[hostId]/tasks"}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { shellGrants: [faultGrant, ...TASKS_GRANTS], shellPageRoutes: PAGE_ROUTE_PATTERNS }. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: mounts the tasks screen rather than the unmatched route.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e"}},{"id":"12:186:browser-event-input:14","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":186,"end_line":186,"start":6882,"end":6933,"source":"opened.page.evaluate(() => document.body.innerText)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":186,"end_line":186,"start":6882,"end":6933},"binding":"opened.page.evaluate","resolution":[],"enclosing_case":{"line":181,"title":"mounts the tasks screen rather than the unmatched route"},"affected_case_lines":[],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: mounts the tasks screen rather than the unmatched route.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":186,"end_line":186,"start":6903,"end":6932,"source":"() => document.body.innerText","value":{"kind":"source-expression","source":"() => document.body.innerText"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => document.body.innerText. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: mounts the tasks screen rather than the unmatched route.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e"}},{"id":"12:196:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":196,"end_line":200,"start":7381,"end":7570,"source":"openPage({\n shellRoute: { pathname: TASKS_ROUTE, params: { taskSource: 'linear' } },\n shellGrants: [faultGrant, ...TASKS_GRANTS],\n shellPageRoutes: PAGE_ROUTE_PATTERNS\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":196,"end_line":200,"start":7381,"end":7570},"binding":"openPage","resolution":[],"enclosing_case":{"line":193,"title":"carries the provider the shell named into the url the screen reads"},"affected_case_lines":[],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: carries the provider the shell named into the url the screen reads.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":196,"end_line":200,"start":7390,"end":7569,"source":"{\n shellRoute: { pathname: TASKS_ROUTE, params: { taskSource: 'linear' } },\n shellGrants: [faultGrant, ...TASKS_GRANTS],\n shellPageRoutes: PAGE_ROUTE_PATTERNS\n }","value":{"kind":"object","value":[{"key":"shellRoute","value":{"kind":"object","value":[{"key":"pathname","value":{"kind":"reference","source":"TASKS_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":28,"end_line":28,"start":1080,"end":1101},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/tasks`"}}},{"key":"params","value":{"kind":"object","value":[{"key":"taskSource","value":{"kind":"string","value":"linear"}}]}}]}},{"key":"shellGrants","value":{"kind":"array","value":[{"kind":"reference","source":"faultGrant","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":54,"end_line":54,"start":2004,"end":2008},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"...TASKS_GRANTS"}]}},{"key":"shellPageRoutes","value":{"kind":"reference","source":"PAGE_ROUTE_PATTERNS","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":30,"end_line":30,"start":1228,"end":1264},"resolved":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]"},{"kind":"string","value":"/h/[hostId]/tasks"}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { shellRoute: { pathname: TASKS_ROUTE, params: { taskSource: 'linear' } }, shellGrants: [faultGrant, ...TASKS_GRANTS], she. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: carries the provider the shell named into the url the screen reads.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e"}},{"id":"12:203:browser-event-input:16","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":203,"end_line":203,"start":7710,"end":7773,"source":"opened.page.evaluate(() => location.pathname + location.search)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":203,"end_line":203,"start":7710,"end":7773},"binding":"opened.page.evaluate","resolution":[],"enclosing_case":{"line":193,"title":"carries the provider the shell named into the url the screen reads"},"affected_case_lines":[],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: carries the provider the shell named into the url the screen reads.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":203,"end_line":203,"start":7731,"end":7772,"source":"() => location.pathname + location.search","value":{"kind":"source-expression","source":"() => location.pathname + location.search"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => location.pathname + location.search. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: carries the provider the shell named into the url the screen reads.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e"}},{"id":"12:210:inline-api-or-fixture-input:17","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":210,"end_line":213,"start":8019,"end":8159,"source":"openRoute(HOST_ROUTE, SHELL_HOST.name, {\n shellGrants: [faultGrant, ...TASKS_GRANTS],\n shellPageRoutes: PAGE_ROUTE_PATTERNS\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":210,"end_line":213,"start":8019,"end":8159},"binding":"openRoute","resolution":[],"enclosing_case":{"line":209,"title":"fetches this route's own chunk on a client-side navigation"},"affected_case_lines":[],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: fetches this route's own chunk on a client-side navigation.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":210,"end_line":210,"start":8029,"end":8039,"source":"HOST_ROUTE","value":{"kind":"reference","source":"HOST_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":27,"end_line":27,"start":1037,"end":1059},"resolved":{"kind":"string","value":"/h/render-check-host"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: HOST_ROUTE. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: fetches this route's own chunk on a client-side navigation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":210,"end_line":210,"start":8041,"end":8056,"source":"SHELL_HOST.name","value":{"kind":"source-expression","source":"SHELL_HOST.name"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SHELL_HOST.name. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: fetches this route's own chunk on a client-side navigation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":210,"end_line":213,"start":8058,"end":8158,"source":"{\n shellGrants: [faultGrant, ...TASKS_GRANTS],\n shellPageRoutes: PAGE_ROUTE_PATTERNS\n }","value":{"kind":"object","value":[{"key":"shellGrants","value":{"kind":"array","value":[{"kind":"reference","source":"faultGrant","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":54,"end_line":54,"start":2004,"end":2008},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"...TASKS_GRANTS"}]}},{"key":"shellPageRoutes","value":{"kind":"reference","source":"PAGE_ROUTE_PATTERNS","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":30,"end_line":30,"start":1228,"end":1264},"resolved":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]"},{"kind":"string","value":"/h/[hostId]/tasks"}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { shellGrants: [faultGrant, ...TASKS_GRANTS], shellPageRoutes: PAGE_ROUTE_PATTERNS }. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: fetches this route's own chunk on a client-side navigation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e"}},{"id":"12:214:fixture-or-oracle-declaration:18","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":214,"end_line":214,"start":8170,"end":8211,"source":"[...opened.scripts]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":214,"end_line":214,"start":8192,"end":8211},"binding":"loadedForFirstRoute","resolution":[],"enclosing_case":{"line":209,"title":"fetches this route's own chunk on a client-side navigation"},"affected_case_lines":[],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: fetches this route's own chunk on a client-side navigation.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e"}},{"id":"12:215:browser-event-input:19","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":215,"end_line":218,"start":8222,"end":8361,"source":"opened.page.evaluate((to) => {\n history.pushState(null, '', to)\n dispatchEvent(new PopStateEvent('popstate'))\n }, TASKS_ROUTE)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":215,"end_line":218,"start":8222,"end":8361},"binding":"opened.page.evaluate","resolution":[],"enclosing_case":{"line":209,"title":"fetches this route's own chunk on a client-side navigation"},"affected_case_lines":[],"decision":"keep","reason":"Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: fetches this route's own chunk on a client-side navigation.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":215,"end_line":218,"start":8243,"end":8347,"source":"(to) => {\n history.pushState(null, '', to)\n dispatchEvent(new PopStateEvent('popstate'))\n }","value":{"kind":"source-expression","source":"(to) => {\n history.pushState(null, '', to)\n dispatchEvent(new PopStateEvent('popstate'))\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (to) => { history.pushState(null, '', to) dispatchEvent(new PopStateEvent('popstate')) }. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: fetches this route's own chunk on a client-side navigation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":218,"end_line":218,"start":8349,"end":8360,"source":"TASKS_ROUTE","value":{"kind":"reference","source":"TASKS_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","line":28,"end_line":28,"start":1080,"end":1101},"resolved":{"kind":"source-expression","source":"`${HOST_ROUTE}/tasks`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: TASKS_ROUTE. Real tasks route mount/parameter/client-navigation observes the actual bundled screen, shell route input and builder-named fetched chunk. Scenario: fetches this route's own chunk on a client-side navigation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e"}}],"original_review_sha256":"3810c1b5764a89b8fa690e779cc8eb539b78c9ef179f78ad501a3c240c467eaf","reviewer":"audit_config","reviewed_sha256":"038bc2463264ccd34a4a6513652dbeddf14edaae902cab79675dc3d1a092ff6e","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","final_declarations":3,"current_controls":{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","each":[],"for_of":[{"path":"config/scripts/mobile-web-app/mobile-web-app-tasks-render.test.mjs","start":5551,"end":5618,"line":158,"end_line":158,"source":"await page.evaluate(() => globalThis.__orcaRenderCheckFaults ?? [])","binding":"const fault","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-render-harness.mjs"],"runtime_validation":[]}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","sha256":"ac1d2e0aa5981b93576fc149bf9729bda291d679f59ca3eb12fbd98a2230c334","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":13,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"ac1d2e0aa5981b93576fc149bf9729bda291d679f59ca3eb12fbd98a2230c334","cases":[{"line":24,"title":"opens on a stalled font and replaces cached fallback glyphs when it finally arrives","decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","explicit_input_controls":[{"control_id":"13:29:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":29,"source":"openTerminal({\n beforeNavigate: async (page) => {\n await page.route('**/*.woff2', async (route) => {\n await fontGate\n await route.continue()\n })\n }\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":29,"end_line":36,"start":952,"end":1134,"source":"{\n beforeNavigate: async (page) => {\n await page.route('**/*.woff2', async (route) => {\n await fontGate\n await route.continue()\n })\n }\n }","value":{"kind":"object","value":[{"key":"beforeNavigate","value":{"kind":"source-expression","source":"async (page) => {\n await page.route('**/*.woff2', async (route) => {\n await fontGate\n await route.continue()\n })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { beforeNavigate: async (page) => { await page.route('**/*.woff2', async (route) => { await fontGate await. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"13:39:browser-event-input:3","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":39,"source":"page.evaluate(() => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0'))","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":39,"end_line":39,"start":1188,"end":1257,"source":"() => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0')","value":{"kind":"source-expression","source":"() => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0'). Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"13:41:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":41,"source":"openProbeTerminal(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":41,"end_line":41,"start":1309,"end":1313,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"13:42:browser-event-input:5","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":42,"source":"page.evaluate(() =>\n globalThis.__orcaTerminalProbe.write('\\x1b[?25l\\x1b[2J\\x1b[H\\uf07b')\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":42,"end_line":43,"start":1341,"end":1423,"source":"() =>\n globalThis.__orcaTerminalProbe.write('\\x1b[?25l\\x1b[2J\\x1b[H\\uf07b')","value":{"kind":"source-expression","source":"() =>\n globalThis.__orcaTerminalProbe.write('\\x1b[?25l\\x1b[2J\\x1b[H\\uf07b')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalProbe.write('\\x1b[?25l\\x1b[2J\\x1b[H\\uf07b'). Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"13:47:browser-event-input:6","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":47,"source":"page.evaluate(\n () => new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve)))\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":48,"end_line":48,"start":1590,"end":1681,"source":"() => new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve)))","value":{"kind":"source-expression","source":"() => new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve)))"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve))). Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"13:52:fixture-or-oracle-declaration:7","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":52,"source":"{ x: box.x, y: box.y, width: 20, height: 20 }","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":52,"end_line":52,"start":1787,"end":1795,"source":"x: box.x","value":{"kind":"property","key":"x","value":{"kind":"source-expression","source":"box.x"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: x: box.x. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":52,"end_line":52,"start":1797,"end":1805,"source":"y: box.y","value":{"kind":"property","key":"y","value":{"kind":"source-expression","source":"box.y"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: y: box.y. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":52,"end_line":52,"start":1807,"end":1816,"source":"width: 20","value":{"kind":"property","key":"width","value":{"kind":"number","value":20}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: width: 20. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":52,"end_line":52,"start":1818,"end":1828,"source":"height: 20","value":{"kind":"property","key":"height","value":{"kind":"number","value":20}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: height: 20. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"13:56:browser-event-input:8","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":56,"source":"cdp.send('Page.captureScreenshot', {\n format: 'png',\n clip: { ...clip, scale: 1 }\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":56,"end_line":56,"start":2055,"end":2079,"source":"'Page.captureScreenshot'","value":{"kind":"string","value":"Page.captureScreenshot"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'Page.captureScreenshot'. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":56,"end_line":59,"start":2081,"end":2155,"source":"{\n format: 'png',\n clip: { ...clip, scale: 1 }\n }","value":{"kind":"object","value":[{"key":"format","value":{"kind":"string","value":"png"}},{"key":"clip","value":{"kind":"object","value":[{"source":"...clip"},{"key":"scale","value":{"kind":"number","value":1}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { format: 'png', clip: { ...clip, scale: 1 } }. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"13:69:browser-event-input:9","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":69,"source":"page.evaluate(\n () => new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve)))\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":70,"end_line":70,"start":2481,"end":2572,"source":"() => new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve)))","value":{"kind":"source-expression","source":"() => new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve)))"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve))). Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"13:76:browser-event-input:10","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":76,"source":"page.evaluate(() => globalThis.__orcaTerminalEngineErrors)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":76,"end_line":76,"start":2769,"end":2812,"source":"() => globalThis.__orcaTerminalEngineErrors","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalEngineErrors"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalEngineErrors. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":24,"title":"opens on a stalled font and replaces cached fallback glyphs when it finally arrives","start":694,"end":2907},"implementation_status":"retained"},{"line":83,"title":"still opens under an older shell that refuses fonts","decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: still opens under an older shell that refuses fonts.","explicit_input_controls":[{"control_id":"13:84:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":84,"source":"openTerminal({\n beforeNavigate: async (page) => {\n await page.route('**/*', async (route) => {\n const response = await route.fetch()\n const headers = response.headers()\n if (headers['content-security-policy']) {\n headers['content-security-policy'] = headers['content-security-policy'].replace(\n /font-src[^;]+/,\n \"font-src 'none'\"\n )\n }\n await route.fulfill({ response, headers })\n })\n }\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":84,"end_line":98,"start":3023,"end":3520,"source":"{\n beforeNavigate: async (page) => {\n await page.route('**/*', async (route) => {\n const response = await route.fetch()\n const headers = response.headers()\n if (headers['content-security-policy']) {\n headers['content-security-policy'] = headers['content-security-policy'].replace(\n /font-src[^;]+/,\n \"font-src 'none'\"\n )\n }\n await route.fulfill({ response, headers })\n })\n }\n }","value":{"kind":"object","value":[{"key":"beforeNavigate","value":{"kind":"source-expression","source":"async (page) => {\n await page.route('**/*', async (route) => {\n const response = await route.fetch()\n const headers = response.headers()\n if (headers['content-security-policy']) {\n headers['content-security-policy'] = headers['content-security-policy'].replace(\n /font-src[^;]+/,\n \"font-src 'none'\"\n )\n }\n await route.fulfill({ response, headers })\n })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { beforeNavigate: async (page) => { await page.route('**/*', async (route) => { const response = await route.fetch(). Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: still opens under an older shell that refuses fonts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: still opens under an older shell that refuses fonts.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"13:100:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":100,"source":"openProbeTerminal(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":100,"end_line":100,"start":3562,"end":3566,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: still opens under an older shell that refuses fonts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: still opens under an older shell that refuses fonts.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"13:103:browser-event-input:13","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":103,"source":"page.evaluate(() => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0'))","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":103,"end_line":103,"start":3669,"end":3738,"source":"() => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0')","value":{"kind":"source-expression","source":"() => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0'). Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: still opens under an older shell that refuses fonts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: still opens under an older shell that refuses fonts.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"13:105:browser-event-input:14","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":105,"source":"page.evaluate(() => globalThis.__orcaTerminalEngineErrors)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":105,"end_line":105,"start":3793,"end":3836,"source":"() => globalThis.__orcaTerminalEngineErrors","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalEngineErrors"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalEngineErrors. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: still opens under an older shell that refuses fonts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: still opens under an older shell that refuses fonts.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":83,"title":"still opens under an older shell that refuses fonts","start":2911,"end":3911},"implementation_status":"retained"}],"lines":111,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations.","planned_changes":[],"production_evidence":["config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/mobile-web-app-terminal-render-fixture.mjs"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"13:21:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":21,"end_line":21,"start":595,"end":624,"source":"fixture.openTerminal(options)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":21,"end_line":21,"start":595,"end":624},"binding":"fixture.openTerminal","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":21,"end_line":21,"start":616,"end":623,"source":"options","value":{"kind":"source-expression","source":"options"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: options. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ac1d2e0aa5981b93576fc149bf9729bda291d679f59ca3eb12fbd98a2230c334"}},{"id":"13:29:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":29,"end_line":36,"start":939,"end":1135,"source":"openTerminal({\n beforeNavigate: async (page) => {\n await page.route('**/*.woff2', async (route) => {\n await fontGate\n await route.continue()\n })\n }\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":29,"end_line":36,"start":939,"end":1135},"binding":"openTerminal","resolution":[],"enclosing_case":{"line":24,"title":"opens on a stalled font and replaces cached fallback glyphs when it finally arrives"},"affected_case_lines":[],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":29,"end_line":36,"start":952,"end":1134,"source":"{\n beforeNavigate: async (page) => {\n await page.route('**/*.woff2', async (route) => {\n await fontGate\n await route.continue()\n })\n }\n }","value":{"kind":"object","value":[{"key":"beforeNavigate","value":{"kind":"source-expression","source":"async (page) => {\n await page.route('**/*.woff2', async (route) => {\n await fontGate\n await route.continue()\n })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { beforeNavigate: async (page) => { await page.route('**/*.woff2', async (route) => { await fontGate await. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ac1d2e0aa5981b93576fc149bf9729bda291d679f59ca3eb12fbd98a2230c334"}},{"id":"13:39:browser-event-input:3","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":39,"end_line":39,"start":1174,"end":1258,"source":"page.evaluate(() => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0'))","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":39,"end_line":39,"start":1174,"end":1258},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":24,"title":"opens on a stalled font and replaces cached fallback glyphs when it finally arrives"},"affected_case_lines":[],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":39,"end_line":39,"start":1188,"end":1257,"source":"() => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0')","value":{"kind":"source-expression","source":"() => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0'). Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ac1d2e0aa5981b93576fc149bf9729bda291d679f59ca3eb12fbd98a2230c334"}},{"id":"13:41:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":41,"end_line":41,"start":1291,"end":1314,"source":"openProbeTerminal(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":41,"end_line":41,"start":1291,"end":1314},"binding":"openProbeTerminal","resolution":[],"enclosing_case":{"line":24,"title":"opens on a stalled font and replaces cached fallback glyphs when it finally arrives"},"affected_case_lines":[],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":41,"end_line":41,"start":1309,"end":1313,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ac1d2e0aa5981b93576fc149bf9729bda291d679f59ca3eb12fbd98a2230c334"}},{"id":"13:42:browser-event-input:5","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":42,"end_line":44,"start":1327,"end":1431,"source":"page.evaluate(() =>\n globalThis.__orcaTerminalProbe.write('\\x1b[?25l\\x1b[2J\\x1b[H\\uf07b')\n )","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":42,"end_line":44,"start":1327,"end":1431},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":24,"title":"opens on a stalled font and replaces cached fallback glyphs when it finally arrives"},"affected_case_lines":[],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":42,"end_line":43,"start":1341,"end":1423,"source":"() =>\n globalThis.__orcaTerminalProbe.write('\\x1b[?25l\\x1b[2J\\x1b[H\\uf07b')","value":{"kind":"source-expression","source":"() =>\n globalThis.__orcaTerminalProbe.write('\\x1b[?25l\\x1b[2J\\x1b[H\\uf07b')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalProbe.write('\\x1b[?25l\\x1b[2J\\x1b[H\\uf07b'). Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ac1d2e0aa5981b93576fc149bf9729bda291d679f59ca3eb12fbd98a2230c334"}},{"id":"13:47:browser-event-input:6","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":47,"end_line":49,"start":1567,"end":1689,"source":"page.evaluate(\n () => new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve)))\n )","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":47,"end_line":49,"start":1567,"end":1689},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":24,"title":"opens on a stalled font and replaces cached fallback glyphs when it finally arrives"},"affected_case_lines":[],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":48,"end_line":48,"start":1590,"end":1681,"source":"() => new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve)))","value":{"kind":"source-expression","source":"() => new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve)))"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve))). Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ac1d2e0aa5981b93576fc149bf9729bda291d679f59ca3eb12fbd98a2230c334"}},{"id":"13:52:fixture-or-oracle-declaration:7","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":52,"end_line":52,"start":1778,"end":1830,"source":"{ x: box.x, y: box.y, width: 20, height: 20 }","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":52,"end_line":52,"start":1785,"end":1830},"binding":"clip","resolution":[],"enclosing_case":{"line":24,"title":"opens on a stalled font and replaces cached fallback glyphs when it finally arrives"},"affected_case_lines":[],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":52,"end_line":52,"start":1787,"end":1795,"source":"x: box.x","value":{"kind":"property","key":"x","value":{"kind":"source-expression","source":"box.x"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: x: box.x. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":52,"end_line":52,"start":1797,"end":1805,"source":"y: box.y","value":{"kind":"property","key":"y","value":{"kind":"source-expression","source":"box.y"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: y: box.y. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":52,"end_line":52,"start":1807,"end":1816,"source":"width: 20","value":{"kind":"property","key":"width","value":{"kind":"number","value":20}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: width: 20. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":52,"end_line":52,"start":1818,"end":1828,"source":"height: 20","value":{"kind":"property","key":"height","value":{"kind":"number","value":20}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: height: 20. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ac1d2e0aa5981b93576fc149bf9729bda291d679f59ca3eb12fbd98a2230c334"}},{"id":"13:56:browser-event-input:8","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":56,"end_line":59,"start":2046,"end":2156,"source":"cdp.send('Page.captureScreenshot', {\n format: 'png',\n clip: { ...clip, scale: 1 }\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":56,"end_line":59,"start":2046,"end":2156},"binding":"cdp.send","resolution":[],"enclosing_case":{"line":24,"title":"opens on a stalled font and replaces cached fallback glyphs when it finally arrives"},"affected_case_lines":[],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":56,"end_line":56,"start":2055,"end":2079,"source":"'Page.captureScreenshot'","value":{"kind":"string","value":"Page.captureScreenshot"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'Page.captureScreenshot'. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":56,"end_line":59,"start":2081,"end":2155,"source":"{\n format: 'png',\n clip: { ...clip, scale: 1 }\n }","value":{"kind":"object","value":[{"key":"format","value":{"kind":"string","value":"png"}},{"key":"clip","value":{"kind":"object","value":[{"source":"...clip"},{"key":"scale","value":{"kind":"number","value":1}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { format: 'png', clip: { ...clip, scale: 1 } }. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ac1d2e0aa5981b93576fc149bf9729bda291d679f59ca3eb12fbd98a2230c334"}},{"id":"13:69:browser-event-input:9","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":69,"end_line":71,"start":2458,"end":2580,"source":"page.evaluate(\n () => new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve)))\n )","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":69,"end_line":71,"start":2458,"end":2580},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":24,"title":"opens on a stalled font and replaces cached fallback glyphs when it finally arrives"},"affected_case_lines":[],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":70,"end_line":70,"start":2481,"end":2572,"source":"() => new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve)))","value":{"kind":"source-expression","source":"() => new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve)))"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve))). Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ac1d2e0aa5981b93576fc149bf9729bda291d679f59ca3eb12fbd98a2230c334"}},{"id":"13:76:browser-event-input:10","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":76,"end_line":76,"start":2755,"end":2813,"source":"page.evaluate(() => globalThis.__orcaTerminalEngineErrors)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":76,"end_line":76,"start":2755,"end":2813},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":24,"title":"opens on a stalled font and replaces cached fallback glyphs when it finally arrives"},"affected_case_lines":[],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":76,"end_line":76,"start":2769,"end":2812,"source":"() => globalThis.__orcaTerminalEngineErrors","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalEngineErrors"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalEngineErrors. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: opens on a stalled font and replaces cached fallback glyphs when it finally arrives.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ac1d2e0aa5981b93576fc149bf9729bda291d679f59ca3eb12fbd98a2230c334"}},{"id":"13:84:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":84,"end_line":98,"start":3010,"end":3521,"source":"openTerminal({\n beforeNavigate: async (page) => {\n await page.route('**/*', async (route) => {\n const response = await route.fetch()\n const headers = response.headers()\n if (headers['content-security-policy']) {\n headers['content-security-policy'] = headers['content-security-policy'].replace(\n /font-src[^;]+/,\n \"font-src 'none'\"\n )\n }\n await route.fulfill({ response, headers })\n })\n }\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":84,"end_line":98,"start":3010,"end":3521},"binding":"openTerminal","resolution":[],"enclosing_case":{"line":83,"title":"still opens under an older shell that refuses fonts"},"affected_case_lines":[],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: still opens under an older shell that refuses fonts.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":84,"end_line":98,"start":3023,"end":3520,"source":"{\n beforeNavigate: async (page) => {\n await page.route('**/*', async (route) => {\n const response = await route.fetch()\n const headers = response.headers()\n if (headers['content-security-policy']) {\n headers['content-security-policy'] = headers['content-security-policy'].replace(\n /font-src[^;]+/,\n \"font-src 'none'\"\n )\n }\n await route.fulfill({ response, headers })\n })\n }\n }","value":{"kind":"object","value":[{"key":"beforeNavigate","value":{"kind":"source-expression","source":"async (page) => {\n await page.route('**/*', async (route) => {\n const response = await route.fetch()\n const headers = response.headers()\n if (headers['content-security-policy']) {\n headers['content-security-policy'] = headers['content-security-policy'].replace(\n /font-src[^;]+/,\n \"font-src 'none'\"\n )\n }\n await route.fulfill({ response, headers })\n })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { beforeNavigate: async (page) => { await page.route('**/*', async (route) => { const response = await route.fetch(). Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: still opens under an older shell that refuses fonts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ac1d2e0aa5981b93576fc149bf9729bda291d679f59ca3eb12fbd98a2230c334"}},{"id":"13:100:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":100,"end_line":100,"start":3544,"end":3567,"source":"openProbeTerminal(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":100,"end_line":100,"start":3544,"end":3567},"binding":"openProbeTerminal","resolution":[],"enclosing_case":{"line":83,"title":"still opens under an older shell that refuses fonts"},"affected_case_lines":[],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: still opens under an older shell that refuses fonts.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":100,"end_line":100,"start":3562,"end":3566,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: still opens under an older shell that refuses fonts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ac1d2e0aa5981b93576fc149bf9729bda291d679f59ca3eb12fbd98a2230c334"}},{"id":"13:103:browser-event-input:13","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":103,"end_line":103,"start":3655,"end":3739,"source":"page.evaluate(() => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0'))","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":103,"end_line":103,"start":3655,"end":3739},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":83,"title":"still opens under an older shell that refuses fonts"},"affected_case_lines":[],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: still opens under an older shell that refuses fonts.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":103,"end_line":103,"start":3669,"end":3738,"source":"() => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0')","value":{"kind":"source-expression","source":"() => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0'). Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: still opens under an older shell that refuses fonts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ac1d2e0aa5981b93576fc149bf9729bda291d679f59ca3eb12fbd98a2230c334"}},{"id":"13:105:browser-event-input:14","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":105,"end_line":105,"start":3779,"end":3837,"source":"page.evaluate(() => globalThis.__orcaTerminalEngineErrors)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":105,"end_line":105,"start":3779,"end":3837},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":83,"title":"still opens under an older shell that refuses fonts"},"affected_case_lines":[],"decision":"keep","reason":"Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: still opens under an older shell that refuses fonts.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","line":105,"end_line":105,"start":3793,"end":3836,"source":"() => globalThis.__orcaTerminalEngineErrors","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalEngineErrors"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalEngineErrors. Real browser font gating/CSP refusal exercises actual terminal startup and late glyph repaint through screenshots, with independent font availability and engine-error observations. Scenario: still opens under an older shell that refuses fonts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ac1d2e0aa5981b93576fc149bf9729bda291d679f59ca3eb12fbd98a2230c334"}}],"original_review_sha256":"100ed76a73d74dc2c6b0e7d7f3892c055a51bf161891c374f491a5fb69d32a7f","reviewer":"audit_config","reviewed_sha256":"ac1d2e0aa5981b93576fc149bf9729bda291d679f59ca3eb12fbd98a2230c334","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","final_declarations":2,"current_controls":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-font-render.test.mjs","each":[],"for_of":[],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/mobile-web-app-terminal-render-fixture.mjs"],"runtime_validation":[]}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb","declarations":12,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":14,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb","cases":[{"line":170,"title":"mounts a session-startup clear without faulting the page","decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: mounts a session-startup clear without faulting the page.","explicit_input_controls":[],"current_declaration":{"line":170,"title":"mounts a session-startup clear without faulting the page","start":6802,"end":7379},"implementation_status":"retained"},{"line":181,"title":"writes the field itself, so a drifted value is cleared without a render","decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: writes the field itself, so a drifted value is cleared without a render.","explicit_input_controls":[{"control_id":"14:187:browser-event-input:10","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":187,"source":"page.evaluate((id) => {\n document.getElementById(id).value = 'ime-preedit'\n }, LIVE_INPUT_FIELD_ID)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":187,"end_line":189,"start":7917,"end":7992,"source":"(id) => {\n document.getElementById(id).value = 'ime-preedit'\n }","value":{"kind":"source-expression","source":"(id) => {\n document.getElementById(id).value = 'ime-preedit'\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (id) => { document.getElementById(id).value = 'ime-preedit' }. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: writes the field itself, so a drifted value is cleared without a render.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":189,"end_line":189,"start":7994,"end":8013,"source":"LIVE_INPUT_FIELD_ID","value":{"kind":"reference","source":"LIVE_INPUT_FIELD_ID","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-live-input-probe-route.mjs","line":18,"end_line":18,"start":1065,"end":1089},"resolved":{"kind":"string","value":"live-input-probe-field"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: LIVE_INPUT_FIELD_ID. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: writes the field itself, so a drifted value is cleared without a render.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: writes the field itself, so a drifted value is cleared without a render.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:192:browser-event-input:11","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":192,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.clear())","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":192,"end_line":192,"start":8099,"end":8144,"source":"() => globalThis.__orcaLiveInputProbe.clear()","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.clear()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.clear(). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: writes the field itself, so a drifted value is cleared without a render.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: writes the field itself, so a drifted value is cleared without a render.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":181,"title":"writes the field itself, so a drifted value is cleared without a render","start":7385,"end":8266},"implementation_status":"retained"},{"line":199,"title":"clears the field when Enter submits, the way it does natively","decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when Enter submits, the way it does natively.","explicit_input_controls":[{"control_id":"14:205:browser-event-input:12","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":205,"source":"page.keyboard.type('ls')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":205,"end_line":205,"start":8782,"end":8786,"source":"'ls'","value":{"kind":"string","value":"ls"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'ls'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when Enter submits, the way it does natively.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when Enter submits, the way it does natively.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:212:browser-event-input:13","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":212,"source":"page.keyboard.press('Enter')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":212,"end_line":212,"start":8995,"end":9002,"source":"'Enter'","value":{"kind":"string","value":"Enter"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'Enter'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when Enter submits, the way it does natively.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when Enter submits, the way it does natively.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:221:browser-event-input:14","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":221,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.sent())","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":221,"end_line":221,"start":9415,"end":9459,"source":"() => globalThis.__orcaLiveInputProbe.sent()","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.sent()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.sent(). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when Enter submits, the way it does natively.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when Enter submits, the way it does natively.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":199,"title":"clears the field when Enter submits, the way it does natively","start":8272,"end":9639},"implementation_status":"retained"},{"line":231,"title":"submits when Enter arrives with the keyboard composition still open","decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: submits when Enter arrives with the keyboard composition still open.","explicit_input_controls":[{"control_id":"14:239:browser-event-input:15","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":239,"source":"input.send('Input.imeSetComposition', {\n text: 'ls',\n selectionStart: 2,\n selectionEnd: 2\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":239,"end_line":239,"start":10294,"end":10319,"source":"'Input.imeSetComposition'","value":{"kind":"string","value":"Input.imeSetComposition"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'Input.imeSetComposition'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: submits when Enter arrives with the keyboard composition still open.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":239,"end_line":243,"start":10321,"end":10401,"source":"{\n text: 'ls',\n selectionStart: 2,\n selectionEnd: 2\n }","value":{"kind":"object","value":[{"key":"text","value":{"kind":"string","value":"ls"}},{"key":"selectionStart","value":{"kind":"number","value":2}},{"key":"selectionEnd","value":{"kind":"number","value":2}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { text: 'ls', selectionStart: 2, selectionEnd: 2 }. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: submits when Enter arrives with the keyboard composition still open.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: submits when Enter arrives with the keyboard composition still open.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:250:browser-event-input:16","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":250,"source":"page.keyboard.press('Enter')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":250,"end_line":250,"start":10610,"end":10617,"source":"'Enter'","value":{"kind":"string","value":"Enter"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'Enter'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: submits when Enter arrives with the keyboard composition still open.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: submits when Enter arrives with the keyboard composition still open.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:259:browser-event-input:17","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":259,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.sent())","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":259,"end_line":259,"start":10994,"end":11038,"source":"() => globalThis.__orcaLiveInputProbe.sent()","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.sent()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.sent(). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: submits when Enter arrives with the keyboard composition still open.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: submits when Enter arrives with the keyboard composition still open.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":231,"title":"submits when Enter arrives with the keyboard composition still open","start":9645,"end":11206},"implementation_status":"retained"},{"line":268,"title":"clears the field when the key bar's Enter chip ends the line","decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when the key bar's Enter chip ends the line.","explicit_input_controls":[{"control_id":"14:275:browser-event-input:18","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":275,"source":"page.keyboard.type('ls')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":275,"end_line":275,"start":11780,"end":11784,"source":"'ls'","value":{"kind":"string","value":"ls"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'ls'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when the key bar's Enter chip ends the line.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when the key bar's Enter chip ends the line.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:282:browser-event-input:19","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":282,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\r' }))","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":282,"end_line":282,"start":11987,"end":12051,"source":"() => globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\r' })","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\r' })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\r' }). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when the key bar's Enter chip ends the line.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when the key bar's Enter chip ends the line.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:291:browser-event-input:20","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":291,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.sent())","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":291,"end_line":291,"start":12437,"end":12481,"source":"() => globalThis.__orcaLiveInputProbe.sent()","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.sent()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.sent(). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when the key bar's Enter chip ends the line.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when the key bar's Enter chip ends the line.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":268,"title":"clears the field when the key bar's Enter chip ends the line","start":11212,"end":12661},"implementation_status":"retained"},{"line":301,"title":"edits the field from the accessory bar and mirrors the erase to the terminal","decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: edits the field from the accessory bar and mirrors the erase to the terminal.","explicit_input_controls":[{"control_id":"14:306:inline-api-or-fixture-input:21","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":306,"source":"typeIntoField(page, 'ab')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":306,"end_line":306,"start":13106,"end":13110,"source":"page","value":{"kind":"reference","source":"page","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":116,"end_line":119,"start":5020,"end":5131},"resolved":{"kind":"source-expression","source":"await browser.newPage({\n viewport: { width: 390, height: 844 },\n ...(userAgent ? { userAgent } : {})\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: edits the field from the accessory bar and mirrors the erase to the terminal.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":306,"end_line":306,"start":13112,"end":13116,"source":"'ab'","value":{"kind":"string","value":"ab"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'ab'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: edits the field from the accessory bar and mirrors the erase to the terminal.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: edits the field from the accessory bar and mirrors the erase to the terminal.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:308:browser-event-input:22","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":308,"source":"page.evaluate(() =>\n globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\u007f', localEdit: 'backspace' })\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":308,"end_line":309,"start":13160,"end":13260,"source":"() =>\n globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\u007f', localEdit: 'backspace' })","value":{"kind":"source-expression","source":"() =>\n globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\u007f', localEdit: 'backspace' })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\u007f', localEdit: 'backspace' }). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: edits the field from the accessory bar and mirrors the erase to the terminal.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: edits the field from the accessory bar and mirrors the erase to the terminal.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:320:browser-event-input:23","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":320,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.sent())","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":320,"end_line":320,"start":13678,"end":13722,"source":"() => globalThis.__orcaLiveInputProbe.sent()","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.sent()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.sent(). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: edits the field from the accessory bar and mirrors the erase to the terminal.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: edits the field from the accessory bar and mirrors the erase to the terminal.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":301,"title":"edits the field from the accessory bar and mirrors the erase to the terminal","start":12667,"end":13848},"implementation_status":"retained"},{"line":353,"title":"sends each letter of a composed word after a slash as it is typed","decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","explicit_input_controls":[{"control_id":"14:359:browser-event-input:26","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":359,"source":"page.keyboard.type('/')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":359,"end_line":359,"start":15628,"end":15631,"source":"'/'","value":{"kind":"string","value":"/"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: '/'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:360:inline-api-or-fixture-input:27","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":360,"source":"waitForField(page, '/')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":360,"end_line":360,"start":15660,"end":15664,"source":"page","value":{"kind":"reference","source":"page","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":116,"end_line":119,"start":5020,"end":5131},"resolved":{"kind":"source-expression","source":"await browser.newPage({\n viewport: { width: 390, height: 844 },\n ...(userAgent ? { userAgent } : {})\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":360,"end_line":360,"start":15666,"end":15669,"source":"'/'","value":{"kind":"string","value":"/"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: '/'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:362:fixture-or-oracle-declaration:28","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":362,"source":"[]","rows":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation_rows":[]},{"control_id":"14:363:for-of:29","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":363,"source":"['t', 'tu', 'tui']","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":363,"end_line":363,"start":15733,"end":15736,"source":"'t'","value":{"kind":"string","value":"t"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 't'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":363,"end_line":363,"start":15738,"end":15742,"source":"'tu'","value":{"kind":"string","value":"tu"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'tu'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":363,"end_line":363,"start":15744,"end":15749,"source":"'tui'","value":{"kind":"string","value":"tui"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'tui'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:364:inline-api-or-fixture-input:30","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":364,"source":"compose(input, text)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":364,"end_line":364,"start":15778,"end":15783,"source":"input","value":{"kind":"reference","source":"input","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":358,"end_line":358,"start":15554,"end":15594},"resolved":{"kind":"source-expression","source":"await page.context().newCDPSession(page)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: input. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":364,"end_line":364,"start":15785,"end":15789,"source":"text","value":{"kind":"source-expression","source":"text"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: text. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:365:inline-api-or-fixture-input:31","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":365,"source":"waitForField(page, `/${text}`)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":365,"end_line":365,"start":15820,"end":15824,"source":"page","value":{"kind":"reference","source":"page","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":116,"end_line":119,"start":5020,"end":5131},"resolved":{"kind":"source-expression","source":"await browser.newPage({\n viewport: { width: 390, height: 844 },\n ...(userAgent ? { userAgent } : {})\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":365,"end_line":365,"start":15826,"end":15836,"source":"`/${text}`","value":{"kind":"source-expression","source":"`/${text}`"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: `/${text}`. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:368:browser-event-input:32","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":368,"source":"input.send('Input.insertText', { text: 'tui' })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":368,"end_line":368,"start":15920,"end":15938,"source":"'Input.insertText'","value":{"kind":"string","value":"Input.insertText"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'Input.insertText'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":368,"end_line":368,"start":15940,"end":15955,"source":"{ text: 'tui' }","value":{"kind":"object","value":[{"key":"text","value":{"kind":"string","value":"tui"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { text: 'tui' }. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:369:inline-api-or-fixture-input:33","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":369,"source":"waitForField(page, '/tui')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":369,"end_line":369,"start":15984,"end":15988,"source":"page","value":{"kind":"reference","source":"page","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":116,"end_line":119,"start":5020,"end":5131},"resolved":{"kind":"source-expression","source":"await browser.newPage({\n viewport: { width: 390, height: 844 },\n ...(userAgent ? { userAgent } : {})\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":369,"end_line":369,"start":15990,"end":15996,"source":"'/tui'","value":{"kind":"string","value":"/tui"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: '/tui'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":353,"title":"sends each letter of a composed word after a slash as it is typed","start":15104,"end":16272},"implementation_status":"retained"},{"line":381,"title":"erases and retypes a word the keyboard corrects when it commits","decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","explicit_input_controls":[{"control_id":"14:385:for-of:34","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":385,"source":"['t', 'te', 'teh']","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":385,"end_line":385,"start":16599,"end":16602,"source":"'t'","value":{"kind":"string","value":"t"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 't'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":385,"end_line":385,"start":16604,"end":16608,"source":"'te'","value":{"kind":"string","value":"te"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'te'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":385,"end_line":385,"start":16610,"end":16615,"source":"'teh'","value":{"kind":"string","value":"teh"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'teh'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:386:inline-api-or-fixture-input:35","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":386,"source":"compose(input, text)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":386,"end_line":386,"start":16644,"end":16649,"source":"input","value":{"kind":"reference","source":"input","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":384,"end_line":384,"start":16530,"end":16570},"resolved":{"kind":"source-expression","source":"await page.context().newCDPSession(page)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: input. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":386,"end_line":386,"start":16651,"end":16655,"source":"text","value":{"kind":"source-expression","source":"text"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: text. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:387:inline-api-or-fixture-input:36","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":387,"source":"waitForField(page, text)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":387,"end_line":387,"start":16686,"end":16690,"source":"page","value":{"kind":"reference","source":"page","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":116,"end_line":119,"start":5020,"end":5131},"resolved":{"kind":"source-expression","source":"await browser.newPage({\n viewport: { width: 390, height: 844 },\n ...(userAgent ? { userAgent } : {})\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":387,"end_line":387,"start":16692,"end":16696,"source":"text","value":{"kind":"source-expression","source":"text"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: text. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:390:browser-event-input:37","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":390,"source":"input.send('Input.insertText', { text: 'the' })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":390,"end_line":390,"start":16734,"end":16752,"source":"'Input.insertText'","value":{"kind":"string","value":"Input.insertText"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'Input.insertText'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":390,"end_line":390,"start":16754,"end":16769,"source":"{ text: 'the' }","value":{"kind":"object","value":[{"key":"text","value":{"kind":"string","value":"the"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { text: 'the' }. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:391:inline-api-or-fixture-input:38","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":391,"source":"waitForField(page, 'the')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":391,"end_line":391,"start":16798,"end":16802,"source":"page","value":{"kind":"reference","source":"page","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":116,"end_line":119,"start":5020,"end":5131},"resolved":{"kind":"source-expression","source":"await browser.newPage({\n viewport: { width: 390, height: 844 },\n ...(userAgent ? { userAgent } : {})\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":391,"end_line":391,"start":16804,"end":16809,"source":"'the'","value":{"kind":"string","value":"the"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'the'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":381,"title":"erases and retypes a word the keyboard corrects when it commits","start":16280,"end":17180},"implementation_status":"retained"},{"line":406,"title":"still holds a composition off Android, where it is the text system's marked text","decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: still holds a composition off Android, where it is the text system's marked text.","explicit_input_controls":[{"control_id":"14:415:for-of:39","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":415,"source":"['n', 'ni']","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":415,"end_line":415,"start":17814,"end":17817,"source":"'n'","value":{"kind":"string","value":"n"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'n'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: still holds a composition off Android, where it is the text system's marked text.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":415,"end_line":415,"start":17819,"end":17823,"source":"'ni'","value":{"kind":"string","value":"ni"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'ni'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: still holds a composition off Android, where it is the text system's marked text.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: still holds a composition off Android, where it is the text system's marked text.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:416:inline-api-or-fixture-input:40","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":416,"source":"compose(input, text)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":416,"end_line":416,"start":17852,"end":17857,"source":"input","value":{"kind":"reference","source":"input","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":414,"end_line":414,"start":17745,"end":17785},"resolved":{"kind":"source-expression","source":"await page.context().newCDPSession(page)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: input. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: still holds a composition off Android, where it is the text system's marked text.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":416,"end_line":416,"start":17859,"end":17863,"source":"text","value":{"kind":"source-expression","source":"text"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: text. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: still holds a composition off Android, where it is the text system's marked text.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: still holds a composition off Android, where it is the text system's marked text.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:417:inline-api-or-fixture-input:41","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":417,"source":"waitForField(page, text)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":417,"end_line":417,"start":17894,"end":17898,"source":"page","value":{"kind":"reference","source":"page","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":116,"end_line":119,"start":5020,"end":5131},"resolved":{"kind":"source-expression","source":"await browser.newPage({\n viewport: { width: 390, height: 844 },\n ...(userAgent ? { userAgent } : {})\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: still holds a composition off Android, where it is the text system's marked text.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":417,"end_line":417,"start":17900,"end":17904,"source":"text","value":{"kind":"source-expression","source":"text"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: text. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: still holds a composition off Android, where it is the text system's marked text.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: still holds a composition off Android, where it is the text system's marked text.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":406,"title":"still holds a composition off Android, where it is the text system's marked text","start":17188,"end":18041},"implementation_status":"retained"},{"line":430,"title":"sends the draft and empties the field on a plain Enter","decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft and empties the field on a plain Enter.","explicit_input_controls":[{"control_id":"14:437:browser-event-input:43","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":437,"source":"page.keyboard.type('ls -la')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":437,"end_line":437,"start":18796,"end":18804,"source":"'ls -la'","value":{"kind":"string","value":"ls -la"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'ls -la'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft and empties the field on a plain Enter.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft and empties the field on a plain Enter.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:439:browser-event-input:44","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":439,"source":"page.keyboard.press('Enter')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":439,"end_line":439,"start":18841,"end":18848,"source":"'Enter'","value":{"kind":"string","value":"Enter"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'Enter'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft and empties the field on a plain Enter.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft and empties the field on a plain Enter.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:446:browser-event-input:45","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":446,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.bufferedSent())","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":446,"end_line":446,"start":19066,"end":19118,"source":"() => globalThis.__orcaLiveInputProbe.bufferedSent()","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.bufferedSent()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.bufferedSent(). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft and empties the field on a plain Enter.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft and empties the field on a plain Enter.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":430,"title":"sends the draft and empties the field on a plain Enter","start":18274,"end":19240},"implementation_status":"retained"},{"line":453,"title":"sends the draft when Enter arrives with the keyboard composition still open","decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft when Enter arrives with the keyboard composition still open.","explicit_input_controls":[{"control_id":"14:460:browser-event-input:46","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":460,"source":"input.send('Input.imeSetComposition', {\n text: 'ls -la',\n selectionStart: 6,\n selectionEnd: 6\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":460,"end_line":460,"start":19789,"end":19814,"source":"'Input.imeSetComposition'","value":{"kind":"string","value":"Input.imeSetComposition"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'Input.imeSetComposition'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft when Enter arrives with the keyboard composition still open.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":460,"end_line":464,"start":19816,"end":19908,"source":"{\n text: 'ls -la',\n selectionStart: 6,\n selectionEnd: 6\n }","value":{"kind":"object","value":[{"key":"text","value":{"kind":"string","value":"ls -la"}},{"key":"selectionStart","value":{"kind":"number","value":6}},{"key":"selectionEnd","value":{"kind":"number","value":6}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { text: 'ls -la', selectionStart: 6, selectionEnd: 6 }. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft when Enter arrives with the keyboard composition still open.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft when Enter arrives with the keyboard composition still open.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:471:browser-event-input:47","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":471,"source":"page.keyboard.press('Enter')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":471,"end_line":471,"start":20131,"end":20138,"source":"'Enter'","value":{"kind":"string","value":"Enter"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'Enter'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft when Enter arrives with the keyboard composition still open.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft when Enter arrives with the keyboard composition still open.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:478:browser-event-input:48","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":478,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.bufferedSent())","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":478,"end_line":478,"start":20370,"end":20422,"source":"() => globalThis.__orcaLiveInputProbe.bufferedSent()","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.bufferedSent()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.bufferedSent(). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft when Enter arrives with the keyboard composition still open.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft when Enter arrives with the keyboard composition still open.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":453,"title":"sends the draft when Enter arrives with the keyboard composition still open","start":19248,"end":20595},"implementation_status":"retained"},{"line":486,"title":"leaves the draft alone when the key bar's Enter chip fires","decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: leaves the draft alone when the key bar's Enter chip fires.","explicit_input_controls":[{"control_id":"14:491:browser-event-input:49","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":491,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.setLiveInputEnabled(false))","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":491,"end_line":491,"start":21004,"end":21068,"source":"() => globalThis.__orcaLiveInputProbe.setLiveInputEnabled(false)","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.setLiveInputEnabled(false)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.setLiveInputEnabled(false). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: leaves the draft alone when the key bar's Enter chip fires.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: leaves the draft alone when the key bar's Enter chip fires.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:493:browser-event-input:50","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":493,"source":"page.keyboard.type('ls -la')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":493,"end_line":493,"start":21153,"end":21161,"source":"'ls -la'","value":{"kind":"string","value":"ls -la"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'ls -la'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: leaves the draft alone when the key bar's Enter chip fires.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: leaves the draft alone when the key bar's Enter chip fires.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:495:browser-event-input:51","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":495,"source":"page.evaluate(() =>\n globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\r' })\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":495,"end_line":496,"start":21207,"end":21281,"source":"() =>\n globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\r' })","value":{"kind":"source-expression","source":"() =>\n globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\r' })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\r' }). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: leaves the draft alone when the key bar's Enter chip fires.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: leaves the draft alone when the key bar's Enter chip fires.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:500:browser-event-input:52","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":500,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.sent())","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":500,"end_line":500,"start":21382,"end":21426,"source":"() => globalThis.__orcaLiveInputProbe.sent()","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.sent()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.sent(). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: leaves the draft alone when the key bar's Enter chip fires.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: leaves the draft alone when the key bar's Enter chip fires.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"14:501:browser-event-input:53","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":501,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.bufferedSent())","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":501,"end_line":501,"start":21480,"end":21532,"source":"() => globalThis.__orcaLiveInputProbe.bufferedSent()","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.bufferedSent()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.bufferedSent(). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: leaves the draft alone when the key bar's Enter chip fires.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: leaves the draft alone when the key bar's Enter chip fires.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":486,"title":"leaves the draft alone when the key bar's Enter chip fires","start":20603,"end":21703},"implementation_status":"retained"}],"lines":512,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","planned_changes":[],"production_evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/mobile-web-app-route-manifest.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-live-input-probe-route.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-render-harness.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-terminal-probe-route.mjs"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"14:49:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":49,"end_line":54,"start":2679,"end":2797,"source":"{\n id: 'live-input-host',\n name: 'Live Input Host',\n endpoint: 'ws://live-input',\n lastConnected: 1\n}","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":49,"end_line":54,"start":2692,"end":2797},"binding":"SHELL_HOST","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":50,"end_line":50,"start":2696,"end":2717,"source":"id: 'live-input-host'","value":{"kind":"property","key":"id","value":{"kind":"string","value":"live-input-host"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: id: 'live-input-host'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":51,"end_line":51,"start":2721,"end":2744,"source":"name: 'Live Input Host'","value":{"kind":"property","key":"name","value":{"kind":"string","value":"Live Input Host"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: name: 'Live Input Host'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":52,"end_line":52,"start":2748,"end":2775,"source":"endpoint: 'ws://live-input'","value":{"kind":"property","key":"endpoint","value":{"kind":"string","value":"ws://live-input"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: endpoint: 'ws://live-input'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":53,"end_line":53,"start":2779,"end":2795,"source":"lastConnected: 1","value":{"kind":"property","key":"lastConnected","value":{"kind":"number","value":1}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: lastConnected: 1. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:83:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":83,"end_line":87,"start":3810,"end":4069,"source":"liveInputProbeRouteSource({\n bindingModule: join(terminalDir, 'use-terminal-text-field-submit-binding'),\n commitModule: join(terminalDir, 'use-terminal-live-input-commit'),\n draftsModule: join(terminalDir, 'use-buffered-terminal-drafts')\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":83,"end_line":87,"start":3810,"end":4069},"binding":"liveInputProbeRouteSource","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":83,"end_line":87,"start":3836,"end":4068,"source":"{\n bindingModule: join(terminalDir, 'use-terminal-text-field-submit-binding'),\n commitModule: join(terminalDir, 'use-terminal-live-input-commit'),\n draftsModule: join(terminalDir, 'use-buffered-terminal-drafts')\n }","value":{"kind":"object","value":[{"key":"bindingModule","value":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"terminalDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":71,"end_line":71,"start":3182,"end":3227},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"projectDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":70,"end_line":70,"start":3108,"end":3159},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../..', import.meta.url)"}],"source":"fileURLToPath(new URL('../../..', import.meta.url))"}},{"kind":"string","value":"mobile"},{"kind":"string","value":"src"},{"kind":"string","value":"terminal"}],"source":"join(projectDir, 'mobile', 'src', 'terminal')"}},{"kind":"string","value":"use-terminal-text-field-submit-binding"}],"source":"join(terminalDir, 'use-terminal-text-field-submit-binding')"}},{"key":"commitModule","value":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"terminalDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":71,"end_line":71,"start":3182,"end":3227},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"projectDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":70,"end_line":70,"start":3108,"end":3159},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../..', import.meta.url)"}],"source":"fileURLToPath(new URL('../../..', import.meta.url))"}},{"kind":"string","value":"mobile"},{"kind":"string","value":"src"},{"kind":"string","value":"terminal"}],"source":"join(projectDir, 'mobile', 'src', 'terminal')"}},{"kind":"string","value":"use-terminal-live-input-commit"}],"source":"join(terminalDir, 'use-terminal-live-input-commit')"}},{"key":"draftsModule","value":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"terminalDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":71,"end_line":71,"start":3182,"end":3227},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"projectDir","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":70,"end_line":70,"start":3108,"end":3159},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../..', import.meta.url)"}],"source":"fileURLToPath(new URL('../../..', import.meta.url))"}},{"kind":"string","value":"mobile"},{"kind":"string","value":"src"},{"kind":"string","value":"terminal"}],"source":"join(projectDir, 'mobile', 'src', 'terminal')"}},{"kind":"string","value":"use-buffered-terminal-drafts"}],"source":"join(terminalDir, 'use-buffered-terminal-drafts')"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { bindingModule: join(terminalDir, 'use-terminal-text-field-submit-binding'), commitModule: join(terminalDir, 'use-terminal-live. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:89:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":89,"end_line":93,"start":4096,"end":4231,"source":"buildMobileWebAppBundle({\n appDir,\n outDir: join(scratch, 'bundle'),\n pageRoutes: [{ pathname: PROBE_ROUTE, grants: [] }]\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":89,"end_line":93,"start":4096,"end":4231},"binding":"buildMobileWebAppBundle","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":89,"end_line":93,"start":4120,"end":4230,"source":"{\n appDir,\n outDir: join(scratch, 'bundle'),\n pageRoutes: [{ pathname: PROBE_ROUTE, grants: [] }]\n }","value":{"kind":"object","value":[{"source":"appDir"},{"key":"outDir","value":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"scratch","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":61,"end_line":61,"start":2959,"end":2963},"resolved":{"kind":"null","value":null}},{"kind":"string","value":"bundle"}],"source":"join(scratch, 'bundle')"}},{"key":"pageRoutes","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"pathname","value":{"kind":"reference","source":"PROBE_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":48,"end_line":48,"start":2624,"end":2672},"resolved":{"kind":"source-expression","source":"`/${MOBILE_WEB_APP_ROUTE_ROOT}/live-input-probe`"}}},{"key":"grants","value":{"kind":"array","value":[]}}]}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { appDir, outDir: join(scratch, 'bundle'), pageRoutes: [{ pathname: PROBE_ROUTE, grants: [] }] }. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:94:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":94,"end_line":94,"start":4255,"end":4310,"source":"createBundleServer({ outDir: built.outDir, cspHeader })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":94,"end_line":94,"start":4255,"end":4310},"binding":"createBundleServer","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":94,"end_line":94,"start":4274,"end":4309,"source":"{ outDir: built.outDir, cspHeader }","value":{"kind":"object","value":[{"key":"outDir","value":{"kind":"source-expression","source":"built.outDir"}},{"source":"cspHeader"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { outDir: built.outDir, cspHeader }. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:132:fixture-or-oracle-declaration:5","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":132,"end_line":132,"start":5470,"end":5481,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":132,"end_line":132,"start":5479,"end":5481},"binding":"errors","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:150:browser-event-input:6","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":150,"end_line":150,"start":6120,"end":6181,"source":"page.evaluate(() => globalThis.__orcaRenderCheckFaults ?? [])","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":150,"end_line":150,"start":6120,"end":6181},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":150,"end_line":150,"start":6134,"end":6180,"source":"() => globalThis.__orcaRenderCheckFaults ?? []","value":{"kind":"source-expression","source":"() => globalThis.__orcaRenderCheckFaults ?? []"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaRenderCheckFaults ?? []. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:155:browser-event-input:7","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":155,"end_line":155,"start":6250,"end":6336,"source":"page.evaluate((id) => document.getElementById(id)?.value ?? null, LIVE_INPUT_FIELD_ID)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":155,"end_line":155,"start":6250,"end":6336},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":155,"end_line":155,"start":6264,"end":6314,"source":"(id) => document.getElementById(id)?.value ?? null","value":{"kind":"source-expression","source":"(id) => document.getElementById(id)?.value ?? null"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (id) => document.getElementById(id)?.value ?? null. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":155,"end_line":155,"start":6316,"end":6335,"source":"LIVE_INPUT_FIELD_ID","value":{"kind":"reference","source":"LIVE_INPUT_FIELD_ID","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-live-input-probe-route.mjs","line":18,"end_line":18,"start":1065,"end":1089},"resolved":{"kind":"string","value":"live-input-probe-field"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: LIVE_INPUT_FIELD_ID. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:159:browser-event-input:8","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":159,"end_line":159,"start":6480,"end":6555,"source":"page.evaluate((typed) => globalThis.__orcaLiveInputProbe.type(typed), text)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":159,"end_line":159,"start":6480,"end":6555},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":159,"end_line":159,"start":6494,"end":6548,"source":"(typed) => globalThis.__orcaLiveInputProbe.type(typed)","value":{"kind":"source-expression","source":"(typed) => globalThis.__orcaLiveInputProbe.type(typed)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (typed) => globalThis.__orcaLiveInputProbe.type(typed). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":159,"end_line":159,"start":6550,"end":6554,"source":"text","value":{"kind":"source-expression","source":"text"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: text. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:159:browser-event-input:9","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":159,"end_line":159,"start":6505,"end":6548,"source":"globalThis.__orcaLiveInputProbe.type(typed)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":159,"end_line":159,"start":6505,"end":6548},"binding":"globalThis.__orcaLiveInputProbe.type","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":159,"end_line":159,"start":6542,"end":6547,"source":"typed","value":{"kind":"source-expression","source":"typed"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: typed. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:187:browser-event-input:10","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":187,"end_line":189,"start":7903,"end":8014,"source":"page.evaluate((id) => {\n document.getElementById(id).value = 'ime-preedit'\n }, LIVE_INPUT_FIELD_ID)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":187,"end_line":189,"start":7903,"end":8014},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":181,"title":"writes the field itself, so a drifted value is cleared without a render"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: writes the field itself, so a drifted value is cleared without a render.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":187,"end_line":189,"start":7917,"end":7992,"source":"(id) => {\n document.getElementById(id).value = 'ime-preedit'\n }","value":{"kind":"source-expression","source":"(id) => {\n document.getElementById(id).value = 'ime-preedit'\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (id) => { document.getElementById(id).value = 'ime-preedit' }. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: writes the field itself, so a drifted value is cleared without a render.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":189,"end_line":189,"start":7994,"end":8013,"source":"LIVE_INPUT_FIELD_ID","value":{"kind":"reference","source":"LIVE_INPUT_FIELD_ID","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-live-input-probe-route.mjs","line":18,"end_line":18,"start":1065,"end":1089},"resolved":{"kind":"string","value":"live-input-probe-field"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: LIVE_INPUT_FIELD_ID. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: writes the field itself, so a drifted value is cleared without a render.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:192:browser-event-input:11","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":192,"end_line":192,"start":8085,"end":8145,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.clear())","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":192,"end_line":192,"start":8085,"end":8145},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":181,"title":"writes the field itself, so a drifted value is cleared without a render"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: writes the field itself, so a drifted value is cleared without a render.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":192,"end_line":192,"start":8099,"end":8144,"source":"() => globalThis.__orcaLiveInputProbe.clear()","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.clear()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.clear(). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: writes the field itself, so a drifted value is cleared without a render.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:205:browser-event-input:12","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":205,"end_line":205,"start":8763,"end":8787,"source":"page.keyboard.type('ls')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":205,"end_line":205,"start":8763,"end":8787},"binding":"page.keyboard.type","resolution":[],"enclosing_case":{"line":199,"title":"clears the field when Enter submits, the way it does natively"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when Enter submits, the way it does natively.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":205,"end_line":205,"start":8782,"end":8786,"source":"'ls'","value":{"kind":"string","value":"ls"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'ls'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when Enter submits, the way it does natively.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:212:browser-event-input:13","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":212,"end_line":212,"start":8975,"end":9003,"source":"page.keyboard.press('Enter')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":212,"end_line":212,"start":8975,"end":9003},"binding":"page.keyboard.press","resolution":[],"enclosing_case":{"line":199,"title":"clears the field when Enter submits, the way it does natively"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when Enter submits, the way it does natively.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":212,"end_line":212,"start":8995,"end":9002,"source":"'Enter'","value":{"kind":"string","value":"Enter"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'Enter'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when Enter submits, the way it does natively.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:221:browser-event-input:14","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":221,"end_line":221,"start":9401,"end":9460,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.sent())","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":221,"end_line":221,"start":9401,"end":9460},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":199,"title":"clears the field when Enter submits, the way it does natively"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when Enter submits, the way it does natively.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":221,"end_line":221,"start":9415,"end":9459,"source":"() => globalThis.__orcaLiveInputProbe.sent()","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.sent()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.sent(). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when Enter submits, the way it does natively.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:239:browser-event-input:15","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":239,"end_line":243,"start":10283,"end":10402,"source":"input.send('Input.imeSetComposition', {\n text: 'ls',\n selectionStart: 2,\n selectionEnd: 2\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":239,"end_line":243,"start":10283,"end":10402},"binding":"input.send","resolution":[],"enclosing_case":{"line":231,"title":"submits when Enter arrives with the keyboard composition still open"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: submits when Enter arrives with the keyboard composition still open.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":239,"end_line":239,"start":10294,"end":10319,"source":"'Input.imeSetComposition'","value":{"kind":"string","value":"Input.imeSetComposition"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'Input.imeSetComposition'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: submits when Enter arrives with the keyboard composition still open.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":239,"end_line":243,"start":10321,"end":10401,"source":"{\n text: 'ls',\n selectionStart: 2,\n selectionEnd: 2\n }","value":{"kind":"object","value":[{"key":"text","value":{"kind":"string","value":"ls"}},{"key":"selectionStart","value":{"kind":"number","value":2}},{"key":"selectionEnd","value":{"kind":"number","value":2}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { text: 'ls', selectionStart: 2, selectionEnd: 2 }. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: submits when Enter arrives with the keyboard composition still open.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:250:browser-event-input:16","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":250,"end_line":250,"start":10590,"end":10618,"source":"page.keyboard.press('Enter')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":250,"end_line":250,"start":10590,"end":10618},"binding":"page.keyboard.press","resolution":[],"enclosing_case":{"line":231,"title":"submits when Enter arrives with the keyboard composition still open"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: submits when Enter arrives with the keyboard composition still open.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":250,"end_line":250,"start":10610,"end":10617,"source":"'Enter'","value":{"kind":"string","value":"Enter"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'Enter'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: submits when Enter arrives with the keyboard composition still open.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:259:browser-event-input:17","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":259,"end_line":259,"start":10980,"end":11039,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.sent())","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":259,"end_line":259,"start":10980,"end":11039},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":231,"title":"submits when Enter arrives with the keyboard composition still open"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: submits when Enter arrives with the keyboard composition still open.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":259,"end_line":259,"start":10994,"end":11038,"source":"() => globalThis.__orcaLiveInputProbe.sent()","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.sent()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.sent(). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: submits when Enter arrives with the keyboard composition still open.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:275:browser-event-input:18","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":275,"end_line":275,"start":11761,"end":11785,"source":"page.keyboard.type('ls')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":275,"end_line":275,"start":11761,"end":11785},"binding":"page.keyboard.type","resolution":[],"enclosing_case":{"line":268,"title":"clears the field when the key bar's Enter chip ends the line"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when the key bar's Enter chip ends the line.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":275,"end_line":275,"start":11780,"end":11784,"source":"'ls'","value":{"kind":"string","value":"ls"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'ls'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when the key bar's Enter chip ends the line.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:282:browser-event-input:19","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":282,"end_line":282,"start":11973,"end":12052,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\r' }))","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":282,"end_line":282,"start":11973,"end":12052},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":268,"title":"clears the field when the key bar's Enter chip ends the line"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when the key bar's Enter chip ends the line.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":282,"end_line":282,"start":11987,"end":12051,"source":"() => globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\r' })","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\r' })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\r' }). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when the key bar's Enter chip ends the line.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:291:browser-event-input:20","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":291,"end_line":291,"start":12423,"end":12482,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.sent())","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":291,"end_line":291,"start":12423,"end":12482},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":268,"title":"clears the field when the key bar's Enter chip ends the line"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when the key bar's Enter chip ends the line.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":291,"end_line":291,"start":12437,"end":12481,"source":"() => globalThis.__orcaLiveInputProbe.sent()","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.sent()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.sent(). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: clears the field when the key bar's Enter chip ends the line.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:306:inline-api-or-fixture-input:21","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":306,"end_line":306,"start":13092,"end":13117,"source":"typeIntoField(page, 'ab')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":306,"end_line":306,"start":13092,"end":13117},"binding":"typeIntoField","resolution":[],"enclosing_case":{"line":301,"title":"edits the field from the accessory bar and mirrors the erase to the terminal"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: edits the field from the accessory bar and mirrors the erase to the terminal.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":306,"end_line":306,"start":13106,"end":13110,"source":"page","value":{"kind":"reference","source":"page","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":116,"end_line":119,"start":5020,"end":5131},"resolved":{"kind":"source-expression","source":"await browser.newPage({\n viewport: { width: 390, height: 844 },\n ...(userAgent ? { userAgent } : {})\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: edits the field from the accessory bar and mirrors the erase to the terminal.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":306,"end_line":306,"start":13112,"end":13116,"source":"'ab'","value":{"kind":"string","value":"ab"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'ab'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: edits the field from the accessory bar and mirrors the erase to the terminal.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:308:browser-event-input:22","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":308,"end_line":310,"start":13146,"end":13268,"source":"page.evaluate(() =>\n globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\u007f', localEdit: 'backspace' })\n )","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":308,"end_line":310,"start":13146,"end":13268},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":301,"title":"edits the field from the accessory bar and mirrors the erase to the terminal"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: edits the field from the accessory bar and mirrors the erase to the terminal.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":308,"end_line":309,"start":13160,"end":13260,"source":"() =>\n globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\u007f', localEdit: 'backspace' })","value":{"kind":"source-expression","source":"() =>\n globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\u007f', localEdit: 'backspace' })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\u007f', localEdit: 'backspace' }). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: edits the field from the accessory bar and mirrors the erase to the terminal.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:320:browser-event-input:23","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":320,"end_line":320,"start":13664,"end":13723,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.sent())","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":320,"end_line":320,"start":13664,"end":13723},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":301,"title":"edits the field from the accessory bar and mirrors the erase to the terminal"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: edits the field from the accessory bar and mirrors the erase to the terminal.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":320,"end_line":320,"start":13678,"end":13722,"source":"() => globalThis.__orcaLiveInputProbe.sent()","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.sent()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.sent(). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: edits the field from the accessory bar and mirrors the erase to the terminal.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:334:browser-event-input:24","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":334,"end_line":334,"start":14452,"end":14511,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.sent())","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":334,"end_line":334,"start":14452,"end":14511},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":334,"end_line":334,"start":14466,"end":14510,"source":"() => globalThis.__orcaLiveInputProbe.sent()","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.sent()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.sent(). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:338:browser-event-input:25","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":338,"end_line":342,"start":14681,"end":14822,"source":"input.send('Input.imeSetComposition', {\n text,\n selectionStart: text.length,\n selectionEnd: text.length\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":338,"end_line":342,"start":14681,"end":14822},"binding":"input.send","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":338,"end_line":338,"start":14692,"end":14717,"source":"'Input.imeSetComposition'","value":{"kind":"string","value":"Input.imeSetComposition"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'Input.imeSetComposition'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":338,"end_line":342,"start":14719,"end":14821,"source":"{\n text,\n selectionStart: text.length,\n selectionEnd: text.length\n }","value":{"kind":"object","value":[{"source":"text"},{"key":"selectionStart","value":{"kind":"source-expression","source":"text.length"}},{"key":"selectionEnd","value":{"kind":"source-expression","source":"text.length"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { text, selectionStart: text.length, selectionEnd: text.length }. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:359:browser-event-input:26","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":359,"end_line":359,"start":15609,"end":15632,"source":"page.keyboard.type('/')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":359,"end_line":359,"start":15609,"end":15632},"binding":"page.keyboard.type","resolution":[],"enclosing_case":{"line":353,"title":"sends each letter of a composed word after a slash as it is typed"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":359,"end_line":359,"start":15628,"end":15631,"source":"'/'","value":{"kind":"string","value":"/"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: '/'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:360:inline-api-or-fixture-input:27","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":360,"end_line":360,"start":15647,"end":15670,"source":"waitForField(page, '/')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":360,"end_line":360,"start":15647,"end":15670},"binding":"waitForField","resolution":[],"enclosing_case":{"line":353,"title":"sends each letter of a composed word after a slash as it is typed"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":360,"end_line":360,"start":15660,"end":15664,"source":"page","value":{"kind":"reference","source":"page","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":116,"end_line":119,"start":5020,"end":5131},"resolved":{"kind":"source-expression","source":"await browser.newPage({\n viewport: { width: 390, height: 844 },\n ...(userAgent ? { userAgent } : {})\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":360,"end_line":360,"start":15666,"end":15669,"source":"'/'","value":{"kind":"string","value":"/"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: '/'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:362:fixture-or-oracle-declaration:28","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":362,"end_line":362,"start":15686,"end":15704,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":362,"end_line":362,"start":15702,"end":15704},"binding":"afterEachStep","resolution":[],"enclosing_case":{"line":353,"title":"sends each letter of a composed word after a slash as it is typed"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:363:for-of:29","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":363,"end_line":367,"start":15713,"end":15894,"source":"['t', 'tu', 'tui']","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":363,"end_line":363,"start":15732,"end":15750},"binding":"const text","resolution":[],"enclosing_case":{"line":353,"title":"sends each letter of a composed word after a slash as it is typed"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":363,"end_line":363,"start":15733,"end":15736,"source":"'t'","value":{"kind":"string","value":"t"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 't'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":363,"end_line":363,"start":15738,"end":15742,"source":"'tu'","value":{"kind":"string","value":"tu"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'tu'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":363,"end_line":363,"start":15744,"end":15749,"source":"'tui'","value":{"kind":"string","value":"tui"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'tui'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:364:inline-api-or-fixture-input:30","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":364,"end_line":364,"start":15770,"end":15790,"source":"compose(input, text)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":364,"end_line":364,"start":15770,"end":15790},"binding":"compose","resolution":[],"enclosing_case":{"line":353,"title":"sends each letter of a composed word after a slash as it is typed"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":364,"end_line":364,"start":15778,"end":15783,"source":"input","value":{"kind":"reference","source":"input","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":358,"end_line":358,"start":15554,"end":15594},"resolved":{"kind":"source-expression","source":"await page.context().newCDPSession(page)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: input. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":364,"end_line":364,"start":15785,"end":15789,"source":"text","value":{"kind":"source-expression","source":"text"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: text. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:365:inline-api-or-fixture-input:31","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":365,"end_line":365,"start":15807,"end":15837,"source":"waitForField(page, `/${text}`)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":365,"end_line":365,"start":15807,"end":15837},"binding":"waitForField","resolution":[],"enclosing_case":{"line":353,"title":"sends each letter of a composed word after a slash as it is typed"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":365,"end_line":365,"start":15820,"end":15824,"source":"page","value":{"kind":"reference","source":"page","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":116,"end_line":119,"start":5020,"end":5131},"resolved":{"kind":"source-expression","source":"await browser.newPage({\n viewport: { width: 390, height: 844 },\n ...(userAgent ? { userAgent } : {})\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":365,"end_line":365,"start":15826,"end":15836,"source":"`/${text}`","value":{"kind":"source-expression","source":"`/${text}`"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: `/${text}`. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:368:browser-event-input:32","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":368,"end_line":368,"start":15909,"end":15956,"source":"input.send('Input.insertText', { text: 'tui' })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":368,"end_line":368,"start":15909,"end":15956},"binding":"input.send","resolution":[],"enclosing_case":{"line":353,"title":"sends each letter of a composed word after a slash as it is typed"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":368,"end_line":368,"start":15920,"end":15938,"source":"'Input.insertText'","value":{"kind":"string","value":"Input.insertText"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'Input.insertText'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":368,"end_line":368,"start":15940,"end":15955,"source":"{ text: 'tui' }","value":{"kind":"object","value":[{"key":"text","value":{"kind":"string","value":"tui"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { text: 'tui' }. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:369:inline-api-or-fixture-input:33","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":369,"end_line":369,"start":15971,"end":15997,"source":"waitForField(page, '/tui')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":369,"end_line":369,"start":15971,"end":15997},"binding":"waitForField","resolution":[],"enclosing_case":{"line":353,"title":"sends each letter of a composed word after a slash as it is typed"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":369,"end_line":369,"start":15984,"end":15988,"source":"page","value":{"kind":"reference","source":"page","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":116,"end_line":119,"start":5020,"end":5131},"resolved":{"kind":"source-expression","source":"await browser.newPage({\n viewport: { width: 390, height: 844 },\n ...(userAgent ? { userAgent } : {})\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":369,"end_line":369,"start":15990,"end":15996,"source":"'/tui'","value":{"kind":"string","value":"/tui"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: '/tui'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends each letter of a composed word after a slash as it is typed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:385:for-of:34","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":385,"end_line":388,"start":16579,"end":16707,"source":"['t', 'te', 'teh']","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":385,"end_line":385,"start":16598,"end":16616},"binding":"const text","resolution":[],"enclosing_case":{"line":381,"title":"erases and retypes a word the keyboard corrects when it commits"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":385,"end_line":385,"start":16599,"end":16602,"source":"'t'","value":{"kind":"string","value":"t"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 't'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":385,"end_line":385,"start":16604,"end":16608,"source":"'te'","value":{"kind":"string","value":"te"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'te'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":385,"end_line":385,"start":16610,"end":16615,"source":"'teh'","value":{"kind":"string","value":"teh"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'teh'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:386:inline-api-or-fixture-input:35","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":386,"end_line":386,"start":16636,"end":16656,"source":"compose(input, text)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":386,"end_line":386,"start":16636,"end":16656},"binding":"compose","resolution":[],"enclosing_case":{"line":381,"title":"erases and retypes a word the keyboard corrects when it commits"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":386,"end_line":386,"start":16644,"end":16649,"source":"input","value":{"kind":"reference","source":"input","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":384,"end_line":384,"start":16530,"end":16570},"resolved":{"kind":"source-expression","source":"await page.context().newCDPSession(page)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: input. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":386,"end_line":386,"start":16651,"end":16655,"source":"text","value":{"kind":"source-expression","source":"text"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: text. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:387:inline-api-or-fixture-input:36","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":387,"end_line":387,"start":16673,"end":16697,"source":"waitForField(page, text)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":387,"end_line":387,"start":16673,"end":16697},"binding":"waitForField","resolution":[],"enclosing_case":{"line":381,"title":"erases and retypes a word the keyboard corrects when it commits"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":387,"end_line":387,"start":16686,"end":16690,"source":"page","value":{"kind":"reference","source":"page","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":116,"end_line":119,"start":5020,"end":5131},"resolved":{"kind":"source-expression","source":"await browser.newPage({\n viewport: { width: 390, height: 844 },\n ...(userAgent ? { userAgent } : {})\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":387,"end_line":387,"start":16692,"end":16696,"source":"text","value":{"kind":"source-expression","source":"text"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: text. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:390:browser-event-input:37","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":390,"end_line":390,"start":16723,"end":16770,"source":"input.send('Input.insertText', { text: 'the' })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":390,"end_line":390,"start":16723,"end":16770},"binding":"input.send","resolution":[],"enclosing_case":{"line":381,"title":"erases and retypes a word the keyboard corrects when it commits"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":390,"end_line":390,"start":16734,"end":16752,"source":"'Input.insertText'","value":{"kind":"string","value":"Input.insertText"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'Input.insertText'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":390,"end_line":390,"start":16754,"end":16769,"source":"{ text: 'the' }","value":{"kind":"object","value":[{"key":"text","value":{"kind":"string","value":"the"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { text: 'the' }. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:391:inline-api-or-fixture-input:38","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":391,"end_line":391,"start":16785,"end":16810,"source":"waitForField(page, 'the')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":391,"end_line":391,"start":16785,"end":16810},"binding":"waitForField","resolution":[],"enclosing_case":{"line":381,"title":"erases and retypes a word the keyboard corrects when it commits"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":391,"end_line":391,"start":16798,"end":16802,"source":"page","value":{"kind":"reference","source":"page","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":116,"end_line":119,"start":5020,"end":5131},"resolved":{"kind":"source-expression","source":"await browser.newPage({\n viewport: { width: 390, height: 844 },\n ...(userAgent ? { userAgent } : {})\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":391,"end_line":391,"start":16804,"end":16809,"source":"'the'","value":{"kind":"string","value":"the"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'the'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: erases and retypes a word the keyboard corrects when it commits.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:415:for-of:39","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":415,"end_line":418,"start":17794,"end":17915,"source":"['n', 'ni']","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":415,"end_line":415,"start":17813,"end":17824},"binding":"const text","resolution":[],"enclosing_case":{"line":406,"title":"still holds a composition off Android, where it is the text system's marked text"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: still holds a composition off Android, where it is the text system's marked text.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":415,"end_line":415,"start":17814,"end":17817,"source":"'n'","value":{"kind":"string","value":"n"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'n'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: still holds a composition off Android, where it is the text system's marked text.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":415,"end_line":415,"start":17819,"end":17823,"source":"'ni'","value":{"kind":"string","value":"ni"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'ni'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: still holds a composition off Android, where it is the text system's marked text.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:416:inline-api-or-fixture-input:40","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":416,"end_line":416,"start":17844,"end":17864,"source":"compose(input, text)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":416,"end_line":416,"start":17844,"end":17864},"binding":"compose","resolution":[],"enclosing_case":{"line":406,"title":"still holds a composition off Android, where it is the text system's marked text"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: still holds a composition off Android, where it is the text system's marked text.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":416,"end_line":416,"start":17852,"end":17857,"source":"input","value":{"kind":"reference","source":"input","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":414,"end_line":414,"start":17745,"end":17785},"resolved":{"kind":"source-expression","source":"await page.context().newCDPSession(page)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: input. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: still holds a composition off Android, where it is the text system's marked text.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":416,"end_line":416,"start":17859,"end":17863,"source":"text","value":{"kind":"source-expression","source":"text"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: text. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: still holds a composition off Android, where it is the text system's marked text.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:417:inline-api-or-fixture-input:41","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":417,"end_line":417,"start":17881,"end":17905,"source":"waitForField(page, text)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":417,"end_line":417,"start":17881,"end":17905},"binding":"waitForField","resolution":[],"enclosing_case":{"line":406,"title":"still holds a composition off Android, where it is the text system's marked text"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: still holds a composition off Android, where it is the text system's marked text.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":417,"end_line":417,"start":17894,"end":17898,"source":"page","value":{"kind":"reference","source":"page","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":116,"end_line":119,"start":5020,"end":5131},"resolved":{"kind":"source-expression","source":"await browser.newPage({\n viewport: { width: 390, height: 844 },\n ...(userAgent ? { userAgent } : {})\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: still holds a composition off Android, where it is the text system's marked text.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":417,"end_line":417,"start":17900,"end":17904,"source":"text","value":{"kind":"source-expression","source":"text"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: text. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: still holds a composition off Android, where it is the text system's marked text.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:428:browser-event-input:42","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":428,"end_line":428,"start":18182,"end":18266,"source":"page.evaluate((id) => document.getElementById(id)?.value ?? null, BUFFERED_FIELD_ID)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":428,"end_line":428,"start":18182,"end":18266},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":428,"end_line":428,"start":18196,"end":18246,"source":"(id) => document.getElementById(id)?.value ?? null","value":{"kind":"source-expression","source":"(id) => document.getElementById(id)?.value ?? null"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (id) => document.getElementById(id)?.value ?? null. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":428,"end_line":428,"start":18248,"end":18265,"source":"BUFFERED_FIELD_ID","value":{"kind":"reference","source":"BUFFERED_FIELD_ID","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-live-input-probe-route.mjs","line":20,"end_line":20,"start":1200,"end":1222},"resolved":{"kind":"string","value":"buffered-probe-field"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: BUFFERED_FIELD_ID. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:437:browser-event-input:43","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":437,"end_line":437,"start":18777,"end":18805,"source":"page.keyboard.type('ls -la')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":437,"end_line":437,"start":18777,"end":18805},"binding":"page.keyboard.type","resolution":[],"enclosing_case":{"line":430,"title":"sends the draft and empties the field on a plain Enter"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft and empties the field on a plain Enter.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":437,"end_line":437,"start":18796,"end":18804,"source":"'ls -la'","value":{"kind":"string","value":"ls -la"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'ls -la'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft and empties the field on a plain Enter.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:439:browser-event-input:44","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":439,"end_line":439,"start":18821,"end":18849,"source":"page.keyboard.press('Enter')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":439,"end_line":439,"start":18821,"end":18849},"binding":"page.keyboard.press","resolution":[],"enclosing_case":{"line":430,"title":"sends the draft and empties the field on a plain Enter"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft and empties the field on a plain Enter.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":439,"end_line":439,"start":18841,"end":18848,"source":"'Enter'","value":{"kind":"string","value":"Enter"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'Enter'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft and empties the field on a plain Enter.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:446:browser-event-input:45","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":446,"end_line":446,"start":19052,"end":19119,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.bufferedSent())","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":446,"end_line":446,"start":19052,"end":19119},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":430,"title":"sends the draft and empties the field on a plain Enter"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft and empties the field on a plain Enter.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":446,"end_line":446,"start":19066,"end":19118,"source":"() => globalThis.__orcaLiveInputProbe.bufferedSent()","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.bufferedSent()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.bufferedSent(). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft and empties the field on a plain Enter.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:460:browser-event-input:46","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":460,"end_line":464,"start":19778,"end":19909,"source":"input.send('Input.imeSetComposition', {\n text: 'ls -la',\n selectionStart: 6,\n selectionEnd: 6\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":460,"end_line":464,"start":19778,"end":19909},"binding":"input.send","resolution":[],"enclosing_case":{"line":453,"title":"sends the draft when Enter arrives with the keyboard composition still open"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft when Enter arrives with the keyboard composition still open.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":460,"end_line":460,"start":19789,"end":19814,"source":"'Input.imeSetComposition'","value":{"kind":"string","value":"Input.imeSetComposition"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'Input.imeSetComposition'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft when Enter arrives with the keyboard composition still open.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":460,"end_line":464,"start":19816,"end":19908,"source":"{\n text: 'ls -la',\n selectionStart: 6,\n selectionEnd: 6\n }","value":{"kind":"object","value":[{"key":"text","value":{"kind":"string","value":"ls -la"}},{"key":"selectionStart","value":{"kind":"number","value":6}},{"key":"selectionEnd","value":{"kind":"number","value":6}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { text: 'ls -la', selectionStart: 6, selectionEnd: 6 }. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft when Enter arrives with the keyboard composition still open.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:471:browser-event-input:47","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":471,"end_line":471,"start":20111,"end":20139,"source":"page.keyboard.press('Enter')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":471,"end_line":471,"start":20111,"end":20139},"binding":"page.keyboard.press","resolution":[],"enclosing_case":{"line":453,"title":"sends the draft when Enter arrives with the keyboard composition still open"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft when Enter arrives with the keyboard composition still open.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":471,"end_line":471,"start":20131,"end":20138,"source":"'Enter'","value":{"kind":"string","value":"Enter"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'Enter'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft when Enter arrives with the keyboard composition still open.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:478:browser-event-input:48","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":478,"end_line":478,"start":20356,"end":20423,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.bufferedSent())","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":478,"end_line":478,"start":20356,"end":20423},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":453,"title":"sends the draft when Enter arrives with the keyboard composition still open"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft when Enter arrives with the keyboard composition still open.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":478,"end_line":478,"start":20370,"end":20422,"source":"() => globalThis.__orcaLiveInputProbe.bufferedSent()","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.bufferedSent()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.bufferedSent(). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: sends the draft when Enter arrives with the keyboard composition still open.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:491:browser-event-input:49","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":491,"end_line":491,"start":20990,"end":21069,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.setLiveInputEnabled(false))","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":491,"end_line":491,"start":20990,"end":21069},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":486,"title":"leaves the draft alone when the key bar's Enter chip fires"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: leaves the draft alone when the key bar's Enter chip fires.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":491,"end_line":491,"start":21004,"end":21068,"source":"() => globalThis.__orcaLiveInputProbe.setLiveInputEnabled(false)","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.setLiveInputEnabled(false)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.setLiveInputEnabled(false). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: leaves the draft alone when the key bar's Enter chip fires.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:493:browser-event-input:50","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":493,"end_line":493,"start":21134,"end":21162,"source":"page.keyboard.type('ls -la')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":493,"end_line":493,"start":21134,"end":21162},"binding":"page.keyboard.type","resolution":[],"enclosing_case":{"line":486,"title":"leaves the draft alone when the key bar's Enter chip fires"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: leaves the draft alone when the key bar's Enter chip fires.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":493,"end_line":493,"start":21153,"end":21161,"source":"'ls -la'","value":{"kind":"string","value":"ls -la"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'ls -la'. Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: leaves the draft alone when the key bar's Enter chip fires.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:495:browser-event-input:51","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":495,"end_line":497,"start":21193,"end":21291,"source":"page.evaluate(() =>\n globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\r' })\n )","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":495,"end_line":497,"start":21193,"end":21291},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":486,"title":"leaves the draft alone when the key bar's Enter chip fires"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: leaves the draft alone when the key bar's Enter chip fires.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":495,"end_line":496,"start":21207,"end":21281,"source":"() =>\n globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\r' })","value":{"kind":"source-expression","source":"() =>\n globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\r' })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.accessory({ bytes: '\\r' }). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: leaves the draft alone when the key bar's Enter chip fires.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:500:browser-event-input:52","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":500,"end_line":500,"start":21368,"end":21427,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.sent())","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":500,"end_line":500,"start":21368,"end":21427},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":486,"title":"leaves the draft alone when the key bar's Enter chip fires"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: leaves the draft alone when the key bar's Enter chip fires.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":500,"end_line":500,"start":21382,"end":21426,"source":"() => globalThis.__orcaLiveInputProbe.sent()","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.sent()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.sent(). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: leaves the draft alone when the key bar's Enter chip fires.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}},{"id":"14:501:browser-event-input:53","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":501,"end_line":501,"start":21466,"end":21533,"source":"page.evaluate(() => globalThis.__orcaLiveInputProbe.bufferedSent())","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":501,"end_line":501,"start":21466,"end":21533},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":486,"title":"leaves the draft alone when the key bar's Enter chip fires"},"affected_case_lines":[],"decision":"keep","reason":"Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: leaves the draft alone when the key bar's Enter chip fires.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","line":501,"end_line":501,"start":21480,"end":21532,"source":"() => globalThis.__orcaLiveInputProbe.bufferedSent()","value":{"kind":"source-expression","source":"() => globalThis.__orcaLiveInputProbe.bufferedSent()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaLiveInputProbe.bufferedSent(). Real TextInput and shipped live-input/submit/draft hooks process the browser key, IME or accessory event; exact terminal bytes and actual field values provide independent outcomes for this scenario. Scenario: leaves the draft alone when the key bar's Enter chip fires.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb"}}],"original_review_sha256":"c8c676706e7e4d8bf98513f250271e1ede4ee98af136fb848e8d29dc3348e93f","reviewer":"audit_config","reviewed_sha256":"1ec1e7811566b32c46a4a63973b75bfdc1e4852e1b7e0f813f58edd14f5551fb","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","final_declarations":12,"current_controls":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","each":[],"for_of":[{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","start":15732,"end":15750,"line":363,"end_line":363,"source":"['t', 'tu', 'tui']","binding":"const text","changed":false},{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","start":16598,"end":16616,"line":385,"end_line":385,"source":"['t', 'te', 'teh']","binding":"const text","changed":false},{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-live-input-render.test.mjs","start":17813,"end":17824,"line":415,"end_line":415,"source":"['n', 'ni']","binding":"const text","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/mobile-web-app-route-manifest.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-live-input-probe-route.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-render-harness.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-terminal-probe-route.mjs"],"runtime_validation":[]}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render-fixture.test.mjs","sha256":"fa9840c66987e6dfa004df2c587f104c74b63b1cfa8b09fe5bf13506ed5a5cbe","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":15,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"fa9840c66987e6dfa004df2c587f104c74b63b1cfa8b09fe5bf13506ed5a5cbe","cases":[{"line":61,"title":"takes back the server and the scratch tree when the browser will not start","decision":"keep","reason":"The actual browser executable is made unavailable after bundle/server setup; the specific launch failure, equal listening-socket baseline and absent owned scratch tree verify rollback. Scenario: takes back the server and the scratch tree when the browser will not start.","explicit_input_controls":[],"current_declaration":{"line":61,"title":"takes back the server and the scratch tree when the browser will not start","start":2880,"end":4391},"implementation_status":"retained"}],"lines":90,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"The actual browser executable is made unavailable after bundle/server setup; the specific launch failure, equal listening-socket baseline and absent owned scratch tree verify rollback.","planned_changes":[],"production_evidence":["config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/mobile-web-app-terminal-render-fixture.mjs"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[],"original_review_sha256":"a4423935133cc006b005d9be65e04eca1d37c09bedbcf4217ce41e9a6f2cc214","reviewer":"audit_config","reviewed_sha256":"fa9840c66987e6dfa004df2c587f104c74b63b1cfa8b09fe5bf13506ed5a5cbe","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/mobile-web-app-terminal-render-fixture.test.mjs","final_declarations":1,"current_controls":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render-fixture.test.mjs","each":[],"for_of":[],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/mobile-web-app-terminal-render-fixture.mjs"],"runtime_validation":[]}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","sha256":"db68d061cefd733afd2dcd1b74183c1c81390fd49d0cce5ca676b7cce32a0490","declarations":12,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":16,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"db68d061cefd733afd2dcd1b74183c1c81390fd49d0cce5ca676b7cce32a0490","cases":[{"line":75,"title":"records what the page refuses before any terminal is on it","decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: records what the page refuses before any terminal is on it.","explicit_input_controls":[{"control_id":"16:79:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":79,"source":"openPage(CONTROL_ROUTE)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":79,"end_line":79,"start":3274,"end":3287,"source":"CONTROL_ROUTE","value":{"kind":"reference","source":"CONTROL_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render-fixture.mjs","line":39,"end_line":39,"start":1392,"end":1413},"resolved":{"kind":"string","value":"/h/terminal-control"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: CONTROL_ROUTE. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: records what the page refuses before any terminal is on it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: records what the page refuses before any terminal is on it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:84:browser-event-input:6","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":84,"source":"page.evaluate(() => globalThis.__orcaCspViolations)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":84,"end_line":84,"start":3484,"end":3520,"source":"() => globalThis.__orcaCspViolations","value":{"kind":"source-expression","source":"() => globalThis.__orcaCspViolations"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaCspViolations. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: records what the page refuses before any terminal is on it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: records what the page refuses before any terminal is on it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":75,"title":"records what the page refuses before any terminal is on it","start":2891,"end":4175},"implementation_status":"retained"},{"line":95,"title":"opens xterm under the shipped policy and paints a dense stream into its buffer","decision":"fix","reason":"Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","explicit_input_controls":[{"control_id":"16:96:fixture-or-oracle-declaration:7","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":96,"source":"[]","rows":[],"decision":"fix","reason":"Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation_rows":[]},{"control_id":"16:97:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":97,"source":"openTerminal({\n beforeNavigate: async (page) => {\n page.on('response', (response) => {\n if (response.url().endsWith('.woff2')) {\n fonts.push(response)\n }\n })\n }\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":97,"end_line":105,"start":4353,"end":4575,"source":"{\n beforeNavigate: async (page) => {\n page.on('response', (response) => {\n if (response.url().endsWith('.woff2')) {\n fonts.push(response)\n }\n })\n }\n }","value":{"kind":"object","value":[{"key":"beforeNavigate","value":{"kind":"source-expression","source":"async (page) => {\n page.on('response', (response) => {\n if (response.url().endsWith('.woff2')) {\n fonts.push(response)\n }\n })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { beforeNavigate: async (page) => { page.on('response', (response) => { if (response.url().endsWith('.woff2')). Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:106:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":106,"source":"openProbeTerminal(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":106,"end_line":106,"start":4607,"end":4611,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:114:browser-event-input:10","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":114,"source":"page.evaluate(() => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0'))","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":114,"end_line":114,"start":4951,"end":5020,"source":"() => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0')","value":{"kind":"source-expression","source":"() => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0'). Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:116:browser-event-input:11","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":116,"source":"page.evaluate((data) => {\n globalThis.__orcaTerminalProbe.write(data)\n return data.length\n }, stream)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":116,"end_line":119,"start":5083,"end":5180,"source":"(data) => {\n globalThis.__orcaTerminalProbe.write(data)\n return data.length\n }","value":{"kind":"source-expression","source":"(data) => {\n globalThis.__orcaTerminalProbe.write(data)\n return data.length\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (data) => { globalThis.__orcaTerminalProbe.write(data) return data.length }. Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":119,"end_line":119,"start":5182,"end":5188,"source":"stream","value":{"kind":"reference","source":"stream","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":45,"end_line":45,"start":1971,"end":1990},"resolved":{"kind":"call-source","callee":"escapeDenseStream","arguments":[],"source":"escapeDenseStream()"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: stream. Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:124:browser-event-input:12","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":124,"source":"page.evaluate(() => globalThis.__orcaTerminalProbe.selectAll())","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":124,"end_line":124,"start":5454,"end":5502,"source":"() => globalThis.__orcaTerminalProbe.selectAll()","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalProbe.selectAll()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalProbe.selectAll(). Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:129:browser-event-input:13","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":129,"source":"page.evaluate(() => document.getElementById('sel-menu-copy').click())","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":129,"end_line":129,"start":5713,"end":5767,"source":"() => document.getElementById('sel-menu-copy').click()","value":{"kind":"source-expression","source":"() => document.getElementById('sel-menu-copy').click()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => document.getElementById('sel-menu-copy').click(). Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:134:browser-event-input:14","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":134,"source":"page.evaluate(() => globalThis.__orcaTerminalCopied)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":134,"end_line":134,"start":5959,"end":5996,"source":"() => globalThis.__orcaTerminalCopied","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalCopied"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalCopied. Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:146:browser-event-input:15","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":146,"source":"page.evaluate(() => globalThis.__orcaTerminalEngineErrors)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":146,"end_line":146,"start":6482,"end":6525,"source":"() => globalThis.__orcaTerminalEngineErrors","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalEngineErrors"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalEngineErrors. Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":95,"title":"opens xterm under the shipped policy and paints a dense stream into its buffer","start":4181,"end":6638},"implementation_status":"implemented"},{"line":151,"title":"leaves the page its own window.onerror across mount and dispose","decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","explicit_input_controls":[{"control_id":"16:155:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":155,"source":"openTerminal({ errorSentinel: true })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":155,"end_line":155,"start":7012,"end":7035,"source":"{ errorSentinel: true }","value":{"kind":"object","value":[{"key":"errorSentinel","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { errorSentinel: true }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:156:browser-event-input:17","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":156,"source":"page.evaluate(() => window.onerror === globalThis.__orcaSentinel)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":156,"end_line":156,"start":7070,"end":7120,"source":"() => window.onerror === globalThis.__orcaSentinel","value":{"kind":"source-expression","source":"() => window.onerror === globalThis.__orcaSentinel"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => window.onerror === globalThis.__orcaSentinel. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:157:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":157,"source":"openProbeTerminal(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":157,"end_line":157,"start":7164,"end":7168,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:158:browser-event-input:19","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":158,"source":"page.evaluate(() => window.onerror === globalThis.__orcaSentinel)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":158,"end_line":158,"start":7203,"end":7253,"source":"() => window.onerror === globalThis.__orcaSentinel","value":{"kind":"source-expression","source":"() => window.onerror === globalThis.__orcaSentinel"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => window.onerror === globalThis.__orcaSentinel. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:163:browser-event-input:20","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":163,"source":"page.evaluate(() => {\n setTimeout(() => {\n throw new Error('orca-terminal-render-uncaught')\n }, 0)\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":163,"end_line":167,"start":7550,"end":7665,"source":"() => {\n setTimeout(() => {\n throw new Error('orca-terminal-render-uncaught')\n }, 0)\n }","value":{"kind":"source-expression","source":"() => {\n setTimeout(() => {\n throw new Error('orca-terminal-render-uncaught')\n }, 0)\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { setTimeout(() => { throw new Error('orca-terminal-render-uncaught') }, 0) }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:177:browser-event-input:21","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":177,"source":"page.evaluate(() => globalThis.__orcaSentinelCalls)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":177,"end_line":177,"start":8055,"end":8091,"source":"() => globalThis.__orcaSentinelCalls","value":{"kind":"source-expression","source":"() => globalThis.__orcaSentinelCalls"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaSentinelCalls. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:180:browser-event-input:22","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":180,"source":"page.evaluate(() => globalThis.__orcaTerminalProbe.setMounted(false))","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":180,"end_line":180,"start":8228,"end":8282,"source":"() => globalThis.__orcaTerminalProbe.setMounted(false)","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalProbe.setMounted(false)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalProbe.setMounted(false). Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:182:browser-event-input:23","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":182,"source":"page.evaluate(() => window.onerror === globalThis.__orcaSentinel)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":182,"end_line":182,"start":8413,"end":8463,"source":"() => window.onerror === globalThis.__orcaSentinel","value":{"kind":"source-expression","source":"() => window.onerror === globalThis.__orcaSentinel"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => window.onerror === globalThis.__orcaSentinel. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:183:browser-event-input:24","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":183,"source":"page.evaluate(() => {\n setTimeout(() => {\n throw new Error('orca-terminal-render-after-dispose')\n }, 0)\n return globalThis.__orcaTerminalEngineErrors.length\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":183,"end_line":188,"start":8518,"end":8698,"source":"() => {\n setTimeout(() => {\n throw new Error('orca-terminal-render-after-dispose')\n }, 0)\n return globalThis.__orcaTerminalEngineErrors.length\n }","value":{"kind":"source-expression","source":"() => {\n setTimeout(() => {\n throw new Error('orca-terminal-render-after-dispose')\n }, 0)\n return globalThis.__orcaTerminalEngineErrors.length\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { setTimeout(() => { throw new Error('orca-terminal-render-after-dispose') }, 0) return globalThis._. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:197:browser-event-input:25","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":197,"source":"page.evaluate(() => globalThis.__orcaTerminalEngineErrors.length)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":197,"end_line":197,"start":9064,"end":9114,"source":"() => globalThis.__orcaTerminalEngineErrors.length","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalEngineErrors.length"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalEngineErrors.length. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":151,"title":"leaves the page its own window.onerror across mount and dispose","start":6644,"end":9195},"implementation_status":"retained"},{"line":201,"title":"installs no window.onerror on a page that had none","decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: installs no window.onerror on a page that had none.","explicit_input_controls":[{"control_id":"16:205:browser-event-input:26","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":205,"source":"page.evaluate(() => window.onerror)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":205,"end_line":205,"start":9475,"end":9495,"source":"() => window.onerror","value":{"kind":"source-expression","source":"() => window.onerror"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => window.onerror. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: installs no window.onerror on a page that had none.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: installs no window.onerror on a page that had none.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:206:inline-api-or-fixture-input:27","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":206,"source":"openProbeTerminal(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":206,"end_line":206,"start":9539,"end":9543,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: installs no window.onerror on a page that had none.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: installs no window.onerror on a page that had none.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:207:browser-event-input:28","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":207,"source":"page.evaluate(() => window.onerror)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":207,"end_line":207,"start":9578,"end":9598,"source":"() => window.onerror","value":{"kind":"source-expression","source":"() => window.onerror"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => window.onerror. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: installs no window.onerror on a page that had none.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: installs no window.onerror on a page that had none.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:208:browser-event-input:29","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":208,"source":"page.evaluate(() => globalThis.__orcaTerminalProbe.setMounted(false))","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":208,"end_line":208,"start":9638,"end":9692,"source":"() => globalThis.__orcaTerminalProbe.setMounted(false)","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalProbe.setMounted(false)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalProbe.setMounted(false). Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: installs no window.onerror on a page that had none.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: installs no window.onerror on a page that had none.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:210:browser-event-input:30","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":210,"source":"page.evaluate(() => window.onerror)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":210,"end_line":210,"start":9823,"end":9843,"source":"() => window.onerror","value":{"kind":"source-expression","source":"() => window.onerror"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => window.onerror. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: installs no window.onerror on a page that had none.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: installs no window.onerror on a page that had none.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":201,"title":"installs no window.onerror on a page that had none","start":9201,"end":9922},"implementation_status":"retained"},{"line":262,"title":"is a live terminal again after an unmount and a remount","decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after an unmount and a remount.","explicit_input_controls":[{"control_id":"16:264:inline-api-or-fixture-input:36","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":264,"source":"openProbeTerminal(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":264,"end_line":264,"start":12466,"end":12470,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after an unmount and a remount.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after an unmount and a remount.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:267:browser-event-input:37","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":267,"source":"page.evaluate(() => globalThis.__orcaTerminalProbe.setMounted(false))","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":267,"end_line":267,"start":12551,"end":12605,"source":"() => globalThis.__orcaTerminalProbe.setMounted(false)","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalProbe.setMounted(false)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalProbe.setMounted(false). Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after an unmount and a remount.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after an unmount and a remount.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:269:browser-event-input:38","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":269,"source":"page.evaluate(() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":269,"end_line":272,"start":12729,"end":12847,"source":"() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n }","value":{"kind":"source-expression","source":"() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { globalThis.__orcaTerminalReady = false globalThis.__orcaTerminalProbe.setMounted(true) }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after an unmount and a remount.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after an unmount and a remount.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:277:inline-api-or-fixture-input:39","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":277,"source":"openProbeTerminal(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":277,"end_line":277,"start":13016,"end":13020,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after an unmount and a remount.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after an unmount and a remount.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":262,"title":"is a live terminal again after an unmount and a remount","start":12341,"end":13135},"implementation_status":"retained"},{"line":282,"title":"is a live terminal again after the user reloads a failed one","decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after the user reloads a failed one.","explicit_input_controls":[{"control_id":"16:290:browser-event-input:40","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":290,"source":"page.evaluate(() => {\n setTimeout(() => {\n throw new Error('orca-terminal-render-fatal')\n }, 0)\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":290,"end_line":294,"start":13802,"end":13914,"source":"() => {\n setTimeout(() => {\n throw new Error('orca-terminal-render-fatal')\n }, 0)\n }","value":{"kind":"source-expression","source":"() => {\n setTimeout(() => {\n throw new Error('orca-terminal-render-fatal')\n }, 0)\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { setTimeout(() => { throw new Error('orca-terminal-render-fatal') }, 0) }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after the user reloads a failed one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after the user reloads a failed one.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:298:browser-event-input:41","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":298,"source":"page.evaluate(() => {\n globalThis.__orcaTerminalReady = false\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":298,"end_line":300,"start":14037,"end":14099,"source":"() => {\n globalThis.__orcaTerminalReady = false\n }","value":{"kind":"source-expression","source":"() => {\n globalThis.__orcaTerminalReady = false\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { globalThis.__orcaTerminalReady = false }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after the user reloads a failed one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after the user reloads a failed one.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:306:inline-api-or-fixture-input:42","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":306,"source":"openProbeTerminal(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":306,"end_line":306,"start":14295,"end":14299,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after the user reloads a failed one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after the user reloads a failed one.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":282,"title":"is a live terminal again after the user reloads a failed one","start":13141,"end":14419},"implementation_status":"retained"},{"line":311,"title":"leaves the page the listeners it found, across a mount and a dispose","decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page the listeners it found, across a mount and a dispose.","explicit_input_controls":[{"control_id":"16:322:inline-api-or-fixture-input:43","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":322,"source":"openTerminal({ listeners: true })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":322,"end_line":322,"start":15327,"end":15346,"source":"{ listeners: true }","value":{"kind":"object","value":[{"key":"listeners","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { listeners: true }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page the listeners it found, across a mount and a dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page the listeners it found, across a mount and a dispose.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:323:inline-api-or-fixture-input:44","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":323,"source":"openProbeTerminal(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":323,"end_line":323,"start":15378,"end":15382,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page the listeners it found, across a mount and a dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page the listeners it found, across a mount and a dispose.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:325:browser-event-input:45","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":325,"source":"page.evaluate(() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":325,"end_line":328,"start":15467,"end":15585,"source":"() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n }","value":{"kind":"source-expression","source":"() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { globalThis.__orcaTerminalReady = false globalThis.__orcaTerminalProbe.setMounted(true) }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page the listeners it found, across a mount and a dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page the listeners it found, across a mount and a dispose.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:333:inline-api-or-fixture-input:46","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":333,"source":"openProbeTerminal(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":333,"end_line":333,"start":15754,"end":15758,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page the listeners it found, across a mount and a dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page the listeners it found, across a mount and a dispose.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:334:browser-event-input:47","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":334,"source":"page.evaluate(() => globalThis.__orcaListeners.snapshot())","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":334,"end_line":334,"start":15804,"end":15847,"source":"() => globalThis.__orcaListeners.snapshot()","value":{"kind":"source-expression","source":"() => globalThis.__orcaListeners.snapshot()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaListeners.snapshot(). Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page the listeners it found, across a mount and a dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page the listeners it found, across a mount and a dispose.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":311,"title":"leaves the page the listeners it found, across a mount and a dispose","start":14425,"end":16279},"implementation_status":"retained"},{"line":346,"title":"still reports runtime errors after a first mount spent the non-fatal budget","decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","explicit_input_controls":[{"control_id":"16:352:inline-api-or-fixture-input:48","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":352,"source":"openProbeTerminal(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":352,"end_line":352,"start":16826,"end":16830,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:353:browser-event-input:49","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":353,"source":"page.evaluate(() => {\n for (let index = 0; index < 6; index++) {\n setTimeout(() => {\n throw new Error(`orca-budget-burn-${String(index)}`)\n }, 0)\n }\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":353,"end_line":359,"start":16858,"end":17043,"source":"() => {\n for (let index = 0; index < 6; index++) {\n setTimeout(() => {\n throw new Error(`orca-budget-burn-${String(index)}`)\n }, 0)\n }\n }","value":{"kind":"source-expression","source":"() => {\n for (let index = 0; index < 6; index++) {\n setTimeout(() => {\n throw new Error(`orca-budget-burn-${String(index)}`)\n }, 0)\n }\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { for (let index = 0; index < 6; index++) { setTimeout(() => { throw new Error(`orca-budget-burn-${Strin. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:354:counted-loop:50","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":354,"source":"let index = 0; index < 6; index++","rows":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","implementation_rows":[]},{"control_id":"16:368:browser-event-input:51","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":368,"source":"page.evaluate(() => globalThis.__orcaTerminalProbe.setMounted(false))","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":368,"end_line":368,"start":17308,"end":17362,"source":"() => globalThis.__orcaTerminalProbe.setMounted(false)","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalProbe.setMounted(false)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalProbe.setMounted(false). Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:370:browser-event-input:52","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":370,"source":"page.evaluate(() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":370,"end_line":373,"start":17486,"end":17604,"source":"() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n }","value":{"kind":"source-expression","source":"() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { globalThis.__orcaTerminalReady = false globalThis.__orcaTerminalProbe.setMounted(true) }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:378:inline-api-or-fixture-input:53","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":378,"source":"openProbeTerminal(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":378,"end_line":378,"start":17773,"end":17777,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:380:browser-event-input:54","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":380,"source":"page.evaluate(() => {\n globalThis.__orcaTerminalEngineErrors = []\n setTimeout(() => {\n throw new Error('orca-second-mount-error')\n }, 0)\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":380,"end_line":385,"start":17806,"end":17966,"source":"() => {\n globalThis.__orcaTerminalEngineErrors = []\n setTimeout(() => {\n throw new Error('orca-second-mount-error')\n }, 0)\n }","value":{"kind":"source-expression","source":"() => {\n globalThis.__orcaTerminalEngineErrors = []\n setTimeout(() => {\n throw new Error('orca-second-mount-error')\n }, 0)\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { globalThis.__orcaTerminalEngineErrors = [] setTimeout(() => { throw new Error('orca-second-mount-error') . Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":346,"title":"still reports runtime errors after a first mount spent the non-fatal budget","start":16285,"end":18262},"implementation_status":"retained"},{"line":396,"title":"cancels the timers it armed, so none of the first mount fires into the second","decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","explicit_input_controls":[{"control_id":"16:406:inline-api-or-fixture-input:55","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":406,"source":"openPage(PROBE_ROUTE, {\n scheduler: true,\n beforeNavigate: async (opened) => {\n await opened.route('**/*.js', async (route) => {\n const response = await route.fetch()\n const body = await response.text()\n if (body.includes('terminal runtime error')) {\n documentChunk = new URL(route.request().url()).pathname\n }\n await route.fulfill({ response, body })\n })\n }\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":406,"end_line":406,"start":19134,"end":19145,"source":"PROBE_ROUTE","value":{"kind":"reference","source":"PROBE_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render-fixture.mjs","line":38,"end_line":38,"start":1343,"end":1362},"resolved":{"kind":"string","value":"/h/terminal-probe"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: PROBE_ROUTE. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":406,"end_line":418,"start":19147,"end":19598,"source":"{\n scheduler: true,\n beforeNavigate: async (opened) => {\n await opened.route('**/*.js', async (route) => {\n const response = await route.fetch()\n const body = await response.text()\n if (body.includes('terminal runtime error')) {\n documentChunk = new URL(route.request().url()).pathname\n }\n await route.fulfill({ response, body })\n })\n }\n }","value":{"kind":"object","value":[{"key":"scheduler","value":{"kind":"boolean","value":true}},{"key":"beforeNavigate","value":{"kind":"source-expression","source":"async (opened) => {\n await opened.route('**/*.js', async (route) => {\n const response = await route.fetch()\n const body = await response.text()\n if (body.includes('terminal runtime error')) {\n documentChunk = new URL(route.request().url()).pathname\n }\n await route.fulfill({ response, body })\n })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { scheduler: true, beforeNavigate: async (opened) => { await opened.route('**/*.js', async (route) => { . Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:423:inline-api-or-fixture-input:56","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":423,"source":"openProbeTerminal(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":423,"end_line":423,"start":19767,"end":19771,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:432:browser-event-input:57","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":432,"source":"page.evaluate(() => {\n globalThis.__orcaScheduler.watching = true\n const surface = document.getElementById('terminal-surface')\n surface.dispatchEvent(\n new TouchEvent('touchstart', {\n bubbles: true,\n cancelable: true,\n touches: [new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })],\n changedTouches: [\n new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })\n ]\n })\n )\n globalThis.__orcaTerminalProbe.setMounted(false)\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":432,"end_line":446,"start":20554,"end":21127,"source":"() => {\n globalThis.__orcaScheduler.watching = true\n const surface = document.getElementById('terminal-surface')\n surface.dispatchEvent(\n new TouchEvent('touchstart', {\n bubbles: true,\n cancelable: true,\n touches: [new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })],\n changedTouches: [\n new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })\n ]\n })\n )\n globalThis.__orcaTerminalProbe.setMounted(false)\n }","value":{"kind":"source-expression","source":"() => {\n globalThis.__orcaScheduler.watching = true\n const surface = document.getElementById('terminal-surface')\n surface.dispatchEvent(\n new TouchEvent('touchstart', {\n bubbles: true,\n cancelable: true,\n touches: [new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })],\n changedTouches: [\n new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })\n ]\n })\n )\n globalThis.__orcaTerminalProbe.setMounted(false)\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { globalThis.__orcaScheduler.watching = true const surface = document.getElementById('terminal-surface') surfa. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:435:browser-event-input:58","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":435,"source":"surface.dispatchEvent(\n new TouchEvent('touchstart', {\n bubbles: true,\n cancelable: true,\n touches: [new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })],\n changedTouches: [\n new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })\n ]\n })\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":436,"end_line":443,"start":20722,"end":21052,"source":"new TouchEvent('touchstart', {\n bubbles: true,\n cancelable: true,\n touches: [new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })],\n changedTouches: [\n new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })\n ]\n })","value":{"kind":"source-expression","source":"new TouchEvent('touchstart', {\n bubbles: true,\n cancelable: true,\n touches: [new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })],\n changedTouches: [\n new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })\n ]\n })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: new TouchEvent('touchstart', { bubbles: true, cancelable: true, touches: [new Touch({ identifier: 1, tar. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:448:browser-event-input:59","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":448,"source":"page.evaluate(() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":448,"end_line":451,"start":21251,"end":21369,"source":"() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n }","value":{"kind":"source-expression","source":"() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { globalThis.__orcaTerminalReady = false globalThis.__orcaTerminalProbe.setMounted(true) }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:456:inline-api-or-fixture-input:60","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":456,"source":"openProbeTerminal(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":456,"end_line":456,"start":21538,"end":21542,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:458:browser-event-input:61","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":458,"source":"page.evaluate(() => new Promise((resolve) => globalThis.setTimeout(resolve, 3000)))","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":458,"end_line":458,"start":21662,"end":21730,"source":"() => new Promise((resolve) => globalThis.setTimeout(resolve, 3000))","value":{"kind":"source-expression","source":"() => new Promise((resolve) => globalThis.setTimeout(resolve, 3000))"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => new Promise((resolve) => globalThis.setTimeout(resolve, 3000)). Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:459:browser-event-input:62","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":459,"source":"page.evaluate(() => globalThis.__orcaScheduler)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":459,"end_line":459,"start":21776,"end":21808,"source":"() => globalThis.__orcaScheduler","value":{"kind":"source-expression","source":"() => globalThis.__orcaScheduler"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaScheduler. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":396,"title":"cancels the timers it armed, so none of the first mount fires into the second","start":18268,"end":22438},"implementation_status":"retained"},{"line":476,"title":"$name","decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","explicit_input_controls":[{"control_id":"16:476:parameter-table:63","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":476,"source":"[\n { name: 'takes back the frames it is owed, not only the timers', cancelFrames: true },\n { name: 'detects leaked frames when disposal cannot cancel them', cancelFrames: false }\n ]","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":477,"end_line":477,"start":22435,"end":22520,"source":"{ name: 'takes back the frames it is owed, not only the timers', cancelFrames: true }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"takes back the frames it is owed, not only the timers"}},{"key":"cancelFrames","value":{"kind":"boolean","value":true}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { name: 'takes back the frames it is owed, not only the timers', cancelFrames: true }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":478,"end_line":478,"start":22528,"end":22615,"source":"{ name: 'detects leaked frames when disposal cannot cancel them', cancelFrames: false }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"detects leaked frames when disposal cannot cancel them"}},{"key":"cancelFrames","value":{"kind":"boolean","value":false}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { name: 'detects leaked frames when disposal cannot cancel them', cancelFrames: false }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:484:inline-api-or-fixture-input:64","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":484,"source":"openPage(PROBE_ROUTE, {\n scheduler: true,\n beforeNavigate: async (opened) => {\n await opened.route('**/*.js', async (route) => {\n const response = await route.fetch()\n const body = await response.text()\n if (body.includes('terminal runtime error')) {\n documentChunk = new URL(route.request().url()).pathname\n }\n await route.fulfill({ response, body })\n })\n }\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":484,"end_line":484,"start":22849,"end":22860,"source":"PROBE_ROUTE","value":{"kind":"reference","source":"PROBE_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render-fixture.mjs","line":38,"end_line":38,"start":1343,"end":1362},"resolved":{"kind":"string","value":"/h/terminal-probe"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: PROBE_ROUTE. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":484,"end_line":496,"start":22862,"end":23337,"source":"{\n scheduler: true,\n beforeNavigate: async (opened) => {\n await opened.route('**/*.js', async (route) => {\n const response = await route.fetch()\n const body = await response.text()\n if (body.includes('terminal runtime error')) {\n documentChunk = new URL(route.request().url()).pathname\n }\n await route.fulfill({ response, body })\n })\n }\n }","value":{"kind":"object","value":[{"key":"scheduler","value":{"kind":"boolean","value":true}},{"key":"beforeNavigate","value":{"kind":"source-expression","source":"async (opened) => {\n await opened.route('**/*.js', async (route) => {\n const response = await route.fetch()\n const body = await response.text()\n if (body.includes('terminal runtime error')) {\n documentChunk = new URL(route.request().url()).pathname\n }\n await route.fulfill({ response, body })\n })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { scheduler: true, beforeNavigate: async (opened) => { await opened.route('**/*.js', async (route) => { . Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:502:inline-api-or-fixture-input:65","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":502,"source":"openProbeTerminal(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":502,"end_line":502,"start":23540,"end":23544,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:508:browser-event-input:66","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":508,"source":"page.evaluate(\n () =>\n new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve)))\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":509,"end_line":510,"start":24050,"end":24155,"source":"() =>\n new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve)))","value":{"kind":"source-expression","source":"() =>\n new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve)))"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve))). Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:513:browser-event-input:67","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":513,"source":"page.evaluate((chunk) => {\n const state = globalThis.__orcaScheduler\n state.disposed = null\n state.watching = true\n state.holdFramesFrom = chunk\n const host = document.querySelector('.orca-terminal-document-host')\n // Dispose drops this class after cancelling frames; DOM detachment precedes cleanup.\n const observer = new MutationObserver(() => {\n if (\n state.disposed !== null ||\n host.classList.contains('orca-terminal-document-host')\n ) {\n return\n }\n state.disposed = {\n owed: state.scheduled.filter(\n (entry) => entry.kind === 'frame' && !entry.fired && entry.caller.includes(chunk)\n ).length,\n leakedBefore: state.leaked.length\n }\n observer.disconnect()\n })\n observer.observe(host, { attributes: true, attributeFilter: ['class'] })\n host.style.width = '80%'\n }, documentChunk)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":513,"end_line":537,"start":24199,"end":25255,"source":"(chunk) => {\n const state = globalThis.__orcaScheduler\n state.disposed = null\n state.watching = true\n state.holdFramesFrom = chunk\n const host = document.querySelector('.orca-terminal-document-host')\n // Dispose drops this class after cancelling frames; DOM detachment precedes cleanup.\n const observer = new MutationObserver(() => {\n if (\n state.disposed !== null ||\n host.classList.contains('orca-terminal-document-host')\n ) {\n return\n }\n state.disposed = {\n owed: state.scheduled.filter(\n (entry) => entry.kind === 'frame' && !entry.fired && entry.caller.includes(chunk)\n ).length,\n leakedBefore: state.leaked.length\n }\n observer.disconnect()\n })\n observer.observe(host, { attributes: true, attributeFilter: ['class'] })\n host.style.width = '80%'\n }","value":{"kind":"source-expression","source":"(chunk) => {\n const state = globalThis.__orcaScheduler\n state.disposed = null\n state.watching = true\n state.holdFramesFrom = chunk\n const host = document.querySelector('.orca-terminal-document-host')\n // Dispose drops this class after cancelling frames; DOM detachment precedes cleanup.\n const observer = new MutationObserver(() => {\n if (\n state.disposed !== null ||\n host.classList.contains('orca-terminal-document-host')\n ) {\n return\n }\n state.disposed = {\n owed: state.scheduled.filter(\n (entry) => entry.kind === 'frame' && !entry.fired && entry.caller.includes(chunk)\n ).length,\n leakedBefore: state.leaked.length\n }\n observer.disconnect()\n })\n observer.observe(host, { attributes: true, attributeFilter: ['class'] })\n host.style.width = '80%'\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (chunk) => { const state = globalThis.__orcaScheduler state.disposed = null state.watching = true . Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":537,"end_line":537,"start":25257,"end":25270,"source":"documentChunk","value":{"kind":"reference","source":"documentChunk","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":483,"end_line":483,"start":22804,"end":22808},"resolved":{"kind":"null","value":null}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: documentChunk. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:541:browser-event-input:68","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":541,"source":"page.evaluate((cancelFrames) => {\n globalThis.__orcaRestoreFrameCancellation = globalThis.cancelAnimationFrame\n if (!cancelFrames) {\n // The negative control must expose held callbacks after the real document disposes.\n globalThis.cancelAnimationFrame = () => {}\n }\n globalThis.__orcaTerminalProbe.setMounted(false)\n }, cancelFrames)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":541,"end_line":548,"start":25442,"end":25825,"source":"(cancelFrames) => {\n globalThis.__orcaRestoreFrameCancellation = globalThis.cancelAnimationFrame\n if (!cancelFrames) {\n // The negative control must expose held callbacks after the real document disposes.\n globalThis.cancelAnimationFrame = () => {}\n }\n globalThis.__orcaTerminalProbe.setMounted(false)\n }","value":{"kind":"source-expression","source":"(cancelFrames) => {\n globalThis.__orcaRestoreFrameCancellation = globalThis.cancelAnimationFrame\n if (!cancelFrames) {\n // The negative control must expose held callbacks after the real document disposes.\n globalThis.cancelAnimationFrame = () => {}\n }\n globalThis.__orcaTerminalProbe.setMounted(false)\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (cancelFrames) => { globalThis.__orcaRestoreFrameCancellation = globalThis.cancelAnimationFrame if (!cancelFrames) {. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":548,"end_line":548,"start":25827,"end":25839,"source":"cancelFrames","value":{"kind":"source-expression","source":"cancelFrames"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: cancelFrames. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:551:browser-event-input:69","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":551,"source":"page.evaluate(() => {\n globalThis.cancelAnimationFrame = globalThis.__orcaRestoreFrameCancellation\n globalThis.__orcaScheduler.holdFramesFrom = null\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":551,"end_line":556,"start":26060,"end":26339,"source":"() => {\n globalThis.cancelAnimationFrame = globalThis.__orcaRestoreFrameCancellation\n globalThis.__orcaScheduler.holdFramesFrom = null\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n }","value":{"kind":"source-expression","source":"() => {\n globalThis.cancelAnimationFrame = globalThis.__orcaRestoreFrameCancellation\n globalThis.__orcaScheduler.holdFramesFrom = null\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { globalThis.cancelAnimationFrame = globalThis.__orcaRestoreFrameCancellation globalThis.__orcaScheduler.holdF. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:561:inline-api-or-fixture-input:70","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":561,"source":"openProbeTerminal(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":561,"end_line":561,"start":26528,"end":26532,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:563:browser-event-input:71","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":563,"source":"page.evaluate(\n () =>\n new Promise((resolve) => {\n globalThis.__orcaReleaseFrames()\n requestAnimationFrame(() => requestAnimationFrame(resolve))\n })\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":564,"end_line":568,"start":26681,"end":26869,"source":"() =>\n new Promise((resolve) => {\n globalThis.__orcaReleaseFrames()\n requestAnimationFrame(() => requestAnimationFrame(resolve))\n })","value":{"kind":"source-expression","source":"() =>\n new Promise((resolve) => {\n globalThis.__orcaReleaseFrames()\n requestAnimationFrame(() => requestAnimationFrame(resolve))\n })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => new Promise((resolve) => { globalThis.__orcaReleaseFrames() requestAnimationFrame(() => . Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:571:browser-event-input:72","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":571,"source":"page.evaluate(() => globalThis.__orcaScheduler)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":571,"end_line":571,"start":26931,"end":26963,"source":"() => globalThis.__orcaScheduler","value":{"kind":"source-expression","source":"() => globalThis.__orcaScheduler"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaScheduler. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":476,"title":"$name","start":22444,"end":27740},"implementation_status":"retained"},{"line":594,"title":"styles what it owns, and only that","decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","explicit_input_controls":[{"control_id":"16:603:inline-api-or-fixture-input:73","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":603,"source":"openPage(CONTROL_ROUTE)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":603,"end_line":603,"start":28472,"end":28485,"source":"CONTROL_ROUTE","value":{"kind":"reference","source":"CONTROL_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render-fixture.mjs","line":39,"end_line":39,"start":1392,"end":1413},"resolved":{"kind":"string","value":"/h/terminal-control"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: CONTROL_ROUTE. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:604:inline-api-or-fixture-input:74","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":604,"source":"readRootComputedStyles(control.page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":604,"end_line":604,"start":28539,"end":28551,"source":"control.page","value":{"kind":"source-expression","source":"control.page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: control.page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:608:inline-api-or-fixture-input:75","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":608,"source":"openProbeTerminal(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":608,"end_line":608,"start":28661,"end":28665,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:609:inline-api-or-fixture-input:76","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":609,"source":"readRootComputedStyles(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":609,"end_line":609,"start":28709,"end":28713,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:615:inline-api-or-fixture-input:77","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":615,"source":"terminalStyleReach(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":615,"end_line":615,"start":29029,"end":29033,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:625:browser-event-input:78","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":625,"source":"page.evaluate(() => {\n const host = document.querySelector('.orca-terminal-document-host')\n const xterm = host.querySelector('.xterm')\n const viewport = host.querySelector('.xterm-viewport')\n const overlay = host.querySelector('#selection-overlay')\n return {\n // xterm's own sheet: the grid is positioned against this, and its rows are absolute.\n xtermPosition: getComputedStyle(xterm).position,\n // The document's: the terminal scrolls itself, so the viewport shows no scrollbar\n // and reserves no width for one.\n viewportOverflowY: getComputedStyle(viewport).overflowY,\n viewportReservesScrollbar: viewport.offsetWidth !== viewport.clientWidth,\n // The mount's: the overlay sits in the host's unscaled coordinates above the grid,\n // not over the page's header as `fixed` would put it.\n overlayPosition: getComputedStyle(overlay).position\n }\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":625,"end_line":641,"start":29576,"end":30569,"source":"() => {\n const host = document.querySelector('.orca-terminal-document-host')\n const xterm = host.querySelector('.xterm')\n const viewport = host.querySelector('.xterm-viewport')\n const overlay = host.querySelector('#selection-overlay')\n return {\n // xterm's own sheet: the grid is positioned against this, and its rows are absolute.\n xtermPosition: getComputedStyle(xterm).position,\n // The document's: the terminal scrolls itself, so the viewport shows no scrollbar\n // and reserves no width for one.\n viewportOverflowY: getComputedStyle(viewport).overflowY,\n viewportReservesScrollbar: viewport.offsetWidth !== viewport.clientWidth,\n // The mount's: the overlay sits in the host's unscaled coordinates above the grid,\n // not over the page's header as `fixed` would put it.\n overlayPosition: getComputedStyle(overlay).position\n }\n }","value":{"kind":"source-expression","source":"() => {\n const host = document.querySelector('.orca-terminal-document-host')\n const xterm = host.querySelector('.xterm')\n const viewport = host.querySelector('.xterm-viewport')\n const overlay = host.querySelector('#selection-overlay')\n return {\n // xterm's own sheet: the grid is positioned against this, and its rows are absolute.\n xtermPosition: getComputedStyle(xterm).position,\n // The document's: the terminal scrolls itself, so the viewport shows no scrollbar\n // and reserves no width for one.\n viewportOverflowY: getComputedStyle(viewport).overflowY,\n viewportReservesScrollbar: viewport.offsetWidth !== viewport.clientWidth,\n // The mount's: the overlay sits in the host's unscaled coordinates above the grid,\n // not over the page's header as `fixed` would put it.\n overlayPosition: getComputedStyle(overlay).position\n }\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { const host = document.querySelector('.orca-terminal-document-host') const xterm = host.querySelector('.xterm') . Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:649:browser-event-input:79","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":649,"source":"page.evaluate(() => globalThis.__orcaTerminalProbe.setMounted(false))","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":649,"end_line":649,"start":30775,"end":30829,"source":"() => globalThis.__orcaTerminalProbe.setMounted(false)","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalProbe.setMounted(false)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalProbe.setMounted(false). Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:651:inline-api-or-fixture-input:80","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":651,"source":"readRootComputedStyles(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":651,"end_line":651,"start":30969,"end":30973,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:653:inline-api-or-fixture-input:81","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":653,"source":"terminalStyleReach(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":653,"end_line":653,"start":31162,"end":31166,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":594,"title":"styles what it owns, and only that","start":27746,"end":31325},"implementation_status":"retained"},{"line":659,"title":"fits through the handle from the ready box and records what beforeinput reports","decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: fits through the handle from the ready box and records what beforeinput reports.","explicit_input_controls":[{"control_id":"16:661:inline-api-or-fixture-input:82","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":661,"source":"openProbeTerminal(page)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":661,"end_line":661,"start":31480,"end":31484,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: fits through the handle from the ready box and records what beforeinput reports.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: fits through the handle from the ready box and records what beforeinput reports.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:666:browser-event-input:83","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":666,"source":"page.evaluate(() => globalThis.__orcaTerminalProbe.fit())","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":666,"end_line":666,"start":31759,"end":31801,"source":"() => globalThis.__orcaTerminalProbe.fit()","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalProbe.fit()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalProbe.fit(). Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: fits through the handle from the ready box and records what beforeinput reports.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: fits through the handle from the ready box and records what beforeinput reports.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:675:browser-event-input:84","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":675,"source":"page.evaluate(() => {\n const element = document.querySelector('#terminal-surface .xterm-helper-textarea')\n return element === null\n ? null\n : {\n readOnly: element.readOnly,\n tabIndex: element.tabIndex,\n inputMode: element.getAttribute('inputmode')\n }\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":675,"end_line":684,"start":32288,"end":32614,"source":"() => {\n const element = document.querySelector('#terminal-surface .xterm-helper-textarea')\n return element === null\n ? null\n : {\n readOnly: element.readOnly,\n tabIndex: element.tabIndex,\n inputMode: element.getAttribute('inputmode')\n }\n }","value":{"kind":"source-expression","source":"() => {\n const element = document.querySelector('#terminal-surface .xterm-helper-textarea')\n return element === null\n ? null\n : {\n readOnly: element.readOnly,\n tabIndex: element.tabIndex,\n inputMode: element.getAttribute('inputmode')\n }\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { const element = document.querySelector('#terminal-surface .xterm-helper-textarea') return element === null . Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: fits through the handle from the ready box and records what beforeinput reports.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: fits through the handle from the ready box and records what beforeinput reports.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:691:browser-event-input:85","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":691,"source":"page.keyboard.type('ab')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":691,"end_line":691,"start":33066,"end":33070,"source":"'ab'","value":{"kind":"string","value":"ab"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'ab'. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: fits through the handle from the ready box and records what beforeinput reports.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: fits through the handle from the ready box and records what beforeinput reports.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"16:696:browser-event-input:86","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":696,"source":"page.evaluate(() => globalThis.__orcaTerminalBeforeInput)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":696,"end_line":696,"start":33264,"end":33306,"source":"() => globalThis.__orcaTerminalBeforeInput","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalBeforeInput"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalBeforeInput. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: fits through the handle from the ready box and records what beforeinput reports.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: fits through the handle from the ready box and records what beforeinput reports.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":659,"title":"fits through the handle from the ready box and records what beforeinput reports","start":31331,"end":33748},"implementation_status":"retained"}],"lines":707,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition.","planned_changes":[{"original_line":95,"title":"opens xterm under the shipped policy and paints a dense stream into its buffer","decision":"fix","change":"Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior."}],"production_evidence":["config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/mobile-web-app-terminal-render-fixture.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-render-harness.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-terminal-probe-route.mjs"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"16:44:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":44,"end_line":44,"start":1930,"end":1955,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":44,"end_line":44,"start":1953,"end":1955},"binding":"controlCspViolations","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:46:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":46,"end_line":46,"start":2031,"end":2066,"source":"fixture.openPage(pathname, options)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":46,"end_line":46,"start":2031,"end":2066},"binding":"fixture.openPage","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":46,"end_line":46,"start":2048,"end":2056,"source":"pathname","value":{"kind":"source-expression","source":"pathname"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: pathname. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":46,"end_line":46,"start":2058,"end":2065,"source":"options","value":{"kind":"source-expression","source":"options"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: options. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:47:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":47,"end_line":47,"start":2101,"end":2130,"source":"fixture.openTerminal(options)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":47,"end_line":47,"start":2101,"end":2130},"binding":"fixture.openTerminal","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":47,"end_line":47,"start":2122,"end":2129,"source":"options","value":{"kind":"source-expression","source":"options"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: options. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:62:browser-event-input:4","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":62,"end_line":62,"start":2467,"end":2518,"source":"page.evaluate(() => globalThis.__orcaCspViolations)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":62,"end_line":62,"start":2467,"end":2518},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":62,"end_line":62,"start":2481,"end":2517,"source":"() => globalThis.__orcaCspViolations","value":{"kind":"source-expression","source":"() => globalThis.__orcaCspViolations"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaCspViolations. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:79:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":79,"end_line":79,"start":3265,"end":3288,"source":"openPage(CONTROL_ROUTE)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":79,"end_line":79,"start":3265,"end":3288},"binding":"openPage","resolution":[],"enclosing_case":{"line":75,"title":"records what the page refuses before any terminal is on it"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: records what the page refuses before any terminal is on it.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":79,"end_line":79,"start":3274,"end":3287,"source":"CONTROL_ROUTE","value":{"kind":"reference","source":"CONTROL_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render-fixture.mjs","line":39,"end_line":39,"start":1392,"end":1413},"resolved":{"kind":"string","value":"/h/terminal-control"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: CONTROL_ROUTE. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: records what the page refuses before any terminal is on it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:84:browser-event-input:6","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":84,"end_line":84,"start":3470,"end":3521,"source":"page.evaluate(() => globalThis.__orcaCspViolations)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":84,"end_line":84,"start":3470,"end":3521},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":75,"title":"records what the page refuses before any terminal is on it"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: records what the page refuses before any terminal is on it.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":84,"end_line":84,"start":3484,"end":3520,"source":"() => globalThis.__orcaCspViolations","value":{"kind":"source-expression","source":"() => globalThis.__orcaCspViolations"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaCspViolations. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: records what the page refuses before any terminal is on it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:96:fixture-or-oracle-declaration:7","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":96,"end_line":96,"start":4292,"end":4302,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":96,"end_line":96,"start":4300,"end":4302},"binding":"fonts","resolution":[],"enclosing_case":{"line":95,"title":"opens xterm under the shipped policy and paints a dense stream into its buffer"},"affected_case_lines":[],"decision":"keep","reason":"Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:97:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":97,"end_line":105,"start":4340,"end":4576,"source":"openTerminal({\n beforeNavigate: async (page) => {\n page.on('response', (response) => {\n if (response.url().endsWith('.woff2')) {\n fonts.push(response)\n }\n })\n }\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":97,"end_line":105,"start":4340,"end":4576},"binding":"openTerminal","resolution":[],"enclosing_case":{"line":95,"title":"opens xterm under the shipped policy and paints a dense stream into its buffer"},"affected_case_lines":[],"decision":"keep","reason":"Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":97,"end_line":105,"start":4353,"end":4575,"source":"{\n beforeNavigate: async (page) => {\n page.on('response', (response) => {\n if (response.url().endsWith('.woff2')) {\n fonts.push(response)\n }\n })\n }\n }","value":{"kind":"object","value":[{"key":"beforeNavigate","value":{"kind":"source-expression","source":"async (page) => {\n page.on('response', (response) => {\n if (response.url().endsWith('.woff2')) {\n fonts.push(response)\n }\n })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { beforeNavigate: async (page) => { page.on('response', (response) => { if (response.url().endsWith('.woff2')). Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:106:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":106,"end_line":106,"start":4589,"end":4612,"source":"openProbeTerminal(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":106,"end_line":106,"start":4589,"end":4612},"binding":"openProbeTerminal","resolution":[],"enclosing_case":{"line":95,"title":"opens xterm under the shipped policy and paints a dense stream into its buffer"},"affected_case_lines":[],"decision":"keep","reason":"Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":106,"end_line":106,"start":4607,"end":4611,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:114:browser-event-input:10","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":114,"end_line":114,"start":4937,"end":5021,"source":"page.evaluate(() => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0'))","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":114,"end_line":114,"start":4937,"end":5021},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":95,"title":"opens xterm under the shipped policy and paints a dense stream into its buffer"},"affected_case_lines":[],"decision":"keep","reason":"Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":114,"end_line":114,"start":4951,"end":5020,"source":"() => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0')","value":{"kind":"source-expression","source":"() => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => document.fonts.check('13px \"Orca Nerd Font Symbols\"', '\\ue0b0'). Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:116:browser-event-input:11","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":116,"end_line":119,"start":5069,"end":5189,"source":"page.evaluate((data) => {\n globalThis.__orcaTerminalProbe.write(data)\n return data.length\n }, stream)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":116,"end_line":119,"start":5069,"end":5189},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":95,"title":"opens xterm under the shipped policy and paints a dense stream into its buffer"},"affected_case_lines":[],"decision":"keep","reason":"Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":116,"end_line":119,"start":5083,"end":5180,"source":"(data) => {\n globalThis.__orcaTerminalProbe.write(data)\n return data.length\n }","value":{"kind":"source-expression","source":"(data) => {\n globalThis.__orcaTerminalProbe.write(data)\n return data.length\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (data) => { globalThis.__orcaTerminalProbe.write(data) return data.length }. Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":119,"end_line":119,"start":5182,"end":5188,"source":"stream","value":{"kind":"reference","source":"stream","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":45,"end_line":45,"start":1971,"end":1990},"resolved":{"kind":"call-source","callee":"escapeDenseStream","arguments":[],"source":"escapeDenseStream()"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: stream. Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:124:browser-event-input:12","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":124,"end_line":124,"start":5440,"end":5503,"source":"page.evaluate(() => globalThis.__orcaTerminalProbe.selectAll())","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":124,"end_line":124,"start":5440,"end":5503},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":95,"title":"opens xterm under the shipped policy and paints a dense stream into its buffer"},"affected_case_lines":[],"decision":"keep","reason":"Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":124,"end_line":124,"start":5454,"end":5502,"source":"() => globalThis.__orcaTerminalProbe.selectAll()","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalProbe.selectAll()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalProbe.selectAll(). Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:129:browser-event-input:13","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":129,"end_line":129,"start":5699,"end":5768,"source":"page.evaluate(() => document.getElementById('sel-menu-copy').click())","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":129,"end_line":129,"start":5699,"end":5768},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":95,"title":"opens xterm under the shipped policy and paints a dense stream into its buffer"},"affected_case_lines":[],"decision":"keep","reason":"Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":129,"end_line":129,"start":5713,"end":5767,"source":"() => document.getElementById('sel-menu-copy').click()","value":{"kind":"source-expression","source":"() => document.getElementById('sel-menu-copy').click()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => document.getElementById('sel-menu-copy').click(). Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:134:browser-event-input:14","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":134,"end_line":134,"start":5945,"end":5997,"source":"page.evaluate(() => globalThis.__orcaTerminalCopied)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":134,"end_line":134,"start":5945,"end":5997},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":95,"title":"opens xterm under the shipped policy and paints a dense stream into its buffer"},"affected_case_lines":[],"decision":"keep","reason":"Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":134,"end_line":134,"start":5959,"end":5996,"source":"() => globalThis.__orcaTerminalCopied","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalCopied"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalCopied. Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:146:browser-event-input:15","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":146,"end_line":146,"start":6468,"end":6526,"source":"page.evaluate(() => globalThis.__orcaTerminalEngineErrors)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":146,"end_line":146,"start":6468,"end":6526},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":95,"title":"opens xterm under the shipped policy and paints a dense stream into its buffer"},"affected_case_lines":[],"decision":"keep","reason":"Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":146,"end_line":146,"start":6482,"end":6525,"source":"() => globalThis.__orcaTerminalEngineErrors","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalEngineErrors"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalEngineErrors. Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:155:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":155,"end_line":155,"start":6999,"end":7036,"source":"openTerminal({ errorSentinel: true })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":155,"end_line":155,"start":6999,"end":7036},"binding":"openTerminal","resolution":[],"enclosing_case":{"line":151,"title":"leaves the page its own window.onerror across mount and dispose"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":155,"end_line":155,"start":7012,"end":7035,"source":"{ errorSentinel: true }","value":{"kind":"object","value":[{"key":"errorSentinel","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { errorSentinel: true }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:156:browser-event-input:17","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":156,"end_line":156,"start":7056,"end":7121,"source":"page.evaluate(() => window.onerror === globalThis.__orcaSentinel)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":156,"end_line":156,"start":7056,"end":7121},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":151,"title":"leaves the page its own window.onerror across mount and dispose"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":156,"end_line":156,"start":7070,"end":7120,"source":"() => window.onerror === globalThis.__orcaSentinel","value":{"kind":"source-expression","source":"() => window.onerror === globalThis.__orcaSentinel"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => window.onerror === globalThis.__orcaSentinel. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:157:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":157,"end_line":157,"start":7146,"end":7169,"source":"openProbeTerminal(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":157,"end_line":157,"start":7146,"end":7169},"binding":"openProbeTerminal","resolution":[],"enclosing_case":{"line":151,"title":"leaves the page its own window.onerror across mount and dispose"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":157,"end_line":157,"start":7164,"end":7168,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:158:browser-event-input:19","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":158,"end_line":158,"start":7189,"end":7254,"source":"page.evaluate(() => window.onerror === globalThis.__orcaSentinel)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":158,"end_line":158,"start":7189,"end":7254},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":151,"title":"leaves the page its own window.onerror across mount and dispose"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":158,"end_line":158,"start":7203,"end":7253,"source":"() => window.onerror === globalThis.__orcaSentinel","value":{"kind":"source-expression","source":"() => window.onerror === globalThis.__orcaSentinel"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => window.onerror === globalThis.__orcaSentinel. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:163:browser-event-input:20","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":163,"end_line":167,"start":7536,"end":7666,"source":"page.evaluate(() => {\n setTimeout(() => {\n throw new Error('orca-terminal-render-uncaught')\n }, 0)\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":163,"end_line":167,"start":7536,"end":7666},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":151,"title":"leaves the page its own window.onerror across mount and dispose"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":163,"end_line":167,"start":7550,"end":7665,"source":"() => {\n setTimeout(() => {\n throw new Error('orca-terminal-render-uncaught')\n }, 0)\n }","value":{"kind":"source-expression","source":"() => {\n setTimeout(() => {\n throw new Error('orca-terminal-render-uncaught')\n }, 0)\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { setTimeout(() => { throw new Error('orca-terminal-render-uncaught') }, 0) }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:177:browser-event-input:21","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":177,"end_line":177,"start":8041,"end":8092,"source":"page.evaluate(() => globalThis.__orcaSentinelCalls)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":177,"end_line":177,"start":8041,"end":8092},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":151,"title":"leaves the page its own window.onerror across mount and dispose"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":177,"end_line":177,"start":8055,"end":8091,"source":"() => globalThis.__orcaSentinelCalls","value":{"kind":"source-expression","source":"() => globalThis.__orcaSentinelCalls"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaSentinelCalls. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:180:browser-event-input:22","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":180,"end_line":180,"start":8214,"end":8283,"source":"page.evaluate(() => globalThis.__orcaTerminalProbe.setMounted(false))","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":180,"end_line":180,"start":8214,"end":8283},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":151,"title":"leaves the page its own window.onerror across mount and dispose"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":180,"end_line":180,"start":8228,"end":8282,"source":"() => globalThis.__orcaTerminalProbe.setMounted(false)","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalProbe.setMounted(false)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalProbe.setMounted(false). Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:182:browser-event-input:23","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":182,"end_line":182,"start":8399,"end":8464,"source":"page.evaluate(() => window.onerror === globalThis.__orcaSentinel)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":182,"end_line":182,"start":8399,"end":8464},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":151,"title":"leaves the page its own window.onerror across mount and dispose"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":182,"end_line":182,"start":8413,"end":8463,"source":"() => window.onerror === globalThis.__orcaSentinel","value":{"kind":"source-expression","source":"() => window.onerror === globalThis.__orcaSentinel"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => window.onerror === globalThis.__orcaSentinel. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:183:browser-event-input:24","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":183,"end_line":188,"start":8504,"end":8699,"source":"page.evaluate(() => {\n setTimeout(() => {\n throw new Error('orca-terminal-render-after-dispose')\n }, 0)\n return globalThis.__orcaTerminalEngineErrors.length\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":183,"end_line":188,"start":8504,"end":8699},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":151,"title":"leaves the page its own window.onerror across mount and dispose"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":183,"end_line":188,"start":8518,"end":8698,"source":"() => {\n setTimeout(() => {\n throw new Error('orca-terminal-render-after-dispose')\n }, 0)\n return globalThis.__orcaTerminalEngineErrors.length\n }","value":{"kind":"source-expression","source":"() => {\n setTimeout(() => {\n throw new Error('orca-terminal-render-after-dispose')\n }, 0)\n return globalThis.__orcaTerminalEngineErrors.length\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { setTimeout(() => { throw new Error('orca-terminal-render-after-dispose') }, 0) return globalThis._. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:197:browser-event-input:25","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":197,"end_line":197,"start":9050,"end":9115,"source":"page.evaluate(() => globalThis.__orcaTerminalEngineErrors.length)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":197,"end_line":197,"start":9050,"end":9115},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":151,"title":"leaves the page its own window.onerror across mount and dispose"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":197,"end_line":197,"start":9064,"end":9114,"source":"() => globalThis.__orcaTerminalEngineErrors.length","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalEngineErrors.length"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalEngineErrors.length. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page its own window.onerror across mount and dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:205:browser-event-input:26","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":205,"end_line":205,"start":9461,"end":9496,"source":"page.evaluate(() => window.onerror)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":205,"end_line":205,"start":9461,"end":9496},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":201,"title":"installs no window.onerror on a page that had none"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: installs no window.onerror on a page that had none.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":205,"end_line":205,"start":9475,"end":9495,"source":"() => window.onerror","value":{"kind":"source-expression","source":"() => window.onerror"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => window.onerror. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: installs no window.onerror on a page that had none.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:206:inline-api-or-fixture-input:27","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":206,"end_line":206,"start":9521,"end":9544,"source":"openProbeTerminal(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":206,"end_line":206,"start":9521,"end":9544},"binding":"openProbeTerminal","resolution":[],"enclosing_case":{"line":201,"title":"installs no window.onerror on a page that had none"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: installs no window.onerror on a page that had none.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":206,"end_line":206,"start":9539,"end":9543,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: installs no window.onerror on a page that had none.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:207:browser-event-input:28","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":207,"end_line":207,"start":9564,"end":9599,"source":"page.evaluate(() => window.onerror)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":207,"end_line":207,"start":9564,"end":9599},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":201,"title":"installs no window.onerror on a page that had none"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: installs no window.onerror on a page that had none.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":207,"end_line":207,"start":9578,"end":9598,"source":"() => window.onerror","value":{"kind":"source-expression","source":"() => window.onerror"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => window.onerror. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: installs no window.onerror on a page that had none.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:208:browser-event-input:29","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":208,"end_line":208,"start":9624,"end":9693,"source":"page.evaluate(() => globalThis.__orcaTerminalProbe.setMounted(false))","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":208,"end_line":208,"start":9624,"end":9693},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":201,"title":"installs no window.onerror on a page that had none"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: installs no window.onerror on a page that had none.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":208,"end_line":208,"start":9638,"end":9692,"source":"() => globalThis.__orcaTerminalProbe.setMounted(false)","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalProbe.setMounted(false)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalProbe.setMounted(false). Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: installs no window.onerror on a page that had none.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:210:browser-event-input:30","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":210,"end_line":210,"start":9809,"end":9844,"source":"page.evaluate(() => window.onerror)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":210,"end_line":210,"start":9809,"end":9844},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":201,"title":"installs no window.onerror on a page that had none"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: installs no window.onerror on a page that had none.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":210,"end_line":210,"start":9823,"end":9843,"source":"() => window.onerror","value":{"kind":"source-expression","source":"() => window.onerror"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => window.onerror. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: installs no window.onerror on a page that had none.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:227:browser-event-input:31","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":227,"end_line":227,"start":10760,"end":10829,"source":"page.evaluate(() => globalThis.__orcaTerminalProbe.setMounted(false))","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":227,"end_line":227,"start":10760,"end":10829},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":227,"end_line":227,"start":10774,"end":10828,"source":"() => globalThis.__orcaTerminalProbe.setMounted(false)","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalProbe.setMounted(false)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalProbe.setMounted(false). Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:229:browser-event-input:32","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":229,"end_line":229,"start":10939,"end":10997,"source":"page.evaluate(() => globalThis.__orcaListeners.snapshot())","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":229,"end_line":229,"start":10939,"end":10997},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":229,"end_line":229,"start":10953,"end":10996,"source":"() => globalThis.__orcaListeners.snapshot()","value":{"kind":"source-expression","source":"() => globalThis.__orcaListeners.snapshot()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaListeners.snapshot(). Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:235:browser-event-input:33","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":235,"end_line":235,"start":11187,"end":11268,"source":"page.evaluate(() => document.querySelectorAll('#terminal-surface .xterm').length)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":235,"end_line":235,"start":11187,"end":11268},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":235,"end_line":235,"start":11201,"end":11267,"source":"() => document.querySelectorAll('#terminal-surface .xterm').length","value":{"kind":"source-expression","source":"() => document.querySelectorAll('#terminal-surface .xterm').length"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => document.querySelectorAll('#terminal-surface .xterm').length. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:241:browser-event-input:34","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":241,"end_line":241,"start":11551,"end":11614,"source":"page.evaluate(() => globalThis.__orcaTerminalProbe.selectAll())","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":241,"end_line":241,"start":11551,"end":11614},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":241,"end_line":241,"start":11565,"end":11613,"source":"() => globalThis.__orcaTerminalProbe.selectAll()","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalProbe.selectAll()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalProbe.selectAll(). Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:249:browser-event-input:35","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":249,"end_line":254,"start":11935,"end":12105,"source":"page.evaluate((thrown) => {\n globalThis.__orcaTerminalEngineErrors = []\n setTimeout(() => {\n throw new Error(thrown)\n }, 0)\n }, marker)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":249,"end_line":254,"start":11935,"end":12105},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":249,"end_line":254,"start":11949,"end":12096,"source":"(thrown) => {\n globalThis.__orcaTerminalEngineErrors = []\n setTimeout(() => {\n throw new Error(thrown)\n }, 0)\n }","value":{"kind":"source-expression","source":"(thrown) => {\n globalThis.__orcaTerminalEngineErrors = []\n setTimeout(() => {\n throw new Error(thrown)\n }, 0)\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (thrown) => { globalThis.__orcaTerminalEngineErrors = [] setTimeout(() => { throw new Error(thrown) }, 0) . Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":254,"end_line":254,"start":12098,"end":12104,"source":"marker","value":{"kind":"reference","source":"marker","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":248,"end_line":248,"start":11899,"end":11922},"resolved":{"kind":"source-expression","source":"`orca-remount-${label}`"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: marker. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:264:inline-api-or-fixture-input:36","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":264,"end_line":264,"start":12448,"end":12471,"source":"openProbeTerminal(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":264,"end_line":264,"start":12448,"end":12471},"binding":"openProbeTerminal","resolution":[],"enclosing_case":{"line":262,"title":"is a live terminal again after an unmount and a remount"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after an unmount and a remount.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":264,"end_line":264,"start":12466,"end":12470,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after an unmount and a remount.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:267:browser-event-input:37","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":267,"end_line":267,"start":12537,"end":12606,"source":"page.evaluate(() => globalThis.__orcaTerminalProbe.setMounted(false))","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":267,"end_line":267,"start":12537,"end":12606},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":262,"title":"is a live terminal again after an unmount and a remount"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after an unmount and a remount.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":267,"end_line":267,"start":12551,"end":12605,"source":"() => globalThis.__orcaTerminalProbe.setMounted(false)","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalProbe.setMounted(false)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalProbe.setMounted(false). Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after an unmount and a remount.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:269:browser-event-input:38","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":269,"end_line":272,"start":12715,"end":12848,"source":"page.evaluate(() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":269,"end_line":272,"start":12715,"end":12848},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":262,"title":"is a live terminal again after an unmount and a remount"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after an unmount and a remount.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":269,"end_line":272,"start":12729,"end":12847,"source":"() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n }","value":{"kind":"source-expression","source":"() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { globalThis.__orcaTerminalReady = false globalThis.__orcaTerminalProbe.setMounted(true) }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after an unmount and a remount.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:277:inline-api-or-fixture-input:39","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":277,"end_line":277,"start":12998,"end":13021,"source":"openProbeTerminal(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":277,"end_line":277,"start":12998,"end":13021},"binding":"openProbeTerminal","resolution":[],"enclosing_case":{"line":262,"title":"is a live terminal again after an unmount and a remount"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after an unmount and a remount.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":277,"end_line":277,"start":13016,"end":13020,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after an unmount and a remount.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:290:browser-event-input:40","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":290,"end_line":294,"start":13788,"end":13915,"source":"page.evaluate(() => {\n setTimeout(() => {\n throw new Error('orca-terminal-render-fatal')\n }, 0)\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":290,"end_line":294,"start":13788,"end":13915},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":282,"title":"is a live terminal again after the user reloads a failed one"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after the user reloads a failed one.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":290,"end_line":294,"start":13802,"end":13914,"source":"() => {\n setTimeout(() => {\n throw new Error('orca-terminal-render-fatal')\n }, 0)\n }","value":{"kind":"source-expression","source":"() => {\n setTimeout(() => {\n throw new Error('orca-terminal-render-fatal')\n }, 0)\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { setTimeout(() => { throw new Error('orca-terminal-render-fatal') }, 0) }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after the user reloads a failed one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:298:browser-event-input:41","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":298,"end_line":300,"start":14023,"end":14100,"source":"page.evaluate(() => {\n globalThis.__orcaTerminalReady = false\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":298,"end_line":300,"start":14023,"end":14100},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":282,"title":"is a live terminal again after the user reloads a failed one"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after the user reloads a failed one.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":298,"end_line":300,"start":14037,"end":14099,"source":"() => {\n globalThis.__orcaTerminalReady = false\n }","value":{"kind":"source-expression","source":"() => {\n globalThis.__orcaTerminalReady = false\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { globalThis.__orcaTerminalReady = false }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after the user reloads a failed one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:306:inline-api-or-fixture-input:42","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":306,"end_line":306,"start":14277,"end":14300,"source":"openProbeTerminal(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":306,"end_line":306,"start":14277,"end":14300},"binding":"openProbeTerminal","resolution":[],"enclosing_case":{"line":282,"title":"is a live terminal again after the user reloads a failed one"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after the user reloads a failed one.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":306,"end_line":306,"start":14295,"end":14299,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: is a live terminal again after the user reloads a failed one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:322:inline-api-or-fixture-input:43","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":322,"end_line":322,"start":15314,"end":15347,"source":"openTerminal({ listeners: true })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":322,"end_line":322,"start":15314,"end":15347},"binding":"openTerminal","resolution":[],"enclosing_case":{"line":311,"title":"leaves the page the listeners it found, across a mount and a dispose"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page the listeners it found, across a mount and a dispose.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":322,"end_line":322,"start":15327,"end":15346,"source":"{ listeners: true }","value":{"kind":"object","value":[{"key":"listeners","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { listeners: true }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page the listeners it found, across a mount and a dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:323:inline-api-or-fixture-input:44","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":323,"end_line":323,"start":15360,"end":15383,"source":"openProbeTerminal(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":323,"end_line":323,"start":15360,"end":15383},"binding":"openProbeTerminal","resolution":[],"enclosing_case":{"line":311,"title":"leaves the page the listeners it found, across a mount and a dispose"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page the listeners it found, across a mount and a dispose.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":323,"end_line":323,"start":15378,"end":15382,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page the listeners it found, across a mount and a dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:325:browser-event-input:45","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":325,"end_line":328,"start":15453,"end":15586,"source":"page.evaluate(() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":325,"end_line":328,"start":15453,"end":15586},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":311,"title":"leaves the page the listeners it found, across a mount and a dispose"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page the listeners it found, across a mount and a dispose.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":325,"end_line":328,"start":15467,"end":15585,"source":"() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n }","value":{"kind":"source-expression","source":"() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { globalThis.__orcaTerminalReady = false globalThis.__orcaTerminalProbe.setMounted(true) }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page the listeners it found, across a mount and a dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:333:inline-api-or-fixture-input:46","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":333,"end_line":333,"start":15736,"end":15759,"source":"openProbeTerminal(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":333,"end_line":333,"start":15736,"end":15759},"binding":"openProbeTerminal","resolution":[],"enclosing_case":{"line":311,"title":"leaves the page the listeners it found, across a mount and a dispose"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page the listeners it found, across a mount and a dispose.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":333,"end_line":333,"start":15754,"end":15758,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page the listeners it found, across a mount and a dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:334:browser-event-input:47","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":334,"end_line":334,"start":15790,"end":15848,"source":"page.evaluate(() => globalThis.__orcaListeners.snapshot())","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":334,"end_line":334,"start":15790,"end":15848},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":311,"title":"leaves the page the listeners it found, across a mount and a dispose"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page the listeners it found, across a mount and a dispose.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":334,"end_line":334,"start":15804,"end":15847,"source":"() => globalThis.__orcaListeners.snapshot()","value":{"kind":"source-expression","source":"() => globalThis.__orcaListeners.snapshot()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaListeners.snapshot(). Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: leaves the page the listeners it found, across a mount and a dispose.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:352:inline-api-or-fixture-input:48","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":352,"end_line":352,"start":16808,"end":16831,"source":"openProbeTerminal(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":352,"end_line":352,"start":16808,"end":16831},"binding":"openProbeTerminal","resolution":[],"enclosing_case":{"line":346,"title":"still reports runtime errors after a first mount spent the non-fatal budget"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":352,"end_line":352,"start":16826,"end":16830,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:353:browser-event-input:49","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":353,"end_line":359,"start":16844,"end":17044,"source":"page.evaluate(() => {\n for (let index = 0; index < 6; index++) {\n setTimeout(() => {\n throw new Error(`orca-budget-burn-${String(index)}`)\n }, 0)\n }\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":353,"end_line":359,"start":16844,"end":17044},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":346,"title":"still reports runtime errors after a first mount spent the non-fatal budget"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":353,"end_line":359,"start":16858,"end":17043,"source":"() => {\n for (let index = 0; index < 6; index++) {\n setTimeout(() => {\n throw new Error(`orca-budget-burn-${String(index)}`)\n }, 0)\n }\n }","value":{"kind":"source-expression","source":"() => {\n for (let index = 0; index < 6; index++) {\n setTimeout(() => {\n throw new Error(`orca-budget-burn-${String(index)}`)\n }, 0)\n }\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { for (let index = 0; index < 6; index++) { setTimeout(() => { throw new Error(`orca-budget-burn-${Strin. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:354:counted-loop:50","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":354,"end_line":358,"start":16874,"end":17035,"source":"let index = 0; index < 6; index++","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":354,"end_line":354,"start":16879,"end":16912},"enclosing_case":{"line":346,"title":"still reports runtime errors after a first mount spent the non-fatal budget"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","rows":[],"policy":"Exact original fixed/runtime loop bounds and initializer retained; generated repetitions are workload policy, not additional declarations or runtime validations.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:368:browser-event-input:51","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":368,"end_line":368,"start":17294,"end":17363,"source":"page.evaluate(() => globalThis.__orcaTerminalProbe.setMounted(false))","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":368,"end_line":368,"start":17294,"end":17363},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":346,"title":"still reports runtime errors after a first mount spent the non-fatal budget"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":368,"end_line":368,"start":17308,"end":17362,"source":"() => globalThis.__orcaTerminalProbe.setMounted(false)","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalProbe.setMounted(false)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalProbe.setMounted(false). Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:370:browser-event-input:52","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":370,"end_line":373,"start":17472,"end":17605,"source":"page.evaluate(() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":370,"end_line":373,"start":17472,"end":17605},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":346,"title":"still reports runtime errors after a first mount spent the non-fatal budget"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":370,"end_line":373,"start":17486,"end":17604,"source":"() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n }","value":{"kind":"source-expression","source":"() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { globalThis.__orcaTerminalReady = false globalThis.__orcaTerminalProbe.setMounted(true) }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:378:inline-api-or-fixture-input:53","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":378,"end_line":378,"start":17755,"end":17778,"source":"openProbeTerminal(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":378,"end_line":378,"start":17755,"end":17778},"binding":"openProbeTerminal","resolution":[],"enclosing_case":{"line":346,"title":"still reports runtime errors after a first mount spent the non-fatal budget"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":378,"end_line":378,"start":17773,"end":17777,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:380:browser-event-input:54","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":380,"end_line":385,"start":17792,"end":17967,"source":"page.evaluate(() => {\n globalThis.__orcaTerminalEngineErrors = []\n setTimeout(() => {\n throw new Error('orca-second-mount-error')\n }, 0)\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":380,"end_line":385,"start":17792,"end":17967},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":346,"title":"still reports runtime errors after a first mount spent the non-fatal budget"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":380,"end_line":385,"start":17806,"end":17966,"source":"() => {\n globalThis.__orcaTerminalEngineErrors = []\n setTimeout(() => {\n throw new Error('orca-second-mount-error')\n }, 0)\n }","value":{"kind":"source-expression","source":"() => {\n globalThis.__orcaTerminalEngineErrors = []\n setTimeout(() => {\n throw new Error('orca-second-mount-error')\n }, 0)\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { globalThis.__orcaTerminalEngineErrors = [] setTimeout(() => { throw new Error('orca-second-mount-error') . Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: still reports runtime errors after a first mount spent the non-fatal budget.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:406:inline-api-or-fixture-input:55","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":406,"end_line":418,"start":19125,"end":19599,"source":"openPage(PROBE_ROUTE, {\n scheduler: true,\n beforeNavigate: async (opened) => {\n await opened.route('**/*.js', async (route) => {\n const response = await route.fetch()\n const body = await response.text()\n if (body.includes('terminal runtime error')) {\n documentChunk = new URL(route.request().url()).pathname\n }\n await route.fulfill({ response, body })\n })\n }\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":406,"end_line":418,"start":19125,"end":19599},"binding":"openPage","resolution":[],"enclosing_case":{"line":396,"title":"cancels the timers it armed, so none of the first mount fires into the second"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":406,"end_line":406,"start":19134,"end":19145,"source":"PROBE_ROUTE","value":{"kind":"reference","source":"PROBE_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render-fixture.mjs","line":38,"end_line":38,"start":1343,"end":1362},"resolved":{"kind":"string","value":"/h/terminal-probe"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: PROBE_ROUTE. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":406,"end_line":418,"start":19147,"end":19598,"source":"{\n scheduler: true,\n beforeNavigate: async (opened) => {\n await opened.route('**/*.js', async (route) => {\n const response = await route.fetch()\n const body = await response.text()\n if (body.includes('terminal runtime error')) {\n documentChunk = new URL(route.request().url()).pathname\n }\n await route.fulfill({ response, body })\n })\n }\n }","value":{"kind":"object","value":[{"key":"scheduler","value":{"kind":"boolean","value":true}},{"key":"beforeNavigate","value":{"kind":"source-expression","source":"async (opened) => {\n await opened.route('**/*.js', async (route) => {\n const response = await route.fetch()\n const body = await response.text()\n if (body.includes('terminal runtime error')) {\n documentChunk = new URL(route.request().url()).pathname\n }\n await route.fulfill({ response, body })\n })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { scheduler: true, beforeNavigate: async (opened) => { await opened.route('**/*.js', async (route) => { . Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:423:inline-api-or-fixture-input:56","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":423,"end_line":423,"start":19749,"end":19772,"source":"openProbeTerminal(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":423,"end_line":423,"start":19749,"end":19772},"binding":"openProbeTerminal","resolution":[],"enclosing_case":{"line":396,"title":"cancels the timers it armed, so none of the first mount fires into the second"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":423,"end_line":423,"start":19767,"end":19771,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:432:browser-event-input:57","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":432,"end_line":446,"start":20540,"end":21128,"source":"page.evaluate(() => {\n globalThis.__orcaScheduler.watching = true\n const surface = document.getElementById('terminal-surface')\n surface.dispatchEvent(\n new TouchEvent('touchstart', {\n bubbles: true,\n cancelable: true,\n touches: [new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })],\n changedTouches: [\n new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })\n ]\n })\n )\n globalThis.__orcaTerminalProbe.setMounted(false)\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":432,"end_line":446,"start":20540,"end":21128},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":396,"title":"cancels the timers it armed, so none of the first mount fires into the second"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":432,"end_line":446,"start":20554,"end":21127,"source":"() => {\n globalThis.__orcaScheduler.watching = true\n const surface = document.getElementById('terminal-surface')\n surface.dispatchEvent(\n new TouchEvent('touchstart', {\n bubbles: true,\n cancelable: true,\n touches: [new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })],\n changedTouches: [\n new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })\n ]\n })\n )\n globalThis.__orcaTerminalProbe.setMounted(false)\n }","value":{"kind":"source-expression","source":"() => {\n globalThis.__orcaScheduler.watching = true\n const surface = document.getElementById('terminal-surface')\n surface.dispatchEvent(\n new TouchEvent('touchstart', {\n bubbles: true,\n cancelable: true,\n touches: [new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })],\n changedTouches: [\n new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })\n ]\n })\n )\n globalThis.__orcaTerminalProbe.setMounted(false)\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { globalThis.__orcaScheduler.watching = true const surface = document.getElementById('terminal-surface') surfa. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:435:browser-event-input:58","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":435,"end_line":444,"start":20689,"end":21062,"source":"surface.dispatchEvent(\n new TouchEvent('touchstart', {\n bubbles: true,\n cancelable: true,\n touches: [new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })],\n changedTouches: [\n new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })\n ]\n })\n )","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":435,"end_line":444,"start":20689,"end":21062},"binding":"surface.dispatchEvent","resolution":[],"enclosing_case":{"line":396,"title":"cancels the timers it armed, so none of the first mount fires into the second"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":436,"end_line":443,"start":20722,"end":21052,"source":"new TouchEvent('touchstart', {\n bubbles: true,\n cancelable: true,\n touches: [new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })],\n changedTouches: [\n new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })\n ]\n })","value":{"kind":"source-expression","source":"new TouchEvent('touchstart', {\n bubbles: true,\n cancelable: true,\n touches: [new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })],\n changedTouches: [\n new Touch({ identifier: 1, target: surface, clientX: 100, clientY: 400 })\n ]\n })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: new TouchEvent('touchstart', { bubbles: true, cancelable: true, touches: [new Touch({ identifier: 1, tar. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:448:browser-event-input:59","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":448,"end_line":451,"start":21237,"end":21370,"source":"page.evaluate(() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":448,"end_line":451,"start":21237,"end":21370},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":396,"title":"cancels the timers it armed, so none of the first mount fires into the second"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":448,"end_line":451,"start":21251,"end":21369,"source":"() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n }","value":{"kind":"source-expression","source":"() => {\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { globalThis.__orcaTerminalReady = false globalThis.__orcaTerminalProbe.setMounted(true) }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:456:inline-api-or-fixture-input:60","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":456,"end_line":456,"start":21520,"end":21543,"source":"openProbeTerminal(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":456,"end_line":456,"start":21520,"end":21543},"binding":"openProbeTerminal","resolution":[],"enclosing_case":{"line":396,"title":"cancels the timers it armed, so none of the first mount fires into the second"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":456,"end_line":456,"start":21538,"end":21542,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:458:browser-event-input:61","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":458,"end_line":458,"start":21648,"end":21731,"source":"page.evaluate(() => new Promise((resolve) => globalThis.setTimeout(resolve, 3000)))","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":458,"end_line":458,"start":21648,"end":21731},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":396,"title":"cancels the timers it armed, so none of the first mount fires into the second"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":458,"end_line":458,"start":21662,"end":21730,"source":"() => new Promise((resolve) => globalThis.setTimeout(resolve, 3000))","value":{"kind":"source-expression","source":"() => new Promise((resolve) => globalThis.setTimeout(resolve, 3000))"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => new Promise((resolve) => globalThis.setTimeout(resolve, 3000)). Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:459:browser-event-input:62","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":459,"end_line":459,"start":21762,"end":21809,"source":"page.evaluate(() => globalThis.__orcaScheduler)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":459,"end_line":459,"start":21762,"end":21809},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":396,"title":"cancels the timers it armed, so none of the first mount fires into the second"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":459,"end_line":459,"start":21776,"end":21808,"source":"() => globalThis.__orcaScheduler","value":{"kind":"source-expression","source":"() => globalThis.__orcaScheduler"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaScheduler. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: cancels the timers it armed, so none of the first mount fires into the second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:476:parameter-table:63","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":476,"end_line":592,"start":22419,"end":27715,"source":"[\n { name: 'takes back the frames it is owed, not only the timers', cancelFrames: true },\n { name: 'detects leaked frames when disposal cannot cancel them', cancelFrames: false }\n ]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":476,"end_line":479,"start":22427,"end":22621},"binding":"it.each","resolution":[],"enclosing_case":{"line":476,"title":"$name"},"affected_case_lines":[476],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":477,"end_line":477,"start":22435,"end":22520,"source":"{ name: 'takes back the frames it is owed, not only the timers', cancelFrames: true }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"takes back the frames it is owed, not only the timers"}},{"key":"cancelFrames","value":{"kind":"boolean","value":true}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { name: 'takes back the frames it is owed, not only the timers', cancelFrames: true }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":478,"end_line":478,"start":22528,"end":22615,"source":"{ name: 'detects leaked frames when disposal cannot cancel them', cancelFrames: false }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"detects leaked frames when disposal cannot cancel them"}},{"key":"cancelFrames","value":{"kind":"boolean","value":false}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { name: 'detects leaked frames when disposal cannot cancel them', cancelFrames: false }. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:484:inline-api-or-fixture-input:64","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":484,"end_line":496,"start":22840,"end":23338,"source":"openPage(PROBE_ROUTE, {\n scheduler: true,\n beforeNavigate: async (opened) => {\n await opened.route('**/*.js', async (route) => {\n const response = await route.fetch()\n const body = await response.text()\n if (body.includes('terminal runtime error')) {\n documentChunk = new URL(route.request().url()).pathname\n }\n await route.fulfill({ response, body })\n })\n }\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":484,"end_line":496,"start":22840,"end":23338},"binding":"openPage","resolution":[],"enclosing_case":{"line":476,"title":"$name"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":484,"end_line":484,"start":22849,"end":22860,"source":"PROBE_ROUTE","value":{"kind":"reference","source":"PROBE_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render-fixture.mjs","line":38,"end_line":38,"start":1343,"end":1362},"resolved":{"kind":"string","value":"/h/terminal-probe"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: PROBE_ROUTE. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":484,"end_line":496,"start":22862,"end":23337,"source":"{\n scheduler: true,\n beforeNavigate: async (opened) => {\n await opened.route('**/*.js', async (route) => {\n const response = await route.fetch()\n const body = await response.text()\n if (body.includes('terminal runtime error')) {\n documentChunk = new URL(route.request().url()).pathname\n }\n await route.fulfill({ response, body })\n })\n }\n }","value":{"kind":"object","value":[{"key":"scheduler","value":{"kind":"boolean","value":true}},{"key":"beforeNavigate","value":{"kind":"source-expression","source":"async (opened) => {\n await opened.route('**/*.js', async (route) => {\n const response = await route.fetch()\n const body = await response.text()\n if (body.includes('terminal runtime error')) {\n documentChunk = new URL(route.request().url()).pathname\n }\n await route.fulfill({ response, body })\n })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { scheduler: true, beforeNavigate: async (opened) => { await opened.route('**/*.js', async (route) => { . Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:502:inline-api-or-fixture-input:65","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":502,"end_line":502,"start":23522,"end":23545,"source":"openProbeTerminal(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":502,"end_line":502,"start":23522,"end":23545},"binding":"openProbeTerminal","resolution":[],"enclosing_case":{"line":476,"title":"$name"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":502,"end_line":502,"start":23540,"end":23544,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:508:browser-event-input:66","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":508,"end_line":511,"start":24023,"end":24167,"source":"page.evaluate(\n () =>\n new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve)))\n )","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":508,"end_line":511,"start":24023,"end":24167},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":476,"title":"$name"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":509,"end_line":510,"start":24050,"end":24155,"source":"() =>\n new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve)))","value":{"kind":"source-expression","source":"() =>\n new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve)))"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => new Promise((resolve) => requestAnimationFrame(() => requestAnimationFrame(resolve))). Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:513:browser-event-input:67","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":513,"end_line":537,"start":24185,"end":25271,"source":"page.evaluate((chunk) => {\n const state = globalThis.__orcaScheduler\n state.disposed = null\n state.watching = true\n state.holdFramesFrom = chunk\n const host = document.querySelector('.orca-terminal-document-host')\n // Dispose drops this class after cancelling frames; DOM detachment precedes cleanup.\n const observer = new MutationObserver(() => {\n if (\n state.disposed !== null ||\n host.classList.contains('orca-terminal-document-host')\n ) {\n return\n }\n state.disposed = {\n owed: state.scheduled.filter(\n (entry) => entry.kind === 'frame' && !entry.fired && entry.caller.includes(chunk)\n ).length,\n leakedBefore: state.leaked.length\n }\n observer.disconnect()\n })\n observer.observe(host, { attributes: true, attributeFilter: ['class'] })\n host.style.width = '80%'\n }, documentChunk)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":513,"end_line":537,"start":24185,"end":25271},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":476,"title":"$name"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":513,"end_line":537,"start":24199,"end":25255,"source":"(chunk) => {\n const state = globalThis.__orcaScheduler\n state.disposed = null\n state.watching = true\n state.holdFramesFrom = chunk\n const host = document.querySelector('.orca-terminal-document-host')\n // Dispose drops this class after cancelling frames; DOM detachment precedes cleanup.\n const observer = new MutationObserver(() => {\n if (\n state.disposed !== null ||\n host.classList.contains('orca-terminal-document-host')\n ) {\n return\n }\n state.disposed = {\n owed: state.scheduled.filter(\n (entry) => entry.kind === 'frame' && !entry.fired && entry.caller.includes(chunk)\n ).length,\n leakedBefore: state.leaked.length\n }\n observer.disconnect()\n })\n observer.observe(host, { attributes: true, attributeFilter: ['class'] })\n host.style.width = '80%'\n }","value":{"kind":"source-expression","source":"(chunk) => {\n const state = globalThis.__orcaScheduler\n state.disposed = null\n state.watching = true\n state.holdFramesFrom = chunk\n const host = document.querySelector('.orca-terminal-document-host')\n // Dispose drops this class after cancelling frames; DOM detachment precedes cleanup.\n const observer = new MutationObserver(() => {\n if (\n state.disposed !== null ||\n host.classList.contains('orca-terminal-document-host')\n ) {\n return\n }\n state.disposed = {\n owed: state.scheduled.filter(\n (entry) => entry.kind === 'frame' && !entry.fired && entry.caller.includes(chunk)\n ).length,\n leakedBefore: state.leaked.length\n }\n observer.disconnect()\n })\n observer.observe(host, { attributes: true, attributeFilter: ['class'] })\n host.style.width = '80%'\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (chunk) => { const state = globalThis.__orcaScheduler state.disposed = null state.watching = true . Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":537,"end_line":537,"start":25257,"end":25270,"source":"documentChunk","value":{"kind":"reference","source":"documentChunk","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":483,"end_line":483,"start":22804,"end":22808},"resolved":{"kind":"null","value":null}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: documentChunk. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:541:browser-event-input:68","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":541,"end_line":548,"start":25428,"end":25840,"source":"page.evaluate((cancelFrames) => {\n globalThis.__orcaRestoreFrameCancellation = globalThis.cancelAnimationFrame\n if (!cancelFrames) {\n // The negative control must expose held callbacks after the real document disposes.\n globalThis.cancelAnimationFrame = () => {}\n }\n globalThis.__orcaTerminalProbe.setMounted(false)\n }, cancelFrames)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":541,"end_line":548,"start":25428,"end":25840},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":476,"title":"$name"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":541,"end_line":548,"start":25442,"end":25825,"source":"(cancelFrames) => {\n globalThis.__orcaRestoreFrameCancellation = globalThis.cancelAnimationFrame\n if (!cancelFrames) {\n // The negative control must expose held callbacks after the real document disposes.\n globalThis.cancelAnimationFrame = () => {}\n }\n globalThis.__orcaTerminalProbe.setMounted(false)\n }","value":{"kind":"source-expression","source":"(cancelFrames) => {\n globalThis.__orcaRestoreFrameCancellation = globalThis.cancelAnimationFrame\n if (!cancelFrames) {\n // The negative control must expose held callbacks after the real document disposes.\n globalThis.cancelAnimationFrame = () => {}\n }\n globalThis.__orcaTerminalProbe.setMounted(false)\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (cancelFrames) => { globalThis.__orcaRestoreFrameCancellation = globalThis.cancelAnimationFrame if (!cancelFrames) {. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":548,"end_line":548,"start":25827,"end":25839,"source":"cancelFrames","value":{"kind":"source-expression","source":"cancelFrames"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: cancelFrames. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:551:browser-event-input:69","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":551,"end_line":556,"start":26046,"end":26340,"source":"page.evaluate(() => {\n globalThis.cancelAnimationFrame = globalThis.__orcaRestoreFrameCancellation\n globalThis.__orcaScheduler.holdFramesFrom = null\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":551,"end_line":556,"start":26046,"end":26340},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":476,"title":"$name"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":551,"end_line":556,"start":26060,"end":26339,"source":"() => {\n globalThis.cancelAnimationFrame = globalThis.__orcaRestoreFrameCancellation\n globalThis.__orcaScheduler.holdFramesFrom = null\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n }","value":{"kind":"source-expression","source":"() => {\n globalThis.cancelAnimationFrame = globalThis.__orcaRestoreFrameCancellation\n globalThis.__orcaScheduler.holdFramesFrom = null\n globalThis.__orcaTerminalReady = false\n globalThis.__orcaTerminalProbe.setMounted(true)\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { globalThis.cancelAnimationFrame = globalThis.__orcaRestoreFrameCancellation globalThis.__orcaScheduler.holdF. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:561:inline-api-or-fixture-input:70","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":561,"end_line":561,"start":26510,"end":26533,"source":"openProbeTerminal(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":561,"end_line":561,"start":26510,"end":26533},"binding":"openProbeTerminal","resolution":[],"enclosing_case":{"line":476,"title":"$name"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":561,"end_line":561,"start":26528,"end":26532,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:563:browser-event-input:71","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":563,"end_line":569,"start":26654,"end":26881,"source":"page.evaluate(\n () =>\n new Promise((resolve) => {\n globalThis.__orcaReleaseFrames()\n requestAnimationFrame(() => requestAnimationFrame(resolve))\n })\n )","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":563,"end_line":569,"start":26654,"end":26881},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":476,"title":"$name"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":564,"end_line":568,"start":26681,"end":26869,"source":"() =>\n new Promise((resolve) => {\n globalThis.__orcaReleaseFrames()\n requestAnimationFrame(() => requestAnimationFrame(resolve))\n })","value":{"kind":"source-expression","source":"() =>\n new Promise((resolve) => {\n globalThis.__orcaReleaseFrames()\n requestAnimationFrame(() => requestAnimationFrame(resolve))\n })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => new Promise((resolve) => { globalThis.__orcaReleaseFrames() requestAnimationFrame(() => . Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:571:browser-event-input:72","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":571,"end_line":571,"start":26917,"end":26964,"source":"page.evaluate(() => globalThis.__orcaScheduler)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":571,"end_line":571,"start":26917,"end":26964},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":476,"title":"$name"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":571,"end_line":571,"start":26931,"end":26963,"source":"() => globalThis.__orcaScheduler","value":{"kind":"source-expression","source":"() => globalThis.__orcaScheduler"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaScheduler. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: $name.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:603:inline-api-or-fixture-input:73","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":603,"end_line":603,"start":28463,"end":28486,"source":"openPage(CONTROL_ROUTE)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":603,"end_line":603,"start":28463,"end":28486},"binding":"openPage","resolution":[],"enclosing_case":{"line":594,"title":"styles what it owns, and only that"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":603,"end_line":603,"start":28472,"end":28485,"source":"CONTROL_ROUTE","value":{"kind":"reference","source":"CONTROL_ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render-fixture.mjs","line":39,"end_line":39,"start":1392,"end":1413},"resolved":{"kind":"string","value":"/h/terminal-control"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: CONTROL_ROUTE. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:604:inline-api-or-fixture-input:74","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":604,"end_line":604,"start":28516,"end":28552,"source":"readRootComputedStyles(control.page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":604,"end_line":604,"start":28516,"end":28552},"binding":"readRootComputedStyles","resolution":[],"enclosing_case":{"line":594,"title":"styles what it owns, and only that"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":604,"end_line":604,"start":28539,"end":28551,"source":"control.page","value":{"kind":"source-expression","source":"control.page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: control.page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:608:inline-api-or-fixture-input:75","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":608,"end_line":608,"start":28643,"end":28666,"source":"openProbeTerminal(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":608,"end_line":608,"start":28643,"end":28666},"binding":"openProbeTerminal","resolution":[],"enclosing_case":{"line":594,"title":"styles what it owns, and only that"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":608,"end_line":608,"start":28661,"end":28665,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:609:inline-api-or-fixture-input:76","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":609,"end_line":609,"start":28686,"end":28714,"source":"readRootComputedStyles(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":609,"end_line":609,"start":28686,"end":28714},"binding":"readRootComputedStyles","resolution":[],"enclosing_case":{"line":594,"title":"styles what it owns, and only that"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":609,"end_line":609,"start":28709,"end":28713,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:615:inline-api-or-fixture-input:77","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":615,"end_line":615,"start":29010,"end":29034,"source":"terminalStyleReach(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":615,"end_line":615,"start":29010,"end":29034},"binding":"terminalStyleReach","resolution":[],"enclosing_case":{"line":594,"title":"styles what it owns, and only that"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":615,"end_line":615,"start":29029,"end":29033,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:625:browser-event-input:78","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":625,"end_line":641,"start":29562,"end":30570,"source":"page.evaluate(() => {\n const host = document.querySelector('.orca-terminal-document-host')\n const xterm = host.querySelector('.xterm')\n const viewport = host.querySelector('.xterm-viewport')\n const overlay = host.querySelector('#selection-overlay')\n return {\n // xterm's own sheet: the grid is positioned against this, and its rows are absolute.\n xtermPosition: getComputedStyle(xterm).position,\n // The document's: the terminal scrolls itself, so the viewport shows no scrollbar\n // and reserves no width for one.\n viewportOverflowY: getComputedStyle(viewport).overflowY,\n viewportReservesScrollbar: viewport.offsetWidth !== viewport.clientWidth,\n // The mount's: the overlay sits in the host's unscaled coordinates above the grid,\n // not over the page's header as `fixed` would put it.\n overlayPosition: getComputedStyle(overlay).position\n }\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":625,"end_line":641,"start":29562,"end":30570},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":594,"title":"styles what it owns, and only that"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":625,"end_line":641,"start":29576,"end":30569,"source":"() => {\n const host = document.querySelector('.orca-terminal-document-host')\n const xterm = host.querySelector('.xterm')\n const viewport = host.querySelector('.xterm-viewport')\n const overlay = host.querySelector('#selection-overlay')\n return {\n // xterm's own sheet: the grid is positioned against this, and its rows are absolute.\n xtermPosition: getComputedStyle(xterm).position,\n // The document's: the terminal scrolls itself, so the viewport shows no scrollbar\n // and reserves no width for one.\n viewportOverflowY: getComputedStyle(viewport).overflowY,\n viewportReservesScrollbar: viewport.offsetWidth !== viewport.clientWidth,\n // The mount's: the overlay sits in the host's unscaled coordinates above the grid,\n // not over the page's header as `fixed` would put it.\n overlayPosition: getComputedStyle(overlay).position\n }\n }","value":{"kind":"source-expression","source":"() => {\n const host = document.querySelector('.orca-terminal-document-host')\n const xterm = host.querySelector('.xterm')\n const viewport = host.querySelector('.xterm-viewport')\n const overlay = host.querySelector('#selection-overlay')\n return {\n // xterm's own sheet: the grid is positioned against this, and its rows are absolute.\n xtermPosition: getComputedStyle(xterm).position,\n // The document's: the terminal scrolls itself, so the viewport shows no scrollbar\n // and reserves no width for one.\n viewportOverflowY: getComputedStyle(viewport).overflowY,\n viewportReservesScrollbar: viewport.offsetWidth !== viewport.clientWidth,\n // The mount's: the overlay sits in the host's unscaled coordinates above the grid,\n // not over the page's header as `fixed` would put it.\n overlayPosition: getComputedStyle(overlay).position\n }\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { const host = document.querySelector('.orca-terminal-document-host') const xterm = host.querySelector('.xterm') . Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:649:browser-event-input:79","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":649,"end_line":649,"start":30761,"end":30830,"source":"page.evaluate(() => globalThis.__orcaTerminalProbe.setMounted(false))","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":649,"end_line":649,"start":30761,"end":30830},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":594,"title":"styles what it owns, and only that"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":649,"end_line":649,"start":30775,"end":30829,"source":"() => globalThis.__orcaTerminalProbe.setMounted(false)","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalProbe.setMounted(false)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalProbe.setMounted(false). Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:651:inline-api-or-fixture-input:80","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":651,"end_line":651,"start":30946,"end":30974,"source":"readRootComputedStyles(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":651,"end_line":651,"start":30946,"end":30974},"binding":"readRootComputedStyles","resolution":[],"enclosing_case":{"line":594,"title":"styles what it owns, and only that"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":651,"end_line":651,"start":30969,"end":30973,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:653:inline-api-or-fixture-input:81","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":653,"end_line":653,"start":31143,"end":31167,"source":"terminalStyleReach(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":653,"end_line":653,"start":31143,"end":31167},"binding":"terminalStyleReach","resolution":[],"enclosing_case":{"line":594,"title":"styles what it owns, and only that"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":653,"end_line":653,"start":31162,"end":31166,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: styles what it owns, and only that.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:661:inline-api-or-fixture-input:82","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":661,"end_line":661,"start":31462,"end":31485,"source":"openProbeTerminal(page)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":661,"end_line":661,"start":31462,"end":31485},"binding":"openProbeTerminal","resolution":[],"enclosing_case":{"line":659,"title":"fits through the handle from the ready box and records what beforeinput reports"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: fits through the handle from the ready box and records what beforeinput reports.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":661,"end_line":661,"start":31480,"end":31484,"source":"page","value":{"kind":"source-expression","source":"page"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: fits through the handle from the ready box and records what beforeinput reports.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:666:browser-event-input:83","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":666,"end_line":666,"start":31745,"end":31802,"source":"page.evaluate(() => globalThis.__orcaTerminalProbe.fit())","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":666,"end_line":666,"start":31745,"end":31802},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":659,"title":"fits through the handle from the ready box and records what beforeinput reports"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: fits through the handle from the ready box and records what beforeinput reports.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":666,"end_line":666,"start":31759,"end":31801,"source":"() => globalThis.__orcaTerminalProbe.fit()","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalProbe.fit()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalProbe.fit(). Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: fits through the handle from the ready box and records what beforeinput reports.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:675:browser-event-input:84","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":675,"end_line":684,"start":32274,"end":32615,"source":"page.evaluate(() => {\n const element = document.querySelector('#terminal-surface .xterm-helper-textarea')\n return element === null\n ? null\n : {\n readOnly: element.readOnly,\n tabIndex: element.tabIndex,\n inputMode: element.getAttribute('inputmode')\n }\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":675,"end_line":684,"start":32274,"end":32615},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":659,"title":"fits through the handle from the ready box and records what beforeinput reports"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: fits through the handle from the ready box and records what beforeinput reports.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":675,"end_line":684,"start":32288,"end":32614,"source":"() => {\n const element = document.querySelector('#terminal-surface .xterm-helper-textarea')\n return element === null\n ? null\n : {\n readOnly: element.readOnly,\n tabIndex: element.tabIndex,\n inputMode: element.getAttribute('inputmode')\n }\n }","value":{"kind":"source-expression","source":"() => {\n const element = document.querySelector('#terminal-surface .xterm-helper-textarea')\n return element === null\n ? null\n : {\n readOnly: element.readOnly,\n tabIndex: element.tabIndex,\n inputMode: element.getAttribute('inputmode')\n }\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => { const element = document.querySelector('#terminal-surface .xterm-helper-textarea') return element === null . Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: fits through the handle from the ready box and records what beforeinput reports.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:691:browser-event-input:85","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":691,"end_line":691,"start":33047,"end":33071,"source":"page.keyboard.type('ab')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":691,"end_line":691,"start":33047,"end":33071},"binding":"page.keyboard.type","resolution":[],"enclosing_case":{"line":659,"title":"fits through the handle from the ready box and records what beforeinput reports"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: fits through the handle from the ready box and records what beforeinput reports.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":691,"end_line":691,"start":33066,"end":33070,"source":"'ab'","value":{"kind":"string","value":"ab"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: 'ab'. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: fits through the handle from the ready box and records what beforeinput reports.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}},{"id":"16:696:browser-event-input:86","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":696,"end_line":696,"start":33250,"end":33307,"source":"page.evaluate(() => globalThis.__orcaTerminalBeforeInput)","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":696,"end_line":696,"start":33250,"end":33307},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":659,"title":"fits through the handle from the ready box and records what beforeinput reports"},"affected_case_lines":[],"decision":"keep","reason":"Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: fits through the handle from the ready box and records what beforeinput reports.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","line":696,"end_line":696,"start":33264,"end":33306,"source":"() => globalThis.__orcaTerminalBeforeInput","value":{"kind":"source-expression","source":"() => globalThis.__orcaTerminalBeforeInput"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaTerminalBeforeInput. Actual browser terminal mount/stream/selection/reload/error/listener/scheduler/style/fit behavior is observed through real DOM or host callback outputs; the case has a positive mounted or armed-work precondition. Scenario: fits through the handle from the ready box and records what beforeinput reports.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514"}}],"original_review_sha256":"85fe62aa4131adf371d7d00b780403d28c7ba4fff6de9588b4dcd85fcebb3aa2","reviewer":"audit_config","reviewed_sha256":"9110ef865a85c85f9375dcf5ddfee487a16f17479cac0d906781c681a58a1514","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","final_declarations":12,"current_controls":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","each":[{"input":{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","start":22452,"end":22646,"line":476,"end_line":479,"source":"[\n { name: 'takes back the frames it is owed, not only the timers', cancelFrames: true },\n { name: 'detects leaked frames when disposal cannot cancel them', cancelFrames: false }\n ]"},"rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","start":22460,"end":22545,"line":477,"end_line":477,"source":"{ name: 'takes back the frames it is owed, not only the timers', cancelFrames: true }"},{"path":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs","start":22553,"end":22640,"line":478,"end_line":478,"source":"{ name: 'detects leaked frames when disposal cannot cancel them', cancelFrames: false }"}]}],"for_of":[],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[{"original_line":95,"title":"opens xterm under the shipped policy and paints a dense stream into its buffer","decision":"fix","change":"Remove the hardcoded font content digest path. Retain one same-origin assets/*.woff2 response, HTTP200, font/woff2 and actual document.fonts availability plus the dense-stream/selection behavior."}],"manual_implementation_notes":[],"evidence":["config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/mobile-web-app-terminal-render-fixture.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-render-harness.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-terminal-probe-route.mjs"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","sha256":"86eeaf78678841e574c3a096b1b6bee3fd2bd6f0625c415a181b04dcf50b004d","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":17,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"86eeaf78678841e574c3a096b1b6bee3fd2bd6f0625c415a181b04dcf50b004d","cases":[{"line":7,"title":"discovers input modules and ignores tests and non-JSX mentions","decision":"keep","reason":"The exact single discovered JSX module is an independent fixture oracle; test module and mentions-only source must be ignored.","explicit_input_controls":[{"control_id":"17:11:for-of:1","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","line":11,"source":"Object.entries({\n 'Planted.tsx': 'export const P = () => ',\n 'Planted.test.tsx': 'it(\"x\", () => )',\n 'mentions-only.ts': \"import { TextInput } from 'react-native' // TextInput, named twice\"\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","line":12,"end_line":12,"start":563,"end":637,"source":"'Planted.tsx': 'export const P = () => '","value":{"kind":"property","key":"Planted.tsx","value":{"kind":"string","value":"export const P = () => "}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Planted.tsx': 'export const P = () => '. The exact single discovered JSX module is an independent fixture oracle; test module and mentions-only source must be ignored.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","line":13,"end_line":13,"start":645,"end":695,"source":"'Planted.test.tsx': 'it(\"x\", () => )'","value":{"kind":"property","key":"Planted.test.tsx","value":{"kind":"string","value":"it(\"x\", () => )"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Planted.test.tsx': 'it(\"x\", () => )'. The exact single discovered JSX module is an independent fixture oracle; test module and mentions-only source must be ignored.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","line":14,"end_line":14,"start":703,"end":791,"source":"'mentions-only.ts': \"import { TextInput } from 'react-native' // TextInput, named twice\"","value":{"kind":"property","key":"mentions-only.ts","value":{"kind":"string","value":"import { TextInput } from 'react-native' // TextInput, named twice"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'mentions-only.ts': \"import { TextInput } from 'react-native' // TextInput, named twice\". The exact single discovered JSX module is an independent fixture oracle; test module and mentions-only source must be ignored.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The exact single discovered JSX module is an independent fixture oracle; test module and mentions-only source must be ignored.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"17:18:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","line":18,"source":"modulesDeclaringTextInput(scratch, 'src/browser')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","line":18,"end_line":18,"start":909,"end":916,"source":"scratch","value":{"kind":"reference","source":"scratch","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","line":8,"end_line":8,"start":376,"end":433},"resolved":{"kind":"call-source","callee":"mkdtempSync","arguments":[{"kind":"call-source","callee":"join","arguments":[{"kind":"call-source","callee":"tmpdir","arguments":[],"source":"tmpdir()"},{"kind":"string","value":"orca-text-input-discovery-"}],"source":"join(tmpdir(), 'orca-text-input-discovery-')"}],"source":"mkdtempSync(join(tmpdir(), 'orca-text-input-discovery-'))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scratch. The exact single discovered JSX module is an independent fixture oracle; test module and mentions-only source must be ignored.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","line":18,"end_line":18,"start":918,"end":931,"source":"'src/browser'","value":{"kind":"string","value":"src/browser"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'src/browser'. The exact single discovered JSX module is an independent fixture oracle; test module and mentions-only source must be ignored.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The exact single discovered JSX module is an independent fixture oracle; test module and mentions-only source must be ignored.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":7,"title":"discovers input modules and ignores tests and non-JSX mentions","start":281,"end":1045},"implementation_status":"retained"}],"lines":23,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Independent parser discovery corpus distinguishes actual JSX input declarations from test files and text mentions.","production_evidence":["config/scripts/mobile-web-app/platform-seams/mobile-web-app-text-input-font-size-seam.mjs"],"planned_changes":[],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"17:11:for-of:1","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","line":11,"end_line":17,"start":511,"end":871,"source":"Object.entries({\n 'Planted.tsx': 'export const P = () => ',\n 'Planted.test.tsx': 'it(\"x\", () => )',\n 'mentions-only.ts': \"import { TextInput } from 'react-native' // TextInput, named twice\"\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","line":11,"end_line":15,"start":540,"end":798},"binding":"const [name, source]","resolution":[],"transform":"Object.entries: original object properties preserved; values decode keys/initializers, not transformed runtime tuples","enclosing_case":{"line":7,"title":"discovers input modules and ignores tests and non-JSX mentions"},"affected_case_lines":[],"decision":"keep","reason":"The exact single discovered JSX module is an independent fixture oracle; test module and mentions-only source must be ignored.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","line":12,"end_line":12,"start":563,"end":637,"source":"'Planted.tsx': 'export const P = () => '","value":{"kind":"property","key":"Planted.tsx","value":{"kind":"string","value":"export const P = () => "}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Planted.tsx': 'export const P = () => '. The exact single discovered JSX module is an independent fixture oracle; test module and mentions-only source must be ignored.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","line":13,"end_line":13,"start":645,"end":695,"source":"'Planted.test.tsx': 'it(\"x\", () => )'","value":{"kind":"property","key":"Planted.test.tsx","value":{"kind":"string","value":"it(\"x\", () => )"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Planted.test.tsx': 'it(\"x\", () => )'. The exact single discovered JSX module is an independent fixture oracle; test module and mentions-only source must be ignored.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","line":14,"end_line":14,"start":703,"end":791,"source":"'mentions-only.ts': \"import { TextInput } from 'react-native' // TextInput, named twice\"","value":{"kind":"property","key":"mentions-only.ts","value":{"kind":"string","value":"import { TextInput } from 'react-native' // TextInput, named twice"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'mentions-only.ts': \"import { TextInput } from 'react-native' // TextInput, named twice\". The exact single discovered JSX module is an independent fixture oracle; test module and mentions-only source must be ignored.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"86eeaf78678841e574c3a096b1b6bee3fd2bd6f0625c415a181b04dcf50b004d"}},{"id":"17:18:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","line":18,"end_line":18,"start":883,"end":932,"source":"modulesDeclaringTextInput(scratch, 'src/browser')","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","line":18,"end_line":18,"start":883,"end":932},"binding":"modulesDeclaringTextInput","resolution":[],"enclosing_case":{"line":7,"title":"discovers input modules and ignores tests and non-JSX mentions"},"affected_case_lines":[],"decision":"keep","reason":"The exact single discovered JSX module is an independent fixture oracle; test module and mentions-only source must be ignored.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","line":18,"end_line":18,"start":909,"end":916,"source":"scratch","value":{"kind":"reference","source":"scratch","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","line":8,"end_line":8,"start":376,"end":433},"resolved":{"kind":"call-source","callee":"mkdtempSync","arguments":[{"kind":"call-source","callee":"join","arguments":[{"kind":"call-source","callee":"tmpdir","arguments":[],"source":"tmpdir()"},{"kind":"string","value":"orca-text-input-discovery-"}],"source":"join(tmpdir(), 'orca-text-input-discovery-')"}],"source":"mkdtempSync(join(tmpdir(), 'orca-text-input-discovery-'))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scratch. The exact single discovered JSX module is an independent fixture oracle; test module and mentions-only source must be ignored.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","line":18,"end_line":18,"start":918,"end":931,"source":"'src/browser'","value":{"kind":"string","value":"src/browser"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'src/browser'. The exact single discovered JSX module is an independent fixture oracle; test module and mentions-only source must be ignored.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"86eeaf78678841e574c3a096b1b6bee3fd2bd6f0625c415a181b04dcf50b004d"}}],"original_review_sha256":"c6a9797938e7a5d7d093ca9d5bb93b4c62e0cfb436db6d84fe2b26b001744c43","reviewer":"audit_config","reviewed_sha256":"86eeaf78678841e574c3a096b1b6bee3fd2bd6f0625c415a181b04dcf50b004d","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","final_declarations":1,"current_controls":{"path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","each":[],"for_of":[{"path":"config/scripts/mobile-web-app/mobile-web-app-text-input-discovery.test.mjs","start":540,"end":798,"line":11,"end_line":15,"source":"Object.entries({\n 'Planted.tsx': 'export const P = () => ',\n 'Planted.test.tsx': 'it(\"x\", () => )',\n 'mentions-only.ts': \"import { TextInput } from 'react-native' // TextInput, named twice\"\n })","binding":"const [name, source]","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/scripts/mobile-web-app/platform-seams/mobile-web-app-text-input-font-size-seam.mjs"],"runtime_validation":[]}
+{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","sha256":"30200c6e1a131423c6b065761ecd4deee282c6c74d2034aeab5055c20e26ed06","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":18,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"30200c6e1a131423c6b065761ecd4deee282c6c74d2034aeab5055c20e26ed06","cases":[{"line":128,"title":"keeps both rings turning past the first second","decision":"keep","reason":"Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression. Scenario: keeps both rings turning past the first second.","explicit_input_controls":[{"control_id":"18:131:fixture-or-oracle-declaration:7","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":131,"source":"[]","rows":[],"decision":"keep","reason":"Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression. Scenario: keeps both rings turning past the first second.","implementation_rows":[]},{"control_id":"18:132:for-of:8","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":132,"source":"SAMPLE_SECONDS","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":25,"end_line":25,"start":1023,"end":1026,"source":"1.3","value":{"kind":"number","value":1.3},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 1.3. Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression. Scenario: keeps both rings turning past the first second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":25,"end_line":25,"start":1028,"end":1031,"source":"1.8","value":{"kind":"number","value":1.8},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 1.8. Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression. Scenario: keeps both rings turning past the first second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":25,"end_line":25,"start":1033,"end":1036,"source":"2.4","value":{"kind":"number","value":2.4},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 2.4. Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression. Scenario: keeps both rings turning past the first second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression. Scenario: keeps both rings turning past the first second.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"18:136:for-of:9","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":136,"source":"[0, 1]","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":136,"end_line":136,"start":4894,"end":4895,"source":"0","value":{"kind":"number","value":0},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 0. Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression. Scenario: keeps both rings turning past the first second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":136,"end_line":136,"start":4897,"end":4898,"source":"1","value":{"kind":"number","value":1},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 1. Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression. Scenario: keeps both rings turning past the first second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression. Scenario: keeps both rings turning past the first second.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":128,"title":"keeps both rings turning past the first second","start":4522,"end":5156},"implementation_status":"retained"}],"lines":146,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression.","planned_changes":[],"production_evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/mobile-web-app-route-manifest.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-render-harness.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-terminal-probe-route.mjs","mobile/src/components/AgentSpinner.tsx","mobile/src/components/AgentStateDot.tsx"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"18:25:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":25,"end_line":25,"start":1005,"end":1037,"source":"[1.3, 1.8, 2.4]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":25,"end_line":25,"start":1022,"end":1037},"binding":"SAMPLE_SECONDS","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":25,"end_line":25,"start":1023,"end":1026,"source":"1.3","value":{"kind":"number","value":1.3},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 1.3. Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":25,"end_line":25,"start":1028,"end":1031,"source":"1.8","value":{"kind":"number","value":1.8},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 1.8. Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":25,"end_line":25,"start":1033,"end":1036,"source":"2.4","value":{"kind":"number","value":2.4},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 2.4. Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"30200c6e1a131423c6b065761ecd4deee282c6c74d2034aeab5055c20e26ed06"}},{"id":"18:69:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":69,"end_line":73,"start":2471,"end":2600,"source":"buildMobileWebAppBundle({\n appDir,\n outDir: join(scratch, 'bundle'),\n pageRoutes: [{ pathname: ROUTE, grants: [] }]\n })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":69,"end_line":73,"start":2471,"end":2600},"binding":"buildMobileWebAppBundle","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":69,"end_line":73,"start":2495,"end":2599,"source":"{\n appDir,\n outDir: join(scratch, 'bundle'),\n pageRoutes: [{ pathname: ROUTE, grants: [] }]\n }","value":{"kind":"object","value":[{"source":"appDir"},{"key":"outDir","value":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"scratch","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":48,"end_line":48,"start":1757,"end":1761},"resolved":{"kind":"null","value":null}},{"kind":"string","value":"bundle"}],"source":"join(scratch, 'bundle')"}},{"key":"pageRoutes","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"pathname","value":{"kind":"reference","source":"ROUTE","resolved_at":{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":24,"end_line":24,"start":945,"end":998},"resolved":{"kind":"source-expression","source":"`/${MOBILE_WEB_APP_ROUTE_ROOT}/working-spinner-probe`"}}},{"key":"grants","value":{"kind":"array","value":[]}}]}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { appDir, outDir: join(scratch, 'bundle'), pageRoutes: [{ pathname: ROUTE, grants: [] }] }. Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"30200c6e1a131423c6b065761ecd4deee282c6c74d2034aeab5055c20e26ed06"}},{"id":"18:74:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":74,"end_line":74,"start":2624,"end":2679,"source":"createBundleServer({ outDir: built.outDir, cspHeader })","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":74,"end_line":74,"start":2624,"end":2679},"binding":"createBundleServer","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":74,"end_line":74,"start":2643,"end":2678,"source":"{ outDir: built.outDir, cspHeader }","value":{"kind":"object","value":[{"key":"outDir","value":{"kind":"source-expression","source":"built.outDir"}},{"source":"cspHeader"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { outDir: built.outDir, cspHeader }. Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"30200c6e1a131423c6b065761ecd4deee282c6c74d2034aeab5055c20e26ed06"}},{"id":"18:104:fixture-or-oracle-declaration:4","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":104,"end_line":104,"start":3652,"end":3663,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":104,"end_line":104,"start":3661,"end":3663},"binding":"errors","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"30200c6e1a131423c6b065761ecd4deee282c6c74d2034aeab5055c20e26ed06"}},{"id":"18:113:browser-event-input:5","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":113,"end_line":113,"start":4019,"end":4080,"source":"page.evaluate(() => globalThis.__orcaRenderCheckFaults ?? [])","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":113,"end_line":113,"start":4019,"end":4080},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":113,"end_line":113,"start":4033,"end":4079,"source":"() => globalThis.__orcaRenderCheckFaults ?? []","value":{"kind":"source-expression","source":"() => globalThis.__orcaRenderCheckFaults ?? []"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => globalThis.__orcaRenderCheckFaults ?? []. Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"30200c6e1a131423c6b065761ecd4deee282c6c74d2034aeab5055c20e26ed06"}},{"id":"18:119:browser-event-input:6","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":119,"end_line":125,"start":4255,"end":4466,"source":"page.evaluate(() =>\n ['working-spinner', 'working-dot'].map(\n (id) =>\n [...document.querySelectorAll(`#${id} *`)].find((node) => node.style.transform)?.style\n .transform ?? null\n )\n )","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":119,"end_line":125,"start":4255,"end":4466},"binding":"page.evaluate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":119,"end_line":124,"start":4269,"end":4462,"source":"() =>\n ['working-spinner', 'working-dot'].map(\n (id) =>\n [...document.querySelectorAll(`#${id} *`)].find((node) => node.style.transform)?.style\n .transform ?? null\n )","value":{"kind":"source-expression","source":"() =>\n ['working-spinner', 'working-dot'].map(\n (id) =>\n [...document.querySelectorAll(`#${id} *`)].find((node) => node.style.transform)?.style\n .transform ?? null\n )"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => ['working-spinner', 'working-dot'].map( (id) => [...document.querySelectorAll(`#${id} *`)].find((node) => node.style. Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"30200c6e1a131423c6b065761ecd4deee282c6c74d2034aeab5055c20e26ed06"}},{"id":"18:131:fixture-or-oracle-declaration:7","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":131,"end_line":131,"start":4677,"end":4689,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":131,"end_line":131,"start":4687,"end":4689},"binding":"samples","resolution":[],"enclosing_case":{"line":128,"title":"keeps both rings turning past the first second"},"affected_case_lines":[],"decision":"keep","reason":"Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression. Scenario: keeps both rings turning past the first second.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"30200c6e1a131423c6b065761ecd4deee282c6c74d2034aeab5055c20e26ed06"}},{"id":"18:132:for-of:8","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":132,"end_line":135,"start":4694,"end":4869,"source":"SAMPLE_SECONDS","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":132,"end_line":132,"start":4716,"end":4730},"binding":"const seconds","resolution":[{"name":"SAMPLE_SECONDS","path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":25,"end_line":25,"start":1022,"end":1037,"declaration_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":25,"end_line":25,"start":1005,"end":1037},"source":"[1.3, 1.8, 2.4]"}],"enclosing_case":{"line":128,"title":"keeps both rings turning past the first second"},"affected_case_lines":[],"decision":"keep","reason":"Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression. Scenario: keeps both rings turning past the first second.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":25,"end_line":25,"start":1023,"end":1026,"source":"1.3","value":{"kind":"number","value":1.3},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 1.3. Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression. Scenario: keeps both rings turning past the first second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":25,"end_line":25,"start":1028,"end":1031,"source":"1.8","value":{"kind":"number","value":1.8},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 1.8. Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression. Scenario: keeps both rings turning past the first second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":25,"end_line":25,"start":1033,"end":1036,"source":"2.4","value":{"kind":"number","value":2.4},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 2.4. Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression. Scenario: keeps both rings turning past the first second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"30200c6e1a131423c6b065761ecd4deee282c6c74d2034aeab5055c20e26ed06"}},{"id":"18:136:for-of:9","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":136,"end_line":141,"start":4874,"end":5088,"source":"[0, 1]","input_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":136,"end_line":136,"start":4893,"end":4899},"binding":"const ring","resolution":[],"enclosing_case":{"line":128,"title":"keeps both rings turning past the first second"},"affected_case_lines":[],"decision":"keep","reason":"Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression. Scenario: keeps both rings turning past the first second.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":136,"end_line":136,"start":4894,"end":4895,"source":"0","value":{"kind":"number","value":0},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 0. Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression. Scenario: keeps both rings turning past the first second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","line":136,"end_line":136,"start":4897,"end":4898,"source":"1","value":{"kind":"number","value":1},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 1. Both real working-ring components are sampled after their first loop; distinct observed transforms prove continued animation. Real elapsed browser time is intrinsic to this animation regression. Scenario: keeps both rings turning past the first second.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"30200c6e1a131423c6b065761ecd4deee282c6c74d2034aeab5055c20e26ed06"}}],"original_review_sha256":"8fde27def86a72e764aecb4d2b9499b97f6431a35d37acf09aa532d73c016e43","reviewer":"audit_config","reviewed_sha256":"30200c6e1a131423c6b065761ecd4deee282c6c74d2034aeab5055c20e26ed06","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","final_declarations":1,"current_controls":{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","each":[],"for_of":[{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","start":4716,"end":4730,"line":132,"end_line":132,"source":"SAMPLE_SECONDS","binding":"const seconds","changed":false},{"path":"config/scripts/mobile-web-app/mobile-web-app-working-spinner-render.test.mjs","start":4893,"end":4899,"line":136,"end_line":136,"source":"[0, 1]","binding":"const ring","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/mobile-web-app-route-manifest.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-render-harness.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-terminal-probe-route.mjs","mobile/src/components/AgentSpinner.tsx","mobile/src/components/AgentStateDot.tsx"],"runtime_validation":[]}
+{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","sha256":"cb2b2b9f42b17cdcf0095b9e85be057f3c1a585e22fa28b730351c740ec49787","declarations":17,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":19,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"cb2b2b9f42b17cdcf0095b9e85be057f3c1a585e22fa28b730351c740ec49787","cases":[{"line":71,"title":"finds the editor the TextInput census cannot see","decision":"fix","reason":"Use containment for the known actual editor host instead of copying an exact singleton production host inventory; unresolved/offender census still judges all discovered hosts.","explicit_input_controls":[{"control_id":"19:74:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":74,"source":"editableHostsIn(mobileDir, EDITOR_CLOSURE)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":74,"end_line":74,"start":3201,"end":3210,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":21,"end_line":21,"start":963,"end":1024},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../../mobile', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../../mobile', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. Use containment for the known actual editor host instead of copying an exact singleton production host inventory; unresolved/offender census still judges all discovered hosts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":74,"end_line":74,"start":3212,"end":3226,"source":"EDITOR_CLOSURE","value":{"kind":"reference","source":"EDITOR_CLOSURE","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":24,"end_line":29,"start":1120,"end":1246},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/components/rich-markdown/document-markup.ts"},{"kind":"string","value":"src/components/rich-markdown/document-style.ts"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: EDITOR_CLOSURE. Use containment for the known actual editor host instead of copying an exact singleton production host inventory; unresolved/offender census still judges all discovered hosts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Use containment for the known actual editor host instead of copying an exact singleton production host inventory; unresolved/offender census still judges all discovered hosts.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":71,"title":"finds the editor the TextInput census cannot see","start":2973,"end":3339},"implementation_status":"implemented"},{"line":79,"title":"follows the surface to the rule in the stylesheet beside it","decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: follows the surface to the rule in the stylesheet beside it.","explicit_input_controls":[{"control_id":"19:80:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":80,"source":"unresolvedEditableHostStyles(mobileDir, EDITOR_CLOSURE)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":80,"end_line":80,"start":3448,"end":3457,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":21,"end_line":21,"start":963,"end":1024},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../../mobile', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../../mobile', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: follows the surface to the rule in the stylesheet beside it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":80,"end_line":80,"start":3459,"end":3473,"source":"EDITOR_CLOSURE","value":{"kind":"reference","source":"EDITOR_CLOSURE","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":24,"end_line":29,"start":1120,"end":1246},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/components/rich-markdown/document-markup.ts"},{"kind":"string","value":"src/components/rich-markdown/document-style.ts"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: EDITOR_CLOSURE. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: follows the surface to the rule in the stylesheet beside it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: follows the surface to the rule in the stylesheet beside it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:81:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":81,"source":"editableHostFontSizeOffenders(mobileDir, EDITOR_CLOSURE)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":81,"end_line":81,"start":3529,"end":3538,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":21,"end_line":21,"start":963,"end":1024},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../../mobile', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../../mobile', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: follows the surface to the rule in the stylesheet beside it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":81,"end_line":81,"start":3540,"end":3554,"source":"EDITOR_CLOSURE","value":{"kind":"reference","source":"EDITOR_CLOSURE","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":24,"end_line":29,"start":1120,"end":1246},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/components/rich-markdown/document-markup.ts"},{"kind":"string","value":"src/components/rich-markdown/document-style.ts"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: EDITOR_CLOSURE. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: follows the surface to the rule in the stylesheet beside it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: follows the surface to the rule in the stylesheet beside it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":80,"title":"follows the surface to the rule in the stylesheet beside it","start":3343,"end":3582},"implementation_status":"retained"},{"line":84,"title":"reds on an editable under the floor","decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reds on an editable under the floor.","explicit_input_controls":[{"control_id":"19:85:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":85,"source":"fixture(\n 'under',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 14px;\\n }`\\n}\\n'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":86,"end_line":86,"start":3684,"end":3691,"source":"'under'","value":{"kind":"string","value":"under"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'under'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reds on an editable under the floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":87,"end_line":87,"start":3699,"end":3777,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reds on an editable under the floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":88,"end_line":88,"start":3785,"end":3874,"source":"'export function style() {\\n return ` #editor {\\n font-size: 14px;\\n }`\\n}\\n'","value":{"kind":"string","value":"export function style() {\n return ` #editor {\n font-size: 14px;\n }`\n}\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 14px;\\n }`\\n}\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reds on an editable under the floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reds on an editable under the floor.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:90:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":90,"source":"editableHostFontSizeOffenders(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":90,"end_line":90,"start":3922,"end":3926,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reds on an editable under the floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":90,"end_line":90,"start":3928,"end":3935,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reds on an editable under the floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reds on an editable under the floor.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":85,"title":"reds on an editable under the floor","start":3586,"end":3983},"implementation_status":"retained"},{"line":93,"title":"accepts a literal that already clears the floor, and a size read from the seam","decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","explicit_input_controls":[{"control_id":"19:94:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":94,"source":"fixture(\n 'literal',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }`\\n}\\n'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":95,"end_line":95,"start":4118,"end":4127,"source":"'literal'","value":{"kind":"string","value":"literal"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'literal'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":96,"end_line":96,"start":4135,"end":4213,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":97,"end_line":97,"start":4221,"end":4310,"source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }`\\n}\\n'","value":{"kind":"string","value":"export function style() {\n return ` #editor {\n font-size: 18px;\n }`\n}\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }`\\n}\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:99:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":99,"source":"editableHostFontSizeOffenders(literal.root, literal.closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":99,"end_line":99,"start":4358,"end":4370,"source":"literal.root","value":{"kind":"source-expression","source":"literal.root"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: literal.root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":99,"end_line":99,"start":4372,"end":4387,"source":"literal.closure","value":{"kind":"source-expression","source":"literal.closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: literal.closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:101:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":101,"source":"fixture(\n 'bound',\n 'export const MARKUP = \\'\\'\\n',\n \"import { TEXT_INPUT_FONT_SIZE } from '../platform/text-input-font-size'\\n\" +\n 'export function style() {\\n return ` #editor {\\n font-size: ${TEXT_INPUT_FONT_SIZE}px;\\n }`\\n}\\n'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":102,"end_line":102,"start":4442,"end":4449,"source":"'bound'","value":{"kind":"string","value":"bound"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'bound'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":103,"end_line":103,"start":4457,"end":4535,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":104,"end_line":105,"start":4543,"end":4739,"source":"\"import { TEXT_INPUT_FONT_SIZE } from '../platform/text-input-font-size'\\n\" +\n 'export function style() {\\n return ` #editor {\\n font-size: ${TEXT_INPUT_FONT_SIZE}px;\\n }`\\n}\\n'","value":{"kind":"source-expression","source":"\"import { TEXT_INPUT_FONT_SIZE } from '../platform/text-input-font-size'\\n\" +\n 'export function style() {\\n return ` #editor {\\n font-size: ${TEXT_INPUT_FONT_SIZE}px;\\n }`\\n}\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import { TEXT_INPUT_FONT_SIZE } from '../platform/text-input-font-size'\\n\" + 'export function style() {\\n return ` #editor {\\n . The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:107:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":107,"source":"editableHostFontSizeOffenders(bound.root, bound.closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":107,"end_line":107,"start":4787,"end":4797,"source":"bound.root","value":{"kind":"source-expression","source":"bound.root"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: bound.root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":107,"end_line":107,"start":4799,"end":4812,"source":"bound.closure","value":{"kind":"source-expression","source":"bound.closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: bound.closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":94,"title":"accepts a literal that already clears the floor, and a size read from the seam","start":3987,"end":4840},"implementation_status":"retained"},{"line":110,"title":"refuses a name that only spells the seam\u2019s","decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: refuses a name that only spells the seam\u2019s.","explicit_input_controls":[{"control_id":"19:113:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":113,"source":"fixture(\n 'local',\n 'export const MARKUP = \\'\\'\\n',\n 'const TEXT_INPUT_FONT_SIZE = 14\\n' +\n 'export function style() {\\n return ` #editor {\\n font-size: ${TEXT_INPUT_FONT_SIZE}px;\\n }`\\n}\\n'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":114,"end_line":114,"start":5087,"end":5094,"source":"'local'","value":{"kind":"string","value":"local"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'local'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: refuses a name that only spells the seam\u2019s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":115,"end_line":115,"start":5102,"end":5180,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: refuses a name that only spells the seam\u2019s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":116,"end_line":117,"start":5188,"end":5344,"source":"'const TEXT_INPUT_FONT_SIZE = 14\\n' +\n 'export function style() {\\n return ` #editor {\\n font-size: ${TEXT_INPUT_FONT_SIZE}px;\\n }`\\n}\\n'","value":{"kind":"source-expression","source":"'const TEXT_INPUT_FONT_SIZE = 14\\n' +\n 'export function style() {\\n return ` #editor {\\n font-size: ${TEXT_INPUT_FONT_SIZE}px;\\n }`\\n}\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'const TEXT_INPUT_FONT_SIZE = 14\\n' + 'export function style() {\\n return ` #editor {\\n font-size: ${TEXT_INPUT_FONT_SIZE}p. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: refuses a name that only spells the seam\u2019s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: refuses a name that only spells the seam\u2019s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:119:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":119,"source":"editableHostFontSizeOffenders(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":119,"end_line":119,"start":5392,"end":5396,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: refuses a name that only spells the seam\u2019s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":119,"end_line":119,"start":5398,"end":5405,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: refuses a name that only spells the seam\u2019s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: refuses a name that only spells the seam\u2019s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":111,"title":"refuses a name that only spells the seam\u2019s","start":4844,"end":5453},"implementation_status":"retained"},{"line":122,"title":"counts a no-id editable beside a named one, rather than only the named one","decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: counts a no-id editable beside a named one, rather than only the named one.","explicit_input_controls":[{"control_id":"19:126:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":126,"source":"fixture(\n 'mixed',\n 'export const NAMED = \\'\\'\\n' +\n 'export const ANONYMOUS = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }`\\n}\\n'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":127,"end_line":127,"start":5855,"end":5862,"source":"'mixed'","value":{"kind":"string","value":"mixed"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'mixed'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: counts a no-id editable beside a named one, rather than only the named one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":128,"end_line":129,"start":5870,"end":6033,"source":"'export const NAMED = \\'\\'\\n' +\n 'export const ANONYMOUS = \\'\\'\\n'","value":{"kind":"source-expression","source":"'export const NAMED = \\'\\'\\n' +\n 'export const ANONYMOUS = \\'\\'\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const NAMED = \\'\\'\\n' + 'export const ANONYMOUS = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 14px;\\n }`\\n}\\n',\n 'export function nested() {\\n return ` #editor {\\n font-size: 18px;\\n }`\\n}\\n'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":144,"end_line":144,"start":6765,"end":6773,"source":"'nested'","value":{"kind":"string","value":"nested"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'nested'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the sheet beside the markup, not one a directory down.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":145,"end_line":145,"start":6781,"end":6859,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the sheet beside the markup, not one a directory down.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":146,"end_line":146,"start":6867,"end":6956,"source":"'export function style() {\\n return ` #editor {\\n font-size: 14px;\\n }`\\n}\\n'","value":{"kind":"string","value":"export function style() {\n return ` #editor {\n font-size: 14px;\n }`\n}\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 14px;\\n }`\\n}\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the sheet beside the markup, not one a directory down.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":147,"end_line":147,"start":6964,"end":7054,"source":"'export function nested() {\\n return ` #editor {\\n font-size: 18px;\\n }`\\n}\\n'","value":{"kind":"string","value":"export function nested() {\n return ` #editor {\n font-size: 18px;\n }`\n}\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function nested() {\\n return ` #editor {\\n font-size: 18px;\\n }`\\n}\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the sheet beside the markup, not one a directory down.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the sheet beside the markup, not one a directory down.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:149:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":149,"source":"editableHostFontSizeOffenders(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":149,"end_line":149,"start":7102,"end":7106,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the sheet beside the markup, not one a directory down.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":149,"end_line":149,"start":7108,"end":7115,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the sheet beside the markup, not one a directory down.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the sheet beside the markup, not one a directory down.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":140,"title":"reads the sheet beside the markup, not one a directory down","start":6398,"end":7163},"implementation_status":"retained"},{"line":152,"title":"reports an editable it cannot judge rather than passing it","decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","explicit_input_controls":[{"control_id":"19:153:inline-api-or-fixture-input:19","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":153,"source":"fixture(\n 'no-id',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` main { font-size: 18px; }`\\n}\\n'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":154,"end_line":154,"start":7275,"end":7282,"source":"'no-id'","value":{"kind":"string","value":"no-id"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'no-id'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":155,"end_line":155,"start":7290,"end":7356,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":156,"end_line":156,"start":7364,"end":7438,"source":"'export function style() {\\n return ` main { font-size: 18px; }`\\n}\\n'","value":{"kind":"string","value":"export function style() {\n return ` main { font-size: 18px; }`\n}\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` main { font-size: 18px; }`\\n}\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:158:inline-api-or-fixture-input:20","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":158,"source":"unresolvedEditableHostStyles(noId.root, noId.closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":158,"end_line":158,"start":7485,"end":7494,"source":"noId.root","value":{"kind":"source-expression","source":"noId.root"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: noId.root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":158,"end_line":158,"start":7496,"end":7508,"source":"noId.closure","value":{"kind":"source-expression","source":"noId.closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: noId.closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:159:inline-api-or-fixture-input:21","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":159,"source":"editableHostFontSizeOffenders(noId.root, noId.closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":159,"end_line":159,"start":7583,"end":7592,"source":"noId.root","value":{"kind":"source-expression","source":"noId.root"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: noId.root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":159,"end_line":159,"start":7594,"end":7606,"source":"noId.closure","value":{"kind":"source-expression","source":"noId.closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: noId.closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:161:inline-api-or-fixture-input:22","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":161,"source":"fixture(\n 'no-rule',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` main { font-size: 18px; }`\\n}\\n'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":162,"end_line":162,"start":7662,"end":7671,"source":"'no-rule'","value":{"kind":"string","value":"no-rule"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'no-rule'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":163,"end_line":163,"start":7679,"end":7757,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":164,"end_line":164,"start":7765,"end":7839,"source":"'export function style() {\\n return ` main { font-size: 18px; }`\\n}\\n'","value":{"kind":"string","value":"export function style() {\n return ` main { font-size: 18px; }`\n}\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` main { font-size: 18px; }`\\n}\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:166:inline-api-or-fixture-input:23","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":166,"source":"unresolvedEditableHostStyles(noRule.root, noRule.closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":166,"end_line":166,"start":7886,"end":7897,"source":"noRule.root","value":{"kind":"source-expression","source":"noRule.root"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: noRule.root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":166,"end_line":166,"start":7899,"end":7913,"source":"noRule.closure","value":{"kind":"source-expression","source":"noRule.closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: noRule.closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":153,"title":"reports an editable it cannot judge rather than passing it","start":7167,"end":7982},"implementation_status":"retained"},{"line":171,"title":"reads the declaration CSS uses, not the first one in the rule","decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the declaration CSS uses, not the first one in the rule.","explicit_input_controls":[{"control_id":"19:174:inline-api-or-fixture-input:24","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":174,"source":"fixture(\n 'repeated',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 16px;\\n' +\n ' font-size: 14px;\\n }`\\n}\\n'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":175,"end_line":175,"start":8246,"end":8256,"source":"'repeated'","value":{"kind":"string","value":"repeated"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'repeated'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the declaration CSS uses, not the first one in the rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":176,"end_line":176,"start":8264,"end":8342,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the declaration CSS uses, not the first one in the rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":177,"end_line":178,"start":8350,"end":8476,"source":"'export function style() {\\n return ` #editor {\\n font-size: 16px;\\n' +\n ' font-size: 14px;\\n }`\\n}\\n'","value":{"kind":"source-expression","source":"'export function style() {\\n return ` #editor {\\n font-size: 16px;\\n' +\n ' font-size: 14px;\\n }`\\n}\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 16px;\\n' + ' font-size: 14px;\\n }`\\n}\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the declaration CSS uses, not the first one in the rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the declaration CSS uses, not the first one in the rule.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:180:inline-api-or-fixture-input:25","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":180,"source":"editableHostFontSizeOffenders(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":180,"end_line":180,"start":8524,"end":8528,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the declaration CSS uses, not the first one in the rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":180,"end_line":180,"start":8530,"end":8537,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the declaration CSS uses, not the first one in the rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the declaration CSS uses, not the first one in the rule.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":172,"title":"reads the declaration CSS uses, not the first one in the rule","start":7986,"end":8585},"implementation_status":"retained"},{"line":183,"title":"lets an important declaration outrank a later one, as the cascade does","decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","explicit_input_controls":[{"control_id":"19:184:inline-api-or-fixture-input:26","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":184,"source":"fixture(\n 'important-wins',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 18px !important;\\n' +\n ' font-size: 14px;\\n }`\\n}\\n'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":185,"end_line":185,"start":8714,"end":8730,"source":"'important-wins'","value":{"kind":"string","value":"important-wins"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'important-wins'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":186,"end_line":186,"start":8738,"end":8816,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":187,"end_line":188,"start":8824,"end":8961,"source":"'export function style() {\\n return ` #editor {\\n font-size: 18px !important;\\n' +\n ' font-size: 14px;\\n }`\\n}\\n'","value":{"kind":"source-expression","source":"'export function style() {\\n return ` #editor {\\n font-size: 18px !important;\\n' +\n ' font-size: 14px;\\n }`\\n}\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 18px !important;\\n' + ' font-size: 14px;\\n }`\\n}\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:190:inline-api-or-fixture-input:27","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":190,"source":"editableHostFontSizeOffenders(important.root, important.closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":190,"end_line":190,"start":9009,"end":9023,"source":"important.root","value":{"kind":"source-expression","source":"important.root"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: important.root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":190,"end_line":190,"start":9025,"end":9042,"source":"important.closure","value":{"kind":"source-expression","source":"important.closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: important.closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:195:inline-api-or-fixture-input:28","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":195,"source":"fixture(\n 'important-offends',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 14px !important;\\n }`\\n}\\n'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":196,"end_line":196,"start":9345,"end":9364,"source":"'important-offends'","value":{"kind":"string","value":"important-offends"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'important-offends'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":197,"end_line":197,"start":9372,"end":9450,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":198,"end_line":198,"start":9458,"end":9558,"source":"'export function style() {\\n return ` #editor {\\n font-size: 14px !important;\\n }`\\n}\\n'","value":{"kind":"string","value":"export function style() {\n return ` #editor {\n font-size: 14px !important;\n }`\n}\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 14px !important;\\n }`\\n}\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:200:inline-api-or-fixture-input:29","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":200,"source":"editableHostFontSizeOffenders(offending.root, offending.closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":200,"end_line":200,"start":9606,"end":9620,"source":"offending.root","value":{"kind":"source-expression","source":"offending.root"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: offending.root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":200,"end_line":200,"start":9622,"end":9639,"source":"offending.closure","value":{"kind":"source-expression","source":"offending.closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: offending.closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":184,"title":"lets an important declaration outrank a later one, as the cascade does","start":8589,"end":9699},"implementation_status":"retained"},{"line":205,"title":"cannot judge an editable that declares no size, and says so","decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot judge an editable that declares no size, and says so.","explicit_input_controls":[{"control_id":"19:209:inline-api-or-fixture-input:30","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":209,"source":"fixture(\n 'inherits',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n padding: 8px;\\n }`\\n}\\n'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":210,"end_line":210,"start":10105,"end":10115,"source":"'inherits'","value":{"kind":"string","value":"inherits"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'inherits'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot judge an editable that declares no size, and says so.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":211,"end_line":211,"start":10123,"end":10201,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot judge an editable that declares no size, and says so.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":212,"end_line":212,"start":10209,"end":10295,"source":"'export function style() {\\n return ` #editor {\\n padding: 8px;\\n }`\\n}\\n'","value":{"kind":"string","value":"export function style() {\n return ` #editor {\n padding: 8px;\n }`\n}\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n padding: 8px;\\n }`\\n}\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot judge an editable that declares no size, and says so.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot judge an editable that declares no size, and says so.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:214:inline-api-or-fixture-input:31","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":214,"source":"unresolvedEditableHostStyles(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":214,"end_line":214,"start":10342,"end":10346,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot judge an editable that declares no size, and says so.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":214,"end_line":214,"start":10348,"end":10355,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot judge an editable that declares no size, and says so.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot judge an editable that declares no size, and says so.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:216:inline-api-or-fixture-input:32","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":216,"source":"editableHostFontSizeOffenders(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":216,"end_line":216,"start":10526,"end":10530,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot judge an editable that declares no size, and says so.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":216,"end_line":216,"start":10532,"end":10539,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot judge an editable that declares no size, and says so.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot judge an editable that declares no size, and says so.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":206,"title":"cannot judge an editable that declares no size, and says so","start":9703,"end":10567},"implementation_status":"retained"},{"line":219,"title":"reads every exact rule in the sheet, in source order, as the cascade does","decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads every exact rule in the sheet, in source order, as the cascade does.","explicit_input_controls":[{"control_id":"19:222:inline-api-or-fixture-input:33","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":222,"source":"fixture(\n 'later-exact',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' #editor {\\n font-size: 14px;\\n }`\\n}\\n'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":223,"end_line":223,"start":10858,"end":10871,"source":"'later-exact'","value":{"kind":"string","value":"later-exact"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'later-exact'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads every exact rule in the sheet, in source order, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":224,"end_line":224,"start":10879,"end":10957,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads every exact rule in the sheet, in source order, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":225,"end_line":226,"start":10965,"end":11113,"source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' #editor {\\n font-size: 14px;\\n }`\\n}\\n'","value":{"kind":"source-expression","source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' #editor {\\n font-size: 14px;\\n }`\\n}\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' + ' #editor {\\n font-size: 14px;\\n . The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads every exact rule in the sheet, in source order, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads every exact rule in the sheet, in source order, as the cascade does.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:228:inline-api-or-fixture-input:34","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":228,"source":"editableHostFontSizeOffenders(later.root, later.closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":228,"end_line":228,"start":11161,"end":11171,"source":"later.root","value":{"kind":"source-expression","source":"later.root"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: later.root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads every exact rule in the sheet, in source order, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":228,"end_line":228,"start":11173,"end":11186,"source":"later.closure","value":{"kind":"source-expression","source":"later.closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: later.closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads every exact rule in the sheet, in source order, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads every exact rule in the sheet, in source order, as the cascade does.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":220,"title":"reads every exact rule in the sheet, in source order, as the cascade does","start":10571,"end":11234},"implementation_status":"retained"},{"line":231,"title":"takes source order rather than the lowest exact rule in the sheet","decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: takes source order rather than the lowest exact rule in the sheet.","explicit_input_controls":[{"control_id":"19:234:inline-api-or-fixture-input:35","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":234,"source":"fixture(\n 'earlier-exact',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 14px;\\n }\\n' +\n ' #editor {\\n font-size: 18px;\\n }`\\n}\\n'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":235,"end_line":235,"start":11553,"end":11568,"source":"'earlier-exact'","value":{"kind":"string","value":"earlier-exact"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'earlier-exact'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: takes source order rather than the lowest exact rule in the sheet.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":236,"end_line":236,"start":11576,"end":11654,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: takes source order rather than the lowest exact rule in the sheet.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":237,"end_line":238,"start":11662,"end":11810,"source":"'export function style() {\\n return ` #editor {\\n font-size: 14px;\\n }\\n' +\n ' #editor {\\n font-size: 18px;\\n }`\\n}\\n'","value":{"kind":"source-expression","source":"'export function style() {\\n return ` #editor {\\n font-size: 14px;\\n }\\n' +\n ' #editor {\\n font-size: 18px;\\n }`\\n}\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 14px;\\n }\\n' + ' #editor {\\n font-size: 18px;\\n . The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: takes source order rather than the lowest exact rule in the sheet.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: takes source order rather than the lowest exact rule in the sheet.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:240:inline-api-or-fixture-input:36","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":240,"source":"editableHostFontSizeOffenders(earlier.root, earlier.closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":240,"end_line":240,"start":11858,"end":11870,"source":"earlier.root","value":{"kind":"source-expression","source":"earlier.root"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: earlier.root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: takes source order rather than the lowest exact rule in the sheet.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":240,"end_line":240,"start":11872,"end":11887,"source":"earlier.closure","value":{"kind":"source-expression","source":"earlier.closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: earlier.closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: takes source order rather than the lowest exact rule in the sheet.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: takes source order rather than the lowest exact rule in the sheet.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":232,"title":"takes source order rather than the lowest exact rule in the sheet","start":11238,"end":11915},"implementation_status":"retained"},{"line":243,"title":"cannot rank a higher-specificity subject rule, and says so rather than passing","decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot rank a higher-specificity subject rule, and says so rather than passing.","explicit_input_controls":[{"control_id":"19:246:inline-api-or-fixture-input:37","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":246,"source":"fixture(\n 'subject-specificity',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' main#editor {\\n font-size: 14px;\\n }`\\n}\\n'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":247,"end_line":247,"start":12224,"end":12245,"source":"'subject-specificity'","value":{"kind":"string","value":"subject-specificity"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'subject-specificity'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot rank a higher-specificity subject rule, and says so rather than passing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":248,"end_line":248,"start":12253,"end":12331,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot rank a higher-specificity subject rule, and says so rather than passing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":249,"end_line":250,"start":12339,"end":12491,"source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' main#editor {\\n font-size: 14px;\\n }`\\n}\\n'","value":{"kind":"source-expression","source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' main#editor {\\n font-size: 14px;\\n }`\\n}\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' + ' main#editor {\\n font-size: 14px;\\n. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot rank a higher-specificity subject rule, and says so rather than passing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot rank a higher-specificity subject rule, and says so rather than passing.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:252:inline-api-or-fixture-input:38","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":252,"source":"unresolvedEditableHostStyles(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":252,"end_line":252,"start":12538,"end":12542,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot rank a higher-specificity subject rule, and says so rather than passing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":252,"end_line":252,"start":12544,"end":12551,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot rank a higher-specificity subject rule, and says so rather than passing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot rank a higher-specificity subject rule, and says so rather than passing.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:254:inline-api-or-fixture-input:39","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":254,"source":"editableHostFontSizeOffenders(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":254,"end_line":254,"start":12711,"end":12715,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot rank a higher-specificity subject rule, and says so rather than passing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":254,"end_line":254,"start":12717,"end":12724,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot rank a higher-specificity subject rule, and says so rather than passing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot rank a higher-specificity subject rule, and says so rather than passing.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":244,"title":"cannot rank a higher-specificity subject rule, and says so rather than passing","start":11919,"end":12752},"implementation_status":"retained"},{"line":257,"title":"splits a selector list, so a host riding in one still reaches the verdict","decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: splits a selector list, so a host riding in one still reaches the verdict.","explicit_input_controls":[{"control_id":"19:258:inline-api-or-fixture-input:40","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":258,"source":"fixture(\n 'subject-in-list',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' h1, main#editor {\\n font-size: 14px;\\n }`\\n}\\n'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":259,"end_line":259,"start":12892,"end":12909,"source":"'subject-in-list'","value":{"kind":"string","value":"subject-in-list"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'subject-in-list'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: splits a selector list, so a host riding in one still reaches the verdict.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":260,"end_line":260,"start":12917,"end":12995,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: splits a selector list, so a host riding in one still reaches the verdict.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":261,"end_line":262,"start":13003,"end":13159,"source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' h1, main#editor {\\n font-size: 14px;\\n }`\\n}\\n'","value":{"kind":"source-expression","source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' h1, main#editor {\\n font-size: 14px;\\n }`\\n}\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' + ' h1, main#editor {\\n font-size: 14p. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: splits a selector list, so a host riding in one still reaches the verdict.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: splits a selector list, so a host riding in one still reaches the verdict.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:264:inline-api-or-fixture-input:41","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":264,"source":"unresolvedEditableHostStyles(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":264,"end_line":264,"start":13206,"end":13210,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: splits a selector list, so a host riding in one still reaches the verdict.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":264,"end_line":264,"start":13212,"end":13219,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: splits a selector list, so a host riding in one still reaches the verdict.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: splits a selector list, so a host riding in one still reaches the verdict.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":258,"title":"splits a selector list, so a host riding in one still reaches the verdict","start":12756,"end":13267},"implementation_status":"retained"},{"line":267,"title":"reads the host\u2019s own id, not a longer one that starts with it","decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the host\u2019s own id, not a longer one that starts with it.","explicit_input_controls":[{"control_id":"19:270:inline-api-or-fixture-input:42","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":270,"source":"fixture(\n 'neighbour-id',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' #editor-notes {\\n font-size: 14px;\\n }`\\n}\\n'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":271,"end_line":271,"start":13579,"end":13593,"source":"'neighbour-id'","value":{"kind":"string","value":"neighbour-id"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'neighbour-id'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the host\u2019s own id, not a longer one that starts with it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":272,"end_line":272,"start":13601,"end":13679,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the host\u2019s own id, not a longer one that starts with it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":273,"end_line":274,"start":13687,"end":13841,"source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' #editor-notes {\\n font-size: 14px;\\n }`\\n}\\n'","value":{"kind":"source-expression","source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' #editor-notes {\\n font-size: 14px;\\n }`\\n}\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' + ' #editor-notes {\\n font-size: 14px;. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the host\u2019s own id, not a longer one that starts with it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the host\u2019s own id, not a longer one that starts with it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:276:inline-api-or-fixture-input:43","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":276,"source":"unresolvedEditableHostStyles(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":276,"end_line":276,"start":13888,"end":13892,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the host\u2019s own id, not a longer one that starts with it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":276,"end_line":276,"start":13894,"end":13901,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the host\u2019s own id, not a longer one that starts with it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the host\u2019s own id, not a longer one that starts with it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:277:inline-api-or-fixture-input:44","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":277,"source":"editableHostFontSizeOffenders(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":277,"end_line":277,"start":13957,"end":13961,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the host\u2019s own id, not a longer one that starts with it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":277,"end_line":277,"start":13963,"end":13970,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the host\u2019s own id, not a longer one that starts with it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the host\u2019s own id, not a longer one that starts with it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":268,"title":"reads the host\u2019s own id, not a longer one that starts with it","start":13271,"end":13998},"implementation_status":"retained"},{"line":280,"title":"leaves a descendant rule and a pseudo-element rule out of the way","decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: leaves a descendant rule and a pseudo-element rule out of the way.","explicit_input_controls":[{"control_id":"19:283:inline-api-or-fixture-input:45","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":283,"source":"fixture(\n 'not-the-host',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' #editor::before {\\n font-size: 12px;\\n }\\n' +\n ' #editor p {\\n font-size: 0.9em;\\n }`\\n}\\n'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":284,"end_line":284,"start":14320,"end":14334,"source":"'not-the-host'","value":{"kind":"string","value":"not-the-host"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'not-the-host'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: leaves a descendant rule and a pseudo-element rule out of the way.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":285,"end_line":285,"start":14342,"end":14420,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: leaves a descendant rule and a pseudo-element rule out of the way.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":286,"end_line":288,"start":14428,"end":14646,"source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' #editor::before {\\n font-size: 12px;\\n }\\n' +\n ' #editor p {\\n font-size: 0.9em;\\n }`\\n}\\n'","value":{"kind":"source-expression","source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' #editor::before {\\n font-size: 12px;\\n }\\n' +\n ' #editor p {\\n font-size: 0.9em;\\n }`\\n}\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' + ' #editor::before {\\n font-size: 12p. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: leaves a descendant rule and a pseudo-element rule out of the way.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: leaves a descendant rule and a pseudo-element rule out of the way.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:290:inline-api-or-fixture-input:46","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":290,"source":"unresolvedEditableHostStyles(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":290,"end_line":290,"start":14693,"end":14697,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: leaves a descendant rule and a pseudo-element rule out of the way.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":290,"end_line":290,"start":14699,"end":14706,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: leaves a descendant rule and a pseudo-element rule out of the way.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: leaves a descendant rule and a pseudo-element rule out of the way.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"19:291:inline-api-or-fixture-input:47","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":291,"source":"editableHostFontSizeOffenders(root, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":291,"end_line":291,"start":14762,"end":14766,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: leaves a descendant rule and a pseudo-element rule out of the way.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":291,"end_line":291,"start":14768,"end":14775,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: leaves a descendant rule and a pseudo-element rule out of the way.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: leaves a descendant rule and a pseudo-element rule out of the way.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":281,"title":"leaves a descendant rule and a pseudo-element rule out of the way","start":14002,"end":14803},"implementation_status":"retained"}],"lines":294,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary.","planned_changes":[{"original_line":71,"title":"finds the editor the TextInput census cannot see","decision":"fix","change":"Use containment for the known actual editor host instead of copying an exact singleton production host inventory; unresolved/offender census still judges all discovered hosts."}],"production_evidence":["config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.mjs"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"19:24:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":24,"end_line":29,"start":1103,"end":1246,"source":"{\n local: [\n 'src/components/rich-markdown/document-markup.ts',\n 'src/components/rich-markdown/document-style.ts'\n ]\n}","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":24,"end_line":29,"start":1120,"end":1246},"binding":"EDITOR_CLOSURE","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":25,"end_line":28,"start":1124,"end":1244,"source":"local: [\n 'src/components/rich-markdown/document-markup.ts',\n 'src/components/rich-markdown/document-style.ts'\n ]","value":{"kind":"property","key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/components/rich-markdown/document-markup.ts"},{"kind":"string","value":"src/components/rich-markdown/document-style.ts"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: local: [ 'src/components/rich-markdown/document-markup.ts', 'src/components/rich-markdown/document-style.ts' ]. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:49:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":49,"end_line":49,"start":2243,"end":2271,"source":"fixture(name, markup, style)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":49,"end_line":49,"start":2243,"end":2271},"binding":"fixture","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":49,"end_line":49,"start":2251,"end":2255,"source":"name","value":{"kind":"source-expression","source":"name"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: name. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":49,"end_line":49,"start":2257,"end":2263,"source":"markup","value":{"kind":"source-expression","source":"markup"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: markup. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":49,"end_line":49,"start":2265,"end":2270,"source":"style","value":{"kind":"source-expression","source":"style"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: style. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:74:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":74,"end_line":74,"start":3185,"end":3227,"source":"editableHostsIn(mobileDir, EDITOR_CLOSURE)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":74,"end_line":74,"start":3185,"end":3227},"binding":"editableHostsIn","resolution":[],"enclosing_case":{"line":71,"title":"finds the editor the TextInput census cannot see"},"affected_case_lines":[],"decision":"keep","reason":"Use containment for the known actual editor host instead of copying an exact singleton production host inventory; unresolved/offender census still judges all discovered hosts.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":74,"end_line":74,"start":3201,"end":3210,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":21,"end_line":21,"start":963,"end":1024},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../../mobile', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../../mobile', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. Use containment for the known actual editor host instead of copying an exact singleton production host inventory; unresolved/offender census still judges all discovered hosts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":74,"end_line":74,"start":3212,"end":3226,"source":"EDITOR_CLOSURE","value":{"kind":"reference","source":"EDITOR_CLOSURE","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":24,"end_line":29,"start":1120,"end":1246},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/components/rich-markdown/document-markup.ts"},{"kind":"string","value":"src/components/rich-markdown/document-style.ts"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: EDITOR_CLOSURE. Use containment for the known actual editor host instead of copying an exact singleton production host inventory; unresolved/offender census still judges all discovered hosts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:80:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":80,"end_line":80,"start":3419,"end":3474,"source":"unresolvedEditableHostStyles(mobileDir, EDITOR_CLOSURE)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":80,"end_line":80,"start":3419,"end":3474},"binding":"unresolvedEditableHostStyles","resolution":[],"enclosing_case":{"line":79,"title":"follows the surface to the rule in the stylesheet beside it"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: follows the surface to the rule in the stylesheet beside it.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":80,"end_line":80,"start":3448,"end":3457,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":21,"end_line":21,"start":963,"end":1024},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../../mobile', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../../mobile', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: follows the surface to the rule in the stylesheet beside it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":80,"end_line":80,"start":3459,"end":3473,"source":"EDITOR_CLOSURE","value":{"kind":"reference","source":"EDITOR_CLOSURE","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":24,"end_line":29,"start":1120,"end":1246},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/components/rich-markdown/document-markup.ts"},{"kind":"string","value":"src/components/rich-markdown/document-style.ts"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: EDITOR_CLOSURE. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: follows the surface to the rule in the stylesheet beside it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:81:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":81,"end_line":81,"start":3499,"end":3555,"source":"editableHostFontSizeOffenders(mobileDir, EDITOR_CLOSURE)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":81,"end_line":81,"start":3499,"end":3555},"binding":"editableHostFontSizeOffenders","resolution":[],"enclosing_case":{"line":79,"title":"follows the surface to the rule in the stylesheet beside it"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: follows the surface to the rule in the stylesheet beside it.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":81,"end_line":81,"start":3529,"end":3538,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":21,"end_line":21,"start":963,"end":1024},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../../mobile', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../../mobile', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: follows the surface to the rule in the stylesheet beside it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":81,"end_line":81,"start":3540,"end":3554,"source":"EDITOR_CLOSURE","value":{"kind":"reference","source":"EDITOR_CLOSURE","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":24,"end_line":29,"start":1120,"end":1246},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/components/rich-markdown/document-markup.ts"},{"kind":"string","value":"src/components/rich-markdown/document-style.ts"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: EDITOR_CLOSURE. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: follows the surface to the rule in the stylesheet beside it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:85:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":85,"end_line":89,"start":3669,"end":3880,"source":"fixture(\n 'under',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 14px;\\n }`\\n}\\n'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":85,"end_line":89,"start":3669,"end":3880},"binding":"fixture","resolution":[],"enclosing_case":{"line":84,"title":"reds on an editable under the floor"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reds on an editable under the floor.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":86,"end_line":86,"start":3684,"end":3691,"source":"'under'","value":{"kind":"string","value":"under"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'under'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reds on an editable under the floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":87,"end_line":87,"start":3699,"end":3777,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reds on an editable under the floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":88,"end_line":88,"start":3785,"end":3874,"source":"'export function style() {\\n return ` #editor {\\n font-size: 14px;\\n }`\\n}\\n'","value":{"kind":"string","value":"export function style() {\n return ` #editor {\n font-size: 14px;\n }`\n}\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 14px;\\n }`\\n}\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reds on an editable under the floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:90:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":90,"end_line":90,"start":3892,"end":3936,"source":"editableHostFontSizeOffenders(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":90,"end_line":90,"start":3892,"end":3936},"binding":"editableHostFontSizeOffenders","resolution":[],"enclosing_case":{"line":84,"title":"reds on an editable under the floor"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reds on an editable under the floor.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":90,"end_line":90,"start":3922,"end":3926,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reds on an editable under the floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":90,"end_line":90,"start":3928,"end":3935,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reds on an editable under the floor.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:94:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":94,"end_line":98,"start":4103,"end":4316,"source":"fixture(\n 'literal',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }`\\n}\\n'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":94,"end_line":98,"start":4103,"end":4316},"binding":"fixture","resolution":[],"enclosing_case":{"line":93,"title":"accepts a literal that already clears the floor, and a size read from the seam"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":95,"end_line":95,"start":4118,"end":4127,"source":"'literal'","value":{"kind":"string","value":"literal"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'literal'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":96,"end_line":96,"start":4135,"end":4213,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":97,"end_line":97,"start":4221,"end":4310,"source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }`\\n}\\n'","value":{"kind":"string","value":"export function style() {\n return ` #editor {\n font-size: 18px;\n }`\n}\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }`\\n}\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:99:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":99,"end_line":99,"start":4328,"end":4388,"source":"editableHostFontSizeOffenders(literal.root, literal.closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":99,"end_line":99,"start":4328,"end":4388},"binding":"editableHostFontSizeOffenders","resolution":[],"enclosing_case":{"line":93,"title":"accepts a literal that already clears the floor, and a size read from the seam"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":99,"end_line":99,"start":4358,"end":4370,"source":"literal.root","value":{"kind":"source-expression","source":"literal.root"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: literal.root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":99,"end_line":99,"start":4372,"end":4387,"source":"literal.closure","value":{"kind":"source-expression","source":"literal.closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: literal.closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:101:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":101,"end_line":106,"start":4427,"end":4745,"source":"fixture(\n 'bound',\n 'export const MARKUP = \\'\\'\\n',\n \"import { TEXT_INPUT_FONT_SIZE } from '../platform/text-input-font-size'\\n\" +\n 'export function style() {\\n return ` #editor {\\n font-size: ${TEXT_INPUT_FONT_SIZE}px;\\n }`\\n}\\n'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":101,"end_line":106,"start":4427,"end":4745},"binding":"fixture","resolution":[],"enclosing_case":{"line":93,"title":"accepts a literal that already clears the floor, and a size read from the seam"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":102,"end_line":102,"start":4442,"end":4449,"source":"'bound'","value":{"kind":"string","value":"bound"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'bound'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":103,"end_line":103,"start":4457,"end":4535,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":104,"end_line":105,"start":4543,"end":4739,"source":"\"import { TEXT_INPUT_FONT_SIZE } from '../platform/text-input-font-size'\\n\" +\n 'export function style() {\\n return ` #editor {\\n font-size: ${TEXT_INPUT_FONT_SIZE}px;\\n }`\\n}\\n'","value":{"kind":"source-expression","source":"\"import { TEXT_INPUT_FONT_SIZE } from '../platform/text-input-font-size'\\n\" +\n 'export function style() {\\n return ` #editor {\\n font-size: ${TEXT_INPUT_FONT_SIZE}px;\\n }`\\n}\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import { TEXT_INPUT_FONT_SIZE } from '../platform/text-input-font-size'\\n\" + 'export function style() {\\n return ` #editor {\\n . The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:107:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":107,"end_line":107,"start":4757,"end":4813,"source":"editableHostFontSizeOffenders(bound.root, bound.closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":107,"end_line":107,"start":4757,"end":4813},"binding":"editableHostFontSizeOffenders","resolution":[],"enclosing_case":{"line":93,"title":"accepts a literal that already clears the floor, and a size read from the seam"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":107,"end_line":107,"start":4787,"end":4797,"source":"bound.root","value":{"kind":"source-expression","source":"bound.root"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: bound.root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":107,"end_line":107,"start":4799,"end":4812,"source":"bound.closure","value":{"kind":"source-expression","source":"bound.closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: bound.closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: accepts a literal that already clears the floor, and a size read from the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:113:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":113,"end_line":118,"start":5072,"end":5350,"source":"fixture(\n 'local',\n 'export const MARKUP = \\'\\'\\n',\n 'const TEXT_INPUT_FONT_SIZE = 14\\n' +\n 'export function style() {\\n return ` #editor {\\n font-size: ${TEXT_INPUT_FONT_SIZE}px;\\n }`\\n}\\n'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":113,"end_line":118,"start":5072,"end":5350},"binding":"fixture","resolution":[],"enclosing_case":{"line":110,"title":"refuses a name that only spells the seam\u2019s"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: refuses a name that only spells the seam\u2019s.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":114,"end_line":114,"start":5087,"end":5094,"source":"'local'","value":{"kind":"string","value":"local"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'local'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: refuses a name that only spells the seam\u2019s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":115,"end_line":115,"start":5102,"end":5180,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: refuses a name that only spells the seam\u2019s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":116,"end_line":117,"start":5188,"end":5344,"source":"'const TEXT_INPUT_FONT_SIZE = 14\\n' +\n 'export function style() {\\n return ` #editor {\\n font-size: ${TEXT_INPUT_FONT_SIZE}px;\\n }`\\n}\\n'","value":{"kind":"source-expression","source":"'const TEXT_INPUT_FONT_SIZE = 14\\n' +\n 'export function style() {\\n return ` #editor {\\n font-size: ${TEXT_INPUT_FONT_SIZE}px;\\n }`\\n}\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'const TEXT_INPUT_FONT_SIZE = 14\\n' + 'export function style() {\\n return ` #editor {\\n font-size: ${TEXT_INPUT_FONT_SIZE}p. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: refuses a name that only spells the seam\u2019s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:119:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":119,"end_line":119,"start":5362,"end":5406,"source":"editableHostFontSizeOffenders(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":119,"end_line":119,"start":5362,"end":5406},"binding":"editableHostFontSizeOffenders","resolution":[],"enclosing_case":{"line":110,"title":"refuses a name that only spells the seam\u2019s"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: refuses a name that only spells the seam\u2019s.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":119,"end_line":119,"start":5392,"end":5396,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: refuses a name that only spells the seam\u2019s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":119,"end_line":119,"start":5398,"end":5405,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: refuses a name that only spells the seam\u2019s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:126:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":126,"end_line":131,"start":5840,"end":6136,"source":"fixture(\n 'mixed',\n 'export const NAMED = \\'\\'\\n' +\n 'export const ANONYMOUS = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }`\\n}\\n'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":126,"end_line":131,"start":5840,"end":6136},"binding":"fixture","resolution":[],"enclosing_case":{"line":122,"title":"counts a no-id editable beside a named one, rather than only the named one"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: counts a no-id editable beside a named one, rather than only the named one.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":127,"end_line":127,"start":5855,"end":5862,"source":"'mixed'","value":{"kind":"string","value":"mixed"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'mixed'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: counts a no-id editable beside a named one, rather than only the named one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":128,"end_line":129,"start":5870,"end":6033,"source":"'export const NAMED = \\'\\'\\n' +\n 'export const ANONYMOUS = \\'\\'\\n'","value":{"kind":"source-expression","source":"'export const NAMED = \\'\\'\\n' +\n 'export const ANONYMOUS = \\'\\'\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const NAMED = \\'\\'\\n' + 'export const ANONYMOUS = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 14px;\\n }`\\n}\\n',\n 'export function nested() {\\n return ` #editor {\\n font-size: 18px;\\n }`\\n}\\n'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":143,"end_line":148,"start":6740,"end":7060},"binding":"fixtureWithNested","resolution":[],"enclosing_case":{"line":139,"title":"reads the sheet beside the markup, not one a directory down"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the sheet beside the markup, not one a directory down.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":144,"end_line":144,"start":6765,"end":6773,"source":"'nested'","value":{"kind":"string","value":"nested"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'nested'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the sheet beside the markup, not one a directory down.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":145,"end_line":145,"start":6781,"end":6859,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the sheet beside the markup, not one a directory down.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":146,"end_line":146,"start":6867,"end":6956,"source":"'export function style() {\\n return ` #editor {\\n font-size: 14px;\\n }`\\n}\\n'","value":{"kind":"string","value":"export function style() {\n return ` #editor {\n font-size: 14px;\n }`\n}\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 14px;\\n }`\\n}\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the sheet beside the markup, not one a directory down.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":147,"end_line":147,"start":6964,"end":7054,"source":"'export function nested() {\\n return ` #editor {\\n font-size: 18px;\\n }`\\n}\\n'","value":{"kind":"string","value":"export function nested() {\n return ` #editor {\n font-size: 18px;\n }`\n}\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function nested() {\\n return ` #editor {\\n font-size: 18px;\\n }`\\n}\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the sheet beside the markup, not one a directory down.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:149:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":149,"end_line":149,"start":7072,"end":7116,"source":"editableHostFontSizeOffenders(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":149,"end_line":149,"start":7072,"end":7116},"binding":"editableHostFontSizeOffenders","resolution":[],"enclosing_case":{"line":139,"title":"reads the sheet beside the markup, not one a directory down"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the sheet beside the markup, not one a directory down.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":149,"end_line":149,"start":7102,"end":7106,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the sheet beside the markup, not one a directory down.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":149,"end_line":149,"start":7108,"end":7115,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the sheet beside the markup, not one a directory down.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:153:inline-api-or-fixture-input:19","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":153,"end_line":157,"start":7260,"end":7444,"source":"fixture(\n 'no-id',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` main { font-size: 18px; }`\\n}\\n'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":153,"end_line":157,"start":7260,"end":7444},"binding":"fixture","resolution":[],"enclosing_case":{"line":152,"title":"reports an editable it cannot judge rather than passing it"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":154,"end_line":154,"start":7275,"end":7282,"source":"'no-id'","value":{"kind":"string","value":"no-id"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'no-id'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":155,"end_line":155,"start":7290,"end":7356,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":156,"end_line":156,"start":7364,"end":7438,"source":"'export function style() {\\n return ` main { font-size: 18px; }`\\n}\\n'","value":{"kind":"string","value":"export function style() {\n return ` main { font-size: 18px; }`\n}\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` main { font-size: 18px; }`\\n}\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:158:inline-api-or-fixture-input:20","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":158,"end_line":158,"start":7456,"end":7509,"source":"unresolvedEditableHostStyles(noId.root, noId.closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":158,"end_line":158,"start":7456,"end":7509},"binding":"unresolvedEditableHostStyles","resolution":[],"enclosing_case":{"line":152,"title":"reports an editable it cannot judge rather than passing it"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":158,"end_line":158,"start":7485,"end":7494,"source":"noId.root","value":{"kind":"source-expression","source":"noId.root"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: noId.root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":158,"end_line":158,"start":7496,"end":7508,"source":"noId.closure","value":{"kind":"source-expression","source":"noId.closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: noId.closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:159:inline-api-or-fixture-input:21","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":159,"end_line":159,"start":7553,"end":7607,"source":"editableHostFontSizeOffenders(noId.root, noId.closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":159,"end_line":159,"start":7553,"end":7607},"binding":"editableHostFontSizeOffenders","resolution":[],"enclosing_case":{"line":152,"title":"reports an editable it cannot judge rather than passing it"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":159,"end_line":159,"start":7583,"end":7592,"source":"noId.root","value":{"kind":"source-expression","source":"noId.root"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: noId.root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":159,"end_line":159,"start":7594,"end":7606,"source":"noId.closure","value":{"kind":"source-expression","source":"noId.closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: noId.closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:161:inline-api-or-fixture-input:22","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":161,"end_line":165,"start":7647,"end":7845,"source":"fixture(\n 'no-rule',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` main { font-size: 18px; }`\\n}\\n'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":161,"end_line":165,"start":7647,"end":7845},"binding":"fixture","resolution":[],"enclosing_case":{"line":152,"title":"reports an editable it cannot judge rather than passing it"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":162,"end_line":162,"start":7662,"end":7671,"source":"'no-rule'","value":{"kind":"string","value":"no-rule"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'no-rule'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":163,"end_line":163,"start":7679,"end":7757,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":164,"end_line":164,"start":7765,"end":7839,"source":"'export function style() {\\n return ` main { font-size: 18px; }`\\n}\\n'","value":{"kind":"string","value":"export function style() {\n return ` main { font-size: 18px; }`\n}\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` main { font-size: 18px; }`\\n}\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:166:inline-api-or-fixture-input:23","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":166,"end_line":166,"start":7857,"end":7914,"source":"unresolvedEditableHostStyles(noRule.root, noRule.closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":166,"end_line":166,"start":7857,"end":7914},"binding":"unresolvedEditableHostStyles","resolution":[],"enclosing_case":{"line":152,"title":"reports an editable it cannot judge rather than passing it"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":166,"end_line":166,"start":7886,"end":7897,"source":"noRule.root","value":{"kind":"source-expression","source":"noRule.root"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: noRule.root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":166,"end_line":166,"start":7899,"end":7913,"source":"noRule.closure","value":{"kind":"source-expression","source":"noRule.closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: noRule.closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reports an editable it cannot judge rather than passing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:174:inline-api-or-fixture-input:24","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":174,"end_line":179,"start":8231,"end":8482,"source":"fixture(\n 'repeated',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 16px;\\n' +\n ' font-size: 14px;\\n }`\\n}\\n'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":174,"end_line":179,"start":8231,"end":8482},"binding":"fixture","resolution":[],"enclosing_case":{"line":171,"title":"reads the declaration CSS uses, not the first one in the rule"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the declaration CSS uses, not the first one in the rule.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":175,"end_line":175,"start":8246,"end":8256,"source":"'repeated'","value":{"kind":"string","value":"repeated"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'repeated'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the declaration CSS uses, not the first one in the rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":176,"end_line":176,"start":8264,"end":8342,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the declaration CSS uses, not the first one in the rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":177,"end_line":178,"start":8350,"end":8476,"source":"'export function style() {\\n return ` #editor {\\n font-size: 16px;\\n' +\n ' font-size: 14px;\\n }`\\n}\\n'","value":{"kind":"source-expression","source":"'export function style() {\\n return ` #editor {\\n font-size: 16px;\\n' +\n ' font-size: 14px;\\n }`\\n}\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 16px;\\n' + ' font-size: 14px;\\n }`\\n}\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the declaration CSS uses, not the first one in the rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:180:inline-api-or-fixture-input:25","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":180,"end_line":180,"start":8494,"end":8538,"source":"editableHostFontSizeOffenders(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":180,"end_line":180,"start":8494,"end":8538},"binding":"editableHostFontSizeOffenders","resolution":[],"enclosing_case":{"line":171,"title":"reads the declaration CSS uses, not the first one in the rule"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the declaration CSS uses, not the first one in the rule.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":180,"end_line":180,"start":8524,"end":8528,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the declaration CSS uses, not the first one in the rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":180,"end_line":180,"start":8530,"end":8537,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the declaration CSS uses, not the first one in the rule.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:184:inline-api-or-fixture-input:26","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":184,"end_line":189,"start":8699,"end":8967,"source":"fixture(\n 'important-wins',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 18px !important;\\n' +\n ' font-size: 14px;\\n }`\\n}\\n'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":184,"end_line":189,"start":8699,"end":8967},"binding":"fixture","resolution":[],"enclosing_case":{"line":183,"title":"lets an important declaration outrank a later one, as the cascade does"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":185,"end_line":185,"start":8714,"end":8730,"source":"'important-wins'","value":{"kind":"string","value":"important-wins"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'important-wins'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":186,"end_line":186,"start":8738,"end":8816,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":187,"end_line":188,"start":8824,"end":8961,"source":"'export function style() {\\n return ` #editor {\\n font-size: 18px !important;\\n' +\n ' font-size: 14px;\\n }`\\n}\\n'","value":{"kind":"source-expression","source":"'export function style() {\\n return ` #editor {\\n font-size: 18px !important;\\n' +\n ' font-size: 14px;\\n }`\\n}\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 18px !important;\\n' + ' font-size: 14px;\\n }`\\n}\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:190:inline-api-or-fixture-input:27","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":190,"end_line":190,"start":8979,"end":9043,"source":"editableHostFontSizeOffenders(important.root, important.closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":190,"end_line":190,"start":8979,"end":9043},"binding":"editableHostFontSizeOffenders","resolution":[],"enclosing_case":{"line":183,"title":"lets an important declaration outrank a later one, as the cascade does"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":190,"end_line":190,"start":9009,"end":9023,"source":"important.root","value":{"kind":"source-expression","source":"important.root"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: important.root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":190,"end_line":190,"start":9025,"end":9042,"source":"important.closure","value":{"kind":"source-expression","source":"important.closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: important.closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:195:inline-api-or-fixture-input:28","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":195,"end_line":199,"start":9330,"end":9564,"source":"fixture(\n 'important-offends',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 14px !important;\\n }`\\n}\\n'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":195,"end_line":199,"start":9330,"end":9564},"binding":"fixture","resolution":[],"enclosing_case":{"line":183,"title":"lets an important declaration outrank a later one, as the cascade does"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":196,"end_line":196,"start":9345,"end":9364,"source":"'important-offends'","value":{"kind":"string","value":"important-offends"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'important-offends'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":197,"end_line":197,"start":9372,"end":9450,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":198,"end_line":198,"start":9458,"end":9558,"source":"'export function style() {\\n return ` #editor {\\n font-size: 14px !important;\\n }`\\n}\\n'","value":{"kind":"string","value":"export function style() {\n return ` #editor {\n font-size: 14px !important;\n }`\n}\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 14px !important;\\n }`\\n}\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:200:inline-api-or-fixture-input:29","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":200,"end_line":200,"start":9576,"end":9640,"source":"editableHostFontSizeOffenders(offending.root, offending.closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":200,"end_line":200,"start":9576,"end":9640},"binding":"editableHostFontSizeOffenders","resolution":[],"enclosing_case":{"line":183,"title":"lets an important declaration outrank a later one, as the cascade does"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":200,"end_line":200,"start":9606,"end":9620,"source":"offending.root","value":{"kind":"source-expression","source":"offending.root"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: offending.root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":200,"end_line":200,"start":9622,"end":9639,"source":"offending.closure","value":{"kind":"source-expression","source":"offending.closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: offending.closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: lets an important declaration outrank a later one, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:209:inline-api-or-fixture-input:30","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":209,"end_line":213,"start":10090,"end":10301,"source":"fixture(\n 'inherits',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n padding: 8px;\\n }`\\n}\\n'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":209,"end_line":213,"start":10090,"end":10301},"binding":"fixture","resolution":[],"enclosing_case":{"line":205,"title":"cannot judge an editable that declares no size, and says so"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot judge an editable that declares no size, and says so.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":210,"end_line":210,"start":10105,"end":10115,"source":"'inherits'","value":{"kind":"string","value":"inherits"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'inherits'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot judge an editable that declares no size, and says so.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":211,"end_line":211,"start":10123,"end":10201,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot judge an editable that declares no size, and says so.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":212,"end_line":212,"start":10209,"end":10295,"source":"'export function style() {\\n return ` #editor {\\n padding: 8px;\\n }`\\n}\\n'","value":{"kind":"string","value":"export function style() {\n return ` #editor {\n padding: 8px;\n }`\n}\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n padding: 8px;\\n }`\\n}\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot judge an editable that declares no size, and says so.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:214:inline-api-or-fixture-input:31","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":214,"end_line":214,"start":10313,"end":10356,"source":"unresolvedEditableHostStyles(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":214,"end_line":214,"start":10313,"end":10356},"binding":"unresolvedEditableHostStyles","resolution":[],"enclosing_case":{"line":205,"title":"cannot judge an editable that declares no size, and says so"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot judge an editable that declares no size, and says so.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":214,"end_line":214,"start":10342,"end":10346,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot judge an editable that declares no size, and says so.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":214,"end_line":214,"start":10348,"end":10355,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot judge an editable that declares no size, and says so.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:216:inline-api-or-fixture-input:32","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":216,"end_line":216,"start":10496,"end":10540,"source":"editableHostFontSizeOffenders(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":216,"end_line":216,"start":10496,"end":10540},"binding":"editableHostFontSizeOffenders","resolution":[],"enclosing_case":{"line":205,"title":"cannot judge an editable that declares no size, and says so"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot judge an editable that declares no size, and says so.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":216,"end_line":216,"start":10526,"end":10530,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot judge an editable that declares no size, and says so.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":216,"end_line":216,"start":10532,"end":10539,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot judge an editable that declares no size, and says so.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:222:inline-api-or-fixture-input:33","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":222,"end_line":227,"start":10843,"end":11119,"source":"fixture(\n 'later-exact',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' #editor {\\n font-size: 14px;\\n }`\\n}\\n'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":222,"end_line":227,"start":10843,"end":11119},"binding":"fixture","resolution":[],"enclosing_case":{"line":219,"title":"reads every exact rule in the sheet, in source order, as the cascade does"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads every exact rule in the sheet, in source order, as the cascade does.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":223,"end_line":223,"start":10858,"end":10871,"source":"'later-exact'","value":{"kind":"string","value":"later-exact"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'later-exact'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads every exact rule in the sheet, in source order, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":224,"end_line":224,"start":10879,"end":10957,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads every exact rule in the sheet, in source order, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":225,"end_line":226,"start":10965,"end":11113,"source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' #editor {\\n font-size: 14px;\\n }`\\n}\\n'","value":{"kind":"source-expression","source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' #editor {\\n font-size: 14px;\\n }`\\n}\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' + ' #editor {\\n font-size: 14px;\\n . The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads every exact rule in the sheet, in source order, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:228:inline-api-or-fixture-input:34","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":228,"end_line":228,"start":11131,"end":11187,"source":"editableHostFontSizeOffenders(later.root, later.closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":228,"end_line":228,"start":11131,"end":11187},"binding":"editableHostFontSizeOffenders","resolution":[],"enclosing_case":{"line":219,"title":"reads every exact rule in the sheet, in source order, as the cascade does"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads every exact rule in the sheet, in source order, as the cascade does.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":228,"end_line":228,"start":11161,"end":11171,"source":"later.root","value":{"kind":"source-expression","source":"later.root"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: later.root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads every exact rule in the sheet, in source order, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":228,"end_line":228,"start":11173,"end":11186,"source":"later.closure","value":{"kind":"source-expression","source":"later.closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: later.closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads every exact rule in the sheet, in source order, as the cascade does.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:234:inline-api-or-fixture-input:35","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":234,"end_line":239,"start":11538,"end":11816,"source":"fixture(\n 'earlier-exact',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 14px;\\n }\\n' +\n ' #editor {\\n font-size: 18px;\\n }`\\n}\\n'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":234,"end_line":239,"start":11538,"end":11816},"binding":"fixture","resolution":[],"enclosing_case":{"line":231,"title":"takes source order rather than the lowest exact rule in the sheet"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: takes source order rather than the lowest exact rule in the sheet.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":235,"end_line":235,"start":11553,"end":11568,"source":"'earlier-exact'","value":{"kind":"string","value":"earlier-exact"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'earlier-exact'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: takes source order rather than the lowest exact rule in the sheet.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":236,"end_line":236,"start":11576,"end":11654,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: takes source order rather than the lowest exact rule in the sheet.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":237,"end_line":238,"start":11662,"end":11810,"source":"'export function style() {\\n return ` #editor {\\n font-size: 14px;\\n }\\n' +\n ' #editor {\\n font-size: 18px;\\n }`\\n}\\n'","value":{"kind":"source-expression","source":"'export function style() {\\n return ` #editor {\\n font-size: 14px;\\n }\\n' +\n ' #editor {\\n font-size: 18px;\\n }`\\n}\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 14px;\\n }\\n' + ' #editor {\\n font-size: 18px;\\n . The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: takes source order rather than the lowest exact rule in the sheet.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:240:inline-api-or-fixture-input:36","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":240,"end_line":240,"start":11828,"end":11888,"source":"editableHostFontSizeOffenders(earlier.root, earlier.closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":240,"end_line":240,"start":11828,"end":11888},"binding":"editableHostFontSizeOffenders","resolution":[],"enclosing_case":{"line":231,"title":"takes source order rather than the lowest exact rule in the sheet"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: takes source order rather than the lowest exact rule in the sheet.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":240,"end_line":240,"start":11858,"end":11870,"source":"earlier.root","value":{"kind":"source-expression","source":"earlier.root"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: earlier.root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: takes source order rather than the lowest exact rule in the sheet.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":240,"end_line":240,"start":11872,"end":11887,"source":"earlier.closure","value":{"kind":"source-expression","source":"earlier.closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: earlier.closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: takes source order rather than the lowest exact rule in the sheet.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:246:inline-api-or-fixture-input:37","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":246,"end_line":251,"start":12209,"end":12497,"source":"fixture(\n 'subject-specificity',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' main#editor {\\n font-size: 14px;\\n }`\\n}\\n'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":246,"end_line":251,"start":12209,"end":12497},"binding":"fixture","resolution":[],"enclosing_case":{"line":243,"title":"cannot rank a higher-specificity subject rule, and says so rather than passing"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot rank a higher-specificity subject rule, and says so rather than passing.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":247,"end_line":247,"start":12224,"end":12245,"source":"'subject-specificity'","value":{"kind":"string","value":"subject-specificity"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'subject-specificity'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot rank a higher-specificity subject rule, and says so rather than passing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":248,"end_line":248,"start":12253,"end":12331,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot rank a higher-specificity subject rule, and says so rather than passing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":249,"end_line":250,"start":12339,"end":12491,"source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' main#editor {\\n font-size: 14px;\\n }`\\n}\\n'","value":{"kind":"source-expression","source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' main#editor {\\n font-size: 14px;\\n }`\\n}\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' + ' main#editor {\\n font-size: 14px;\\n. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot rank a higher-specificity subject rule, and says so rather than passing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:252:inline-api-or-fixture-input:38","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":252,"end_line":252,"start":12509,"end":12552,"source":"unresolvedEditableHostStyles(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":252,"end_line":252,"start":12509,"end":12552},"binding":"unresolvedEditableHostStyles","resolution":[],"enclosing_case":{"line":243,"title":"cannot rank a higher-specificity subject rule, and says so rather than passing"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot rank a higher-specificity subject rule, and says so rather than passing.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":252,"end_line":252,"start":12538,"end":12542,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot rank a higher-specificity subject rule, and says so rather than passing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":252,"end_line":252,"start":12544,"end":12551,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot rank a higher-specificity subject rule, and says so rather than passing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:254:inline-api-or-fixture-input:39","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":254,"end_line":254,"start":12681,"end":12725,"source":"editableHostFontSizeOffenders(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":254,"end_line":254,"start":12681,"end":12725},"binding":"editableHostFontSizeOffenders","resolution":[],"enclosing_case":{"line":243,"title":"cannot rank a higher-specificity subject rule, and says so rather than passing"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot rank a higher-specificity subject rule, and says so rather than passing.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":254,"end_line":254,"start":12711,"end":12715,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot rank a higher-specificity subject rule, and says so rather than passing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":254,"end_line":254,"start":12717,"end":12724,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: cannot rank a higher-specificity subject rule, and says so rather than passing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:258:inline-api-or-fixture-input:40","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":258,"end_line":263,"start":12877,"end":13165,"source":"fixture(\n 'subject-in-list',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' h1, main#editor {\\n font-size: 14px;\\n }`\\n}\\n'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":258,"end_line":263,"start":12877,"end":13165},"binding":"fixture","resolution":[],"enclosing_case":{"line":257,"title":"splits a selector list, so a host riding in one still reaches the verdict"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: splits a selector list, so a host riding in one still reaches the verdict.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":259,"end_line":259,"start":12892,"end":12909,"source":"'subject-in-list'","value":{"kind":"string","value":"subject-in-list"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'subject-in-list'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: splits a selector list, so a host riding in one still reaches the verdict.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":260,"end_line":260,"start":12917,"end":12995,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: splits a selector list, so a host riding in one still reaches the verdict.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":261,"end_line":262,"start":13003,"end":13159,"source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' h1, main#editor {\\n font-size: 14px;\\n }`\\n}\\n'","value":{"kind":"source-expression","source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' h1, main#editor {\\n font-size: 14px;\\n }`\\n}\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' + ' h1, main#editor {\\n font-size: 14p. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: splits a selector list, so a host riding in one still reaches the verdict.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:264:inline-api-or-fixture-input:41","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":264,"end_line":264,"start":13177,"end":13220,"source":"unresolvedEditableHostStyles(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":264,"end_line":264,"start":13177,"end":13220},"binding":"unresolvedEditableHostStyles","resolution":[],"enclosing_case":{"line":257,"title":"splits a selector list, so a host riding in one still reaches the verdict"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: splits a selector list, so a host riding in one still reaches the verdict.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":264,"end_line":264,"start":13206,"end":13210,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: splits a selector list, so a host riding in one still reaches the verdict.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":264,"end_line":264,"start":13212,"end":13219,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: splits a selector list, so a host riding in one still reaches the verdict.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:270:inline-api-or-fixture-input:42","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":270,"end_line":275,"start":13564,"end":13847,"source":"fixture(\n 'neighbour-id',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' #editor-notes {\\n font-size: 14px;\\n }`\\n}\\n'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":270,"end_line":275,"start":13564,"end":13847},"binding":"fixture","resolution":[],"enclosing_case":{"line":267,"title":"reads the host\u2019s own id, not a longer one that starts with it"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the host\u2019s own id, not a longer one that starts with it.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":271,"end_line":271,"start":13579,"end":13593,"source":"'neighbour-id'","value":{"kind":"string","value":"neighbour-id"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'neighbour-id'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the host\u2019s own id, not a longer one that starts with it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":272,"end_line":272,"start":13601,"end":13679,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the host\u2019s own id, not a longer one that starts with it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":273,"end_line":274,"start":13687,"end":13841,"source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' #editor-notes {\\n font-size: 14px;\\n }`\\n}\\n'","value":{"kind":"source-expression","source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' #editor-notes {\\n font-size: 14px;\\n }`\\n}\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' + ' #editor-notes {\\n font-size: 14px;. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the host\u2019s own id, not a longer one that starts with it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:276:inline-api-or-fixture-input:43","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":276,"end_line":276,"start":13859,"end":13902,"source":"unresolvedEditableHostStyles(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":276,"end_line":276,"start":13859,"end":13902},"binding":"unresolvedEditableHostStyles","resolution":[],"enclosing_case":{"line":267,"title":"reads the host\u2019s own id, not a longer one that starts with it"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the host\u2019s own id, not a longer one that starts with it.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":276,"end_line":276,"start":13888,"end":13892,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the host\u2019s own id, not a longer one that starts with it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":276,"end_line":276,"start":13894,"end":13901,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the host\u2019s own id, not a longer one that starts with it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:277:inline-api-or-fixture-input:44","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":277,"end_line":277,"start":13927,"end":13971,"source":"editableHostFontSizeOffenders(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":277,"end_line":277,"start":13927,"end":13971},"binding":"editableHostFontSizeOffenders","resolution":[],"enclosing_case":{"line":267,"title":"reads the host\u2019s own id, not a longer one that starts with it"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the host\u2019s own id, not a longer one that starts with it.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":277,"end_line":277,"start":13957,"end":13961,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the host\u2019s own id, not a longer one that starts with it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":277,"end_line":277,"start":13963,"end":13970,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: reads the host\u2019s own id, not a longer one that starts with it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:283:inline-api-or-fixture-input:45","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":283,"end_line":289,"start":14305,"end":14652,"source":"fixture(\n 'not-the-host',\n 'export const MARKUP = \\'\\'\\n',\n 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' #editor::before {\\n font-size: 12px;\\n }\\n' +\n ' #editor p {\\n font-size: 0.9em;\\n }`\\n}\\n'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":283,"end_line":289,"start":14305,"end":14652},"binding":"fixture","resolution":[],"enclosing_case":{"line":280,"title":"leaves a descendant rule and a pseudo-element rule out of the way"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: leaves a descendant rule and a pseudo-element rule out of the way.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":284,"end_line":284,"start":14320,"end":14334,"source":"'not-the-host'","value":{"kind":"string","value":"not-the-host"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'not-the-host'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: leaves a descendant rule and a pseudo-element rule out of the way.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":285,"end_line":285,"start":14342,"end":14420,"source":"'export const MARKUP = \\'\\'\\n'","value":{"kind":"string","value":"export const MARKUP = ''\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export const MARKUP = \\'\\'\\n'. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: leaves a descendant rule and a pseudo-element rule out of the way.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":286,"end_line":288,"start":14428,"end":14646,"source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' #editor::before {\\n font-size: 12px;\\n }\\n' +\n ' #editor p {\\n font-size: 0.9em;\\n }`\\n}\\n'","value":{"kind":"source-expression","source":"'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' +\n ' #editor::before {\\n font-size: 12px;\\n }\\n' +\n ' #editor p {\\n font-size: 0.9em;\\n }`\\n}\\n'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function style() {\\n return ` #editor {\\n font-size: 18px;\\n }\\n' + ' #editor::before {\\n font-size: 12p. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: leaves a descendant rule and a pseudo-element rule out of the way.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:290:inline-api-or-fixture-input:46","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":290,"end_line":290,"start":14664,"end":14707,"source":"unresolvedEditableHostStyles(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":290,"end_line":290,"start":14664,"end":14707},"binding":"unresolvedEditableHostStyles","resolution":[],"enclosing_case":{"line":280,"title":"leaves a descendant rule and a pseudo-element rule out of the way"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: leaves a descendant rule and a pseudo-element rule out of the way.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":290,"end_line":290,"start":14693,"end":14697,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: leaves a descendant rule and a pseudo-element rule out of the way.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":290,"end_line":290,"start":14699,"end":14706,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: leaves a descendant rule and a pseudo-element rule out of the way.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}},{"id":"19:291:inline-api-or-fixture-input:47","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":291,"end_line":291,"start":14732,"end":14776,"source":"editableHostFontSizeOffenders(root, closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":291,"end_line":291,"start":14732,"end":14776},"binding":"editableHostFontSizeOffenders","resolution":[],"enclosing_case":{"line":280,"title":"leaves a descendant rule and a pseudo-element rule out of the way"},"affected_case_lines":[],"decision":"keep","reason":"The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: leaves a descendant rule and a pseudo-element rule out of the way.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":291,"end_line":291,"start":14762,"end":14766,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":38,"end_line":38,"start":1593,"end":1615},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"fixtureDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":34,"end_line":34,"start":1433,"end":1437},"resolved":{"kind":"null","value":null}},{"kind":"source-expression","source":"name"}],"source":"join(fixtureDir, name)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: leaves a descendant rule and a pseudo-element rule out of the way.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","line":291,"end_line":291,"start":14768,"end":14775,"source":"closure","value":{"kind":"source-expression","source":"closure"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real editable-host CSS scanner runs an independent markup/style fixture and expects an exact host, offender or unresolved location for this distinct cascade/discovery boundary. Scenario: leaves a descendant rule and a pseudo-element rule out of the way.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636"}}],"original_review_sha256":"29618eb842811e87487e8e5672bf488ff8a774e7d78c5d08b677e454a76dbcea","reviewer":"audit_config","reviewed_sha256":"ff0d622d7e5af8c3444c642663a6098e66ba50bddd82d5a95e6cfdb2e70ce636","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","final_declarations":17,"current_controls":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.test.mjs","each":[],"for_of":[],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[{"original_line":71,"title":"finds the editor the TextInput census cannot see","decision":"fix","change":"Use containment for the known actual editor host instead of copying an exact singleton production host inventory; unresolved/offender census still judges all discovered hosts."}],"manual_implementation_notes":[],"evidence":["config/scripts/mobile-web-app/platform-seams/mobile-web-app-editable-host-font-size.mjs"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489","declarations":20,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":20,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489","cases":[{"line":15,"title":"reads %s as %s","decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads %s as %s.","explicit_input_controls":[{"control_id":"20:15:parameter-table:1","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":15,"source":"[\n [\"import { Linking } from 'react-native'\", true],\n ['import { Linking } from \"react-native\"', true],\n [\"import * as RN from 'react-native'\\nRN.Linking.openURL(u)\", true],\n ['import * as RN from \"react-native\"\\nRN.Linking.openURL(u)', true],\n [\"import { View } from 'react-native'\", false],\n ['import { View } from \"react-native\"', false]\n ]","rows":[{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":16,"end_line":16,"start":482,"end":530,"source":"[\"import { Linking } from 'react-native'\", true]","value":{"kind":"array","value":[{"kind":"string","value":"import { Linking } from 'react-native'"},{"kind":"boolean","value":true}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [\"import { Linking } from 'react-native'\", true]. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads %s as %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":17,"end_line":17,"start":536,"end":584,"source":"['import { Linking } from \"react-native\"', true]","value":{"kind":"array","value":[{"kind":"string","value":"import { Linking } from \"react-native\""},{"kind":"boolean","value":true}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['import { Linking } from \"react-native\"', true]. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads %s as %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":18,"end_line":18,"start":590,"end":657,"source":"[\"import * as RN from 'react-native'\\nRN.Linking.openURL(u)\", true]","value":{"kind":"array","value":[{"kind":"string","value":"import * as RN from 'react-native'\nRN.Linking.openURL(u)"},{"kind":"boolean","value":true}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [\"import * as RN from 'react-native'\\nRN.Linking.openURL(u)\", true]. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads %s as %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":19,"end_line":19,"start":663,"end":730,"source":"['import * as RN from \"react-native\"\\nRN.Linking.openURL(u)', true]","value":{"kind":"array","value":[{"kind":"string","value":"import * as RN from \"react-native\"\nRN.Linking.openURL(u)"},{"kind":"boolean","value":true}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['import * as RN from \"react-native\"\\nRN.Linking.openURL(u)', true]. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads %s as %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":20,"end_line":20,"start":736,"end":782,"source":"[\"import { View } from 'react-native'\", false]","value":{"kind":"array","value":[{"kind":"string","value":"import { View } from 'react-native'"},{"kind":"boolean","value":false}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [\"import { View } from 'react-native'\", false]. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads %s as %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":21,"end_line":21,"start":788,"end":834,"source":"['import { View } from \"react-native\"', false]","value":{"kind":"array","value":[{"kind":"string","value":"import { View } from \"react-native\""},{"kind":"boolean","value":false}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['import { View } from \"react-native\"', false]. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads %s as %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads %s as %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"20:23:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":23,"source":"reachesReactNativeLinking(source)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":23,"end_line":23,"start":919,"end":925,"source":"source","value":{"kind":"source-expression","source":"source"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: source. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads %s as %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads %s as %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":15,"title":"reads %s as %s","start":468,"end":947},"implementation_status":"retained"},{"line":28,"title":"reports the import line, which is what a red census is read for","decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reports the import line, which is what a red census is read for.","explicit_input_controls":[{"control_id":"20:30:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":30,"source":"reactNativeLinkingSites(\n \"import { View } from 'react-native'\\n\\nimport {\\n Linking\\n} from 'react-native'\\n\"\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":31,"end_line":31,"start":1158,"end":1243,"source":"\"import { View } from 'react-native'\\n\\nimport {\\n Linking\\n} from 'react-native'\\n\"","value":{"kind":"string","value":"import { View } from 'react-native'\n\nimport {\n Linking\n} from 'react-native'\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import { View } from 'react-native'\\n\\nimport {\\n Linking\\n} from 'react-native'\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reports the import line, which is what a red census is read for.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reports the import line, which is what a red census is read for.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":28,"title":"reports the import line, which is what a red census is read for","start":1029,"end":1275},"implementation_status":"retained"},{"line":36,"title":"reports every line a namespace import is used on, not just the import","decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reports every line a namespace import is used on, not just the import.","explicit_input_controls":[{"control_id":"20:38:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":38,"source":"reactNativeLinkingSites(\n \"import * as RN from 'react-native'\\nRN.Linking.openURL(a)\\nconst b = 1\\nRN.Linking.openURL(c)\\n\"\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":39,"end_line":39,"start":1414,"end":1511,"source":"\"import * as RN from 'react-native'\\nRN.Linking.openURL(a)\\nconst b = 1\\nRN.Linking.openURL(c)\\n\"","value":{"kind":"string","value":"import * as RN from 'react-native'\nRN.Linking.openURL(a)\nconst b = 1\nRN.Linking.openURL(c)\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import * as RN from 'react-native'\\nRN.Linking.openURL(a)\\nconst b = 1\\nRN.Linking.openURL(c)\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reports every line a namespace import is used on, not just the import.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reports every line a namespace import is used on, not just the import.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":36,"title":"reports every line a namespace import is used on, not just the import","start":1279,"end":1546},"implementation_status":"retained"},{"line":44,"title":"inspects every alias, not just the first namespace import","decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: inspects every alias, not just the first namespace import.","explicit_input_controls":[{"control_id":"20:48:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":48,"source":"reactNativeLinkingSites(\n \"import * as Unused from 'react-native'\\nimport * as RN from 'react-native'\\nRN.Linking.openURL(u)\\n\"\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":49,"end_line":49,"start":1854,"end":1955,"source":"\"import * as Unused from 'react-native'\\nimport * as RN from 'react-native'\\nRN.Linking.openURL(u)\\n\"","value":{"kind":"string","value":"import * as Unused from 'react-native'\nimport * as RN from 'react-native'\nRN.Linking.openURL(u)\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import * as Unused from 'react-native'\\nimport * as RN from 'react-native'\\nRN.Linking.openURL(u)\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: inspects every alias, not just the first namespace import.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: inspects every alias, not just the first namespace import.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":44,"title":"inspects every alias, not just the first namespace import","start":1550,"end":1987},"implementation_status":"retained"},{"line":54,"title":"counts a line once when two aliases meet on it","decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: counts a line once when two aliases meet on it.","explicit_input_controls":[{"control_id":"20:56:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":56,"source":"reactNativeLinkingSites(\n \"import * as A from 'react-native'\\nimport * as B from 'react-native'\\nA.Linking.openURL(B.Linking)\\n\"\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":57,"end_line":57,"start":2103,"end":2205,"source":"\"import * as A from 'react-native'\\nimport * as B from 'react-native'\\nA.Linking.openURL(B.Linking)\\n\"","value":{"kind":"string","value":"import * as A from 'react-native'\nimport * as B from 'react-native'\nA.Linking.openURL(B.Linking)\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import * as A from 'react-native'\\nimport * as B from 'react-native'\\nA.Linking.openURL(B.Linking)\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: counts a line once when two aliases meet on it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: counts a line once when two aliases meet on it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":54,"title":"counts a line once when two aliases meet on it","start":1991,"end":2237},"implementation_status":"retained"},{"line":62,"title":"names an import that renames Linking, which reading the binding alone missed","decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names an import that renames Linking, which reading the binding alone missed.","explicit_input_controls":[{"control_id":"20:67:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":67,"source":"reactNativeLinkingSites(\n \"import { Linking as NativeLinking } from 'react-native'\\nNativeLinking.openURL(u)\\n\"\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":68,"end_line":68,"start":2668,"end":2753,"source":"\"import { Linking as NativeLinking } from 'react-native'\\nNativeLinking.openURL(u)\\n\"","value":{"kind":"string","value":"import { Linking as NativeLinking } from 'react-native'\nNativeLinking.openURL(u)\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import { Linking as NativeLinking } from 'react-native'\\nNativeLinking.openURL(u)\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names an import that renames Linking, which reading the binding alone missed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names an import that renames Linking, which reading the binding alone missed.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":62,"title":"names an import that renames Linking, which reading the binding alone missed","start":2241,"end":2785},"implementation_status":"retained"},{"line":73,"title":"leaves alone a local binding that is only spelled Linking","decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone a local binding that is only spelled Linking.","explicit_input_controls":[{"control_id":"20:77:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":77,"source":"reactNativeLinkingSites(\"import { View as Linking } from 'react-native'\\nLinking.foo()\\n\")","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":77,"end_line":77,"start":3058,"end":3123,"source":"\"import { View as Linking } from 'react-native'\\nLinking.foo()\\n\"","value":{"kind":"string","value":"import { View as Linking } from 'react-native'\nLinking.foo()\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import { View as Linking } from 'react-native'\\nLinking.foo()\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone a local binding that is only spelled Linking.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone a local binding that is only spelled Linking.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":73,"title":"leaves alone a local binding that is only spelled Linking","start":2789,"end":3147},"implementation_status":"retained"},{"line":81,"title":"reads a default import as the namespace it is, which the interop here allows","decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads a default import as the namespace it is, which the interop here allows.","explicit_input_controls":[{"control_id":"20:85:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":85,"source":"reactNativeLinkingSites(\"import RN from 'react-native'\\nRN.Linking.openURL(u)\\n\")","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":85,"end_line":85,"start":3474,"end":3530,"source":"\"import RN from 'react-native'\\nRN.Linking.openURL(u)\\n\"","value":{"kind":"string","value":"import RN from 'react-native'\nRN.Linking.openURL(u)\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import RN from 'react-native'\\nRN.Linking.openURL(u)\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads a default import as the namespace it is, which the interop here allows.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads a default import as the namespace it is, which the interop here allows.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":81,"title":"reads a default import as the namespace it is, which the interop here allows","start":3151,"end":3555},"implementation_status":"retained"},{"line":89,"title":"leaves alone an alias that is imported and never reaches Linking","decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone an alias that is imported and never reaches Linking.","explicit_input_controls":[{"control_id":"20:91:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":91,"source":"reactNativeLinkingSites(\"import * as RN from 'react-native'\\nRN.Platform.OS\\n\")","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":91,"end_line":91,"start":3760,"end":3814,"source":"\"import * as RN from 'react-native'\\nRN.Platform.OS\\n\"","value":{"kind":"string","value":"import * as RN from 'react-native'\nRN.Platform.OS\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import * as RN from 'react-native'\\nRN.Platform.OS\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone an alias that is imported and never reaches Linking.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone an alias that is imported and never reaches Linking.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":89,"title":"leaves alone an alias that is imported and never reaches Linking","start":3559,"end":3845},"implementation_status":"retained"},{"line":96,"title":"parses a .ts module as TypeScript, where a generic arrow is not an unclosed tag","decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: parses a .ts module as TypeScript, where a generic arrow is not an unclosed tag.","explicit_input_controls":[{"control_id":"20:101:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":101,"source":"reactNativeLinkingSites(\n \"import * as RN from 'react-native'\\nconst id = (value: T) => value\\nRN.Linking.openURL(u)\\n\",\n 'module.ts'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":102,"end_line":102,"start":4268,"end":4364,"source":"\"import * as RN from 'react-native'\\nconst id = (value: T) => value\\nRN.Linking.openURL(u)\\n\"","value":{"kind":"string","value":"import * as RN from 'react-native'\nconst id = (value: T) => value\nRN.Linking.openURL(u)\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import * as RN from 'react-native'\\nconst id = (value: T) => value\\nRN.Linking.openURL(u)\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: parses a .ts module as TypeScript, where a generic arrow is not an unclosed tag.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":103,"end_line":103,"start":4374,"end":4385,"source":"'module.ts'","value":{"kind":"string","value":"module.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'module.ts'. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: parses a .ts module as TypeScript, where a generic arrow is not an unclosed tag.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: parses a .ts module as TypeScript, where a generic arrow is not an unclosed tag.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":96,"title":"parses a .ts module as TypeScript, where a generic arrow is not an unclosed tag","start":3849,"end":4417},"implementation_status":"retained"},{"line":108,"title":"names %# : %s","decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names %# : %s.","explicit_input_controls":[{"control_id":"20:108:parameter-table:12","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":108,"source":"[\n [\"export { Linking } from 'react-native'\\n\", 'a named re-export'],\n [\"export { Linking as L } from 'react-native'\\n\", 'a renamed re-export'],\n [\"export * from 'react-native'\\n\", 'a wildcard re-export, which carries it with the rest'],\n [\"export * as RN from 'react-native'\\n\", 'a namespace re-export']\n ]","rows":[{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":109,"end_line":109,"start":4435,"end":4500,"source":"[\"export { Linking } from 'react-native'\\n\", 'a named re-export']","value":{"kind":"array","value":[{"kind":"string","value":"export { Linking } from 'react-native'\n"},{"kind":"string","value":"a named re-export"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [\"export { Linking } from 'react-native'\\n\", 'a named re-export']. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names %# : %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":110,"end_line":110,"start":4506,"end":4578,"source":"[\"export { Linking as L } from 'react-native'\\n\", 'a renamed re-export']","value":{"kind":"array","value":[{"kind":"string","value":"export { Linking as L } from 'react-native'\n"},{"kind":"string","value":"a renamed re-export"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [\"export { Linking as L } from 'react-native'\\n\", 'a renamed re-export']. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names %# : %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":111,"end_line":111,"start":4584,"end":4674,"source":"[\"export * from 'react-native'\\n\", 'a wildcard re-export, which carries it with the rest']","value":{"kind":"array","value":[{"kind":"string","value":"export * from 'react-native'\n"},{"kind":"string","value":"a wildcard re-export, which carries it with the rest"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [\"export * from 'react-native'\\n\", 'a wildcard re-export, which carries it with the rest']. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names %# : %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":112,"end_line":112,"start":4680,"end":4745,"source":"[\"export * as RN from 'react-native'\\n\", 'a namespace re-export']","value":{"kind":"array","value":[{"kind":"string","value":"export * as RN from 'react-native'\n"},{"kind":"string","value":"a namespace re-export"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [\"export * as RN from 'react-native'\\n\", 'a namespace re-export']. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names %# : %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names %# : %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"20:117:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":117,"source":"reactNativeLinkingSites(source, 'module.ts')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":117,"end_line":117,"start":5054,"end":5060,"source":"source","value":{"kind":"source-expression","source":"source"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: source. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names %# : %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":117,"end_line":117,"start":5062,"end":5073,"source":"'module.ts'","value":{"kind":"string","value":"module.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'module.ts'. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names %# : %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names %# : %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":108,"title":"names %# : %s","start":4421,"end":5093},"implementation_status":"retained"},{"line":120,"title":"leaves alone a module that %# : %s","decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone a module that %# : %s.","explicit_input_controls":[{"control_id":"20:120:parameter-table:14","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":120,"source":"[\n [\"export { View } from 'react-native'\\n\", 're-exports something else'],\n [\n \"export { Linking } from './local'\\n\",\n 're-exports the name from somewhere that is not react-native'\n ]\n ]","rows":[{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":121,"end_line":121,"start":5111,"end":5181,"source":"[\"export { View } from 'react-native'\\n\", 're-exports something else']","value":{"kind":"array","value":[{"kind":"string","value":"export { View } from 'react-native'\n"},{"kind":"string","value":"re-exports something else"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [\"export { View } from 'react-native'\\n\", 're-exports something else']. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone a module that %# : %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":122,"end_line":125,"start":5187,"end":5307,"source":"[\n \"export { Linking } from './local'\\n\",\n 're-exports the name from somewhere that is not react-native'\n ]","value":{"kind":"array","value":[{"kind":"string","value":"export { Linking } from './local'\n"},{"kind":"string","value":"re-exports the name from somewhere that is not react-native"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ \"export { Linking } from './local'\\n\", 're-exports the name from somewhere that is not react-native' ]. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone a module that %# : %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone a module that %# : %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"20:127:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":127,"source":"reactNativeLinkingSites(source, 'module.ts')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":127,"end_line":127,"start":5400,"end":5406,"source":"source","value":{"kind":"source-expression","source":"source"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: source. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone a module that %# : %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":127,"end_line":127,"start":5408,"end":5419,"source":"'module.ts'","value":{"kind":"string","value":"module.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'module.ts'. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone a module that %# : %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone a module that %# : %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":120,"title":"leaves alone a module that %# : %s","start":5097,"end":5438},"implementation_status":"retained"},{"line":130,"title":"ignores the name inside a comment, which text matching cannot","decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores the name inside a comment, which text matching cannot.","explicit_input_controls":[{"control_id":"20:134:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":134,"source":"reactNativeLinkingSites(\n \"import * as RN from 'react-native'\\n// never call RN.Linking.openURL here\\n/* nor RN.Linking */\\n\"\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":135,"end_line":135,"start":5726,"end":5825,"source":"\"import * as RN from 'react-native'\\n// never call RN.Linking.openURL here\\n/* nor RN.Linking */\\n\"","value":{"kind":"string","value":"import * as RN from 'react-native'\n// never call RN.Linking.openURL here\n/* nor RN.Linking */\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import * as RN from 'react-native'\\n// never call RN.Linking.openURL here\\n/* nor RN.Linking */\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores the name inside a comment, which text matching cannot.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores the name inside a comment, which text matching cannot.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":130,"title":"ignores the name inside a comment, which text matching cannot","start":5442,"end":5856},"implementation_status":"retained"},{"line":140,"title":"ignores the name inside a string, and still sees the call beside it","decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores the name inside a string, and still sees the call beside it.","explicit_input_controls":[{"control_id":"20:142:inline-api-or-fixture-input:17","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":142,"source":"reactNativeLinkingSites(\n \"import * as RN from 'react-native'\\nconst hint = 'use RN.Linking.openURL'\\nRN.Linking.openURL(u)\\n\"\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":143,"end_line":143,"start":5993,"end":6093,"source":"\"import * as RN from 'react-native'\\nconst hint = 'use RN.Linking.openURL'\\nRN.Linking.openURL(u)\\n\"","value":{"kind":"string","value":"import * as RN from 'react-native'\nconst hint = 'use RN.Linking.openURL'\nRN.Linking.openURL(u)\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import * as RN from 'react-native'\\nconst hint = 'use RN.Linking.openURL'\\nRN.Linking.openURL(u)\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores the name inside a string, and still sees the call beside it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores the name inside a string, and still sees the call beside it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":140,"title":"ignores the name inside a string, and still sees the call beside it","start":5860,"end":6125},"implementation_status":"retained"},{"line":148,"title":"ignores a commented-out named import, which was the same class of miss","decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores a commented-out named import, which was the same class of miss.","explicit_input_controls":[{"control_id":"20:149:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":149,"source":"reactNativeLinkingSites(\"// import { Linking } from 'react-native'\\n\")","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":149,"end_line":149,"start":6249,"end":6294,"source":"\"// import { Linking } from 'react-native'\\n\"","value":{"kind":"string","value":"// import { Linking } from 'react-native'\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"// import { Linking } from 'react-native'\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores a commented-out named import, which was the same class of miss.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores a commented-out named import, which was the same class of miss.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":148,"title":"ignores a commented-out named import, which was the same class of miss","start":6129,"end":6313},"implementation_status":"retained"},{"line":152,"title":"finds nothing in a module that only names the seam","decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: finds nothing in a module that only names the seam.","explicit_input_controls":[{"control_id":"20:154:inline-api-or-fixture-input:19","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":154,"source":"reactNativeLinkingSites(\"import { openExternalLink } from '../platform/external-link'\")","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":154,"end_line":154,"start":6424,"end":6486,"source":"\"import { openExternalLink } from '../platform/external-link'\"","value":{"kind":"string","value":"import { openExternalLink } from '../platform/external-link'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import { openExternalLink } from '../platform/external-link'\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: finds nothing in a module that only names the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: finds nothing in a module that only names the seam.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":152,"title":"finds nothing in a module that only names the seam","start":6317,"end":6510},"implementation_status":"retained"},{"line":164,"title":"exempts the seam and names the module that went around it","decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: exempts the seam and names the module that went around it.","explicit_input_controls":[{"control_id":"20:165:inline-api-or-fixture-input:21","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":165,"source":"externalLinkOffenders(mobileDir, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":165,"end_line":165,"start":6954,"end":6963,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":12,"end_line":12,"start":363,"end":425},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../../mobile/', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../../mobile/', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: exempts the seam and names the module that went around it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":165,"end_line":165,"start":6965,"end":6972,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":162,"end_line":162,"start":6764,"end":6845},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/platform/external-link.web.ts"},{"kind":"string","value":"src/platform/external-link.ts"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: exempts the seam and names the module that went around it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: exempts the seam and names the module that went around it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":164,"title":"exempts the seam and names the module that went around it","start":6849,"end":7024},"implementation_status":"retained"},{"line":168,"title":"ignores a path this checkout cannot read rather than calling it an offender","decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores a path this checkout cannot read rather than calling it an offender.","explicit_input_controls":[{"control_id":"20:169:inline-api-or-fixture-input:22","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":169,"source":"externalLinkOffenders(mobileDir, { local: ['src/not/a/file.ts'] })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":169,"end_line":169,"start":7151,"end":7160,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":12,"end_line":12,"start":363,"end":425},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../../mobile/', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../../mobile/', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores a path this checkout cannot read rather than calling it an offender.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":169,"end_line":169,"start":7162,"end":7194,"source":"{ local: ['src/not/a/file.ts'] }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/not/a/file.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: ['src/not/a/file.ts'] }. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores a path this checkout cannot read rather than calling it an offender.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores a path this checkout cannot read rather than calling it an offender.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":168,"title":"ignores a path this checkout cannot read rather than calling it an offender","start":7028,"end":7213},"implementation_status":"retained"},{"line":186,"title":"puts line 2 before line 10, which sorting the rendered strings does not","decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: puts line 2 before line 10, which sorting the rendered strings does not.","explicit_input_controls":[{"control_id":"20:188:inline-api-or-fixture-input:24","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":188,"source":"externalLinkOffenders(root, { local: ['wide.ts'] })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":188,"end_line":188,"start":8119,"end":8123,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":177,"end_line":177,"start":7533,"end":7581},"resolved":{"kind":"call-source","callee":"mkdtempSync","arguments":[{"kind":"call-source","callee":"join","arguments":[{"kind":"call-source","callee":"tmpdir","arguments":[],"source":"tmpdir()"},{"kind":"string","value":"orca-seam-census-"}],"source":"join(tmpdir(), 'orca-seam-census-')"}],"source":"mkdtempSync(join(tmpdir(), 'orca-seam-census-'))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: puts line 2 before line 10, which sorting the rendered strings does not.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":188,"end_line":188,"start":8125,"end":8147,"source":"{ local: ['wide.ts'] }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"wide.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: ['wide.ts'] }. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: puts line 2 before line 10, which sorting the rendered strings does not.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: puts line 2 before line 10, which sorting the rendered strings does not.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":186,"title":"puts line 2 before line 10, which sorting the rendered strings does not","start":7903,"end":8191},"implementation_status":"retained"},{"line":191,"title":"orders by path first, so two modules never interleave","decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: orders by path first, so two modules never interleave.","explicit_input_controls":[{"control_id":"20:192:inline-api-or-fixture-input:25","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":192,"source":"externalLinkOffenders(root, { local: ['wide.ts', 'above.ts'] })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":192,"end_line":192,"start":8296,"end":8300,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":177,"end_line":177,"start":7533,"end":7581},"resolved":{"kind":"call-source","callee":"mkdtempSync","arguments":[{"kind":"call-source","callee":"join","arguments":[{"kind":"call-source","callee":"tmpdir","arguments":[],"source":"tmpdir()"},{"kind":"string","value":"orca-seam-census-"}],"source":"join(tmpdir(), 'orca-seam-census-')"}],"source":"mkdtempSync(join(tmpdir(), 'orca-seam-census-'))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: orders by path first, so two modules never interleave.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":192,"end_line":192,"start":8302,"end":8336,"source":"{ local: ['wide.ts', 'above.ts'] }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"wide.ts"},{"kind":"string","value":"above.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: ['wide.ts', 'above.ts'] }. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: orders by path first, so two modules never interleave.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: orders by path first, so two modules never interleave.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":191,"title":"orders by path first, so two modules never interleave","start":8195,"end":8418},"implementation_status":"retained"}],"lines":199,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control.","planned_changes":[],"production_evidence":["config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.mjs"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"20:15:parameter-table:1","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":15,"end_line":24,"start":468,"end":947,"source":"[\n [\"import { Linking } from 'react-native'\", true],\n ['import { Linking } from \"react-native\"', true],\n [\"import * as RN from 'react-native'\\nRN.Linking.openURL(u)\", true],\n ['import * as RN from \"react-native\"\\nRN.Linking.openURL(u)', true],\n [\"import { View } from 'react-native'\", false],\n ['import { View } from \"react-native\"', false]\n ]","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":15,"end_line":22,"start":476,"end":838},"binding":"it.each","resolution":[],"enclosing_case":{"line":15,"title":"reads %s as %s"},"affected_case_lines":[15],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads %s as %s.","rows":[{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":16,"end_line":16,"start":482,"end":530,"source":"[\"import { Linking } from 'react-native'\", true]","value":{"kind":"array","value":[{"kind":"string","value":"import { Linking } from 'react-native'"},{"kind":"boolean","value":true}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [\"import { Linking } from 'react-native'\", true]. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads %s as %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":17,"end_line":17,"start":536,"end":584,"source":"['import { Linking } from \"react-native\"', true]","value":{"kind":"array","value":[{"kind":"string","value":"import { Linking } from \"react-native\""},{"kind":"boolean","value":true}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['import { Linking } from \"react-native\"', true]. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads %s as %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":18,"end_line":18,"start":590,"end":657,"source":"[\"import * as RN from 'react-native'\\nRN.Linking.openURL(u)\", true]","value":{"kind":"array","value":[{"kind":"string","value":"import * as RN from 'react-native'\nRN.Linking.openURL(u)"},{"kind":"boolean","value":true}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [\"import * as RN from 'react-native'\\nRN.Linking.openURL(u)\", true]. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads %s as %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":19,"end_line":19,"start":663,"end":730,"source":"['import * as RN from \"react-native\"\\nRN.Linking.openURL(u)', true]","value":{"kind":"array","value":[{"kind":"string","value":"import * as RN from \"react-native\"\nRN.Linking.openURL(u)"},{"kind":"boolean","value":true}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['import * as RN from \"react-native\"\\nRN.Linking.openURL(u)', true]. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads %s as %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":20,"end_line":20,"start":736,"end":782,"source":"[\"import { View } from 'react-native'\", false]","value":{"kind":"array","value":[{"kind":"string","value":"import { View } from 'react-native'"},{"kind":"boolean","value":false}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [\"import { View } from 'react-native'\", false]. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads %s as %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":21,"end_line":21,"start":788,"end":834,"source":"['import { View } from \"react-native\"', false]","value":{"kind":"array","value":[{"kind":"string","value":"import { View } from \"react-native\""},{"kind":"boolean","value":false}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['import { View } from \"react-native\"', false]. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads %s as %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:23:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":23,"end_line":23,"start":893,"end":926,"source":"reachesReactNativeLinking(source)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":23,"end_line":23,"start":893,"end":926},"binding":"reachesReactNativeLinking","resolution":[],"enclosing_case":{"line":15,"title":"reads %s as %s"},"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads %s as %s.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":23,"end_line":23,"start":919,"end":925,"source":"source","value":{"kind":"source-expression","source":"source"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: source. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads %s as %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:30:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":30,"end_line":32,"start":1125,"end":1251,"source":"reactNativeLinkingSites(\n \"import { View } from 'react-native'\\n\\nimport {\\n Linking\\n} from 'react-native'\\n\"\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":30,"end_line":32,"start":1125,"end":1251},"binding":"reactNativeLinkingSites","resolution":[],"enclosing_case":{"line":28,"title":"reports the import line, which is what a red census is read for"},"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reports the import line, which is what a red census is read for.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":31,"end_line":31,"start":1158,"end":1243,"source":"\"import { View } from 'react-native'\\n\\nimport {\\n Linking\\n} from 'react-native'\\n\"","value":{"kind":"string","value":"import { View } from 'react-native'\n\nimport {\n Linking\n} from 'react-native'\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import { View } from 'react-native'\\n\\nimport {\\n Linking\\n} from 'react-native'\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reports the import line, which is what a red census is read for.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:38:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":38,"end_line":40,"start":1381,"end":1519,"source":"reactNativeLinkingSites(\n \"import * as RN from 'react-native'\\nRN.Linking.openURL(a)\\nconst b = 1\\nRN.Linking.openURL(c)\\n\"\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":38,"end_line":40,"start":1381,"end":1519},"binding":"reactNativeLinkingSites","resolution":[],"enclosing_case":{"line":36,"title":"reports every line a namespace import is used on, not just the import"},"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reports every line a namespace import is used on, not just the import.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":39,"end_line":39,"start":1414,"end":1511,"source":"\"import * as RN from 'react-native'\\nRN.Linking.openURL(a)\\nconst b = 1\\nRN.Linking.openURL(c)\\n\"","value":{"kind":"string","value":"import * as RN from 'react-native'\nRN.Linking.openURL(a)\nconst b = 1\nRN.Linking.openURL(c)\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import * as RN from 'react-native'\\nRN.Linking.openURL(a)\\nconst b = 1\\nRN.Linking.openURL(c)\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reports every line a namespace import is used on, not just the import.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:48:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":48,"end_line":50,"start":1821,"end":1963,"source":"reactNativeLinkingSites(\n \"import * as Unused from 'react-native'\\nimport * as RN from 'react-native'\\nRN.Linking.openURL(u)\\n\"\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":48,"end_line":50,"start":1821,"end":1963},"binding":"reactNativeLinkingSites","resolution":[],"enclosing_case":{"line":44,"title":"inspects every alias, not just the first namespace import"},"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: inspects every alias, not just the first namespace import.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":49,"end_line":49,"start":1854,"end":1955,"source":"\"import * as Unused from 'react-native'\\nimport * as RN from 'react-native'\\nRN.Linking.openURL(u)\\n\"","value":{"kind":"string","value":"import * as Unused from 'react-native'\nimport * as RN from 'react-native'\nRN.Linking.openURL(u)\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import * as Unused from 'react-native'\\nimport * as RN from 'react-native'\\nRN.Linking.openURL(u)\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: inspects every alias, not just the first namespace import.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:56:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":56,"end_line":58,"start":2070,"end":2213,"source":"reactNativeLinkingSites(\n \"import * as A from 'react-native'\\nimport * as B from 'react-native'\\nA.Linking.openURL(B.Linking)\\n\"\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":56,"end_line":58,"start":2070,"end":2213},"binding":"reactNativeLinkingSites","resolution":[],"enclosing_case":{"line":54,"title":"counts a line once when two aliases meet on it"},"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: counts a line once when two aliases meet on it.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":57,"end_line":57,"start":2103,"end":2205,"source":"\"import * as A from 'react-native'\\nimport * as B from 'react-native'\\nA.Linking.openURL(B.Linking)\\n\"","value":{"kind":"string","value":"import * as A from 'react-native'\nimport * as B from 'react-native'\nA.Linking.openURL(B.Linking)\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import * as A from 'react-native'\\nimport * as B from 'react-native'\\nA.Linking.openURL(B.Linking)\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: counts a line once when two aliases meet on it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:67:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":67,"end_line":69,"start":2635,"end":2761,"source":"reactNativeLinkingSites(\n \"import { Linking as NativeLinking } from 'react-native'\\nNativeLinking.openURL(u)\\n\"\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":67,"end_line":69,"start":2635,"end":2761},"binding":"reactNativeLinkingSites","resolution":[],"enclosing_case":{"line":62,"title":"names an import that renames Linking, which reading the binding alone missed"},"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names an import that renames Linking, which reading the binding alone missed.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":68,"end_line":68,"start":2668,"end":2753,"source":"\"import { Linking as NativeLinking } from 'react-native'\\nNativeLinking.openURL(u)\\n\"","value":{"kind":"string","value":"import { Linking as NativeLinking } from 'react-native'\nNativeLinking.openURL(u)\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import { Linking as NativeLinking } from 'react-native'\\nNativeLinking.openURL(u)\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names an import that renames Linking, which reading the binding alone missed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:77:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":77,"end_line":77,"start":3034,"end":3124,"source":"reactNativeLinkingSites(\"import { View as Linking } from 'react-native'\\nLinking.foo()\\n\")","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":77,"end_line":77,"start":3034,"end":3124},"binding":"reactNativeLinkingSites","resolution":[],"enclosing_case":{"line":73,"title":"leaves alone a local binding that is only spelled Linking"},"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone a local binding that is only spelled Linking.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":77,"end_line":77,"start":3058,"end":3123,"source":"\"import { View as Linking } from 'react-native'\\nLinking.foo()\\n\"","value":{"kind":"string","value":"import { View as Linking } from 'react-native'\nLinking.foo()\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import { View as Linking } from 'react-native'\\nLinking.foo()\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone a local binding that is only spelled Linking.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:85:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":85,"end_line":85,"start":3450,"end":3531,"source":"reactNativeLinkingSites(\"import RN from 'react-native'\\nRN.Linking.openURL(u)\\n\")","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":85,"end_line":85,"start":3450,"end":3531},"binding":"reactNativeLinkingSites","resolution":[],"enclosing_case":{"line":81,"title":"reads a default import as the namespace it is, which the interop here allows"},"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads a default import as the namespace it is, which the interop here allows.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":85,"end_line":85,"start":3474,"end":3530,"source":"\"import RN from 'react-native'\\nRN.Linking.openURL(u)\\n\"","value":{"kind":"string","value":"import RN from 'react-native'\nRN.Linking.openURL(u)\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import RN from 'react-native'\\nRN.Linking.openURL(u)\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: reads a default import as the namespace it is, which the interop here allows.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:91:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":91,"end_line":91,"start":3736,"end":3815,"source":"reactNativeLinkingSites(\"import * as RN from 'react-native'\\nRN.Platform.OS\\n\")","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":91,"end_line":91,"start":3736,"end":3815},"binding":"reactNativeLinkingSites","resolution":[],"enclosing_case":{"line":89,"title":"leaves alone an alias that is imported and never reaches Linking"},"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone an alias that is imported and never reaches Linking.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":91,"end_line":91,"start":3760,"end":3814,"source":"\"import * as RN from 'react-native'\\nRN.Platform.OS\\n\"","value":{"kind":"string","value":"import * as RN from 'react-native'\nRN.Platform.OS\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import * as RN from 'react-native'\\nRN.Platform.OS\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone an alias that is imported and never reaches Linking.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:101:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":101,"end_line":104,"start":4235,"end":4393,"source":"reactNativeLinkingSites(\n \"import * as RN from 'react-native'\\nconst id = (value: T) => value\\nRN.Linking.openURL(u)\\n\",\n 'module.ts'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":101,"end_line":104,"start":4235,"end":4393},"binding":"reactNativeLinkingSites","resolution":[],"enclosing_case":{"line":96,"title":"parses a .ts module as TypeScript, where a generic arrow is not an unclosed tag"},"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: parses a .ts module as TypeScript, where a generic arrow is not an unclosed tag.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":102,"end_line":102,"start":4268,"end":4364,"source":"\"import * as RN from 'react-native'\\nconst id = (value: T) => value\\nRN.Linking.openURL(u)\\n\"","value":{"kind":"string","value":"import * as RN from 'react-native'\nconst id = (value: T) => value\nRN.Linking.openURL(u)\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import * as RN from 'react-native'\\nconst id = (value: T) => value\\nRN.Linking.openURL(u)\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: parses a .ts module as TypeScript, where a generic arrow is not an unclosed tag.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":103,"end_line":103,"start":4374,"end":4385,"source":"'module.ts'","value":{"kind":"string","value":"module.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'module.ts'. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: parses a .ts module as TypeScript, where a generic arrow is not an unclosed tag.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:108:parameter-table:12","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":108,"end_line":118,"start":4421,"end":5093,"source":"[\n [\"export { Linking } from 'react-native'\\n\", 'a named re-export'],\n [\"export { Linking as L } from 'react-native'\\n\", 'a renamed re-export'],\n [\"export * from 'react-native'\\n\", 'a wildcard re-export, which carries it with the rest'],\n [\"export * as RN from 'react-native'\\n\", 'a namespace re-export']\n ]","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":108,"end_line":113,"start":4429,"end":4749},"binding":"it.each","resolution":[],"enclosing_case":{"line":108,"title":"names %# : %s"},"affected_case_lines":[108],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names %# : %s.","rows":[{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":109,"end_line":109,"start":4435,"end":4500,"source":"[\"export { Linking } from 'react-native'\\n\", 'a named re-export']","value":{"kind":"array","value":[{"kind":"string","value":"export { Linking } from 'react-native'\n"},{"kind":"string","value":"a named re-export"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [\"export { Linking } from 'react-native'\\n\", 'a named re-export']. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names %# : %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":110,"end_line":110,"start":4506,"end":4578,"source":"[\"export { Linking as L } from 'react-native'\\n\", 'a renamed re-export']","value":{"kind":"array","value":[{"kind":"string","value":"export { Linking as L } from 'react-native'\n"},{"kind":"string","value":"a renamed re-export"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [\"export { Linking as L } from 'react-native'\\n\", 'a renamed re-export']. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names %# : %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":111,"end_line":111,"start":4584,"end":4674,"source":"[\"export * from 'react-native'\\n\", 'a wildcard re-export, which carries it with the rest']","value":{"kind":"array","value":[{"kind":"string","value":"export * from 'react-native'\n"},{"kind":"string","value":"a wildcard re-export, which carries it with the rest"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [\"export * from 'react-native'\\n\", 'a wildcard re-export, which carries it with the rest']. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names %# : %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":112,"end_line":112,"start":4680,"end":4745,"source":"[\"export * as RN from 'react-native'\\n\", 'a namespace re-export']","value":{"kind":"array","value":[{"kind":"string","value":"export * as RN from 'react-native'\n"},{"kind":"string","value":"a namespace re-export"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [\"export * as RN from 'react-native'\\n\", 'a namespace re-export']. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names %# : %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:117:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":117,"end_line":117,"start":5030,"end":5074,"source":"reactNativeLinkingSites(source, 'module.ts')","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":117,"end_line":117,"start":5030,"end":5074},"binding":"reactNativeLinkingSites","resolution":[],"enclosing_case":{"line":108,"title":"names %# : %s"},"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names %# : %s.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":117,"end_line":117,"start":5054,"end":5060,"source":"source","value":{"kind":"source-expression","source":"source"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: source. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names %# : %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":117,"end_line":117,"start":5062,"end":5073,"source":"'module.ts'","value":{"kind":"string","value":"module.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'module.ts'. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: names %# : %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:120:parameter-table:14","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":120,"end_line":128,"start":5097,"end":5438,"source":"[\n [\"export { View } from 'react-native'\\n\", 're-exports something else'],\n [\n \"export { Linking } from './local'\\n\",\n 're-exports the name from somewhere that is not react-native'\n ]\n ]","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":120,"end_line":126,"start":5105,"end":5311},"binding":"it.each","resolution":[],"enclosing_case":{"line":120,"title":"leaves alone a module that %# : %s"},"affected_case_lines":[120],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone a module that %# : %s.","rows":[{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":121,"end_line":121,"start":5111,"end":5181,"source":"[\"export { View } from 'react-native'\\n\", 're-exports something else']","value":{"kind":"array","value":[{"kind":"string","value":"export { View } from 'react-native'\n"},{"kind":"string","value":"re-exports something else"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [\"export { View } from 'react-native'\\n\", 're-exports something else']. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone a module that %# : %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":122,"end_line":125,"start":5187,"end":5307,"source":"[\n \"export { Linking } from './local'\\n\",\n 're-exports the name from somewhere that is not react-native'\n ]","value":{"kind":"array","value":[{"kind":"string","value":"export { Linking } from './local'\n"},{"kind":"string","value":"re-exports the name from somewhere that is not react-native"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ \"export { Linking } from './local'\\n\", 're-exports the name from somewhere that is not react-native' ]. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone a module that %# : %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:127:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":127,"end_line":127,"start":5376,"end":5420,"source":"reactNativeLinkingSites(source, 'module.ts')","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":127,"end_line":127,"start":5376,"end":5420},"binding":"reactNativeLinkingSites","resolution":[],"enclosing_case":{"line":120,"title":"leaves alone a module that %# : %s"},"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone a module that %# : %s.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":127,"end_line":127,"start":5400,"end":5406,"source":"source","value":{"kind":"source-expression","source":"source"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: source. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone a module that %# : %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":127,"end_line":127,"start":5408,"end":5419,"source":"'module.ts'","value":{"kind":"string","value":"module.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'module.ts'. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: leaves alone a module that %# : %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:134:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":134,"end_line":136,"start":5693,"end":5833,"source":"reactNativeLinkingSites(\n \"import * as RN from 'react-native'\\n// never call RN.Linking.openURL here\\n/* nor RN.Linking */\\n\"\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":134,"end_line":136,"start":5693,"end":5833},"binding":"reactNativeLinkingSites","resolution":[],"enclosing_case":{"line":130,"title":"ignores the name inside a comment, which text matching cannot"},"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores the name inside a comment, which text matching cannot.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":135,"end_line":135,"start":5726,"end":5825,"source":"\"import * as RN from 'react-native'\\n// never call RN.Linking.openURL here\\n/* nor RN.Linking */\\n\"","value":{"kind":"string","value":"import * as RN from 'react-native'\n// never call RN.Linking.openURL here\n/* nor RN.Linking */\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import * as RN from 'react-native'\\n// never call RN.Linking.openURL here\\n/* nor RN.Linking */\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores the name inside a comment, which text matching cannot.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:142:inline-api-or-fixture-input:17","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":142,"end_line":144,"start":5960,"end":6101,"source":"reactNativeLinkingSites(\n \"import * as RN from 'react-native'\\nconst hint = 'use RN.Linking.openURL'\\nRN.Linking.openURL(u)\\n\"\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":142,"end_line":144,"start":5960,"end":6101},"binding":"reactNativeLinkingSites","resolution":[],"enclosing_case":{"line":140,"title":"ignores the name inside a string, and still sees the call beside it"},"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores the name inside a string, and still sees the call beside it.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":143,"end_line":143,"start":5993,"end":6093,"source":"\"import * as RN from 'react-native'\\nconst hint = 'use RN.Linking.openURL'\\nRN.Linking.openURL(u)\\n\"","value":{"kind":"string","value":"import * as RN from 'react-native'\nconst hint = 'use RN.Linking.openURL'\nRN.Linking.openURL(u)\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import * as RN from 'react-native'\\nconst hint = 'use RN.Linking.openURL'\\nRN.Linking.openURL(u)\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores the name inside a string, and still sees the call beside it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:149:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":149,"end_line":149,"start":6225,"end":6295,"source":"reactNativeLinkingSites(\"// import { Linking } from 'react-native'\\n\")","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":149,"end_line":149,"start":6225,"end":6295},"binding":"reactNativeLinkingSites","resolution":[],"enclosing_case":{"line":148,"title":"ignores a commented-out named import, which was the same class of miss"},"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores a commented-out named import, which was the same class of miss.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":149,"end_line":149,"start":6249,"end":6294,"source":"\"// import { Linking } from 'react-native'\\n\"","value":{"kind":"string","value":"// import { Linking } from 'react-native'\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"// import { Linking } from 'react-native'\\n\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores a commented-out named import, which was the same class of miss.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:154:inline-api-or-fixture-input:19","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":154,"end_line":154,"start":6400,"end":6487,"source":"reactNativeLinkingSites(\"import { openExternalLink } from '../platform/external-link'\")","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":154,"end_line":154,"start":6400,"end":6487},"binding":"reactNativeLinkingSites","resolution":[],"enclosing_case":{"line":152,"title":"finds nothing in a module that only names the seam"},"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: finds nothing in a module that only names the seam.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":154,"end_line":154,"start":6424,"end":6486,"source":"\"import { openExternalLink } from '../platform/external-link'\"","value":{"kind":"string","value":"import { openExternalLink } from '../platform/external-link'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import { openExternalLink } from '../platform/external-link'\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: finds nothing in a module that only names the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:162:fixture-or-oracle-declaration:20","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":162,"end_line":162,"start":6754,"end":6845,"source":"{ local: ['src/platform/external-link.web.ts', 'src/platform/external-link.ts'] }","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":162,"end_line":162,"start":6764,"end":6845},"binding":"closure","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":162,"end_line":162,"start":6766,"end":6843,"source":"local: ['src/platform/external-link.web.ts', 'src/platform/external-link.ts']","value":{"kind":"property","key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/platform/external-link.web.ts"},{"kind":"string","value":"src/platform/external-link.ts"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: local: ['src/platform/external-link.web.ts', 'src/platform/external-link.ts']. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:165:inline-api-or-fixture-input:21","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":165,"end_line":165,"start":6932,"end":6973,"source":"externalLinkOffenders(mobileDir, closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":165,"end_line":165,"start":6932,"end":6973},"binding":"externalLinkOffenders","resolution":[],"enclosing_case":{"line":164,"title":"exempts the seam and names the module that went around it"},"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: exempts the seam and names the module that went around it.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":165,"end_line":165,"start":6954,"end":6963,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":12,"end_line":12,"start":363,"end":425},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../../mobile/', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../../mobile/', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: exempts the seam and names the module that went around it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":165,"end_line":165,"start":6965,"end":6972,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":162,"end_line":162,"start":6764,"end":6845},"resolved":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/platform/external-link.web.ts"},{"kind":"string","value":"src/platform/external-link.ts"}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: exempts the seam and names the module that went around it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:169:inline-api-or-fixture-input:22","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":169,"end_line":169,"start":7129,"end":7195,"source":"externalLinkOffenders(mobileDir, { local: ['src/not/a/file.ts'] })","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":169,"end_line":169,"start":7129,"end":7195},"binding":"externalLinkOffenders","resolution":[],"enclosing_case":{"line":168,"title":"ignores a path this checkout cannot read rather than calling it an offender"},"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores a path this checkout cannot read rather than calling it an offender.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":169,"end_line":169,"start":7151,"end":7160,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":12,"end_line":12,"start":363,"end":425},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../../mobile/', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../../mobile/', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores a path this checkout cannot read rather than calling it an offender.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":169,"end_line":169,"start":7162,"end":7194,"source":"{ local: ['src/not/a/file.ts'] }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"src/not/a/file.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: ['src/not/a/file.ts'] }. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: ignores a path this checkout cannot read rather than calling it an offender.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:178:fixture-or-oracle-declaration:23","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":178,"end_line":178,"start":7590,"end":7661,"source":"[\"import * as RN from 'react-native'\", 'RN.Linking.openURL(a)']","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":178,"end_line":178,"start":7598,"end":7661},"binding":"lines","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control.","rows":[{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":178,"end_line":178,"start":7599,"end":7635,"source":"\"import * as RN from 'react-native'\"","value":{"kind":"string","value":"import * as RN from 'react-native'"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: \"import * as RN from 'react-native'\". The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":178,"end_line":178,"start":7637,"end":7660,"source":"'RN.Linking.openURL(a)'","value":{"kind":"string","value":"RN.Linking.openURL(a)"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'RN.Linking.openURL(a)'. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:188:inline-api-or-fixture-input:24","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":188,"end_line":188,"start":8097,"end":8148,"source":"externalLinkOffenders(root, { local: ['wide.ts'] })","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":188,"end_line":188,"start":8097,"end":8148},"binding":"externalLinkOffenders","resolution":[],"enclosing_case":{"line":186,"title":"puts line 2 before line 10, which sorting the rendered strings does not"},"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: puts line 2 before line 10, which sorting the rendered strings does not.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":188,"end_line":188,"start":8119,"end":8123,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":177,"end_line":177,"start":7533,"end":7581},"resolved":{"kind":"call-source","callee":"mkdtempSync","arguments":[{"kind":"call-source","callee":"join","arguments":[{"kind":"call-source","callee":"tmpdir","arguments":[],"source":"tmpdir()"},{"kind":"string","value":"orca-seam-census-"}],"source":"join(tmpdir(), 'orca-seam-census-')"}],"source":"mkdtempSync(join(tmpdir(), 'orca-seam-census-'))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: puts line 2 before line 10, which sorting the rendered strings does not.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":188,"end_line":188,"start":8125,"end":8147,"source":"{ local: ['wide.ts'] }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"wide.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: ['wide.ts'] }. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: puts line 2 before line 10, which sorting the rendered strings does not.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}},{"id":"20:192:inline-api-or-fixture-input:25","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":192,"end_line":192,"start":8274,"end":8337,"source":"externalLinkOffenders(root, { local: ['wide.ts', 'above.ts'] })","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":192,"end_line":192,"start":8274,"end":8337},"binding":"externalLinkOffenders","resolution":[],"enclosing_case":{"line":191,"title":"orders by path first, so two modules never interleave"},"affected_case_lines":[],"decision":"keep","reason":"The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: orders by path first, so two modules never interleave.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":192,"end_line":192,"start":8296,"end":8300,"source":"root","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":177,"end_line":177,"start":7533,"end":7581},"resolved":{"kind":"call-source","callee":"mkdtempSync","arguments":[{"kind":"call-source","callee":"join","arguments":[{"kind":"call-source","callee":"tmpdir","arguments":[],"source":"tmpdir()"},{"kind":"string","value":"orca-seam-census-"}],"source":"join(tmpdir(), 'orca-seam-census-')"}],"source":"mkdtempSync(join(tmpdir(), 'orca-seam-census-'))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: root. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: orders by path first, so two modules never interleave.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","line":192,"end_line":192,"start":8302,"end":8336,"source":"{ local: ['wide.ts', 'above.ts'] }","value":{"kind":"object","value":[{"key":"local","value":{"kind":"array","value":[{"kind":"string","value":"wide.ts"},{"kind":"string","value":"above.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { local: ['wide.ts', 'above.ts'] }. The real TypeScript AST/external-link closure scanner receives an independently authored import/alias/comment/export/ordering fixture and expects exact offending source lines or an explicit clean control. Scenario: orders by path first, so two modules never interleave.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489"}}],"original_review_sha256":"b409666b41e96ee23db912e4a0727c7c82b187c566849a7ffddb8be09a314b14","reviewer":"audit_config","reviewed_sha256":"4981aa71c2f48e9a592cc68695274285da762a96e8c0ef00e4c1752f03192489","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","final_declarations":20,"current_controls":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","each":[{"input":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","start":476,"end":838,"line":15,"end_line":22,"source":"[\n [\"import { Linking } from 'react-native'\", true],\n ['import { Linking } from \"react-native\"', true],\n [\"import * as RN from 'react-native'\\nRN.Linking.openURL(u)\", true],\n ['import * as RN from \"react-native\"\\nRN.Linking.openURL(u)', true],\n [\"import { View } from 'react-native'\", false],\n ['import { View } from \"react-native\"', false]\n ]"},"rows":[{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","start":482,"end":530,"line":16,"end_line":16,"source":"[\"import { Linking } from 'react-native'\", true]"},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","start":536,"end":584,"line":17,"end_line":17,"source":"['import { Linking } from \"react-native\"', true]"},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","start":590,"end":657,"line":18,"end_line":18,"source":"[\"import * as RN from 'react-native'\\nRN.Linking.openURL(u)\", true]"},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","start":663,"end":730,"line":19,"end_line":19,"source":"['import * as RN from \"react-native\"\\nRN.Linking.openURL(u)', true]"},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","start":736,"end":782,"line":20,"end_line":20,"source":"[\"import { View } from 'react-native'\", false]"},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","start":788,"end":834,"line":21,"end_line":21,"source":"['import { View } from \"react-native\"', false]"}]},{"input":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","start":4429,"end":4749,"line":108,"end_line":113,"source":"[\n [\"export { Linking } from 'react-native'\\n\", 'a named re-export'],\n [\"export { Linking as L } from 'react-native'\\n\", 'a renamed re-export'],\n [\"export * from 'react-native'\\n\", 'a wildcard re-export, which carries it with the rest'],\n [\"export * as RN from 'react-native'\\n\", 'a namespace re-export']\n ]"},"rows":[{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","start":4435,"end":4500,"line":109,"end_line":109,"source":"[\"export { Linking } from 'react-native'\\n\", 'a named re-export']"},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","start":4506,"end":4578,"line":110,"end_line":110,"source":"[\"export { Linking as L } from 'react-native'\\n\", 'a renamed re-export']"},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","start":4584,"end":4674,"line":111,"end_line":111,"source":"[\"export * from 'react-native'\\n\", 'a wildcard re-export, which carries it with the rest']"},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","start":4680,"end":4745,"line":112,"end_line":112,"source":"[\"export * as RN from 'react-native'\\n\", 'a namespace re-export']"}]},{"input":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","start":5105,"end":5311,"line":120,"end_line":126,"source":"[\n [\"export { View } from 'react-native'\\n\", 're-exports something else'],\n [\n \"export { Linking } from './local'\\n\",\n 're-exports the name from somewhere that is not react-native'\n ]\n ]"},"rows":[{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","start":5111,"end":5181,"line":121,"end_line":121,"source":"[\"export { View } from 'react-native'\\n\", 're-exports something else']"},{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.test.mjs","start":5187,"end":5307,"line":122,"end_line":125,"source":"[\n \"export { Linking } from './local'\\n\",\n 're-exports the name from somewhere that is not react-native'\n ]"}]}],"for_of":[],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/scripts/mobile-web-app/platform-seams/mobile-web-app-external-link-seam.mjs"],"runtime_validation":[]}
+{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","sha256":"2f3706dbdbceaaf19a7f625274e13ad110d02215c9134aa8c335df78150ac3fd","declarations":18,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":21,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"2f3706dbdbceaaf19a7f625274e13ad110d02215c9134aa8c335df78150ac3fd","cases":[{"line":55,"title":"names the kind each exported trigger posts","decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: names the kind each exported trigger posts.","explicit_input_controls":[{"control_id":"21:57:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":57,"source":"hapticsTriggerSites(\n [\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) {',\n ' post = notify',\n '}',\n \"export function triggerSelection() { post('selection') }\"\n ].join('\\n'),\n 'haptics.web.ts'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":58,"end_line":64,"start":2284,"end":2517,"source":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) {',\n ' post = notify',\n '}',\n \"export function triggerSelection() { post('selection') }\"\n ].join('\\n')","value":{"kind":"call-source","callee":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) {',\n ' post = notify',\n '}',\n \"export function triggerSelection() { post('selection') }\"\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) {',\n ' post = notify',\n '}',\n \"export function triggerSelection() { post('selection') }\"\n ].join('\\n')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ 'let post = () => false', 'export function publishHapticsNotifier(notify) {', ' post = notify', '. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: names the kind each exported trigger posts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":65,"end_line":65,"start":2527,"end":2543,"source":"'haptics.web.ts'","value":{"kind":"string","value":"haptics.web.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'haptics.web.ts'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: names the kind each exported trigger posts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: names the kind each exported trigger posts.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":55,"title":"names the kind each exported trigger posts","start":2180,"end":2630},"implementation_status":"retained"},{"line":70,"title":"reads the binding the publisher assigns rather than a name called post","decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the binding the publisher assigns rather than a name called post.","explicit_input_controls":[{"control_id":"21:74:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":74,"source":"hapticsPostedKinds(\n [\n 'let ask = () => false',\n 'export function publishHapticsNotifier(notify) { ask = notify }',\n \"export function triggerError() { ask('error') }\"\n ].join('\\n'),\n 'haptics.web.ts'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":75,"end_line":79,"start":2935,"end":3129,"source":"[\n 'let ask = () => false',\n 'export function publishHapticsNotifier(notify) { ask = notify }',\n \"export function triggerError() { ask('error') }\"\n ].join('\\n')","value":{"kind":"call-source","callee":"[\n 'let ask = () => false',\n 'export function publishHapticsNotifier(notify) { ask = notify }',\n \"export function triggerError() { ask('error') }\"\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'let ask = () => false',\n 'export function publishHapticsNotifier(notify) { ask = notify }',\n \"export function triggerError() { ask('error') }\"\n ].join('\\n')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ 'let ask = () => false', 'export function publishHapticsNotifier(notify) { ask = notify }', \"export function. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the binding the publisher assigns rather than a name called post.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":80,"end_line":80,"start":3139,"end":3155,"source":"'haptics.web.ts'","value":{"kind":"string","value":"haptics.web.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'haptics.web.ts'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the binding the publisher assigns rather than a name called post.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the binding the publisher assigns rather than a name called post.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":70,"title":"reads the binding the publisher assigns rather than a name called post","start":2634,"end":3193},"implementation_status":"retained"},{"line":85,"title":"reports a function that posts nothing as a site with no kind","decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reports a function that posts nothing as a site with no kind.","explicit_input_controls":[{"control_id":"21:87:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":87,"source":"hapticsTriggerSites('export function triggerSelection() {}\\n', 'haptics.web.ts')","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":87,"end_line":87,"start":3310,"end":3351,"source":"'export function triggerSelection() {}\\n'","value":{"kind":"string","value":"export function triggerSelection() {}\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function triggerSelection() {}\\n'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reports a function that posts nothing as a site with no kind.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":87,"end_line":87,"start":3353,"end":3369,"source":"'haptics.web.ts'","value":{"kind":"string","value":"haptics.web.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'haptics.web.ts'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reports a function that posts nothing as a site with no kind.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reports a function that posts nothing as a site with no kind.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":85,"title":"reports a function that posts nothing as a site with no kind","start":3197,"end":3442},"implementation_status":"retained"},{"line":91,"title":"reports no kind for a function that posts one it computed, which nothing can pin","decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reports no kind for a function that posts one it computed, which nothing can pin.","explicit_input_controls":[{"control_id":"21:93:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":93,"source":"hapticsPostedKinds(\n [\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n 'export function triggerSelection(kind) { post(kind) }'\n ].join('\\n'),\n 'haptics.web.ts'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":94,"end_line":98,"start":3587,"end":3789,"source":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n 'export function triggerSelection(kind) { post(kind) }'\n ].join('\\n')","value":{"kind":"call-source","callee":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n 'export function triggerSelection(kind) { post(kind) }'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n 'export function triggerSelection(kind) { post(kind) }'\n ].join('\\n')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ 'let post = () => false', 'export function publishHapticsNotifier(notify) { post = notify }', 'export functi. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reports no kind for a function that posts one it computed, which nothing can pin.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":99,"end_line":99,"start":3799,"end":3815,"source":"'haptics.web.ts'","value":{"kind":"string","value":"haptics.web.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'haptics.web.ts'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reports no kind for a function that posts one it computed, which nothing can pin.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reports no kind for a function that posts one it computed, which nothing can pin.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":91,"title":"reports no kind for a function that posts one it computed, which nothing can pin","start":3446,"end":3846},"implementation_status":"retained"},{"line":104,"title":"reports no kind for a function that posts twice, which is two taps for one gesture","decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reports no kind for a function that posts twice, which is two taps for one gesture.","explicit_input_controls":[{"control_id":"21:106:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":106,"source":"hapticsPostedKinds(\n [\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"export function triggerSelection() { post('selection'); post('success') }\"\n ].join('\\n'),\n 'haptics.web.ts'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":107,"end_line":111,"start":3993,"end":4215,"source":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"export function triggerSelection() { post('selection'); post('success') }\"\n ].join('\\n')","value":{"kind":"call-source","callee":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"export function triggerSelection() { post('selection'); post('success') }\"\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"export function triggerSelection() { post('selection'); post('success') }\"\n ].join('\\n')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ 'let post = () => false', 'export function publishHapticsNotifier(notify) { post = notify }', \"export functi. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reports no kind for a function that posts twice, which is two taps for one gesture.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":112,"end_line":112,"start":4225,"end":4241,"source":"'haptics.web.ts'","value":{"kind":"string","value":"haptics.web.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'haptics.web.ts'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reports no kind for a function that posts twice, which is two taps for one gesture.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reports no kind for a function that posts twice, which is two taps for one gesture.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":104,"title":"reports no kind for a function that posts twice, which is two taps for one gesture","start":3850,"end":4272},"implementation_status":"retained"},{"line":117,"title":"leaves alone a trigger the module does not export","decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: leaves alone a trigger the module does not export.","explicit_input_controls":[{"control_id":"21:119:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":119,"source":"hapticsTriggerSites(\n [\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"function triggerLocal() { post('selection') }\"\n ].join('\\n'),\n 'haptics.web.ts'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":120,"end_line":124,"start":4387,"end":4581,"source":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"function triggerLocal() { post('selection') }\"\n ].join('\\n')","value":{"kind":"call-source","callee":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"function triggerLocal() { post('selection') }\"\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"function triggerLocal() { post('selection') }\"\n ].join('\\n')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ 'let post = () => false', 'export function publishHapticsNotifier(notify) { post = notify }', \"function trig. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: leaves alone a trigger the module does not export.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":125,"end_line":125,"start":4591,"end":4607,"source":"'haptics.web.ts'","value":{"kind":"string","value":"haptics.web.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'haptics.web.ts'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: leaves alone a trigger the module does not export.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: leaves alone a trigger the module does not export.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":117,"title":"leaves alone a trigger the module does not export","start":4276,"end":4638},"implementation_status":"retained"},{"line":130,"title":"ignores the seam named inside a comment or a string, which text matching cannot","decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: ignores the seam named inside a comment or a string, which text matching cannot.","explicit_input_controls":[{"control_id":"21:132:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":132,"source":"hapticsPostedKinds(\n [\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"// export function triggerSelection() { post('selection') }\",\n 'const hint = \"post(\\'success\\')\"'\n ].join('\\n'),\n 'haptics.web.ts'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":133,"end_line":138,"start":4782,"end":5036,"source":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"// export function triggerSelection() { post('selection') }\",\n 'const hint = \"post(\\'success\\')\"'\n ].join('\\n')","value":{"kind":"call-source","callee":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"// export function triggerSelection() { post('selection') }\",\n 'const hint = \"post(\\'success\\')\"'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"// export function triggerSelection() { post('selection') }\",\n 'const hint = \"post(\\'success\\')\"'\n ].join('\\n')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ 'let post = () => false', 'export function publishHapticsNotifier(notify) { post = notify }', \"// export fun. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: ignores the seam named inside a comment or a string, which text matching cannot.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":139,"end_line":139,"start":5046,"end":5062,"source":"'haptics.web.ts'","value":{"kind":"string","value":"haptics.web.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'haptics.web.ts'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: ignores the seam named inside a comment or a string, which text matching cannot.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: ignores the seam named inside a comment or a string, which text matching cannot.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":130,"title":"ignores the seam named inside a comment or a string, which text matching cannot","start":4642,"end":5093},"implementation_status":"retained"},{"line":144,"title":"reads the kinds off the tuple that declares them","decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the kinds off the tuple that declares them.","explicit_input_controls":[{"control_id":"21:145:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":145,"source":"bridgeHapticsKinds(\"export const BRIDGE_HAPTICS_KINDS = ['a', 'b'] as const\\n\")","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":145,"end_line":145,"start":5190,"end":5249,"source":"\"export const BRIDGE_HAPTICS_KINDS = ['a', 'b'] as const\\n\"","value":{"kind":"string","value":"export const BRIDGE_HAPTICS_KINDS = ['a', 'b'] as const\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"export const BRIDGE_HAPTICS_KINDS = ['a', 'b'] as const\\n\". The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the kinds off the tuple that declares them.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the kinds off the tuple that declares them.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"21:149:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":149,"source":"bridgeHapticsKinds(\"// BRIDGE_HAPTICS_KINDS = ['a']\\n\")","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":149,"end_line":149,"start":5402,"end":5437,"source":"\"// BRIDGE_HAPTICS_KINDS = ['a']\\n\"","value":{"kind":"string","value":"// BRIDGE_HAPTICS_KINDS = ['a']\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"// BRIDGE_HAPTICS_KINDS = ['a']\\n\". The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the kinds off the tuple that declares them.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the kinds off the tuple that declares them.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":144,"title":"reads the kinds off the tuple that declares them","start":5097,"end":5456},"implementation_status":"retained"},{"line":154,"title":"posts every kind the notify admits from the web sibling, and nothing more","decision":"fix","reason":"Replace raw five-kind pin with a nonempty positive and keep the independently derived bridge-kind/web-post completeness comparison. Actual notifier behavior is separately exercised in mobile/src/platform/haptics.web.test.ts.","explicit_input_controls":[{"control_id":"21:155:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":155,"source":"bridgeHapticsKinds(read(HAPTICS_KINDS_MODULE), HAPTICS_KINDS_MODULE)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":155,"end_line":155,"start":5633,"end":5659,"source":"read(HAPTICS_KINDS_MODULE)","value":{"kind":"call-source","callee":"read","arguments":[{"kind":"reference","source":"HAPTICS_KINDS_MODULE","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.mjs","line":25,"end_line":25,"start":1311,"end":1365},"resolved":{"kind":"string","value":"src/mobile-web-shell/bridge/bridge-haptics-notify.ts"}}],"source":"read(HAPTICS_KINDS_MODULE)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: read(HAPTICS_KINDS_MODULE). Replace raw five-kind pin with a nonempty positive and keep the independently derived bridge-kind/web-post completeness comparison. Actual notifier behavior is separately exercised in mobile/src/platform/haptics.web.test.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":155,"end_line":155,"start":5661,"end":5681,"source":"HAPTICS_KINDS_MODULE","value":{"kind":"reference","source":"HAPTICS_KINDS_MODULE","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.mjs","line":25,"end_line":25,"start":1311,"end":1365},"resolved":{"kind":"string","value":"src/mobile-web-shell/bridge/bridge-haptics-notify.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: HAPTICS_KINDS_MODULE. Replace raw five-kind pin with a nonempty positive and keep the independently derived bridge-kind/web-post completeness comparison. Actual notifier behavior is separately exercised in mobile/src/platform/haptics.web.test.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Replace raw five-kind pin with a nonempty positive and keep the independently derived bridge-kind/web-post completeness comparison. Actual notifier behavior is separately exercised in mobile/src/platform/haptics.web.test.ts.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"21:157:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":157,"source":"hapticsPostedKinds(read(HAPTICS_SEAM), HAPTICS_SEAM)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":157,"end_line":157,"start":5755,"end":5773,"source":"read(HAPTICS_SEAM)","value":{"kind":"call-source","callee":"read","arguments":[{"kind":"reference","source":"HAPTICS_SEAM","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.mjs","line":19,"end_line":19,"start":997,"end":1026},"resolved":{"kind":"string","value":"src/platform/haptics.web.ts"}}],"source":"read(HAPTICS_SEAM)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: read(HAPTICS_SEAM). Replace raw five-kind pin with a nonempty positive and keep the independently derived bridge-kind/web-post completeness comparison. Actual notifier behavior is separately exercised in mobile/src/platform/haptics.web.test.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":157,"end_line":157,"start":5775,"end":5787,"source":"HAPTICS_SEAM","value":{"kind":"reference","source":"HAPTICS_SEAM","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.mjs","line":19,"end_line":19,"start":997,"end":1026},"resolved":{"kind":"string","value":"src/platform/haptics.web.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: HAPTICS_SEAM. Replace raw five-kind pin with a nonempty positive and keep the independently derived bridge-kind/web-post completeness comparison. Actual notifier behavior is separately exercised in mobile/src/platform/haptics.web.test.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Replace raw five-kind pin with a nonempty positive and keep the independently derived bridge-kind/web-post completeness comparison. Actual notifier behavior is separately exercised in mobile/src/platform/haptics.web.test.ts.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":154,"title":"posts every kind the notify admits from the web sibling, and nothing more","start":5508,"end":5861},"implementation_status":"implemented"},{"line":168,"title":"maps every function the app exports from the shell side, so none is unreachable","decision":"fix","reason":"Replace raw five-export pin with a nonempty positive and retain the independently derived native-export/shell-import completeness comparison. Actual iOS/Android device-call mapping is separately exercised in page-haptics.test.ts.","explicit_input_controls":[{"control_id":"21:169:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":169,"source":"hapticsTriggerSites(read(HAPTICS_NATIVE), HAPTICS_NATIVE)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":169,"end_line":169,"start":6351,"end":6371,"source":"read(HAPTICS_NATIVE)","value":{"kind":"call-source","callee":"read","arguments":[{"kind":"reference","source":"HAPTICS_NATIVE","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.mjs","line":22,"end_line":22,"start":1151,"end":1176},"resolved":{"kind":"string","value":"src/platform/haptics.ts"}}],"source":"read(HAPTICS_NATIVE)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: read(HAPTICS_NATIVE). Replace raw five-export pin with a nonempty positive and retain the independently derived native-export/shell-import completeness comparison. Actual iOS/Android device-call mapping is separately exercised in page-haptics.test.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":169,"end_line":169,"start":6373,"end":6387,"source":"HAPTICS_NATIVE","value":{"kind":"reference","source":"HAPTICS_NATIVE","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.mjs","line":22,"end_line":22,"start":1151,"end":1176},"resolved":{"kind":"string","value":"src/platform/haptics.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: HAPTICS_NATIVE. Replace raw five-export pin with a nonempty positive and retain the independently derived native-export/shell-import completeness comparison. Actual iOS/Android device-call mapping is separately exercised in page-haptics.test.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Replace raw five-export pin with a nonempty positive and retain the independently derived native-export/shell-import completeness comparison. Actual iOS/Android device-call mapping is separately exercised in page-haptics.test.ts.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"21:173:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":173,"source":"hapticsImportedNames(read(SHELL_MAPPING), SHELL_MAPPING)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":173,"end_line":173,"start":6495,"end":6514,"source":"read(SHELL_MAPPING)","value":{"kind":"call-source","callee":"read","arguments":[{"kind":"reference","source":"SHELL_MAPPING","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":52,"end_line":52,"start":2102,"end":2140},"resolved":{"kind":"string","value":"src/mobile-web-shell/page-haptics.ts"}}],"source":"read(SHELL_MAPPING)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: read(SHELL_MAPPING). Replace raw five-export pin with a nonempty positive and retain the independently derived native-export/shell-import completeness comparison. Actual iOS/Android device-call mapping is separately exercised in page-haptics.test.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":173,"end_line":173,"start":6516,"end":6529,"source":"SHELL_MAPPING","value":{"kind":"reference","source":"SHELL_MAPPING","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":52,"end_line":52,"start":2102,"end":2140},"resolved":{"kind":"string","value":"src/mobile-web-shell/page-haptics.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SHELL_MAPPING. Replace raw five-export pin with a nonempty positive and retain the independently derived native-export/shell-import completeness comparison. Actual iOS/Android device-call mapping is separately exercised in page-haptics.test.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Replace raw five-export pin with a nonempty positive and retain the independently derived native-export/shell-import completeness comparison. Actual iOS/Android device-call mapping is separately exercised in page-haptics.test.ts.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":168,"title":"maps every function the app exports from the shell side, so none is unreachable","start":6226,"end":6586},"implementation_status":"implemented"},{"line":178,"title":"names what a module takes from the app haptics","decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: names what a module takes from the app haptics.","explicit_input_controls":[{"control_id":"21:180:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":180,"source":"hapticsImportedNames(\n \"import { triggerError, triggerSuccess } from '../platform/haptics'\\n\",\n 'page-haptics.ts'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":181,"end_line":181,"start":6727,"end":6797,"source":"\"import { triggerError, triggerSuccess } from '../platform/haptics'\\n\"","value":{"kind":"string","value":"import { triggerError, triggerSuccess } from '../platform/haptics'\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import { triggerError, triggerSuccess } from '../platform/haptics'\\n\". The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: names what a module takes from the app haptics.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":182,"end_line":182,"start":6807,"end":6824,"source":"'page-haptics.ts'","value":{"kind":"string","value":"page-haptics.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'page-haptics.ts'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: names what a module takes from the app haptics.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: names what a module takes from the app haptics.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":178,"title":"names what a module takes from the app haptics","start":6638,"end":6907},"implementation_status":"retained"},{"line":187,"title":"reads the imported name and not the local one, a renamed import being the same export","decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the imported name and not the local one, a renamed import being the same export.","explicit_input_controls":[{"control_id":"21:189:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":189,"source":"hapticsImportedNames(\n \"import { triggerError as boom } from '../platform/haptics'\\n\",\n 'page-haptics.ts'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":190,"end_line":190,"start":7039,"end":7101,"source":"\"import { triggerError as boom } from '../platform/haptics'\\n\"","value":{"kind":"string","value":"import { triggerError as boom } from '../platform/haptics'\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import { triggerError as boom } from '../platform/haptics'\\n\". The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the imported name and not the local one, a renamed import being the same export.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":191,"end_line":191,"start":7111,"end":7128,"source":"'page-haptics.ts'","value":{"kind":"string","value":"page-haptics.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'page-haptics.ts'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the imported name and not the local one, a renamed import being the same export.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the imported name and not the local one, a renamed import being the same export.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":187,"title":"reads the imported name and not the local one, a renamed import being the same export","start":6911,"end":7193},"implementation_status":"retained"},{"line":196,"title":"leaves alone an import of the web sibling or of something else entirely","decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: leaves alone an import of the web sibling or of something else entirely.","explicit_input_controls":[{"control_id":"21:198:inline-api-or-fixture-input:17","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":198,"source":"hapticsImportedNames(\n [\n \"import { triggerError } from '../platform/haptics.web'\",\n \"import { triggerSuccess } from './other-haptics'\",\n \"// import { triggerEdgeBump } from '../platform/haptics'\"\n ].join('\\n'),\n 'page-haptics.ts'\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":199,"end_line":203,"start":7311,"end":7532,"source":"[\n \"import { triggerError } from '../platform/haptics.web'\",\n \"import { triggerSuccess } from './other-haptics'\",\n \"// import { triggerEdgeBump } from '../platform/haptics'\"\n ].join('\\n')","value":{"kind":"call-source","callee":"[\n \"import { triggerError } from '../platform/haptics.web'\",\n \"import { triggerSuccess } from './other-haptics'\",\n \"// import { triggerEdgeBump } from '../platform/haptics'\"\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { triggerError } from '../platform/haptics.web'\",\n \"import { triggerSuccess } from './other-haptics'\",\n \"// import { triggerEdgeBump } from '../platform/haptics'\"\n ].join('\\n')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ \"import { triggerError } from '../platform/haptics.web'\", \"import { triggerSuccess } from './other-haptics'\", . The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: leaves alone an import of the web sibling or of something else entirely.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":204,"end_line":204,"start":7542,"end":7559,"source":"'page-haptics.ts'","value":{"kind":"string","value":"page-haptics.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'page-haptics.ts'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: leaves alone an import of the web sibling or of something else entirely.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: leaves alone an import of the web sibling or of something else entirely.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":196,"title":"leaves alone an import of the web sibling or of something else entirely","start":7197,"end":7610},"implementation_status":"retained"},{"line":213,"title":"resolves the seam to the web sibling: %s","decision":"fix","reason":"Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","explicit_input_controls":[{"control_id":"21:213:parameter-table:18","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":213,"source":"[...ROUTE_MODULES]","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":18,"end_line":18,"start":953,"end":996,"source":"['/h/[hostId]', 'app/h/[hostId]/index.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]"},{"kind":"string","value":"app/h/[hostId]/index.tsx"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]', 'app/h/[hostId]/index.tsx']. Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":19,"end_line":19,"start":1000,"end":1091,"source":"['/h/[hostId]/agent-history/[worktreeId]', 'app/h/[hostId]/agent-history/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/agent-history/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/agent-history/[worktreeId].tsx"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/agent-history/[worktreeId]', 'app/h/[hostId]/agent-history/[worktreeId].tsx']. Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":20,"end_line":20,"start":1095,"end":1144,"source":"['/h/[hostId]/tasks', 'app/h/[hostId]/tasks.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/tasks"},{"kind":"string","value":"app/h/[hostId]/tasks.tsx"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/tasks', 'app/h/[hostId]/tasks.tsx']. Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":21,"end_line":21,"start":1148,"end":1203,"source":"['/h/[hostId]/accounts', 'app/h/[hostId]/accounts.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/accounts"},{"kind":"string","value":"app/h/[hostId]/accounts.tsx"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/accounts', 'app/h/[hostId]/accounts.tsx']. Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":22,"end_line":22,"start":1207,"end":1272,"source":"['/h/[hostId]/new-workspace', 'app/h/[hostId]/new-workspace.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/new-workspace"},{"kind":"string","value":"app/h/[hostId]/new-workspace.tsx"}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/new-workspace', 'app/h/[hostId]/new-workspace.tsx']. Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":23,"end_line":23,"start":1276,"end":1351,"source":"['/h/[hostId]/files/[worktreeId]', 'app/h/[hostId]/files/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/files/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/files/[worktreeId].tsx"}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/files/[worktreeId]', 'app/h/[hostId]/files/[worktreeId].tsx']. Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":24,"end_line":24,"start":1355,"end":1446,"source":"['/h/[hostId]/files/preview/[worktreeId]', 'app/h/[hostId]/files/preview/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/files/preview/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/files/preview/[worktreeId].tsx"}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/files/preview/[worktreeId]', 'app/h/[hostId]/files/preview/[worktreeId].tsx']. Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":25,"end_line":25,"start":1450,"end":1543,"source":"['/h/[hostId]/source-control/[worktreeId]', 'app/h/[hostId]/source-control/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/source-control/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}]},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/source-control/[worktreeId]', 'app/h/[hostId]/source-control/[worktreeId].tsx']. Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":26,"end_line":26,"start":1547,"end":1624,"source":"['/h/[hostId]/review/[worktreeId]', 'app/h/[hostId]/review/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/review/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}]},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/review/[worktreeId]', 'app/h/[hostId]/review/[worktreeId].tsx']. Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":27,"end_line":27,"start":1628,"end":1707,"source":"['/h/[hostId]/session/[worktreeId]', 'app/h/[hostId]/session/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/session/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].tsx"}]},"index":10,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/session/[worktreeId]', 'app/h/[hostId]/session/[worktreeId].tsx']. Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":213,"title":"resolves the seam to the web sibling: %s","start":7697,"end":7953},"implementation_status":"implemented"},{"line":221,"title":"imports the seam from at least one module, so the grant is not idle: %s","decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","explicit_input_controls":[{"control_id":"21:221:parameter-table:19","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":221,"source":"[...ROUTE_MODULES]","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":18,"end_line":18,"start":953,"end":996,"source":"['/h/[hostId]', 'app/h/[hostId]/index.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]"},{"kind":"string","value":"app/h/[hostId]/index.tsx"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]', 'app/h/[hostId]/index.tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":19,"end_line":19,"start":1000,"end":1091,"source":"['/h/[hostId]/agent-history/[worktreeId]', 'app/h/[hostId]/agent-history/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/agent-history/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/agent-history/[worktreeId].tsx"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/agent-history/[worktreeId]', 'app/h/[hostId]/agent-history/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":20,"end_line":20,"start":1095,"end":1144,"source":"['/h/[hostId]/tasks', 'app/h/[hostId]/tasks.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/tasks"},{"kind":"string","value":"app/h/[hostId]/tasks.tsx"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/tasks', 'app/h/[hostId]/tasks.tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":21,"end_line":21,"start":1148,"end":1203,"source":"['/h/[hostId]/accounts', 'app/h/[hostId]/accounts.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/accounts"},{"kind":"string","value":"app/h/[hostId]/accounts.tsx"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/accounts', 'app/h/[hostId]/accounts.tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":22,"end_line":22,"start":1207,"end":1272,"source":"['/h/[hostId]/new-workspace', 'app/h/[hostId]/new-workspace.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/new-workspace"},{"kind":"string","value":"app/h/[hostId]/new-workspace.tsx"}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/new-workspace', 'app/h/[hostId]/new-workspace.tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":23,"end_line":23,"start":1276,"end":1351,"source":"['/h/[hostId]/files/[worktreeId]', 'app/h/[hostId]/files/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/files/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/files/[worktreeId].tsx"}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/files/[worktreeId]', 'app/h/[hostId]/files/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":24,"end_line":24,"start":1355,"end":1446,"source":"['/h/[hostId]/files/preview/[worktreeId]', 'app/h/[hostId]/files/preview/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/files/preview/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/files/preview/[worktreeId].tsx"}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/files/preview/[worktreeId]', 'app/h/[hostId]/files/preview/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":25,"end_line":25,"start":1450,"end":1543,"source":"['/h/[hostId]/source-control/[worktreeId]', 'app/h/[hostId]/source-control/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/source-control/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}]},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/source-control/[worktreeId]', 'app/h/[hostId]/source-control/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":26,"end_line":26,"start":1547,"end":1624,"source":"['/h/[hostId]/review/[worktreeId]', 'app/h/[hostId]/review/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/review/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}]},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/review/[worktreeId]', 'app/h/[hostId]/review/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":27,"end_line":27,"start":1628,"end":1707,"source":"['/h/[hostId]/session/[worktreeId]', 'app/h/[hostId]/session/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/session/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].tsx"}]},"index":10,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/session/[worktreeId]', 'app/h/[hostId]/session/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"21:225:inline-api-or-fixture-input:20","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":225,"source":"hapticsSeamImporters(mobileDir, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":225,"end_line":225,"start":8314,"end":8323,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":33,"end_line":33,"start":1325,"end":1387},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../../mobile/', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../../mobile/', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":225,"end_line":225,"start":8325,"end":8332,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":224,"end_line":224,"start":8257,"end":8277},"resolved":{"kind":"source-expression","source":"await closureOf(mod)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":219,"title":"imports the seam from at least one module, so the grant is not idle: %s","start":7959,"end":8241},"implementation_status":"retained"},{"line":241,"title":"declares haptics on exactly the routes whose closure reaches the seam","decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","explicit_input_controls":[{"control_id":"21:242:fixture-or-oracle-declaration:21","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":242,"source":"[]","rows":[],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation_rows":[]},{"control_id":"21:243:for-of:22","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":243,"source":"ROUTE_MODULES","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":18,"end_line":18,"start":953,"end":996,"source":"['/h/[hostId]', 'app/h/[hostId]/index.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]"},{"kind":"string","value":"app/h/[hostId]/index.tsx"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['/h/[hostId]', 'app/h/[hostId]/index.tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":19,"end_line":19,"start":1000,"end":1091,"source":"['/h/[hostId]/agent-history/[worktreeId]', 'app/h/[hostId]/agent-history/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/agent-history/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/agent-history/[worktreeId].tsx"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['/h/[hostId]/agent-history/[worktreeId]', 'app/h/[hostId]/agent-history/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":20,"end_line":20,"start":1095,"end":1144,"source":"['/h/[hostId]/tasks', 'app/h/[hostId]/tasks.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/tasks"},{"kind":"string","value":"app/h/[hostId]/tasks.tsx"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['/h/[hostId]/tasks', 'app/h/[hostId]/tasks.tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":21,"end_line":21,"start":1148,"end":1203,"source":"['/h/[hostId]/accounts', 'app/h/[hostId]/accounts.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/accounts"},{"kind":"string","value":"app/h/[hostId]/accounts.tsx"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['/h/[hostId]/accounts', 'app/h/[hostId]/accounts.tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":22,"end_line":22,"start":1207,"end":1272,"source":"['/h/[hostId]/new-workspace', 'app/h/[hostId]/new-workspace.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/new-workspace"},{"kind":"string","value":"app/h/[hostId]/new-workspace.tsx"}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['/h/[hostId]/new-workspace', 'app/h/[hostId]/new-workspace.tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":23,"end_line":23,"start":1276,"end":1351,"source":"['/h/[hostId]/files/[worktreeId]', 'app/h/[hostId]/files/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/files/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/files/[worktreeId].tsx"}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['/h/[hostId]/files/[worktreeId]', 'app/h/[hostId]/files/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":24,"end_line":24,"start":1355,"end":1446,"source":"['/h/[hostId]/files/preview/[worktreeId]', 'app/h/[hostId]/files/preview/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/files/preview/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/files/preview/[worktreeId].tsx"}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['/h/[hostId]/files/preview/[worktreeId]', 'app/h/[hostId]/files/preview/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":25,"end_line":25,"start":1450,"end":1543,"source":"['/h/[hostId]/source-control/[worktreeId]', 'app/h/[hostId]/source-control/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/source-control/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}]},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['/h/[hostId]/source-control/[worktreeId]', 'app/h/[hostId]/source-control/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":26,"end_line":26,"start":1547,"end":1624,"source":"['/h/[hostId]/review/[worktreeId]', 'app/h/[hostId]/review/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/review/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}]},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['/h/[hostId]/review/[worktreeId]', 'app/h/[hostId]/review/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":27,"end_line":27,"start":1628,"end":1707,"source":"['/h/[hostId]/session/[worktreeId]', 'app/h/[hostId]/session/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/session/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].tsx"}]},"index":10,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['/h/[hostId]/session/[worktreeId]', 'app/h/[hostId]/session/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"21:245:inline-api-or-fixture-input:23","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":245,"source":"hapticsSeamImporters(mobileDir, closure)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":245,"end_line":245,"start":9314,"end":9323,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":33,"end_line":33,"start":1325,"end":1387},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../../mobile/', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../../mobile/', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":245,"end_line":245,"start":9325,"end":9332,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":244,"end_line":244,"start":9260,"end":9280},"resolved":{"kind":"source-expression","source":"await closureOf(mod)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":239,"title":"declares haptics on exactly the routes whose closure reaches the seam","start":8937,"end":9532},"implementation_status":"retained"},{"line":256,"title":"covers every declared page route, so a new one cannot be missed by this file","decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: covers every declared page route, so a new one cannot be missed by this file.","explicit_input_controls":[{"control_id":"21:258:inline-api-or-fixture-input:24","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":258,"source":"pageRouteModulesCoverTheManifest(MOBILE_WEB_PAGE_ROUTES)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":258,"end_line":258,"start":9930,"end":9952,"source":"MOBILE_WEB_PAGE_ROUTES","value":{"kind":"reference","source":"MOBILE_WEB_PAGE_ROUTES","resolved_at":{"path":"config/scripts/mobile-web-page-routes.mjs","line":27,"end_line":183,"start":1834,"end":11879},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"},{"kind":"string","value":"externalLink"},{"kind":"string","value":"haptics"}]}},{"key":"canOwnHostArea","value":{"kind":"boolean","value":true}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/agent-history/[worktreeId]"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"},{"kind":"string","value":"externalLink"},{"kind":"string","value":"haptics"}]}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/tasks"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"},{"kind":"string","value":"externalLink"},{"kind":"string","value":"haptics"},{"kind":"string","value":"native.clipboard.write"}]}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/accounts"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"},{"kind":"string","value":"externalLink"},{"kind":"string","value":"haptics"}]}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/new-workspace"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"},{"kind":"string","value":"externalLink"},{"kind":"string","value":"haptics"}]}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/files/[worktreeId]"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"},{"kind":"string","value":"externalLink"},{"kind":"string","value":"haptics"},{"kind":"string","value":"native.clipboard.write"}]}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/files/preview/[worktreeId]"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"},{"kind":"string","value":"externalLink"},{"kind":"string","value":"haptics"},{"kind":"string","value":"native.clipboard.write"}]}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/source-control/[worktreeId]"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"},{"kind":"string","value":"externalLink"},{"kind":"string","value":"haptics"},{"kind":"string","value":"native.clipboard.write"}]}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/review/[worktreeId]"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"},{"kind":"string","value":"externalLink"},{"kind":"string","value":"haptics"},{"kind":"string","value":"native.clipboard.write"}]}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/session/[worktreeId]"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"},{"kind":"string","value":"externalLink"},{"kind":"string","value":"haptics"},{"kind":"string","value":"screencastBinary"},{"kind":"string","value":"native.clipboard.write"},{"kind":"string","value":"native.clipboard.read"},{"kind":"string","value":"native.media.pick"},{"kind":"string","value":"native.media.read"},{"kind":"string","value":"native.media.release"},{"kind":"string","value":"native.audio.start"},{"kind":"string","value":"native.audio.read"},{"kind":"string","value":"native.audio.stop"}]}},{"key":"optionalGrants","value":{"kind":"array","value":[{"kind":"string","value":"externalNavigation"},{"kind":"string","value":"native.media.name"}]}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: MOBILE_WEB_PAGE_ROUTES. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: covers every declared page route, so a new one cannot be missed by this file.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: covers every declared page route, so a new one cannot be missed by this file.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":254,"title":"covers every declared page route, so a new one cannot be missed by this file","start":9538,"end":9866},"implementation_status":"retained"},{"line":273,"title":"adds one module to a page closure, and only the two haptics modules are in it","decision":"remove","reason":"Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","explicit_input_controls":[{"control_id":"21:274:for-of:25","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":274,"source":"ROUTE_MODULES.values()","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":18,"end_line":18,"start":953,"end":996,"source":"['/h/[hostId]', 'app/h/[hostId]/index.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]"},{"kind":"string","value":"app/h/[hostId]/index.tsx"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original for-of control: ['/h/[hostId]', 'app/h/[hostId]/index.tsx']. Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","implementation":{"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":19,"end_line":19,"start":1000,"end":1091,"source":"['/h/[hostId]/agent-history/[worktreeId]', 'app/h/[hostId]/agent-history/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/agent-history/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/agent-history/[worktreeId].tsx"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original for-of control: ['/h/[hostId]/agent-history/[worktreeId]', 'app/h/[hostId]/agent-history/[worktreeId].tsx']. Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","implementation":{"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":20,"end_line":20,"start":1095,"end":1144,"source":"['/h/[hostId]/tasks', 'app/h/[hostId]/tasks.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/tasks"},{"kind":"string","value":"app/h/[hostId]/tasks.tsx"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original for-of control: ['/h/[hostId]/tasks', 'app/h/[hostId]/tasks.tsx']. Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","implementation":{"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":21,"end_line":21,"start":1148,"end":1203,"source":"['/h/[hostId]/accounts', 'app/h/[hostId]/accounts.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/accounts"},{"kind":"string","value":"app/h/[hostId]/accounts.tsx"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original for-of control: ['/h/[hostId]/accounts', 'app/h/[hostId]/accounts.tsx']. Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","implementation":{"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":22,"end_line":22,"start":1207,"end":1272,"source":"['/h/[hostId]/new-workspace', 'app/h/[hostId]/new-workspace.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/new-workspace"},{"kind":"string","value":"app/h/[hostId]/new-workspace.tsx"}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original for-of control: ['/h/[hostId]/new-workspace', 'app/h/[hostId]/new-workspace.tsx']. Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","implementation":{"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":23,"end_line":23,"start":1276,"end":1351,"source":"['/h/[hostId]/files/[worktreeId]', 'app/h/[hostId]/files/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/files/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/files/[worktreeId].tsx"}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original for-of control: ['/h/[hostId]/files/[worktreeId]', 'app/h/[hostId]/files/[worktreeId].tsx']. Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","implementation":{"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":24,"end_line":24,"start":1355,"end":1446,"source":"['/h/[hostId]/files/preview/[worktreeId]', 'app/h/[hostId]/files/preview/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/files/preview/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/files/preview/[worktreeId].tsx"}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original for-of control: ['/h/[hostId]/files/preview/[worktreeId]', 'app/h/[hostId]/files/preview/[worktreeId].tsx']. Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","implementation":{"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":25,"end_line":25,"start":1450,"end":1543,"source":"['/h/[hostId]/source-control/[worktreeId]', 'app/h/[hostId]/source-control/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/source-control/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}]},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original for-of control: ['/h/[hostId]/source-control/[worktreeId]', 'app/h/[hostId]/source-control/[worktreeId].tsx']. Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","implementation":{"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":26,"end_line":26,"start":1547,"end":1624,"source":"['/h/[hostId]/review/[worktreeId]', 'app/h/[hostId]/review/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/review/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}]},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original for-of control: ['/h/[hostId]/review/[worktreeId]', 'app/h/[hostId]/review/[worktreeId].tsx']. Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","implementation":{"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":27,"end_line":27,"start":1628,"end":1707,"source":"['/h/[hostId]/session/[worktreeId]', 'app/h/[hostId]/session/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/session/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].tsx"}]},"index":10,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original for-of control: ['/h/[hostId]/session/[worktreeId]', 'app/h/[hostId]/session/[worktreeId].tsx']. Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","implementation":{"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}}],"decision":"remove","reason":"Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","implementation_rows":[{"index":1,"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."},{"index":2,"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."},{"index":3,"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."},{"index":4,"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."},{"index":5,"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."},{"index":6,"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."},{"index":7,"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."},{"index":8,"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."},{"index":9,"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."},{"index":10,"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}]}],"current_declaration":null,"implementation_status":"removed"}],"lines":288,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites.","planned_changes":[{"original_line":154,"title":"posts every kind the notify admits from the web sibling, and nothing more","decision":"fix","change":"Replace raw five-kind pin with a nonempty positive and keep the independently derived bridge-kind/web-post completeness comparison. Actual notifier behavior is separately exercised in mobile/src/platform/haptics.web.test.ts."},{"original_line":168,"title":"maps every function the app exports from the shell side, so none is unreachable","decision":"fix","change":"Replace raw five-export pin with a nonempty positive and retain the independently derived native-export/shell-import completeness comparison. Actual iOS/Android device-call mapping is separately exercised in page-haptics.test.ts."},{"original_line":213,"title":"resolves the seam to the web sibling: %s","decision":"fix","change":"Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage."},{"original_line":273,"title":"adds one module to a page closure, and only the two haptics modules are in it","decision":"remove","change":"Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered."}],"production_evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.mjs","config/scripts/mobile-web-page-routes.mjs","mobile/src/mobile-web-shell/page-haptics.test.ts","mobile/src/platform/haptics.web.test.ts"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"21:44:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":44,"end_line":44,"start":1862,"end":1894,"source":"mobileWebAppRouteClosure(module)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":44,"end_line":44,"start":1862,"end":1894},"binding":"mobileWebAppRouteClosure","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":44,"end_line":44,"start":1887,"end":1893,"source":"module","value":{"kind":"source-expression","source":"module"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: module. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:57:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":57,"end_line":66,"start":2255,"end":2551,"source":"hapticsTriggerSites(\n [\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) {',\n ' post = notify',\n '}',\n \"export function triggerSelection() { post('selection') }\"\n ].join('\\n'),\n 'haptics.web.ts'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":57,"end_line":66,"start":2255,"end":2551},"binding":"hapticsTriggerSites","resolution":[],"enclosing_case":{"line":55,"title":"names the kind each exported trigger posts"},"affected_case_lines":[],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: names the kind each exported trigger posts.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":58,"end_line":64,"start":2284,"end":2517,"source":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) {',\n ' post = notify',\n '}',\n \"export function triggerSelection() { post('selection') }\"\n ].join('\\n')","value":{"kind":"call-source","callee":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) {',\n ' post = notify',\n '}',\n \"export function triggerSelection() { post('selection') }\"\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) {',\n ' post = notify',\n '}',\n \"export function triggerSelection() { post('selection') }\"\n ].join('\\n')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ 'let post = () => false', 'export function publishHapticsNotifier(notify) {', ' post = notify', '. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: names the kind each exported trigger posts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":65,"end_line":65,"start":2527,"end":2543,"source":"'haptics.web.ts'","value":{"kind":"string","value":"haptics.web.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'haptics.web.ts'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: names the kind each exported trigger posts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:74:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":74,"end_line":81,"start":2907,"end":3163,"source":"hapticsPostedKinds(\n [\n 'let ask = () => false',\n 'export function publishHapticsNotifier(notify) { ask = notify }',\n \"export function triggerError() { ask('error') }\"\n ].join('\\n'),\n 'haptics.web.ts'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":74,"end_line":81,"start":2907,"end":3163},"binding":"hapticsPostedKinds","resolution":[],"enclosing_case":{"line":70,"title":"reads the binding the publisher assigns rather than a name called post"},"affected_case_lines":[],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the binding the publisher assigns rather than a name called post.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":75,"end_line":79,"start":2935,"end":3129,"source":"[\n 'let ask = () => false',\n 'export function publishHapticsNotifier(notify) { ask = notify }',\n \"export function triggerError() { ask('error') }\"\n ].join('\\n')","value":{"kind":"call-source","callee":"[\n 'let ask = () => false',\n 'export function publishHapticsNotifier(notify) { ask = notify }',\n \"export function triggerError() { ask('error') }\"\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'let ask = () => false',\n 'export function publishHapticsNotifier(notify) { ask = notify }',\n \"export function triggerError() { ask('error') }\"\n ].join('\\n')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ 'let ask = () => false', 'export function publishHapticsNotifier(notify) { ask = notify }', \"export function. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the binding the publisher assigns rather than a name called post.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":80,"end_line":80,"start":3139,"end":3155,"source":"'haptics.web.ts'","value":{"kind":"string","value":"haptics.web.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'haptics.web.ts'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the binding the publisher assigns rather than a name called post.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:87:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":87,"end_line":87,"start":3290,"end":3370,"source":"hapticsTriggerSites('export function triggerSelection() {}\\n', 'haptics.web.ts')","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":87,"end_line":87,"start":3290,"end":3370},"binding":"hapticsTriggerSites","resolution":[],"enclosing_case":{"line":85,"title":"reports a function that posts nothing as a site with no kind"},"affected_case_lines":[],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reports a function that posts nothing as a site with no kind.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":87,"end_line":87,"start":3310,"end":3351,"source":"'export function triggerSelection() {}\\n'","value":{"kind":"string","value":"export function triggerSelection() {}\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'export function triggerSelection() {}\\n'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reports a function that posts nothing as a site with no kind.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":87,"end_line":87,"start":3353,"end":3369,"source":"'haptics.web.ts'","value":{"kind":"string","value":"haptics.web.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'haptics.web.ts'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reports a function that posts nothing as a site with no kind.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:93:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":93,"end_line":100,"start":3559,"end":3823,"source":"hapticsPostedKinds(\n [\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n 'export function triggerSelection(kind) { post(kind) }'\n ].join('\\n'),\n 'haptics.web.ts'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":93,"end_line":100,"start":3559,"end":3823},"binding":"hapticsPostedKinds","resolution":[],"enclosing_case":{"line":91,"title":"reports no kind for a function that posts one it computed, which nothing can pin"},"affected_case_lines":[],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reports no kind for a function that posts one it computed, which nothing can pin.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":94,"end_line":98,"start":3587,"end":3789,"source":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n 'export function triggerSelection(kind) { post(kind) }'\n ].join('\\n')","value":{"kind":"call-source","callee":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n 'export function triggerSelection(kind) { post(kind) }'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n 'export function triggerSelection(kind) { post(kind) }'\n ].join('\\n')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ 'let post = () => false', 'export function publishHapticsNotifier(notify) { post = notify }', 'export functi. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reports no kind for a function that posts one it computed, which nothing can pin.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":99,"end_line":99,"start":3799,"end":3815,"source":"'haptics.web.ts'","value":{"kind":"string","value":"haptics.web.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'haptics.web.ts'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reports no kind for a function that posts one it computed, which nothing can pin.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:106:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":106,"end_line":113,"start":3965,"end":4249,"source":"hapticsPostedKinds(\n [\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"export function triggerSelection() { post('selection'); post('success') }\"\n ].join('\\n'),\n 'haptics.web.ts'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":106,"end_line":113,"start":3965,"end":4249},"binding":"hapticsPostedKinds","resolution":[],"enclosing_case":{"line":104,"title":"reports no kind for a function that posts twice, which is two taps for one gesture"},"affected_case_lines":[],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reports no kind for a function that posts twice, which is two taps for one gesture.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":107,"end_line":111,"start":3993,"end":4215,"source":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"export function triggerSelection() { post('selection'); post('success') }\"\n ].join('\\n')","value":{"kind":"call-source","callee":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"export function triggerSelection() { post('selection'); post('success') }\"\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"export function triggerSelection() { post('selection'); post('success') }\"\n ].join('\\n')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ 'let post = () => false', 'export function publishHapticsNotifier(notify) { post = notify }', \"export functi. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reports no kind for a function that posts twice, which is two taps for one gesture.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":112,"end_line":112,"start":4225,"end":4241,"source":"'haptics.web.ts'","value":{"kind":"string","value":"haptics.web.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'haptics.web.ts'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reports no kind for a function that posts twice, which is two taps for one gesture.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:119:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":119,"end_line":126,"start":4358,"end":4615,"source":"hapticsTriggerSites(\n [\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"function triggerLocal() { post('selection') }\"\n ].join('\\n'),\n 'haptics.web.ts'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":119,"end_line":126,"start":4358,"end":4615},"binding":"hapticsTriggerSites","resolution":[],"enclosing_case":{"line":117,"title":"leaves alone a trigger the module does not export"},"affected_case_lines":[],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: leaves alone a trigger the module does not export.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":120,"end_line":124,"start":4387,"end":4581,"source":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"function triggerLocal() { post('selection') }\"\n ].join('\\n')","value":{"kind":"call-source","callee":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"function triggerLocal() { post('selection') }\"\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"function triggerLocal() { post('selection') }\"\n ].join('\\n')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ 'let post = () => false', 'export function publishHapticsNotifier(notify) { post = notify }', \"function trig. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: leaves alone a trigger the module does not export.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":125,"end_line":125,"start":4591,"end":4607,"source":"'haptics.web.ts'","value":{"kind":"string","value":"haptics.web.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'haptics.web.ts'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: leaves alone a trigger the module does not export.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:132:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":132,"end_line":140,"start":4754,"end":5070,"source":"hapticsPostedKinds(\n [\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"// export function triggerSelection() { post('selection') }\",\n 'const hint = \"post(\\'success\\')\"'\n ].join('\\n'),\n 'haptics.web.ts'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":132,"end_line":140,"start":4754,"end":5070},"binding":"hapticsPostedKinds","resolution":[],"enclosing_case":{"line":130,"title":"ignores the seam named inside a comment or a string, which text matching cannot"},"affected_case_lines":[],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: ignores the seam named inside a comment or a string, which text matching cannot.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":133,"end_line":138,"start":4782,"end":5036,"source":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"// export function triggerSelection() { post('selection') }\",\n 'const hint = \"post(\\'success\\')\"'\n ].join('\\n')","value":{"kind":"call-source","callee":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"// export function triggerSelection() { post('selection') }\",\n 'const hint = \"post(\\'success\\')\"'\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n 'let post = () => false',\n 'export function publishHapticsNotifier(notify) { post = notify }',\n \"// export function triggerSelection() { post('selection') }\",\n 'const hint = \"post(\\'success\\')\"'\n ].join('\\n')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ 'let post = () => false', 'export function publishHapticsNotifier(notify) { post = notify }', \"// export fun. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: ignores the seam named inside a comment or a string, which text matching cannot.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":139,"end_line":139,"start":5046,"end":5062,"source":"'haptics.web.ts'","value":{"kind":"string","value":"haptics.web.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'haptics.web.ts'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: ignores the seam named inside a comment or a string, which text matching cannot.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:145:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":145,"end_line":145,"start":5171,"end":5250,"source":"bridgeHapticsKinds(\"export const BRIDGE_HAPTICS_KINDS = ['a', 'b'] as const\\n\")","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":145,"end_line":145,"start":5171,"end":5250},"binding":"bridgeHapticsKinds","resolution":[],"enclosing_case":{"line":144,"title":"reads the kinds off the tuple that declares them"},"affected_case_lines":[],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the kinds off the tuple that declares them.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":145,"end_line":145,"start":5190,"end":5249,"source":"\"export const BRIDGE_HAPTICS_KINDS = ['a', 'b'] as const\\n\"","value":{"kind":"string","value":"export const BRIDGE_HAPTICS_KINDS = ['a', 'b'] as const\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"export const BRIDGE_HAPTICS_KINDS = ['a', 'b'] as const\\n\". The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the kinds off the tuple that declares them.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:149:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":149,"end_line":149,"start":5383,"end":5438,"source":"bridgeHapticsKinds(\"// BRIDGE_HAPTICS_KINDS = ['a']\\n\")","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":149,"end_line":149,"start":5383,"end":5438},"binding":"bridgeHapticsKinds","resolution":[],"enclosing_case":{"line":144,"title":"reads the kinds off the tuple that declares them"},"affected_case_lines":[],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the kinds off the tuple that declares them.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":149,"end_line":149,"start":5402,"end":5437,"source":"\"// BRIDGE_HAPTICS_KINDS = ['a']\\n\"","value":{"kind":"string","value":"// BRIDGE_HAPTICS_KINDS = ['a']\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"// BRIDGE_HAPTICS_KINDS = ['a']\\n\". The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the kinds off the tuple that declares them.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:155:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":155,"end_line":155,"start":5614,"end":5682,"source":"bridgeHapticsKinds(read(HAPTICS_KINDS_MODULE), HAPTICS_KINDS_MODULE)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":155,"end_line":155,"start":5614,"end":5682},"binding":"bridgeHapticsKinds","resolution":[],"enclosing_case":{"line":154,"title":"posts every kind the notify admits from the web sibling, and nothing more"},"affected_case_lines":[],"decision":"keep","reason":"Replace raw five-kind pin with a nonempty positive and keep the independently derived bridge-kind/web-post completeness comparison. Actual notifier behavior is separately exercised in mobile/src/platform/haptics.web.test.ts.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":155,"end_line":155,"start":5633,"end":5659,"source":"read(HAPTICS_KINDS_MODULE)","value":{"kind":"call-source","callee":"read","arguments":[{"kind":"reference","source":"HAPTICS_KINDS_MODULE","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.mjs","line":25,"end_line":25,"start":1311,"end":1365},"resolved":{"kind":"string","value":"src/mobile-web-shell/bridge/bridge-haptics-notify.ts"}}],"source":"read(HAPTICS_KINDS_MODULE)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: read(HAPTICS_KINDS_MODULE). Replace raw five-kind pin with a nonempty positive and keep the independently derived bridge-kind/web-post completeness comparison. Actual notifier behavior is separately exercised in mobile/src/platform/haptics.web.test.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":155,"end_line":155,"start":5661,"end":5681,"source":"HAPTICS_KINDS_MODULE","value":{"kind":"reference","source":"HAPTICS_KINDS_MODULE","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.mjs","line":25,"end_line":25,"start":1311,"end":1365},"resolved":{"kind":"string","value":"src/mobile-web-shell/bridge/bridge-haptics-notify.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: HAPTICS_KINDS_MODULE. Replace raw five-kind pin with a nonempty positive and keep the independently derived bridge-kind/web-post completeness comparison. Actual notifier behavior is separately exercised in mobile/src/platform/haptics.web.test.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:157:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":157,"end_line":157,"start":5736,"end":5788,"source":"hapticsPostedKinds(read(HAPTICS_SEAM), HAPTICS_SEAM)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":157,"end_line":157,"start":5736,"end":5788},"binding":"hapticsPostedKinds","resolution":[],"enclosing_case":{"line":154,"title":"posts every kind the notify admits from the web sibling, and nothing more"},"affected_case_lines":[],"decision":"keep","reason":"Replace raw five-kind pin with a nonempty positive and keep the independently derived bridge-kind/web-post completeness comparison. Actual notifier behavior is separately exercised in mobile/src/platform/haptics.web.test.ts.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":157,"end_line":157,"start":5755,"end":5773,"source":"read(HAPTICS_SEAM)","value":{"kind":"call-source","callee":"read","arguments":[{"kind":"reference","source":"HAPTICS_SEAM","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.mjs","line":19,"end_line":19,"start":997,"end":1026},"resolved":{"kind":"string","value":"src/platform/haptics.web.ts"}}],"source":"read(HAPTICS_SEAM)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: read(HAPTICS_SEAM). Replace raw five-kind pin with a nonempty positive and keep the independently derived bridge-kind/web-post completeness comparison. Actual notifier behavior is separately exercised in mobile/src/platform/haptics.web.test.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":157,"end_line":157,"start":5775,"end":5787,"source":"HAPTICS_SEAM","value":{"kind":"reference","source":"HAPTICS_SEAM","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.mjs","line":19,"end_line":19,"start":997,"end":1026},"resolved":{"kind":"string","value":"src/platform/haptics.web.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: HAPTICS_SEAM. Replace raw five-kind pin with a nonempty positive and keep the independently derived bridge-kind/web-post completeness comparison. Actual notifier behavior is separately exercised in mobile/src/platform/haptics.web.test.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:169:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":169,"end_line":169,"start":6331,"end":6388,"source":"hapticsTriggerSites(read(HAPTICS_NATIVE), HAPTICS_NATIVE)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":169,"end_line":169,"start":6331,"end":6388},"binding":"hapticsTriggerSites","resolution":[],"enclosing_case":{"line":168,"title":"maps every function the app exports from the shell side, so none is unreachable"},"affected_case_lines":[],"decision":"keep","reason":"Replace raw five-export pin with a nonempty positive and retain the independently derived native-export/shell-import completeness comparison. Actual iOS/Android device-call mapping is separately exercised in page-haptics.test.ts.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":169,"end_line":169,"start":6351,"end":6371,"source":"read(HAPTICS_NATIVE)","value":{"kind":"call-source","callee":"read","arguments":[{"kind":"reference","source":"HAPTICS_NATIVE","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.mjs","line":22,"end_line":22,"start":1151,"end":1176},"resolved":{"kind":"string","value":"src/platform/haptics.ts"}}],"source":"read(HAPTICS_NATIVE)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: read(HAPTICS_NATIVE). Replace raw five-export pin with a nonempty positive and retain the independently derived native-export/shell-import completeness comparison. Actual iOS/Android device-call mapping is separately exercised in page-haptics.test.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":169,"end_line":169,"start":6373,"end":6387,"source":"HAPTICS_NATIVE","value":{"kind":"reference","source":"HAPTICS_NATIVE","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.mjs","line":22,"end_line":22,"start":1151,"end":1176},"resolved":{"kind":"string","value":"src/platform/haptics.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: HAPTICS_NATIVE. Replace raw five-export pin with a nonempty positive and retain the independently derived native-export/shell-import completeness comparison. Actual iOS/Android device-call mapping is separately exercised in page-haptics.test.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:173:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":173,"end_line":173,"start":6474,"end":6530,"source":"hapticsImportedNames(read(SHELL_MAPPING), SHELL_MAPPING)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":173,"end_line":173,"start":6474,"end":6530},"binding":"hapticsImportedNames","resolution":[],"enclosing_case":{"line":168,"title":"maps every function the app exports from the shell side, so none is unreachable"},"affected_case_lines":[],"decision":"keep","reason":"Replace raw five-export pin with a nonempty positive and retain the independently derived native-export/shell-import completeness comparison. Actual iOS/Android device-call mapping is separately exercised in page-haptics.test.ts.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":173,"end_line":173,"start":6495,"end":6514,"source":"read(SHELL_MAPPING)","value":{"kind":"call-source","callee":"read","arguments":[{"kind":"reference","source":"SHELL_MAPPING","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":52,"end_line":52,"start":2102,"end":2140},"resolved":{"kind":"string","value":"src/mobile-web-shell/page-haptics.ts"}}],"source":"read(SHELL_MAPPING)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: read(SHELL_MAPPING). Replace raw five-export pin with a nonempty positive and retain the independently derived native-export/shell-import completeness comparison. Actual iOS/Android device-call mapping is separately exercised in page-haptics.test.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":173,"end_line":173,"start":6516,"end":6529,"source":"SHELL_MAPPING","value":{"kind":"reference","source":"SHELL_MAPPING","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":52,"end_line":52,"start":2102,"end":2140},"resolved":{"kind":"string","value":"src/mobile-web-shell/page-haptics.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: SHELL_MAPPING. Replace raw five-export pin with a nonempty positive and retain the independently derived native-export/shell-import completeness comparison. Actual iOS/Android device-call mapping is separately exercised in page-haptics.test.ts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:180:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":180,"end_line":183,"start":6697,"end":6832,"source":"hapticsImportedNames(\n \"import { triggerError, triggerSuccess } from '../platform/haptics'\\n\",\n 'page-haptics.ts'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":180,"end_line":183,"start":6697,"end":6832},"binding":"hapticsImportedNames","resolution":[],"enclosing_case":{"line":178,"title":"names what a module takes from the app haptics"},"affected_case_lines":[],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: names what a module takes from the app haptics.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":181,"end_line":181,"start":6727,"end":6797,"source":"\"import { triggerError, triggerSuccess } from '../platform/haptics'\\n\"","value":{"kind":"string","value":"import { triggerError, triggerSuccess } from '../platform/haptics'\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import { triggerError, triggerSuccess } from '../platform/haptics'\\n\". The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: names what a module takes from the app haptics.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":182,"end_line":182,"start":6807,"end":6824,"source":"'page-haptics.ts'","value":{"kind":"string","value":"page-haptics.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'page-haptics.ts'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: names what a module takes from the app haptics.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:189:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":189,"end_line":192,"start":7009,"end":7136,"source":"hapticsImportedNames(\n \"import { triggerError as boom } from '../platform/haptics'\\n\",\n 'page-haptics.ts'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":189,"end_line":192,"start":7009,"end":7136},"binding":"hapticsImportedNames","resolution":[],"enclosing_case":{"line":187,"title":"reads the imported name and not the local one, a renamed import being the same export"},"affected_case_lines":[],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the imported name and not the local one, a renamed import being the same export.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":190,"end_line":190,"start":7039,"end":7101,"source":"\"import { triggerError as boom } from '../platform/haptics'\\n\"","value":{"kind":"string","value":"import { triggerError as boom } from '../platform/haptics'\n"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: \"import { triggerError as boom } from '../platform/haptics'\\n\". The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the imported name and not the local one, a renamed import being the same export.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":191,"end_line":191,"start":7111,"end":7128,"source":"'page-haptics.ts'","value":{"kind":"string","value":"page-haptics.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'page-haptics.ts'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: reads the imported name and not the local one, a renamed import being the same export.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:198:inline-api-or-fixture-input:17","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":198,"end_line":205,"start":7281,"end":7567,"source":"hapticsImportedNames(\n [\n \"import { triggerError } from '../platform/haptics.web'\",\n \"import { triggerSuccess } from './other-haptics'\",\n \"// import { triggerEdgeBump } from '../platform/haptics'\"\n ].join('\\n'),\n 'page-haptics.ts'\n )","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":198,"end_line":205,"start":7281,"end":7567},"binding":"hapticsImportedNames","resolution":[],"enclosing_case":{"line":196,"title":"leaves alone an import of the web sibling or of something else entirely"},"affected_case_lines":[],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: leaves alone an import of the web sibling or of something else entirely.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":199,"end_line":203,"start":7311,"end":7532,"source":"[\n \"import { triggerError } from '../platform/haptics.web'\",\n \"import { triggerSuccess } from './other-haptics'\",\n \"// import { triggerEdgeBump } from '../platform/haptics'\"\n ].join('\\n')","value":{"kind":"call-source","callee":"[\n \"import { triggerError } from '../platform/haptics.web'\",\n \"import { triggerSuccess } from './other-haptics'\",\n \"// import { triggerEdgeBump } from '../platform/haptics'\"\n ].join","arguments":[{"kind":"string","value":"\n"}],"source":"[\n \"import { triggerError } from '../platform/haptics.web'\",\n \"import { triggerSuccess } from './other-haptics'\",\n \"// import { triggerEdgeBump } from '../platform/haptics'\"\n ].join('\\n')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ \"import { triggerError } from '../platform/haptics.web'\", \"import { triggerSuccess } from './other-haptics'\", . The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: leaves alone an import of the web sibling or of something else entirely.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":204,"end_line":204,"start":7542,"end":7559,"source":"'page-haptics.ts'","value":{"kind":"string","value":"page-haptics.ts"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'page-haptics.ts'. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: leaves alone an import of the web sibling or of something else entirely.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:213:parameter-table:18","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":213,"end_line":219,"start":7677,"end":8086,"source":"[...ROUTE_MODULES]","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":213,"end_line":213,"start":7685,"end":7703},"binding":"it.each","resolution":[],"enclosing_case":{"line":213,"title":"resolves the seam to the web sibling: %s"},"affected_case_lines":[213],"decision":"keep","reason":"Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":18,"end_line":18,"start":953,"end":996,"source":"['/h/[hostId]', 'app/h/[hostId]/index.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]"},{"kind":"string","value":"app/h/[hostId]/index.tsx"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]', 'app/h/[hostId]/index.tsx']. Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":19,"end_line":19,"start":1000,"end":1091,"source":"['/h/[hostId]/agent-history/[worktreeId]', 'app/h/[hostId]/agent-history/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/agent-history/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/agent-history/[worktreeId].tsx"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/agent-history/[worktreeId]', 'app/h/[hostId]/agent-history/[worktreeId].tsx']. Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":20,"end_line":20,"start":1095,"end":1144,"source":"['/h/[hostId]/tasks', 'app/h/[hostId]/tasks.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/tasks"},{"kind":"string","value":"app/h/[hostId]/tasks.tsx"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/tasks', 'app/h/[hostId]/tasks.tsx']. Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":21,"end_line":21,"start":1148,"end":1203,"source":"['/h/[hostId]/accounts', 'app/h/[hostId]/accounts.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/accounts"},{"kind":"string","value":"app/h/[hostId]/accounts.tsx"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/accounts', 'app/h/[hostId]/accounts.tsx']. Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":22,"end_line":22,"start":1207,"end":1272,"source":"['/h/[hostId]/new-workspace', 'app/h/[hostId]/new-workspace.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/new-workspace"},{"kind":"string","value":"app/h/[hostId]/new-workspace.tsx"}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/new-workspace', 'app/h/[hostId]/new-workspace.tsx']. Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":23,"end_line":23,"start":1276,"end":1351,"source":"['/h/[hostId]/files/[worktreeId]', 'app/h/[hostId]/files/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/files/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/files/[worktreeId].tsx"}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/files/[worktreeId]', 'app/h/[hostId]/files/[worktreeId].tsx']. Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":24,"end_line":24,"start":1355,"end":1446,"source":"['/h/[hostId]/files/preview/[worktreeId]', 'app/h/[hostId]/files/preview/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/files/preview/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/files/preview/[worktreeId].tsx"}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/files/preview/[worktreeId]', 'app/h/[hostId]/files/preview/[worktreeId].tsx']. Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":25,"end_line":25,"start":1450,"end":1543,"source":"['/h/[hostId]/source-control/[worktreeId]', 'app/h/[hostId]/source-control/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/source-control/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}]},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/source-control/[worktreeId]', 'app/h/[hostId]/source-control/[worktreeId].tsx']. Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":26,"end_line":26,"start":1547,"end":1624,"source":"['/h/[hostId]/review/[worktreeId]', 'app/h/[hostId]/review/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/review/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}]},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/review/[worktreeId]', 'app/h/[hostId]/review/[worktreeId].tsx']. Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":27,"end_line":27,"start":1628,"end":1707,"source":"['/h/[hostId]/session/[worktreeId]', 'app/h/[hostId]/session/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/session/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].tsx"}]},"index":10,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/session/[worktreeId]', 'app/h/[hostId]/session/[worktreeId].tsx']. Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:221:parameter-table:19","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":221,"end_line":227,"start":8092,"end":8374,"source":"[...ROUTE_MODULES]","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":221,"end_line":221,"start":8100,"end":8118},"binding":"it.each","resolution":[],"enclosing_case":{"line":221,"title":"imports the seam from at least one module, so the grant is not idle: %s"},"affected_case_lines":[221],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":18,"end_line":18,"start":953,"end":996,"source":"['/h/[hostId]', 'app/h/[hostId]/index.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]"},{"kind":"string","value":"app/h/[hostId]/index.tsx"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]', 'app/h/[hostId]/index.tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":19,"end_line":19,"start":1000,"end":1091,"source":"['/h/[hostId]/agent-history/[worktreeId]', 'app/h/[hostId]/agent-history/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/agent-history/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/agent-history/[worktreeId].tsx"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/agent-history/[worktreeId]', 'app/h/[hostId]/agent-history/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":20,"end_line":20,"start":1095,"end":1144,"source":"['/h/[hostId]/tasks', 'app/h/[hostId]/tasks.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/tasks"},{"kind":"string","value":"app/h/[hostId]/tasks.tsx"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/tasks', 'app/h/[hostId]/tasks.tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":21,"end_line":21,"start":1148,"end":1203,"source":"['/h/[hostId]/accounts', 'app/h/[hostId]/accounts.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/accounts"},{"kind":"string","value":"app/h/[hostId]/accounts.tsx"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/accounts', 'app/h/[hostId]/accounts.tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":22,"end_line":22,"start":1207,"end":1272,"source":"['/h/[hostId]/new-workspace', 'app/h/[hostId]/new-workspace.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/new-workspace"},{"kind":"string","value":"app/h/[hostId]/new-workspace.tsx"}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/new-workspace', 'app/h/[hostId]/new-workspace.tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":23,"end_line":23,"start":1276,"end":1351,"source":"['/h/[hostId]/files/[worktreeId]', 'app/h/[hostId]/files/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/files/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/files/[worktreeId].tsx"}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/files/[worktreeId]', 'app/h/[hostId]/files/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":24,"end_line":24,"start":1355,"end":1446,"source":"['/h/[hostId]/files/preview/[worktreeId]', 'app/h/[hostId]/files/preview/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/files/preview/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/files/preview/[worktreeId].tsx"}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/files/preview/[worktreeId]', 'app/h/[hostId]/files/preview/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":25,"end_line":25,"start":1450,"end":1543,"source":"['/h/[hostId]/source-control/[worktreeId]', 'app/h/[hostId]/source-control/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/source-control/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}]},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/source-control/[worktreeId]', 'app/h/[hostId]/source-control/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":26,"end_line":26,"start":1547,"end":1624,"source":"['/h/[hostId]/review/[worktreeId]', 'app/h/[hostId]/review/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/review/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}]},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/review/[worktreeId]', 'app/h/[hostId]/review/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":27,"end_line":27,"start":1628,"end":1707,"source":"['/h/[hostId]/session/[worktreeId]', 'app/h/[hostId]/session/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/session/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].tsx"}]},"index":10,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['/h/[hostId]/session/[worktreeId]', 'app/h/[hostId]/session/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:225:inline-api-or-fixture-input:20","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":225,"end_line":225,"start":8293,"end":8333,"source":"hapticsSeamImporters(mobileDir, closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":225,"end_line":225,"start":8293,"end":8333},"binding":"hapticsSeamImporters","resolution":[],"enclosing_case":{"line":221,"title":"imports the seam from at least one module, so the grant is not idle: %s"},"affected_case_lines":[],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":225,"end_line":225,"start":8314,"end":8323,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":33,"end_line":33,"start":1325,"end":1387},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../../mobile/', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../../mobile/', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":225,"end_line":225,"start":8325,"end":8332,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":224,"end_line":224,"start":8257,"end":8277},"resolved":{"kind":"source-expression","source":"await closureOf(mod)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: imports the seam from at least one module, so the grant is not idle: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:242:fixture-or-oracle-declaration:21","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":242,"end_line":242,"start":9172,"end":9185,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":242,"end_line":242,"start":9183,"end":9185},"binding":"reaching","resolution":[],"enclosing_case":{"line":241,"title":"declares haptics on exactly the routes whose closure reaches the seam"},"affected_case_lines":[],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:243:for-of:22","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":243,"end_line":248,"start":9192,"end":9396,"source":"ROUTE_MODULES","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":243,"end_line":243,"start":9219,"end":9232},"binding":"const [route, mod]","resolution":[{"name":"ROUTE_MODULES","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":39,"end_line":39,"start":1661,"end":1679,"declaration_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":39,"end_line":39,"start":1645,"end":1679},"source":"PAGE_ROUTE_MODULES"},{"name":"PAGE_ROUTE_MODULES","path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":17,"end_line":28,"start":941,"end":1710,"declaration_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":17,"end_line":28,"start":920,"end":1710},"source":"new Map([\n ['/h/[hostId]', 'app/h/[hostId]/index.tsx'],\n ['/h/[hostId]/agent-history/[worktreeId]', 'app/h/[hostId]/agent-history/[worktreeId].tsx'],\n ['/h/[hostId]/tasks', 'app/h/[hostId]/tasks.tsx'],\n ['/h/[hostId]/accounts', 'app/h/[hostId]/accounts.tsx'],\n ['/h/[hostId]/new-workspace', 'app/h/[hostId]/new-workspace.tsx'],\n ['/h/[hostId]/files/[worktreeId]', 'app/h/[hostId]/files/[worktreeId].tsx'],\n ['/h/[hostId]/files/preview/[worktreeId]', 'app/h/[hostId]/files/preview/[worktreeId].tsx'],\n ['/h/[hostId]/source-control/[worktreeId]', 'app/h/[hostId]/source-control/[worktreeId].tsx'],\n ['/h/[hostId]/review/[worktreeId]', 'app/h/[hostId]/review/[worktreeId].tsx'],\n ['/h/[hostId]/session/[worktreeId]', 'app/h/[hostId]/session/[worktreeId].tsx']\n])"}],"transform":"new Map: exact original entries","enclosing_case":{"line":241,"title":"declares haptics on exactly the routes whose closure reaches the seam"},"affected_case_lines":[],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":18,"end_line":18,"start":953,"end":996,"source":"['/h/[hostId]', 'app/h/[hostId]/index.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]"},{"kind":"string","value":"app/h/[hostId]/index.tsx"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['/h/[hostId]', 'app/h/[hostId]/index.tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":19,"end_line":19,"start":1000,"end":1091,"source":"['/h/[hostId]/agent-history/[worktreeId]', 'app/h/[hostId]/agent-history/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/agent-history/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/agent-history/[worktreeId].tsx"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['/h/[hostId]/agent-history/[worktreeId]', 'app/h/[hostId]/agent-history/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":20,"end_line":20,"start":1095,"end":1144,"source":"['/h/[hostId]/tasks', 'app/h/[hostId]/tasks.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/tasks"},{"kind":"string","value":"app/h/[hostId]/tasks.tsx"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['/h/[hostId]/tasks', 'app/h/[hostId]/tasks.tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":21,"end_line":21,"start":1148,"end":1203,"source":"['/h/[hostId]/accounts', 'app/h/[hostId]/accounts.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/accounts"},{"kind":"string","value":"app/h/[hostId]/accounts.tsx"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['/h/[hostId]/accounts', 'app/h/[hostId]/accounts.tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":22,"end_line":22,"start":1207,"end":1272,"source":"['/h/[hostId]/new-workspace', 'app/h/[hostId]/new-workspace.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/new-workspace"},{"kind":"string","value":"app/h/[hostId]/new-workspace.tsx"}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['/h/[hostId]/new-workspace', 'app/h/[hostId]/new-workspace.tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":23,"end_line":23,"start":1276,"end":1351,"source":"['/h/[hostId]/files/[worktreeId]', 'app/h/[hostId]/files/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/files/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/files/[worktreeId].tsx"}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['/h/[hostId]/files/[worktreeId]', 'app/h/[hostId]/files/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":24,"end_line":24,"start":1355,"end":1446,"source":"['/h/[hostId]/files/preview/[worktreeId]', 'app/h/[hostId]/files/preview/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/files/preview/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/files/preview/[worktreeId].tsx"}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['/h/[hostId]/files/preview/[worktreeId]', 'app/h/[hostId]/files/preview/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":25,"end_line":25,"start":1450,"end":1543,"source":"['/h/[hostId]/source-control/[worktreeId]', 'app/h/[hostId]/source-control/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/source-control/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}]},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['/h/[hostId]/source-control/[worktreeId]', 'app/h/[hostId]/source-control/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":26,"end_line":26,"start":1547,"end":1624,"source":"['/h/[hostId]/review/[worktreeId]', 'app/h/[hostId]/review/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/review/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}]},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['/h/[hostId]/review/[worktreeId]', 'app/h/[hostId]/review/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":27,"end_line":27,"start":1628,"end":1707,"source":"['/h/[hostId]/session/[worktreeId]', 'app/h/[hostId]/session/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/session/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].tsx"}]},"index":10,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['/h/[hostId]/session/[worktreeId]', 'app/h/[hostId]/session/[worktreeId].tsx']. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:245:inline-api-or-fixture-input:23","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":245,"end_line":245,"start":9293,"end":9333,"source":"hapticsSeamImporters(mobileDir, closure)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":245,"end_line":245,"start":9293,"end":9333},"binding":"hapticsSeamImporters","resolution":[],"enclosing_case":{"line":241,"title":"declares haptics on exactly the routes whose closure reaches the seam"},"affected_case_lines":[],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":245,"end_line":245,"start":9314,"end":9323,"source":"mobileDir","value":{"kind":"reference","source":"mobileDir","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":33,"end_line":33,"start":1325,"end":1387},"resolved":{"kind":"call-source","callee":"fileURLToPath","arguments":[{"kind":"source-expression","source":"new URL('../../../../mobile/', import.meta.url)"}],"source":"fileURLToPath(new URL('../../../../mobile/', import.meta.url))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mobileDir. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":245,"end_line":245,"start":9325,"end":9332,"source":"closure","value":{"kind":"reference","source":"closure","resolved_at":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":244,"end_line":244,"start":9260,"end":9280},"resolved":{"kind":"source-expression","source":"await closureOf(mod)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: closure. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: declares haptics on exactly the routes whose closure reaches the seam.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:258:inline-api-or-fixture-input:24","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":258,"end_line":258,"start":9897,"end":9953,"source":"pageRouteModulesCoverTheManifest(MOBILE_WEB_PAGE_ROUTES)","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":258,"end_line":258,"start":9897,"end":9953},"binding":"pageRouteModulesCoverTheManifest","resolution":[],"enclosing_case":{"line":256,"title":"covers every declared page route, so a new one cannot be missed by this file"},"affected_case_lines":[],"decision":"keep","reason":"The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: covers every declared page route, so a new one cannot be missed by this file.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":258,"end_line":258,"start":9930,"end":9952,"source":"MOBILE_WEB_PAGE_ROUTES","value":{"kind":"reference","source":"MOBILE_WEB_PAGE_ROUTES","resolved_at":{"path":"config/scripts/mobile-web-page-routes.mjs","line":27,"end_line":183,"start":1834,"end":11879},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"},{"kind":"string","value":"externalLink"},{"kind":"string","value":"haptics"}]}},{"key":"canOwnHostArea","value":{"kind":"boolean","value":true}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/agent-history/[worktreeId]"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"},{"kind":"string","value":"externalLink"},{"kind":"string","value":"haptics"}]}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/tasks"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"},{"kind":"string","value":"externalLink"},{"kind":"string","value":"haptics"},{"kind":"string","value":"native.clipboard.write"}]}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/accounts"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"},{"kind":"string","value":"externalLink"},{"kind":"string","value":"haptics"}]}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/new-workspace"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"},{"kind":"string","value":"externalLink"},{"kind":"string","value":"haptics"}]}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/files/[worktreeId]"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"},{"kind":"string","value":"externalLink"},{"kind":"string","value":"haptics"},{"kind":"string","value":"native.clipboard.write"}]}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/files/preview/[worktreeId]"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"},{"kind":"string","value":"externalLink"},{"kind":"string","value":"haptics"},{"kind":"string","value":"native.clipboard.write"}]}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/source-control/[worktreeId]"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"},{"kind":"string","value":"externalLink"},{"kind":"string","value":"haptics"},{"kind":"string","value":"native.clipboard.write"}]}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/review/[worktreeId]"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"},{"kind":"string","value":"externalLink"},{"kind":"string","value":"haptics"},{"kind":"string","value":"native.clipboard.write"}]}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/session/[worktreeId]"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"},{"kind":"string","value":"externalLink"},{"kind":"string","value":"haptics"},{"kind":"string","value":"screencastBinary"},{"kind":"string","value":"native.clipboard.write"},{"kind":"string","value":"native.clipboard.read"},{"kind":"string","value":"native.media.pick"},{"kind":"string","value":"native.media.read"},{"kind":"string","value":"native.media.release"},{"kind":"string","value":"native.audio.start"},{"kind":"string","value":"native.audio.read"},{"kind":"string","value":"native.audio.stop"}]}},{"key":"optionalGrants","value":{"kind":"array","value":[{"kind":"string","value":"externalNavigation"},{"kind":"string","value":"native.media.name"}]}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: MOBILE_WEB_PAGE_ROUTES. The real haptics reader or actual bundled route closure is checked against independent syntax fixtures, binding origins or route/grant declarations; derived API completeness is distinct from the behavioral notifier/device suites. Scenario: covers every declared page route, so a new one cannot be missed by this file.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}},{"id":"21:274:for-of:25","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":274,"end_line":283,"start":10752,"end":11286,"source":"ROUTE_MODULES.values()","input_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":274,"end_line":274,"start":10770,"end":10792},"binding":"const mod","resolution":[{"name":"ROUTE_MODULES","path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":39,"end_line":39,"start":1661,"end":1679,"declaration_position":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","line":39,"end_line":39,"start":1645,"end":1679},"source":"PAGE_ROUTE_MODULES"},{"name":"PAGE_ROUTE_MODULES","path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":17,"end_line":28,"start":941,"end":1710,"declaration_position":{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":17,"end_line":28,"start":920,"end":1710},"source":"new Map([\n ['/h/[hostId]', 'app/h/[hostId]/index.tsx'],\n ['/h/[hostId]/agent-history/[worktreeId]', 'app/h/[hostId]/agent-history/[worktreeId].tsx'],\n ['/h/[hostId]/tasks', 'app/h/[hostId]/tasks.tsx'],\n ['/h/[hostId]/accounts', 'app/h/[hostId]/accounts.tsx'],\n ['/h/[hostId]/new-workspace', 'app/h/[hostId]/new-workspace.tsx'],\n ['/h/[hostId]/files/[worktreeId]', 'app/h/[hostId]/files/[worktreeId].tsx'],\n ['/h/[hostId]/files/preview/[worktreeId]', 'app/h/[hostId]/files/preview/[worktreeId].tsx'],\n ['/h/[hostId]/source-control/[worktreeId]', 'app/h/[hostId]/source-control/[worktreeId].tsx'],\n ['/h/[hostId]/review/[worktreeId]', 'app/h/[hostId]/review/[worktreeId].tsx'],\n ['/h/[hostId]/session/[worktreeId]', 'app/h/[hostId]/session/[worktreeId].tsx']\n])"}],"transform":"ROUTE_MODULES.values()","enclosing_case":{"line":273,"title":"adds one module to a page closure, and only the two haptics modules are in it"},"affected_case_lines":[],"decision":"remove","reason":"Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":18,"end_line":18,"start":953,"end":996,"source":"['/h/[hostId]', 'app/h/[hostId]/index.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]"},{"kind":"string","value":"app/h/[hostId]/index.tsx"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original for-of control: ['/h/[hostId]', 'app/h/[hostId]/index.tsx']. Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","implementation":{"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":19,"end_line":19,"start":1000,"end":1091,"source":"['/h/[hostId]/agent-history/[worktreeId]', 'app/h/[hostId]/agent-history/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/agent-history/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/agent-history/[worktreeId].tsx"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original for-of control: ['/h/[hostId]/agent-history/[worktreeId]', 'app/h/[hostId]/agent-history/[worktreeId].tsx']. Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","implementation":{"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":20,"end_line":20,"start":1095,"end":1144,"source":"['/h/[hostId]/tasks', 'app/h/[hostId]/tasks.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/tasks"},{"kind":"string","value":"app/h/[hostId]/tasks.tsx"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original for-of control: ['/h/[hostId]/tasks', 'app/h/[hostId]/tasks.tsx']. Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","implementation":{"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":21,"end_line":21,"start":1148,"end":1203,"source":"['/h/[hostId]/accounts', 'app/h/[hostId]/accounts.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/accounts"},{"kind":"string","value":"app/h/[hostId]/accounts.tsx"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original for-of control: ['/h/[hostId]/accounts', 'app/h/[hostId]/accounts.tsx']. Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","implementation":{"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":22,"end_line":22,"start":1207,"end":1272,"source":"['/h/[hostId]/new-workspace', 'app/h/[hostId]/new-workspace.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/new-workspace"},{"kind":"string","value":"app/h/[hostId]/new-workspace.tsx"}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original for-of control: ['/h/[hostId]/new-workspace', 'app/h/[hostId]/new-workspace.tsx']. Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","implementation":{"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":23,"end_line":23,"start":1276,"end":1351,"source":"['/h/[hostId]/files/[worktreeId]', 'app/h/[hostId]/files/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/files/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/files/[worktreeId].tsx"}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original for-of control: ['/h/[hostId]/files/[worktreeId]', 'app/h/[hostId]/files/[worktreeId].tsx']. Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","implementation":{"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":24,"end_line":24,"start":1355,"end":1446,"source":"['/h/[hostId]/files/preview/[worktreeId]', 'app/h/[hostId]/files/preview/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/files/preview/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/files/preview/[worktreeId].tsx"}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original for-of control: ['/h/[hostId]/files/preview/[worktreeId]', 'app/h/[hostId]/files/preview/[worktreeId].tsx']. Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","implementation":{"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":25,"end_line":25,"start":1450,"end":1543,"source":"['/h/[hostId]/source-control/[worktreeId]', 'app/h/[hostId]/source-control/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/source-control/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/source-control/[worktreeId].tsx"}]},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original for-of control: ['/h/[hostId]/source-control/[worktreeId]', 'app/h/[hostId]/source-control/[worktreeId].tsx']. Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","implementation":{"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":26,"end_line":26,"start":1547,"end":1624,"source":"['/h/[hostId]/review/[worktreeId]', 'app/h/[hostId]/review/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/review/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/review/[worktreeId].tsx"}]},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original for-of control: ['/h/[hostId]/review/[worktreeId]', 'app/h/[hostId]/review/[worktreeId].tsx']. Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","implementation":{"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","line":27,"end_line":27,"start":1628,"end":1707,"source":"['/h/[hostId]/session/[worktreeId]', 'app/h/[hostId]/session/[worktreeId].tsx']","value":{"kind":"array","value":[{"kind":"string","value":"/h/[hostId]/session/[worktreeId]"},{"kind":"string","value":"app/h/[hostId]/session/[worktreeId].tsx"}]},"index":10,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original for-of control: ['/h/[hostId]/session/[worktreeId]', 'app/h/[hostId]/session/[worktreeId].tsx']. Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered.","implementation":{"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}}],"implementation_rows":[{"index":1,"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."},{"index":2,"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."},{"index":3,"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."},{"index":4,"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."},{"index":5,"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."},{"index":6,"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."},{"index":7,"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."},{"index":8,"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."},{"index":9,"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."},{"index":10,"disposition":"removed-with-inventory-case","reason":"Removed copied exact haptics-module filename inventory; independent web/native seam positives,importer/grant census and mappings remain."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd"}}],"original_review_sha256":"57e45616896ba46fb3cddcf72bc65a7a22b4eef1c22c46329bc1b2b4be22100d","reviewer":"audit_config","reviewed_sha256":"693167828cf86fe4e869e2f1ad034c0fc1bbcf10ebf02ce864ae9265271845cd","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","final_declarations":17,"current_controls":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","each":[{"input":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","start":7705,"end":7723,"line":213,"end_line":213,"source":"[...ROUTE_MODULES]"},"rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","start":953,"end":996,"line":18,"end_line":18,"source":"['/h/[hostId]', 'app/h/[hostId]/index.tsx']"},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","start":1000,"end":1091,"line":19,"end_line":19,"source":"['/h/[hostId]/agent-history/[worktreeId]', 'app/h/[hostId]/agent-history/[worktreeId].tsx']"},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","start":1095,"end":1144,"line":20,"end_line":20,"source":"['/h/[hostId]/tasks', 'app/h/[hostId]/tasks.tsx']"},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","start":1148,"end":1203,"line":21,"end_line":21,"source":"['/h/[hostId]/accounts', 'app/h/[hostId]/accounts.tsx']"},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","start":1207,"end":1272,"line":22,"end_line":22,"source":"['/h/[hostId]/new-workspace', 'app/h/[hostId]/new-workspace.tsx']"},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","start":1276,"end":1351,"line":23,"end_line":23,"source":"['/h/[hostId]/files/[worktreeId]', 'app/h/[hostId]/files/[worktreeId].tsx']"},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","start":1355,"end":1446,"line":24,"end_line":24,"source":"['/h/[hostId]/files/preview/[worktreeId]', 'app/h/[hostId]/files/preview/[worktreeId].tsx']"},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","start":1450,"end":1543,"line":25,"end_line":25,"source":"['/h/[hostId]/source-control/[worktreeId]', 'app/h/[hostId]/source-control/[worktreeId].tsx']"},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","start":1547,"end":1624,"line":26,"end_line":26,"source":"['/h/[hostId]/review/[worktreeId]', 'app/h/[hostId]/review/[worktreeId].tsx']"},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","start":1628,"end":1707,"line":27,"end_line":27,"source":"['/h/[hostId]/session/[worktreeId]', 'app/h/[hostId]/session/[worktreeId].tsx']"}]},{"input":{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","start":7967,"end":7985,"line":219,"end_line":219,"source":"[...ROUTE_MODULES]"},"rows":[{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","start":953,"end":996,"line":18,"end_line":18,"source":"['/h/[hostId]', 'app/h/[hostId]/index.tsx']"},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","start":1000,"end":1091,"line":19,"end_line":19,"source":"['/h/[hostId]/agent-history/[worktreeId]', 'app/h/[hostId]/agent-history/[worktreeId].tsx']"},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","start":1095,"end":1144,"line":20,"end_line":20,"source":"['/h/[hostId]/tasks', 'app/h/[hostId]/tasks.tsx']"},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","start":1148,"end":1203,"line":21,"end_line":21,"source":"['/h/[hostId]/accounts', 'app/h/[hostId]/accounts.tsx']"},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","start":1207,"end":1272,"line":22,"end_line":22,"source":"['/h/[hostId]/new-workspace', 'app/h/[hostId]/new-workspace.tsx']"},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","start":1276,"end":1351,"line":23,"end_line":23,"source":"['/h/[hostId]/files/[worktreeId]', 'app/h/[hostId]/files/[worktreeId].tsx']"},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","start":1355,"end":1446,"line":24,"end_line":24,"source":"['/h/[hostId]/files/preview/[worktreeId]', 'app/h/[hostId]/files/preview/[worktreeId].tsx']"},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","start":1450,"end":1543,"line":25,"end_line":25,"source":"['/h/[hostId]/source-control/[worktreeId]', 'app/h/[hostId]/source-control/[worktreeId].tsx']"},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","start":1547,"end":1624,"line":26,"end_line":26,"source":"['/h/[hostId]/review/[worktreeId]', 'app/h/[hostId]/review/[worktreeId].tsx']"},{"path":"config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","start":1628,"end":1707,"line":27,"end_line":27,"source":"['/h/[hostId]/session/[worktreeId]', 'app/h/[hostId]/session/[worktreeId].tsx']"}]}],"for_of":[{"path":"config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.test.mjs","start":9086,"end":9099,"line":241,"end_line":241,"source":"ROUTE_MODULES","binding":"const [route, mod]","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[{"original_line":154,"title":"posts every kind the notify admits from the web sibling, and nothing more","decision":"fix","change":"Replace raw five-kind pin with a nonempty positive and keep the independently derived bridge-kind/web-post completeness comparison. Actual notifier behavior is separately exercised in mobile/src/platform/haptics.web.test.ts."},{"original_line":168,"title":"maps every function the app exports from the shell side, so none is unreachable","decision":"fix","change":"Replace raw five-export pin with a nonempty positive and retain the independently derived native-export/shell-import completeness comparison. Actual iOS/Android device-call mapping is separately exercised in page-haptics.test.ts."},{"original_line":213,"title":"resolves the seam to the web sibling: %s","decision":"fix","change":"Remove >250 raw closure count; the explicit web-seam positive/native-sibling exclusion and real importer rule already prevent vacuous coverage."},{"original_line":273,"title":"adds one module to a page closure, and only the two haptics modules are in it","decision":"remove","change":"Remove exact haptics-named module inventory and stale +1 download claim. Actual web/native seam resolution, importer/grant census and notifier/device behavior remain independently covered."}],"manual_implementation_notes":[],"evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/mobile-web-app-page-route-modules.mjs","config/scripts/mobile-web-app/platform-seams/mobile-web-app-haptics-seam.mjs","config/scripts/mobile-web-page-routes.mjs","mobile/src/mobile-web-shell/page-haptics.test.ts","mobile/src/platform/haptics.web.test.ts"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","sha256":"e92e8263a3c1984c346e959d1721a6fc305a5bfcbf19087b6b46ca6b506ea42e","declarations":15,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":22,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"e92e8263a3c1984c346e959d1721a6fc305a5bfcbf19087b6b46ca6b506ea42e","cases":[{"line":237,"title":"paints the artifact under the policy the shell already ships","decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: paints the artifact under the policy the shell already ships.","explicit_input_controls":[{"control_id":"22:225:for-of:11","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"source":"['chromium', 'webkit']","rows":[{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9934,"end":9944,"source":"'chromium'","value":{"kind":"string","value":"chromium"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'chromium'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9946,"end":9954,"source":"'webkit'","value":{"kind":"string","value":"webkit"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'webkit'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: paints the artifact under the policy the shell already ships.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:238:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":238,"source":"open(browser(), { signal: ctx.signal })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":238,"end_line":238,"start":10364,"end":10373,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: paints the artifact under the policy the shell already ships.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":238,"end_line":238,"start":10375,"end":10397,"source":"{ signal: ctx.signal }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: paints the artifact under the policy the shell already ships.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: paints the artifact under the policy the shell already ships.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":237,"title":"paints the artifact under the policy the shell already ships","start":10248,"end":12114},"implementation_status":"retained"},{"line":264,"title":"does not run the artifact, behind two fences either of which would hold","decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","explicit_input_controls":[{"control_id":"22:225:for-of:11","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"source":"['chromium', 'webkit']","rows":[{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9934,"end":9944,"source":"'chromium'","value":{"kind":"string","value":"chromium"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'chromium'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9946,"end":9954,"source":"'webkit'","value":{"kind":"string","value":"webkit"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'webkit'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:265:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":265,"source":"open(browser(), {\n extra: { body: artifactScript(foreignOrigin) },\n signal: ctx.signal,\n // The refusal this arm does cause, waited for so the missing one below is an absence\n // measured beside a presence rather than a list read too early.\n reportReady: 'img-src'\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":265,"end_line":265,"start":12251,"end":12260,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":265,"end_line":271,"start":12262,"end":12565,"source":"{\n extra: { body: artifactScript(foreignOrigin) },\n signal: ctx.signal,\n // The refusal this arm does cause, waited for so the missing one below is an absence\n // measured beside a presence rather than a list read too early.\n reportReady: 'img-src'\n }","value":{"kind":"object","value":[{"key":"extra","value":{"kind":"object","value":[{"key":"body","value":{"kind":"call-source","callee":"artifactScript","arguments":[{"kind":"reference","source":"foreignOrigin","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":52,"end_line":52,"start":2704,"end":2708},"resolved":{"kind":"null","value":null}}],"source":"artifactScript(foreignOrigin)"}}]}},{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"reportReady","value":{"kind":"string","value":"img-src"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { extra: { body: artifactScript(foreignOrigin) }, signal: ctx.signal, // The refusal this arm does cause, wait. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:266:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":266,"source":"artifactScript(foreignOrigin)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":266,"end_line":266,"start":12304,"end":12317,"source":"foreignOrigin","value":{"kind":"reference","source":"foreignOrigin","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":52,"end_line":52,"start":2704,"end":2708},"resolved":{"kind":"null","value":null}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: foreignOrigin. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:280:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":280,"source":"open(browser(), {\n signal: ctx.signal,\n extra: { body: artifactScript(foreignOrigin) },\n csp: null,\n sandbox: 'allow-scripts allow-top-navigation-by-user-activation',\n // The oracle here is what the script did, and the marker element exists before it runs,\n // so this arm waits for the script's own write instead.\n frameReady: 'script'\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":280,"end_line":280,"start":13047,"end":13056,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":280,"end_line":288,"start":13058,"end":13451,"source":"{\n signal: ctx.signal,\n extra: { body: artifactScript(foreignOrigin) },\n csp: null,\n sandbox: 'allow-scripts allow-top-navigation-by-user-activation',\n // The oracle here is what the script did, and the marker element exists before it runs,\n // so this arm waits for the script's own write instead.\n frameReady: 'script'\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"extra","value":{"kind":"object","value":[{"key":"body","value":{"kind":"call-source","callee":"artifactScript","arguments":[{"kind":"reference","source":"foreignOrigin","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":52,"end_line":52,"start":2704,"end":2708},"resolved":{"kind":"null","value":null}}],"source":"artifactScript(foreignOrigin)"}}]}},{"key":"csp","value":{"kind":"null","value":null}},{"key":"sandbox","value":{"kind":"string","value":"allow-scripts allow-top-navigation-by-user-activation"}},{"key":"frameReady","value":{"kind":"string","value":"script"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, extra: { body: artifactScript(foreignOrigin) }, csp: null, sandbox: 'allow-scr. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:282:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":282,"source":"artifactScript(foreignOrigin)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":282,"end_line":282,"start":13130,"end":13143,"source":"foreignOrigin","value":{"kind":"reference","source":"foreignOrigin","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":52,"end_line":52,"start":2704,"end":2708},"resolved":{"kind":"null","value":null}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: foreignOrigin. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:300:inline-api-or-fixture-input:17","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":300,"source":"open(browser(), {\n signal: ctx.signal,\n extra: { body: artifactScript(foreignOrigin) },\n sandbox: 'allow-scripts allow-top-navigation-by-user-activation',\n // The refusal below is this arm's oracle, so the arm waits for the browser to have\n // reported it rather than reading whatever a list inside the frame happens to hold.\n reportReady: 'script-src'\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":300,"end_line":300,"start":14193,"end":14202,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":300,"end_line":307,"start":14204,"end":14604,"source":"{\n signal: ctx.signal,\n extra: { body: artifactScript(foreignOrigin) },\n sandbox: 'allow-scripts allow-top-navigation-by-user-activation',\n // The refusal below is this arm's oracle, so the arm waits for the browser to have\n // reported it rather than reading whatever a list inside the frame happens to hold.\n reportReady: 'script-src'\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"extra","value":{"kind":"object","value":[{"key":"body","value":{"kind":"call-source","callee":"artifactScript","arguments":[{"kind":"reference","source":"foreignOrigin","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":52,"end_line":52,"start":2704,"end":2708},"resolved":{"kind":"null","value":null}}],"source":"artifactScript(foreignOrigin)"}}]}},{"key":"sandbox","value":{"kind":"string","value":"allow-scripts allow-top-navigation-by-user-activation"}},{"key":"reportReady","value":{"kind":"string","value":"script-src"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, extra: { body: artifactScript(foreignOrigin) }, sandbox: 'allow-scripts allow-top-naviga. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:302:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":302,"source":"artifactScript(foreignOrigin)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":302,"end_line":302,"start":14276,"end":14289,"source":"foreignOrigin","value":{"kind":"reference","source":"foreignOrigin","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":52,"end_line":52,"start":2704,"end":2708},"resolved":{"kind":"null","value":null}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: foreignOrigin. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":264,"title":"does not run the artifact, behind two fences either of which would hold","start":12122,"end":15833},"implementation_status":"retained"},{"line":325,"title":"refuses the artifact cleartext subresources by scheme and its font by directive","decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: refuses the artifact cleartext subresources by scheme and its font by directive.","explicit_input_controls":[{"control_id":"22:225:for-of:11","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"source":"['chromium', 'webkit']","rows":[{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9934,"end":9944,"source":"'chromium'","value":{"kind":"string","value":"chromium"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'chromium'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9946,"end":9954,"source":"'webkit'","value":{"kind":"string","value":"webkit"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'webkit'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: refuses the artifact cleartext subresources by scheme and its font by directive.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:326:inline-api-or-fixture-input:19","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":326,"source":"open(browser(), { signal: ctx.signal })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":326,"end_line":326,"start":15978,"end":15987,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: refuses the artifact cleartext subresources by scheme and its font by directive.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":326,"end_line":326,"start":15989,"end":16011,"source":"{ signal: ctx.signal }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: refuses the artifact cleartext subresources by scheme and its font by directive.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: refuses the artifact cleartext subresources by scheme and its font by directive.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:334:inline-api-or-fixture-input:20","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":334,"source":"open(browser(), { csp: null, signal: ctx.signal })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":334,"end_line":334,"start":16606,"end":16615,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: refuses the artifact cleartext subresources by scheme and its font by directive.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":334,"end_line":334,"start":16617,"end":16650,"source":"{ csp: null, signal: ctx.signal }","value":{"kind":"object","value":[{"key":"csp","value":{"kind":"null","value":null}},{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { csp: null, signal: ctx.signal }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: refuses the artifact cleartext subresources by scheme and its font by directive.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: refuses the artifact cleartext subresources by scheme and its font by directive.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":325,"title":"refuses the artifact cleartext subresources by scheme and its font by directive","start":15841,"end":16851},"implementation_status":"retained"},{"line":341,"title":"loads the artifact https images the directive admits, and still refuses its font","decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: loads the artifact https images the directive admits, and still refuses its font.","explicit_input_controls":[{"control_id":"22:225:for-of:11","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"source":"['chromium', 'webkit']","rows":[{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9934,"end":9944,"source":"'chromium'","value":{"kind":"string","value":"chromium"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'chromium'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9946,"end":9954,"source":"'webkit'","value":{"kind":"string","value":"webkit"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'webkit'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: loads the artifact https images the directive admits, and still refuses its font.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:345:inline-api-or-fixture-input:21","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":345,"source":"open(browser(), {\n assets: assetServer.origin,\n frameReady: 'images',\n signal: ctx.signal\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":345,"end_line":345,"start":17265,"end":17274,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: loads the artifact https images the directive admits, and still refuses its font.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":345,"end_line":349,"start":17276,"end":17386,"source":"{\n assets: assetServer.origin,\n frameReady: 'images',\n signal: ctx.signal\n }","value":{"kind":"object","value":[{"key":"assets","value":{"kind":"source-expression","source":"assetServer.origin"}},{"key":"frameReady","value":{"kind":"string","value":"images"}},{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { assets: assetServer.origin, frameReady: 'images', signal: ctx.signal }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: loads the artifact https images the directive admits, and still refuses its font.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: loads the artifact https images the directive admits, and still refuses its font.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":341,"title":"loads the artifact https images the directive admits, and still refuses its font","start":16859,"end":17984},"implementation_status":"retained"},{"line":359,"title":"sends no referrer with an admitted https image, which is the shell header doing it","decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: sends no referrer with an admitted https image, which is the shell header doing it.","explicit_input_controls":[{"control_id":"22:225:for-of:11","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"source":"['chromium', 'webkit']","rows":[{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9934,"end":9944,"source":"'chromium'","value":{"kind":"string","value":"chromium"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'chromium'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9946,"end":9954,"source":"'webkit'","value":{"kind":"string","value":"webkit"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'webkit'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: sends no referrer with an admitted https image, which is the shell header doing it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:360:inline-api-or-fixture-input:22","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":360,"source":"open(browser(), {\n assets: assetServer.origin,\n frameReady: 'images',\n signal: ctx.signal\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":360,"end_line":360,"start":18132,"end":18141,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: sends no referrer with an admitted https image, which is the shell header doing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":360,"end_line":364,"start":18143,"end":18253,"source":"{\n assets: assetServer.origin,\n frameReady: 'images',\n signal: ctx.signal\n }","value":{"kind":"object","value":[{"key":"assets","value":{"kind":"source-expression","source":"assetServer.origin"}},{"key":"frameReady","value":{"kind":"string","value":"images"}},{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { assets: assetServer.origin, frameReady: 'images', signal: ctx.signal }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: sends no referrer with an admitted https image, which is the shell header doing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: sends no referrer with an admitted https image, which is the shell header doing it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:376:inline-api-or-fixture-input:23","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":376,"source":"open(browser(), {\n assets: assetServer.origin,\n csp: 'leaky',\n frameReady: 'images',\n signal: ctx.signal\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":376,"end_line":376,"start":19132,"end":19141,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: sends no referrer with an admitted https image, which is the shell header doing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":376,"end_line":381,"start":19143,"end":19277,"source":"{\n assets: assetServer.origin,\n csp: 'leaky',\n frameReady: 'images',\n signal: ctx.signal\n }","value":{"kind":"object","value":[{"key":"assets","value":{"kind":"source-expression","source":"assetServer.origin"}},{"key":"csp","value":{"kind":"string","value":"leaky"}},{"key":"frameReady","value":{"kind":"string","value":"images"}},{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { assets: assetServer.origin, csp: 'leaky', frameReady: 'images', signal: ctx.signal }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: sends no referrer with an admitted https image, which is the shell header doing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: sends no referrer with an admitted https image, which is the shell header doing it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":359,"title":"sends no referrer with an admitted https image, which is the shell header doing it","start":17992,"end":19639},"implementation_status":"retained"},{"line":392,"title":"asks to navigate the top frame to the shell itself, which the shell must refuse","decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: asks to navigate the top frame to the shell itself, which the shell must refuse.","explicit_input_controls":[{"control_id":"22:225:for-of:11","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"source":"['chromium', 'webkit']","rows":[{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9934,"end":9944,"source":"'chromium'","value":{"kind":"string","value":"chromium"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'chromium'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9946,"end":9954,"source":"'webkit'","value":{"kind":"string","value":"webkit"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'webkit'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: asks to navigate the top frame to the shell itself, which the shell must refuse.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:398:inline-api-or-fixture-input:24","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":398,"source":"open(browser(), {\n signal: ctx.signal,\n expectNavigation: 'main-frame',\n act: async ({ frame }) => {\n await frame?.click('#rootlink', { timeout: 2000 })\n }\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":398,"end_line":398,"start":20237,"end":20246,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: asks to navigate the top frame to the shell itself, which the shell must refuse.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":398,"end_line":404,"start":20248,"end":20444,"source":"{\n signal: ctx.signal,\n expectNavigation: 'main-frame',\n act: async ({ frame }) => {\n await frame?.click('#rootlink', { timeout: 2000 })\n }\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"expectNavigation","value":{"kind":"string","value":"main-frame"}},{"key":"act","value":{"kind":"source-expression","source":"async ({ frame }) => {\n await frame?.click('#rootlink', { timeout: 2000 })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, expectNavigation: 'main-frame', act: async ({ frame }) => { await frame?.cli. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: asks to navigate the top frame to the shell itself, which the shell must refuse.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: asks to navigate the top frame to the shell itself, which the shell must refuse.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:402:browser-event-input:25","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":402,"source":"frame?.click('#rootlink', { timeout: 2000 })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":402,"end_line":402,"start":20391,"end":20402,"source":"'#rootlink'","value":{"kind":"string","value":"#rootlink"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: '#rootlink'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: asks to navigate the top frame to the shell itself, which the shell must refuse.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":402,"end_line":402,"start":20404,"end":20421,"source":"{ timeout: 2000 }","value":{"kind":"object","value":[{"key":"timeout","value":{"kind":"number","value":2000}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { timeout: 2000 }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: asks to navigate the top frame to the shell itself, which the shell must refuse.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: asks to navigate the top frame to the shell itself, which the shell must refuse.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":392,"title":"asks to navigate the top frame to the shell itself, which the shell must refuse","start":19647,"end":20814},"implementation_status":"retained"},{"line":439,"title":"renders an artifact link as text against a shell that cannot open one","decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: renders an artifact link as text against a shell that cannot open one.","explicit_input_controls":[{"control_id":"22:225:for-of:11","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"source":"['chromium', 'webkit']","rows":[{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9934,"end":9944,"source":"'chromium'","value":{"kind":"string","value":"chromium"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'chromium'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9946,"end":9954,"source":"'webkit'","value":{"kind":"string","value":"webkit"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'webkit'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: renders an artifact link as text against a shell that cannot open one.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:440:inline-api-or-fixture-input:26","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":440,"source":"open(browser(), {\n signal: ctx.signal,\n grants: ['navigate', 'storage'],\n act: async ({ frame }) => {\n // The tap the next case makes on a granted shell. It is expected to produce nothing, so\n // the arm takes the bounded settle rather than waiting for a record that is not coming.\n await frame?.click('#toplink', { timeout: 2000 })\n }\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":440,"end_line":440,"start":22907,"end":22916,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: renders an artifact link as text against a shell that cannot open one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":440,"end_line":448,"start":22918,"end":23316,"source":"{\n signal: ctx.signal,\n grants: ['navigate', 'storage'],\n act: async ({ frame }) => {\n // The tap the next case makes on a granted shell. It is expected to produce nothing, so\n // the arm takes the bounded settle rather than waiting for a record that is not coming.\n await frame?.click('#toplink', { timeout: 2000 })\n }\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"}]}},{"key":"act","value":{"kind":"source-expression","source":"async ({ frame }) => {\n // The tap the next case makes on a granted shell. It is expected to produce nothing, so\n // the arm takes the bounded settle rather than waiting for a record that is not coming.\n await frame?.click('#toplink', { timeout: 2000 })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, grants: ['navigate', 'storage'], act: async ({ frame }) => { // The tap the . Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: renders an artifact link as text against a shell that cannot open one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: renders an artifact link as text against a shell that cannot open one.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:446:browser-event-input:27","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":446,"source":"frame?.click('#toplink', { timeout: 2000 })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":446,"end_line":446,"start":23264,"end":23274,"source":"'#toplink'","value":{"kind":"string","value":"#toplink"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: '#toplink'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: renders an artifact link as text against a shell that cannot open one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":446,"end_line":446,"start":23276,"end":23293,"source":"{ timeout: 2000 }","value":{"kind":"object","value":[{"key":"timeout","value":{"kind":"number","value":2000}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { timeout: 2000 }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: renders an artifact link as text against a shell that cannot open one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: renders an artifact link as text against a shell that cannot open one.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:482:inline-api-or-fixture-input:28","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":482,"source":"open(browser(), { signal: ctx.signal })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":482,"end_line":482,"start":25678,"end":25687,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: renders an artifact link as text against a shell that cannot open one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":482,"end_line":482,"start":25689,"end":25711,"source":"{ signal: ctx.signal }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: renders an artifact link as text against a shell that cannot open one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: renders an artifact link as text against a shell that cannot open one.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":439,"title":"renders an artifact link as text against a shell that cannot open one","start":22780,"end":27144},"implementation_status":"retained"},{"line":522,"title":"changes nothing an engine renders except that links are not links","decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: changes nothing an engine renders except that links are not links.","explicit_input_controls":[{"control_id":"22:225:for-of:11","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"source":"['chromium', 'webkit']","rows":[{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9934,"end":9944,"source":"'chromium'","value":{"kind":"string","value":"chromium"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'chromium'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9946,"end":9954,"source":"'webkit'","value":{"kind":"string","value":"webkit"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'webkit'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: changes nothing an engine renders except that links are not links.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:527:inline-api-or-fixture-input:29","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":527,"source":"open(browser(), { signal: ctx.signal, doctype: quirks })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":527,"end_line":527,"start":28347,"end":28356,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: changes nothing an engine renders except that links are not links.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":527,"end_line":527,"start":28358,"end":28397,"source":"{ signal: ctx.signal, doctype: quirks }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"doctype","value":{"kind":"reference","source":"quirks","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":526,"end_line":526,"start":28248,"end":28313},"resolved":{"kind":"string","value":""}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, doctype: quirks }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: changes nothing an engine renders except that links are not links.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: changes nothing an engine renders except that links are not links.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:528:inline-api-or-fixture-input:30","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":528,"source":"open(browser(), {\n signal: ctx.signal,\n doctype: quirks,\n grants: ['navigate', 'storage']\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":528,"end_line":528,"start":28433,"end":28442,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: changes nothing an engine renders except that links are not links.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":528,"end_line":532,"start":28444,"end":28554,"source":"{\n signal: ctx.signal,\n doctype: quirks,\n grants: ['navigate', 'storage']\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"doctype","value":{"kind":"reference","source":"quirks","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":526,"end_line":526,"start":28248,"end":28313},"resolved":{"kind":"string","value":""}}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, doctype: quirks, grants: ['navigate', 'storage'] }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: changes nothing an engine renders except that links are not links.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: changes nothing an engine renders except that links are not links.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:557:inline-api-or-fixture-input:31","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":557,"source":"open(browser(), { signal: ctx.signal, grants: ['navigate', 'storage'] })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":557,"end_line":557,"start":30262,"end":30271,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: changes nothing an engine renders except that links are not links.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":557,"end_line":557,"start":30273,"end":30328,"source":"{ signal: ctx.signal, grants: ['navigate', 'storage'] }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, grants: ['navigate', 'storage'] }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: changes nothing an engine renders except that links are not links.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: changes nothing an engine renders except that links are not links.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":522,"title":"changes nothing an engine renders except that links are not links","start":27874,"end":31209},"implementation_status":"retained"},{"line":590,"title":"taps a fragment link, which navigates this frame rather than scrolling it","decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","explicit_input_controls":[{"control_id":"22:225:for-of:11","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"source":"['chromium', 'webkit']","rows":[{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9934,"end":9944,"source":"'chromium'","value":{"kind":"string","value":"chromium"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'chromium'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9946,"end":9954,"source":"'webkit'","value":{"kind":"string","value":"webkit"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'webkit'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:593:fixture-or-oracle-declaration:32","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":593,"source":"{ body: '
"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: body: '
spacer
'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:595:browser-event-input:33","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":595,"source":"frame?.click('#fraglink', { timeout: 2000 })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":595,"end_line":595,"start":32715,"end":32726,"source":"'#fraglink'","value":{"kind":"string","value":"#fraglink"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: '#fraglink'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":595,"end_line":595,"start":32728,"end":32745,"source":"{ timeout: 2000 }","value":{"kind":"object","value":[{"key":"timeout","value":{"kind":"number","value":2000}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { timeout: 2000 }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:598:inline-api-or-fixture-input:34","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":598,"source":"open(browser(), {\n signal: ctx.signal,\n extra: tall,\n act: tapFragment,\n reportAfterAct: 'frame-src'\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":598,"end_line":598,"start":32791,"end":32800,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":598,"end_line":603,"start":32802,"end":32932,"source":"{\n signal: ctx.signal,\n extra: tall,\n act: tapFragment,\n reportAfterAct: 'frame-src'\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"extra","value":{"kind":"reference","source":"tall","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":593,"end_line":593,"start":32583,"end":32634},"resolved":{"kind":"object","value":[{"key":"body","value":{"kind":"string","value":"
spacer
"}}]}}},{"key":"act","value":{"kind":"reference","source":"tapFragment","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":594,"end_line":596,"start":32663,"end":32756},"resolved":{"kind":"source-expression","source":"async ({ frame }) => {\n await frame?.click('#fraglink', { timeout: 2000 })\n }"}}},{"key":"reportAfterAct","value":{"kind":"string","value":"frame-src"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, extra: tall, act: tapFragment, reportAfterAct: 'frame-src' }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:611:inline-api-or-fixture-input:35","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":611,"source":"open(browser(), {\n signal: ctx.signal,\n extra: tall,\n grants: ['navigate', 'storage'],\n act: tapFragment\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":611,"end_line":611,"start":33394,"end":33403,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":611,"end_line":616,"start":33405,"end":33539,"source":"{\n signal: ctx.signal,\n extra: tall,\n grants: ['navigate', 'storage'],\n act: tapFragment\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"extra","value":{"kind":"reference","source":"tall","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":593,"end_line":593,"start":32583,"end":32634},"resolved":{"kind":"object","value":[{"key":"body","value":{"kind":"string","value":"
spacer
"}}]}}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"}]}},{"key":"act","value":{"kind":"reference","source":"tapFragment","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":594,"end_line":596,"start":32663,"end":32756},"resolved":{"kind":"source-expression","source":"async ({ frame }) => {\n await frame?.click('#fraglink', { timeout: 2000 })\n }"}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, extra: tall, grants: ['navigate', 'storage'], act: tapFragment }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":590,"title":"taps a fragment link, which navigates this frame rather than scrolling it","start":32342,"end":34229},"implementation_status":"retained"},{"line":630,"title":"hands a user's tap on a link to the top frame, exactly once","decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: hands a user's tap on a link to the top frame, exactly once.","explicit_input_controls":[{"control_id":"22:225:for-of:11","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"source":"['chromium', 'webkit']","rows":[{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9934,"end":9944,"source":"'chromium'","value":{"kind":"string","value":"chromium"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'chromium'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9946,"end":9954,"source":"'webkit'","value":{"kind":"string","value":"webkit"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'webkit'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: hands a user's tap on a link to the top frame, exactly once.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:631:inline-api-or-fixture-input:36","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":631,"source":"open(browser(), {\n signal: ctx.signal,\n expectNavigation: 'main-frame',\n act: async ({ frame }) => {\n await frame?.click('#toplink', { timeout: 2000 })\n }\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":631,"end_line":631,"start":34352,"end":34361,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: hands a user's tap on a link to the top frame, exactly once.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":631,"end_line":637,"start":34363,"end":34558,"source":"{\n signal: ctx.signal,\n expectNavigation: 'main-frame',\n act: async ({ frame }) => {\n await frame?.click('#toplink', { timeout: 2000 })\n }\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"expectNavigation","value":{"kind":"string","value":"main-frame"}},{"key":"act","value":{"kind":"source-expression","source":"async ({ frame }) => {\n await frame?.click('#toplink', { timeout: 2000 })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, expectNavigation: 'main-frame', act: async ({ frame }) => { await frame?.cli. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: hands a user's tap on a link to the top frame, exactly once.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: hands a user's tap on a link to the top frame, exactly once.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:635:browser-event-input:37","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":635,"source":"frame?.click('#toplink', { timeout: 2000 })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":635,"end_line":635,"start":34506,"end":34516,"source":"'#toplink'","value":{"kind":"string","value":"#toplink"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: '#toplink'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: hands a user's tap on a link to the top frame, exactly once.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":635,"end_line":635,"start":34518,"end":34535,"source":"{ timeout: 2000 }","value":{"kind":"object","value":[{"key":"timeout","value":{"kind":"number","value":2000}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { timeout: 2000 }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: hands a user's tap on a link to the top frame, exactly once.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: hands a user's tap on a link to the top frame, exactly once.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":630,"title":"hands a user's tap on a link to the top frame, exactly once","start":34237,"end":34762},"implementation_status":"retained"},{"line":644,"title":"cannot reach the shell through a meta refresh at the embedder's own URL","decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","explicit_input_controls":[{"control_id":"22:225:for-of:11","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"source":"['chromium', 'webkit']","rows":[{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9934,"end":9944,"source":"'chromium'","value":{"kind":"string","value":"chromium"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'chromium'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9946,"end":9954,"source":"'webkit'","value":{"kind":"string","value":"webkit"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'webkit'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:649:inline-api-or-fixture-input:38","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":649,"source":"open(browser(), {\n signal: ctx.signal,\n extra: { head: '' }\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":649,"end_line":649,"start":35227,"end":35236,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":649,"end_line":652,"start":35238,"end":35354,"source":"{\n signal: ctx.signal,\n extra: { head: '' }\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"extra","value":{"kind":"object","value":[{"key":"head","value":{"kind":"string","value":""}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, extra: { head: '' } }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:667:inline-api-or-fixture-input:39","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":667,"source":"open(browser(), {\n signal: ctx.signal,\n csp: null,\n sandbox: 'allow-scripts allow-same-origin allow-top-navigation',\n extra: { head: '' },\n // This arm's frame leaves the artifact behind, which is the whole point of it, so the\n // marker is not what says it is ready, and the navigation it makes is what it waits for.\n frameReady: 'load',\n expectNavigation: 'frame'\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":667,"end_line":667,"start":36279,"end":36288,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":667,"end_line":676,"start":36290,"end":36766,"source":"{\n signal: ctx.signal,\n csp: null,\n sandbox: 'allow-scripts allow-same-origin allow-top-navigation',\n extra: { head: '' },\n // This arm's frame leaves the artifact behind, which is the whole point of it, so the\n // marker is not what says it is ready, and the navigation it makes is what it waits for.\n frameReady: 'load',\n expectNavigation: 'frame'\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"csp","value":{"kind":"null","value":null}},{"key":"sandbox","value":{"kind":"string","value":"allow-scripts allow-same-origin allow-top-navigation"}},{"key":"extra","value":{"kind":"object","value":[{"key":"head","value":{"kind":"string","value":""}}]}},{"key":"frameReady","value":{"kind":"string","value":"load"}},{"key":"expectNavigation","value":{"kind":"string","value":"frame"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, csp: null, sandbox: 'allow-scripts allow-same-origin allow-top-navigation', ex. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:684:inline-api-or-fixture-input:40","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":684,"source":"open(browser(), {\n signal: ctx.signal,\n csp: null,\n extra: { head: '' }\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":684,"end_line":684,"start":37181,"end":37190,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":684,"end_line":688,"start":37192,"end":37329,"source":"{\n signal: ctx.signal,\n csp: null,\n extra: { head: '' }\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"csp","value":{"kind":"null","value":null}},{"key":"extra","value":{"kind":"object","value":[{"key":"head","value":{"kind":"string","value":""}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, csp: null, extra: { head: '' } }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:699:inline-api-or-fixture-input:41","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":699,"source":"open(browser(), {\n signal: ctx.signal,\n sandbox: 'allow-scripts allow-same-origin allow-top-navigation',\n extra: { head: '' },\n frameReady: 'load'\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":699,"end_line":699,"start":38085,"end":38094,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":699,"end_line":704,"start":38096,"end":38317,"source":"{\n signal: ctx.signal,\n sandbox: 'allow-scripts allow-same-origin allow-top-navigation',\n extra: { head: '' },\n frameReady: 'load'\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"sandbox","value":{"kind":"string","value":"allow-scripts allow-same-origin allow-top-navigation"}},{"key":"extra","value":{"kind":"object","value":[{"key":"head","value":{"kind":"string","value":""}}]}},{"key":"frameReady","value":{"kind":"string","value":"load"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, sandbox: 'allow-scripts allow-same-origin allow-top-navigation', extra: { head: '` }\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":711,"end_line":711,"start":38661,"end":38670,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":711,"end_line":714,"start":38672,"end":38813,"source":"{\n signal: ctx.signal,\n extra: { head: `` }\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"extra","value":{"kind":"object","value":[{"key":"head","value":{"kind":"source-expression","source":"``"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, extra: { head: `` } . Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:717:inline-api-or-fixture-input:43","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":717,"source":"open(browser(), {\n signal: ctx.signal,\n act: async ({ frame }) => {\n await frame?.click('#submit', { timeout: 2000 })\n }\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":717,"end_line":717,"start":38944,"end":38953,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":717,"end_line":722,"start":38955,"end":39107,"source":"{\n signal: ctx.signal,\n act: async ({ frame }) => {\n await frame?.click('#submit', { timeout: 2000 })\n }\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"act","value":{"kind":"source-expression","source":"async ({ frame }) => {\n await frame?.click('#submit', { timeout: 2000 })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, act: async ({ frame }) => { await frame?.click('#submit', { timeout: 2000 }) . Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation":{"disposition":"strengthened","reason":"The same submit/blanklink fixture action now requires a real frame click and actError===null; no-CSP widened-sandbox positive arms prove the form and popup observers detect successful actions."}}],"decision":"fix","reason":"Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"strengthened","reason":"The same submit/blanklink fixture action now requires a real frame click and actError===null; no-CSP widened-sandbox positive arms prove the form and popup observers detect successful actions."}]},{"control_id":"22:720:browser-event-input:44","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":720,"source":"frame?.click('#submit', { timeout: 2000 })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":720,"end_line":720,"start":39056,"end":39065,"source":"'#submit'","value":{"kind":"string","value":"#submit"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: '#submit'. Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":720,"end_line":720,"start":39067,"end":39084,"source":"{ timeout: 2000 }","value":{"kind":"object","value":[{"key":"timeout","value":{"kind":"number","value":2000}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { timeout: 2000 }. Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:725:inline-api-or-fixture-input:45","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":725,"source":"open(browser(), {\n signal: ctx.signal,\n act: async ({ frame }) => {\n await frame?.click('#blanklink', { timeout: 2000 })\n }\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":725,"end_line":725,"start":39238,"end":39247,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":725,"end_line":730,"start":39249,"end":39404,"source":"{\n signal: ctx.signal,\n act: async ({ frame }) => {\n await frame?.click('#blanklink', { timeout: 2000 })\n }\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"act","value":{"kind":"source-expression","source":"async ({ frame }) => {\n await frame?.click('#blanklink', { timeout: 2000 })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, act: async ({ frame }) => { await frame?.click('#blanklink', { timeout: 2000 }) . Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation":{"disposition":"strengthened","reason":"The same submit/blanklink fixture action now requires a real frame click and actError===null; no-CSP widened-sandbox positive arms prove the form and popup observers detect successful actions."}}],"decision":"fix","reason":"Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"strengthened","reason":"The same submit/blanklink fixture action now requires a real frame click and actError===null; no-CSP widened-sandbox positive arms prove the form and popup observers detect successful actions."}]},{"control_id":"22:728:browser-event-input:46","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":728,"source":"frame?.click('#blanklink', { timeout: 2000 })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":728,"end_line":728,"start":39350,"end":39362,"source":"'#blanklink'","value":{"kind":"string","value":"#blanklink"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: '#blanklink'. Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":728,"end_line":728,"start":39364,"end":39381,"source":"{ timeout: 2000 }","value":{"kind":"object","value":[{"key":"timeout","value":{"kind":"number","value":2000}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { timeout: 2000 }. Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":710,"title":"hands up nothing without a tap, and nothing for a form or a new window","start":38535,"end":40696},"implementation_status":"implemented"},{"line":739,"title":"reads the frame while a navigation it expects has not arrived","decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: reads the frame while a navigation it expects has not arrived.","explicit_input_controls":[{"control_id":"22:225:for-of:11","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"source":"['chromium', 'webkit']","rows":[{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9934,"end":9944,"source":"'chromium'","value":{"kind":"string","value":"chromium"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'chromium'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9946,"end":9954,"source":"'webkit'","value":{"kind":"string","value":"webkit"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'webkit'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: reads the frame while a navigation it expects has not arrived.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:742:fixture-or-oracle-declaration:47","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":742,"source":"[]","rows":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: reads the frame while a navigation it expects has not arrived.","implementation_rows":[]},{"control_id":"22:748:inline-api-or-fixture-input:48","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":748,"source":"waitForRecordedNavigation(\n page,\n [],\n () => false,\n stop.signal,\n { arm: 'arm sampling-probe', browserVersion: browser().version() },\n { sampleEveryMs: 25 }\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":749,"end_line":749,"start":40310,"end":40314,"source":"page","value":{"kind":"reference","source":"page","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":741,"end_line":741,"start":39979,"end":40004},"resolved":{"kind":"source-expression","source":"await browser().newPage()"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: reads the frame while a navigation it expects has not arrived.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":750,"end_line":750,"start":40326,"end":40328,"source":"[]","value":{"kind":"array","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: []. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: reads the frame while a navigation it expects has not arrived.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":751,"end_line":751,"start":40340,"end":40351,"source":"() => false","value":{"kind":"source-expression","source":"() => false"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: () => false. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: reads the frame while a navigation it expects has not arrived.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":752,"end_line":752,"start":40363,"end":40374,"source":"stop.signal","value":{"kind":"source-expression","source":"stop.signal"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: stop.signal. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: reads the frame while a navigation it expects has not arrived.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":5,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":753,"end_line":753,"start":40386,"end":40452,"source":"{ arm: 'arm sampling-probe', browserVersion: browser().version() }","value":{"kind":"object","value":[{"key":"arm","value":{"kind":"string","value":"arm sampling-probe"}},{"key":"browserVersion","value":{"kind":"call-source","callee":"browser().version","arguments":[],"source":"browser().version()"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { arm: 'arm sampling-probe', browserVersion: browser().version() }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: reads the frame while a navigation it expects has not arrived.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":6,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":754,"end_line":754,"start":40464,"end":40485,"source":"{ sampleEveryMs: 25 }","value":{"kind":"object","value":[{"key":"sampleEveryMs","value":{"kind":"number","value":25}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { sampleEveryMs: 25 }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: reads the frame while a navigation it expects has not arrived.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: reads the frame while a navigation it expects has not arrived.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":767,"title":"reads the frame while a navigation it expects has not arrived","start":40994,"end":41980},"implementation_status":"retained"},{"line":768,"title":"gives up on a navigation that is not coming, and names why","decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: gives up on a navigation that is not coming, and names why.","explicit_input_controls":[{"control_id":"22:225:for-of:11","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"source":"['chromium', 'webkit']","rows":[{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9934,"end":9944,"source":"'chromium'","value":{"kind":"string","value":"chromium"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'chromium'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9946,"end":9954,"source":"'webkit'","value":{"kind":"string","value":"webkit"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'webkit'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: gives up on a navigation that is not coming, and names why.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:772:inline-api-or-fixture-input:49","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":772,"source":"waitForRecordedNavigation(\n page,\n [],\n () => false,\n null,\n {\n arm: 'arm bound-probe',\n browserVersion: browser().version(),\n actError: 'locator.click: Timeout 2000ms exceeded'\n },\n { boundMs: 50 }\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":773,"end_line":773,"start":41369,"end":41373,"source":"page","value":{"kind":"reference","source":"page","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":770,"end_line":770,"start":41259,"end":41284},"resolved":{"kind":"source-expression","source":"await browser().newPage()"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: gives up on a navigation that is not coming, and names why.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":774,"end_line":774,"start":41387,"end":41389,"source":"[]","value":{"kind":"array","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: []. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: gives up on a navigation that is not coming, and names why.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":775,"end_line":775,"start":41403,"end":41414,"source":"() => false","value":{"kind":"source-expression","source":"() => false"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: () => false. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: gives up on a navigation that is not coming, and names why.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":776,"end_line":776,"start":41428,"end":41432,"source":"null","value":{"kind":"null","value":null},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: null. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: gives up on a navigation that is not coming, and names why.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":5,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":777,"end_line":781,"start":41446,"end":41615,"source":"{\n arm: 'arm bound-probe',\n browserVersion: browser().version(),\n actError: 'locator.click: Timeout 2000ms exceeded'\n }","value":{"kind":"object","value":[{"key":"arm","value":{"kind":"string","value":"arm bound-probe"}},{"key":"browserVersion","value":{"kind":"call-source","callee":"browser().version","arguments":[],"source":"browser().version()"}},{"key":"actError","value":{"kind":"string","value":"locator.click: Timeout 2000ms exceeded"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { arm: 'arm bound-probe', browserVersion: browser().version(), actError: 'locator.click: Timeout 2. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: gives up on a navigation that is not coming, and names why.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":6,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":782,"end_line":782,"start":41629,"end":41644,"source":"{ boundMs: 50 }","value":{"kind":"object","value":[{"key":"boundMs","value":{"kind":"number","value":50}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { boundMs: 50 }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: gives up on a navigation that is not coming, and names why.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: gives up on a navigation that is not coming, and names why.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":796,"title":"gives up on a navigation that is not coming, and names why","start":42277,"end":43302},"implementation_status":"retained"},{"line":795,"title":"keeps the Preview/Source toggle, and Source shows the source","decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: keeps the Preview/Source toggle, and Source shows the source.","explicit_input_controls":[{"control_id":"22:225:for-of:11","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"source":"['chromium', 'webkit']","rows":[{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9934,"end":9944,"source":"'chromium'","value":{"kind":"string","value":"chromium"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'chromium'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9946,"end":9954,"source":"'webkit'","value":{"kind":"string","value":"webkit"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'webkit'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: keeps the Preview/Source toggle, and Source shows the source.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:796:inline-api-or-fixture-input:50","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":796,"source":"open(browser(), {\n signal: ctx.signal,\n act: async ({ page }) => {\n await page.getByLabel('View HTML source').click({ timeout: 2000 })\n }\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":796,"end_line":796,"start":42288,"end":42297,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: keeps the Preview/Source toggle, and Source shows the source.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":796,"end_line":801,"start":42299,"end":42468,"source":"{\n signal: ctx.signal,\n act: async ({ page }) => {\n await page.getByLabel('View HTML source').click({ timeout: 2000 })\n }\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"act","value":{"kind":"source-expression","source":"async ({ page }) => {\n await page.getByLabel('View HTML source').click({ timeout: 2000 })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, act: async ({ page }) => { await page.getByLabel('View HTML source').click({ timeout: . Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: keeps the Preview/Source toggle, and Source shows the source.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: keeps the Preview/Source toggle, and Source shows the source.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"22:799:browser-event-input:51","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":799,"source":"page.getByLabel('View HTML source').click({ timeout: 2000 })","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":799,"end_line":799,"start":42428,"end":42445,"source":"{ timeout: 2000 }","value":{"kind":"object","value":[{"key":"timeout","value":{"kind":"number","value":2000}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { timeout: 2000 }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: keeps the Preview/Source toggle, and Source shows the source.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: keeps the Preview/Source toggle, and Source shows the source.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":823,"title":"keeps the Preview/Source toggle, and Source shows the source","start":43310,"end":44376},"implementation_status":"retained"}],"lines":821,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","planned_changes":[{"original_line":710,"title":"hands up nothing without a tap, and nothing for a form or a new window","decision":"fix","change":"Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control."}],"production_evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-preview-arm-driver.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-preview-artifact-fixture.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-preview-asset-server.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-preview-csp-reports.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-preview-frame-readiness.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-render-harness.mjs","mobile/src/components/MobileHtmlPreview.tsx"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"22:46:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":46,"end_line":46,"start":2408,"end":2460,"source":"{ x: 60, y: 200, width: 4, height: 4 }","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":46,"end_line":46,"start":2422,"end":2460},"binding":"FRAME_PROBE","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":46,"end_line":46,"start":2424,"end":2429,"source":"x: 60","value":{"kind":"property","key":"x","value":{"kind":"number","value":60}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: x: 60. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":46,"end_line":46,"start":2431,"end":2437,"source":"y: 200","value":{"kind":"property","key":"y","value":{"kind":"number","value":200}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: y: 200. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":46,"end_line":46,"start":2439,"end":2447,"source":"width: 4","value":{"kind":"property","key":"width","value":{"kind":"number","value":4}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: width: 4. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":46,"end_line":46,"start":2449,"end":2458,"source":"height: 4","value":{"kind":"property","key":"height","value":{"kind":"number","value":4}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: height: 4. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:53:fixture-or-oracle-declaration:2","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":53,"end_line":53,"start":2715,"end":2731,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":53,"end_line":53,"start":2729,"end":2731},"binding":"foreignHits","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:76:fixture-or-oracle-declaration:3","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":76,"end_line":76,"start":3708,"end":3721,"source":"{}","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":76,"end_line":76,"start":3719,"end":3721},"binding":"browsers","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:91:fixture-or-oracle-declaration:4","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":91,"end_line":91,"start":4427,"end":4439,"source":"{}","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":91,"end_line":91,"start":4437,"end":4439},"binding":"origins","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:127:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":127,"end_line":127,"start":5904,"end":5937,"source":"startArtifactAssetServer(scratch)","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":127,"end_line":127,"start":5904,"end":5937},"binding":"startArtifactAssetServer","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":127,"end_line":127,"start":5929,"end":5936,"source":"scratch","value":{"kind":"reference","source":"scratch","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":72,"end_line":72,"start":3656,"end":3660},"resolved":{"kind":"null","value":null}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scratch. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:167:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":167,"end_line":173,"start":7892,"end":8235,"source":"createBundleServer({\n outDir,\n // Per document, because each arm's policy names an endpoint carrying that arm's nonce.\n cspHeader: (request) => cspReports.policyFor(shippedCsp, request),\n documentHeaders: shippedDocumentHeaders,\n handleRequest: (request, response, path) => cspReports.handleRequest(request, response, path)\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":167,"end_line":173,"start":7892,"end":8235},"binding":"createBundleServer","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":167,"end_line":173,"start":7911,"end":8234,"source":"{\n outDir,\n // Per document, because each arm's policy names an endpoint carrying that arm's nonce.\n cspHeader: (request) => cspReports.policyFor(shippedCsp, request),\n documentHeaders: shippedDocumentHeaders,\n handleRequest: (request, response, path) => cspReports.handleRequest(request, response, path)\n }","value":{"kind":"object","value":[{"source":"outDir"},{"key":"cspHeader","value":{"kind":"source-expression","source":"(request) => cspReports.policyFor(shippedCsp, request)"}},{"key":"documentHeaders","value":{"kind":"reference","source":"shippedDocumentHeaders","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":92,"end_line":92,"start":4469,"end":4473},"resolved":{"kind":"null","value":null}}},{"key":"handleRequest","value":{"kind":"source-expression","source":"(request, response, path) => cspReports.handleRequest(request, response, path)"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { outDir, // Per document, because each arm's policy names an endpoint carrying that arm's nonce. cspHeader: (request) => cspRep. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:176:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":176,"end_line":176,"start":8322,"end":8369,"source":"createBundleServer({ outDir, cspHeader: null })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":176,"end_line":176,"start":8322,"end":8369},"binding":"createBundleServer","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":176,"end_line":176,"start":8341,"end":8368,"source":"{ outDir, cspHeader: null }","value":{"kind":"object","value":[{"source":"outDir"},{"key":"cspHeader","value":{"kind":"null","value":null}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { outDir, cspHeader: null }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:179:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":179,"end_line":183,"start":8448,"end":8569,"source":"createBundleServer({\n outDir,\n cspHeader: shippedCsp,\n documentHeaders: { 'Referrer-Policy': 'unsafe-url' }\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":179,"end_line":183,"start":8448,"end":8569},"binding":"createBundleServer","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":179,"end_line":183,"start":8467,"end":8568,"source":"{\n outDir,\n cspHeader: shippedCsp,\n documentHeaders: { 'Referrer-Policy': 'unsafe-url' }\n }","value":{"kind":"object","value":[{"source":"outDir"},{"key":"cspHeader","value":{"kind":"reference","source":"shippedCsp","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":74,"end_line":74,"start":3696,"end":3700},"resolved":{"kind":"null","value":null}}},{"key":"documentHeaders","value":{"kind":"object","value":[{"key":"'Referrer-Policy'","value":{"kind":"string","value":"unsafe-url"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { outDir, cspHeader: shippedCsp, documentHeaders: { 'Referrer-Policy': 'unsafe-url' } }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:212:fixture-or-oracle-declaration:9","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":212,"end_line":220,"start":9610,"end":9735,"source":"{\n origins,\n foreignHits,\n cspReports,\n clip: FRAME_PROBE,\n nonce: 0,\n foreignOrigin: null,\n assetServer: null\n}","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":212,"end_line":220,"start":9616,"end":9735},"binding":"rig","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":213,"end_line":213,"start":9620,"end":9627,"source":"origins","value":{"kind":"source-expression","source":"origins"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: origins. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":214,"end_line":214,"start":9631,"end":9642,"source":"foreignHits","value":{"kind":"source-expression","source":"foreignHits"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: foreignHits. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":215,"end_line":215,"start":9646,"end":9656,"source":"cspReports","value":{"kind":"source-expression","source":"cspReports"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: cspReports. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":216,"end_line":216,"start":9660,"end":9677,"source":"clip: FRAME_PROBE","value":{"kind":"property","key":"clip","value":{"kind":"reference","source":"FRAME_PROBE","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":46,"end_line":46,"start":2422,"end":2460},"resolved":{"kind":"object","value":[{"key":"x","value":{"kind":"number","value":60}},{"key":"y","value":{"kind":"number","value":200}},{"key":"width","value":{"kind":"number","value":4}},{"key":"height","value":{"kind":"number","value":4}}]}}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: clip: FRAME_PROBE. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":5,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":217,"end_line":217,"start":9681,"end":9689,"source":"nonce: 0","value":{"kind":"property","key":"nonce","value":{"kind":"number","value":0}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: nonce: 0. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":6,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":218,"end_line":218,"start":9693,"end":9712,"source":"foreignOrigin: null","value":{"kind":"property","key":"foreignOrigin","value":{"kind":"null","value":null}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: foreignOrigin: null. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":7,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":219,"end_line":219,"start":9716,"end":9733,"source":"assetServer: null","value":{"kind":"property","key":"assetServer","value":{"kind":"null","value":null}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: assetServer: null. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:223:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":223,"end_line":223,"start":9873,"end":9910,"source":"openPreviewArm(rig, browser, options)","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":223,"end_line":223,"start":9873,"end":9910},"binding":"openPreviewArm","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":223,"end_line":223,"start":9888,"end":9891,"source":"rig","value":{"kind":"reference","source":"rig","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":212,"end_line":220,"start":9616,"end":9735},"resolved":{"kind":"object","value":[{"source":"origins"},{"source":"foreignHits"},{"source":"cspReports"},{"key":"clip","value":{"kind":"reference","source":"FRAME_PROBE","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":46,"end_line":46,"start":2422,"end":2460},"resolved":{"kind":"object","value":[{"key":"x","value":{"kind":"number","value":60}},{"key":"y","value":{"kind":"number","value":200}},{"key":"width","value":{"kind":"number","value":4}},{"key":"height","value":{"kind":"number","value":4}}]}}},{"key":"nonce","value":{"kind":"number","value":0}},{"key":"foreignOrigin","value":{"kind":"null","value":null}},{"key":"assetServer","value":{"kind":"null","value":null}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: rig. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":223,"end_line":223,"start":9893,"end":9900,"source":"browser","value":{"kind":"reference","source":"browser","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":229,"end_line":235,"start":10063,"end":10240},"resolved":{"kind":"source-expression","source":"() => {\n const one = browsers[engine]\n if (!one) {\n throw new Error(`${engine} is not installed for playwright-core`)\n }\n return one\n }"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":223,"end_line":223,"start":9902,"end":9909,"source":"options","value":{"kind":"source-expression","source":"options"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: options. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:225:for-of:11","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":820,"start":9912,"end":43263,"source":"['chromium', 'webkit']","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9933,"end":9955},"binding":"const engine","resolution":[],"enclosing_case":null,"affected_case_lines":[237,264,325,341,359,392,439,522,590,630,644,710,739,768,795],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","rows":[{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9934,"end":9944,"source":"'chromium'","value":{"kind":"string","value":"chromium"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'chromium'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":225,"end_line":225,"start":9946,"end":9954,"source":"'webkit'","value":{"kind":"string","value":"webkit"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'webkit'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:238:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":238,"end_line":238,"start":10359,"end":10398,"source":"open(browser(), { signal: ctx.signal })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":238,"end_line":238,"start":10359,"end":10398},"binding":"open","resolution":[],"enclosing_case":{"line":237,"title":"paints the artifact under the policy the shell already ships"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: paints the artifact under the policy the shell already ships.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":238,"end_line":238,"start":10364,"end":10373,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: paints the artifact under the policy the shell already ships.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":238,"end_line":238,"start":10375,"end":10397,"source":"{ signal: ctx.signal }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: paints the artifact under the policy the shell already ships.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:265:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":265,"end_line":271,"start":12246,"end":12566,"source":"open(browser(), {\n extra: { body: artifactScript(foreignOrigin) },\n signal: ctx.signal,\n // The refusal this arm does cause, waited for so the missing one below is an absence\n // measured beside a presence rather than a list read too early.\n reportReady: 'img-src'\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":265,"end_line":271,"start":12246,"end":12566},"binding":"open","resolution":[],"enclosing_case":{"line":264,"title":"does not run the artifact, behind two fences either of which would hold"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":265,"end_line":265,"start":12251,"end":12260,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":265,"end_line":271,"start":12262,"end":12565,"source":"{\n extra: { body: artifactScript(foreignOrigin) },\n signal: ctx.signal,\n // The refusal this arm does cause, waited for so the missing one below is an absence\n // measured beside a presence rather than a list read too early.\n reportReady: 'img-src'\n }","value":{"kind":"object","value":[{"key":"extra","value":{"kind":"object","value":[{"key":"body","value":{"kind":"call-source","callee":"artifactScript","arguments":[{"kind":"reference","source":"foreignOrigin","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":52,"end_line":52,"start":2704,"end":2708},"resolved":{"kind":"null","value":null}}],"source":"artifactScript(foreignOrigin)"}}]}},{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"reportReady","value":{"kind":"string","value":"img-src"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { extra: { body: artifactScript(foreignOrigin) }, signal: ctx.signal, // The refusal this arm does cause, wait. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:266:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":266,"end_line":266,"start":12289,"end":12318,"source":"artifactScript(foreignOrigin)","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":266,"end_line":266,"start":12289,"end":12318},"binding":"artifactScript","resolution":[],"enclosing_case":{"line":264,"title":"does not run the artifact, behind two fences either of which would hold"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":266,"end_line":266,"start":12304,"end":12317,"source":"foreignOrigin","value":{"kind":"reference","source":"foreignOrigin","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":52,"end_line":52,"start":2704,"end":2708},"resolved":{"kind":"null","value":null}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: foreignOrigin. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:280:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":280,"end_line":288,"start":13042,"end":13452,"source":"open(browser(), {\n signal: ctx.signal,\n extra: { body: artifactScript(foreignOrigin) },\n csp: null,\n sandbox: 'allow-scripts allow-top-navigation-by-user-activation',\n // The oracle here is what the script did, and the marker element exists before it runs,\n // so this arm waits for the script's own write instead.\n frameReady: 'script'\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":280,"end_line":288,"start":13042,"end":13452},"binding":"open","resolution":[],"enclosing_case":{"line":264,"title":"does not run the artifact, behind two fences either of which would hold"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":280,"end_line":280,"start":13047,"end":13056,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":280,"end_line":288,"start":13058,"end":13451,"source":"{\n signal: ctx.signal,\n extra: { body: artifactScript(foreignOrigin) },\n csp: null,\n sandbox: 'allow-scripts allow-top-navigation-by-user-activation',\n // The oracle here is what the script did, and the marker element exists before it runs,\n // so this arm waits for the script's own write instead.\n frameReady: 'script'\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"extra","value":{"kind":"object","value":[{"key":"body","value":{"kind":"call-source","callee":"artifactScript","arguments":[{"kind":"reference","source":"foreignOrigin","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":52,"end_line":52,"start":2704,"end":2708},"resolved":{"kind":"null","value":null}}],"source":"artifactScript(foreignOrigin)"}}]}},{"key":"csp","value":{"kind":"null","value":null}},{"key":"sandbox","value":{"kind":"string","value":"allow-scripts allow-top-navigation-by-user-activation"}},{"key":"frameReady","value":{"kind":"string","value":"script"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, extra: { body: artifactScript(foreignOrigin) }, csp: null, sandbox: 'allow-scr. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:282:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":282,"end_line":282,"start":13115,"end":13144,"source":"artifactScript(foreignOrigin)","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":282,"end_line":282,"start":13115,"end":13144},"binding":"artifactScript","resolution":[],"enclosing_case":{"line":264,"title":"does not run the artifact, behind two fences either of which would hold"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":282,"end_line":282,"start":13130,"end":13143,"source":"foreignOrigin","value":{"kind":"reference","source":"foreignOrigin","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":52,"end_line":52,"start":2704,"end":2708},"resolved":{"kind":"null","value":null}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: foreignOrigin. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:300:inline-api-or-fixture-input:17","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":300,"end_line":307,"start":14188,"end":14605,"source":"open(browser(), {\n signal: ctx.signal,\n extra: { body: artifactScript(foreignOrigin) },\n sandbox: 'allow-scripts allow-top-navigation-by-user-activation',\n // The refusal below is this arm's oracle, so the arm waits for the browser to have\n // reported it rather than reading whatever a list inside the frame happens to hold.\n reportReady: 'script-src'\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":300,"end_line":307,"start":14188,"end":14605},"binding":"open","resolution":[],"enclosing_case":{"line":264,"title":"does not run the artifact, behind two fences either of which would hold"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":300,"end_line":300,"start":14193,"end":14202,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":300,"end_line":307,"start":14204,"end":14604,"source":"{\n signal: ctx.signal,\n extra: { body: artifactScript(foreignOrigin) },\n sandbox: 'allow-scripts allow-top-navigation-by-user-activation',\n // The refusal below is this arm's oracle, so the arm waits for the browser to have\n // reported it rather than reading whatever a list inside the frame happens to hold.\n reportReady: 'script-src'\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"extra","value":{"kind":"object","value":[{"key":"body","value":{"kind":"call-source","callee":"artifactScript","arguments":[{"kind":"reference","source":"foreignOrigin","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":52,"end_line":52,"start":2704,"end":2708},"resolved":{"kind":"null","value":null}}],"source":"artifactScript(foreignOrigin)"}}]}},{"key":"sandbox","value":{"kind":"string","value":"allow-scripts allow-top-navigation-by-user-activation"}},{"key":"reportReady","value":{"kind":"string","value":"script-src"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, extra: { body: artifactScript(foreignOrigin) }, sandbox: 'allow-scripts allow-top-naviga. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:302:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":302,"end_line":302,"start":14261,"end":14290,"source":"artifactScript(foreignOrigin)","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":302,"end_line":302,"start":14261,"end":14290},"binding":"artifactScript","resolution":[],"enclosing_case":{"line":264,"title":"does not run the artifact, behind two fences either of which would hold"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":302,"end_line":302,"start":14276,"end":14289,"source":"foreignOrigin","value":{"kind":"reference","source":"foreignOrigin","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":52,"end_line":52,"start":2704,"end":2708},"resolved":{"kind":"null","value":null}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: foreignOrigin. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: does not run the artifact, behind two fences either of which would hold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:326:inline-api-or-fixture-input:19","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":326,"end_line":326,"start":15973,"end":16012,"source":"open(browser(), { signal: ctx.signal })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":326,"end_line":326,"start":15973,"end":16012},"binding":"open","resolution":[],"enclosing_case":{"line":325,"title":"refuses the artifact cleartext subresources by scheme and its font by directive"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: refuses the artifact cleartext subresources by scheme and its font by directive.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":326,"end_line":326,"start":15978,"end":15987,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: refuses the artifact cleartext subresources by scheme and its font by directive.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":326,"end_line":326,"start":15989,"end":16011,"source":"{ signal: ctx.signal }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: refuses the artifact cleartext subresources by scheme and its font by directive.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:334:inline-api-or-fixture-input:20","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":334,"end_line":334,"start":16601,"end":16651,"source":"open(browser(), { csp: null, signal: ctx.signal })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":334,"end_line":334,"start":16601,"end":16651},"binding":"open","resolution":[],"enclosing_case":{"line":325,"title":"refuses the artifact cleartext subresources by scheme and its font by directive"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: refuses the artifact cleartext subresources by scheme and its font by directive.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":334,"end_line":334,"start":16606,"end":16615,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: refuses the artifact cleartext subresources by scheme and its font by directive.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":334,"end_line":334,"start":16617,"end":16650,"source":"{ csp: null, signal: ctx.signal }","value":{"kind":"object","value":[{"key":"csp","value":{"kind":"null","value":null}},{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { csp: null, signal: ctx.signal }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: refuses the artifact cleartext subresources by scheme and its font by directive.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:345:inline-api-or-fixture-input:21","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":345,"end_line":349,"start":17260,"end":17387,"source":"open(browser(), {\n assets: assetServer.origin,\n frameReady: 'images',\n signal: ctx.signal\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":345,"end_line":349,"start":17260,"end":17387},"binding":"open","resolution":[],"enclosing_case":{"line":341,"title":"loads the artifact https images the directive admits, and still refuses its font"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: loads the artifact https images the directive admits, and still refuses its font.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":345,"end_line":345,"start":17265,"end":17274,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: loads the artifact https images the directive admits, and still refuses its font.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":345,"end_line":349,"start":17276,"end":17386,"source":"{\n assets: assetServer.origin,\n frameReady: 'images',\n signal: ctx.signal\n }","value":{"kind":"object","value":[{"key":"assets","value":{"kind":"source-expression","source":"assetServer.origin"}},{"key":"frameReady","value":{"kind":"string","value":"images"}},{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { assets: assetServer.origin, frameReady: 'images', signal: ctx.signal }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: loads the artifact https images the directive admits, and still refuses its font.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:360:inline-api-or-fixture-input:22","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":360,"end_line":364,"start":18127,"end":18254,"source":"open(browser(), {\n assets: assetServer.origin,\n frameReady: 'images',\n signal: ctx.signal\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":360,"end_line":364,"start":18127,"end":18254},"binding":"open","resolution":[],"enclosing_case":{"line":359,"title":"sends no referrer with an admitted https image, which is the shell header doing it"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: sends no referrer with an admitted https image, which is the shell header doing it.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":360,"end_line":360,"start":18132,"end":18141,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: sends no referrer with an admitted https image, which is the shell header doing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":360,"end_line":364,"start":18143,"end":18253,"source":"{\n assets: assetServer.origin,\n frameReady: 'images',\n signal: ctx.signal\n }","value":{"kind":"object","value":[{"key":"assets","value":{"kind":"source-expression","source":"assetServer.origin"}},{"key":"frameReady","value":{"kind":"string","value":"images"}},{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { assets: assetServer.origin, frameReady: 'images', signal: ctx.signal }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: sends no referrer with an admitted https image, which is the shell header doing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:376:inline-api-or-fixture-input:23","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":376,"end_line":381,"start":19127,"end":19278,"source":"open(browser(), {\n assets: assetServer.origin,\n csp: 'leaky',\n frameReady: 'images',\n signal: ctx.signal\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":376,"end_line":381,"start":19127,"end":19278},"binding":"open","resolution":[],"enclosing_case":{"line":359,"title":"sends no referrer with an admitted https image, which is the shell header doing it"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: sends no referrer with an admitted https image, which is the shell header doing it.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":376,"end_line":376,"start":19132,"end":19141,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: sends no referrer with an admitted https image, which is the shell header doing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":376,"end_line":381,"start":19143,"end":19277,"source":"{\n assets: assetServer.origin,\n csp: 'leaky',\n frameReady: 'images',\n signal: ctx.signal\n }","value":{"kind":"object","value":[{"key":"assets","value":{"kind":"source-expression","source":"assetServer.origin"}},{"key":"csp","value":{"kind":"string","value":"leaky"}},{"key":"frameReady","value":{"kind":"string","value":"images"}},{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { assets: assetServer.origin, csp: 'leaky', frameReady: 'images', signal: ctx.signal }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: sends no referrer with an admitted https image, which is the shell header doing it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:398:inline-api-or-fixture-input:24","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":398,"end_line":404,"start":20232,"end":20445,"source":"open(browser(), {\n signal: ctx.signal,\n expectNavigation: 'main-frame',\n act: async ({ frame }) => {\n await frame?.click('#rootlink', { timeout: 2000 })\n }\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":398,"end_line":404,"start":20232,"end":20445},"binding":"open","resolution":[],"enclosing_case":{"line":392,"title":"asks to navigate the top frame to the shell itself, which the shell must refuse"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: asks to navigate the top frame to the shell itself, which the shell must refuse.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":398,"end_line":398,"start":20237,"end":20246,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: asks to navigate the top frame to the shell itself, which the shell must refuse.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":398,"end_line":404,"start":20248,"end":20444,"source":"{\n signal: ctx.signal,\n expectNavigation: 'main-frame',\n act: async ({ frame }) => {\n await frame?.click('#rootlink', { timeout: 2000 })\n }\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"expectNavigation","value":{"kind":"string","value":"main-frame"}},{"key":"act","value":{"kind":"source-expression","source":"async ({ frame }) => {\n await frame?.click('#rootlink', { timeout: 2000 })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, expectNavigation: 'main-frame', act: async ({ frame }) => { await frame?.cli. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: asks to navigate the top frame to the shell itself, which the shell must refuse.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:402:browser-event-input:25","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":402,"end_line":402,"start":20378,"end":20422,"source":"frame?.click('#rootlink', { timeout: 2000 })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":402,"end_line":402,"start":20378,"end":20422},"binding":"frame?.click","resolution":[],"enclosing_case":{"line":392,"title":"asks to navigate the top frame to the shell itself, which the shell must refuse"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: asks to navigate the top frame to the shell itself, which the shell must refuse.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":402,"end_line":402,"start":20391,"end":20402,"source":"'#rootlink'","value":{"kind":"string","value":"#rootlink"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: '#rootlink'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: asks to navigate the top frame to the shell itself, which the shell must refuse.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":402,"end_line":402,"start":20404,"end":20421,"source":"{ timeout: 2000 }","value":{"kind":"object","value":[{"key":"timeout","value":{"kind":"number","value":2000}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { timeout: 2000 }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: asks to navigate the top frame to the shell itself, which the shell must refuse.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:440:inline-api-or-fixture-input:26","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":440,"end_line":448,"start":22902,"end":23317,"source":"open(browser(), {\n signal: ctx.signal,\n grants: ['navigate', 'storage'],\n act: async ({ frame }) => {\n // The tap the next case makes on a granted shell. It is expected to produce nothing, so\n // the arm takes the bounded settle rather than waiting for a record that is not coming.\n await frame?.click('#toplink', { timeout: 2000 })\n }\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":440,"end_line":448,"start":22902,"end":23317},"binding":"open","resolution":[],"enclosing_case":{"line":439,"title":"renders an artifact link as text against a shell that cannot open one"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: renders an artifact link as text against a shell that cannot open one.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":440,"end_line":440,"start":22907,"end":22916,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: renders an artifact link as text against a shell that cannot open one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":440,"end_line":448,"start":22918,"end":23316,"source":"{\n signal: ctx.signal,\n grants: ['navigate', 'storage'],\n act: async ({ frame }) => {\n // The tap the next case makes on a granted shell. It is expected to produce nothing, so\n // the arm takes the bounded settle rather than waiting for a record that is not coming.\n await frame?.click('#toplink', { timeout: 2000 })\n }\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"}]}},{"key":"act","value":{"kind":"source-expression","source":"async ({ frame }) => {\n // The tap the next case makes on a granted shell. It is expected to produce nothing, so\n // the arm takes the bounded settle rather than waiting for a record that is not coming.\n await frame?.click('#toplink', { timeout: 2000 })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, grants: ['navigate', 'storage'], act: async ({ frame }) => { // The tap the . Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: renders an artifact link as text against a shell that cannot open one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:446:browser-event-input:27","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":446,"end_line":446,"start":23251,"end":23294,"source":"frame?.click('#toplink', { timeout: 2000 })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":446,"end_line":446,"start":23251,"end":23294},"binding":"frame?.click","resolution":[],"enclosing_case":{"line":439,"title":"renders an artifact link as text against a shell that cannot open one"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: renders an artifact link as text against a shell that cannot open one.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":446,"end_line":446,"start":23264,"end":23274,"source":"'#toplink'","value":{"kind":"string","value":"#toplink"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: '#toplink'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: renders an artifact link as text against a shell that cannot open one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":446,"end_line":446,"start":23276,"end":23293,"source":"{ timeout: 2000 }","value":{"kind":"object","value":[{"key":"timeout","value":{"kind":"number","value":2000}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { timeout: 2000 }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: renders an artifact link as text against a shell that cannot open one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:482:inline-api-or-fixture-input:28","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":482,"end_line":482,"start":25673,"end":25712,"source":"open(browser(), { signal: ctx.signal })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":482,"end_line":482,"start":25673,"end":25712},"binding":"open","resolution":[],"enclosing_case":{"line":439,"title":"renders an artifact link as text against a shell that cannot open one"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: renders an artifact link as text against a shell that cannot open one.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":482,"end_line":482,"start":25678,"end":25687,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: renders an artifact link as text against a shell that cannot open one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":482,"end_line":482,"start":25689,"end":25711,"source":"{ signal: ctx.signal }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: renders an artifact link as text against a shell that cannot open one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:527:inline-api-or-fixture-input:29","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":527,"end_line":527,"start":28342,"end":28398,"source":"open(browser(), { signal: ctx.signal, doctype: quirks })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":527,"end_line":527,"start":28342,"end":28398},"binding":"open","resolution":[],"enclosing_case":{"line":522,"title":"changes nothing an engine renders except that links are not links"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: changes nothing an engine renders except that links are not links.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":527,"end_line":527,"start":28347,"end":28356,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: changes nothing an engine renders except that links are not links.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":527,"end_line":527,"start":28358,"end":28397,"source":"{ signal: ctx.signal, doctype: quirks }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"doctype","value":{"kind":"reference","source":"quirks","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":526,"end_line":526,"start":28248,"end":28313},"resolved":{"kind":"string","value":""}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, doctype: quirks }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: changes nothing an engine renders except that links are not links.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:528:inline-api-or-fixture-input:30","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":528,"end_line":532,"start":28428,"end":28555,"source":"open(browser(), {\n signal: ctx.signal,\n doctype: quirks,\n grants: ['navigate', 'storage']\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":528,"end_line":532,"start":28428,"end":28555},"binding":"open","resolution":[],"enclosing_case":{"line":522,"title":"changes nothing an engine renders except that links are not links"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: changes nothing an engine renders except that links are not links.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":528,"end_line":528,"start":28433,"end":28442,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: changes nothing an engine renders except that links are not links.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":528,"end_line":532,"start":28444,"end":28554,"source":"{\n signal: ctx.signal,\n doctype: quirks,\n grants: ['navigate', 'storage']\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"doctype","value":{"kind":"reference","source":"quirks","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":526,"end_line":526,"start":28248,"end":28313},"resolved":{"kind":"string","value":""}}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, doctype: quirks, grants: ['navigate', 'storage'] }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: changes nothing an engine renders except that links are not links.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:557:inline-api-or-fixture-input:31","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":557,"end_line":557,"start":30257,"end":30329,"source":"open(browser(), { signal: ctx.signal, grants: ['navigate', 'storage'] })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":557,"end_line":557,"start":30257,"end":30329},"binding":"open","resolution":[],"enclosing_case":{"line":522,"title":"changes nothing an engine renders except that links are not links"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: changes nothing an engine renders except that links are not links.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":557,"end_line":557,"start":30262,"end":30271,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: changes nothing an engine renders except that links are not links.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":557,"end_line":557,"start":30273,"end":30328,"source":"{ signal: ctx.signal, grants: ['navigate', 'storage'] }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, grants: ['navigate', 'storage'] }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: changes nothing an engine renders except that links are not links.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:593:fixture-or-oracle-declaration:32","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":593,"end_line":593,"start":32576,"end":32634,"source":"{ body: '
spacer
' }","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":593,"end_line":593,"start":32583,"end":32634},"binding":"tall","resolution":[],"enclosing_case":{"line":590,"title":"taps a fragment link, which navigates this frame rather than scrolling it"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":593,"end_line":593,"start":32585,"end":32632,"source":"body: '
"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: body: '
spacer
'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:595:browser-event-input:33","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":595,"end_line":595,"start":32702,"end":32746,"source":"frame?.click('#fraglink', { timeout: 2000 })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":595,"end_line":595,"start":32702,"end":32746},"binding":"frame?.click","resolution":[],"enclosing_case":{"line":590,"title":"taps a fragment link, which navigates this frame rather than scrolling it"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":595,"end_line":595,"start":32715,"end":32726,"source":"'#fraglink'","value":{"kind":"string","value":"#fraglink"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: '#fraglink'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":595,"end_line":595,"start":32728,"end":32745,"source":"{ timeout: 2000 }","value":{"kind":"object","value":[{"key":"timeout","value":{"kind":"number","value":2000}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { timeout: 2000 }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:598:inline-api-or-fixture-input:34","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":598,"end_line":603,"start":32786,"end":32933,"source":"open(browser(), {\n signal: ctx.signal,\n extra: tall,\n act: tapFragment,\n reportAfterAct: 'frame-src'\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":598,"end_line":603,"start":32786,"end":32933},"binding":"open","resolution":[],"enclosing_case":{"line":590,"title":"taps a fragment link, which navigates this frame rather than scrolling it"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":598,"end_line":598,"start":32791,"end":32800,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":598,"end_line":603,"start":32802,"end":32932,"source":"{\n signal: ctx.signal,\n extra: tall,\n act: tapFragment,\n reportAfterAct: 'frame-src'\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"extra","value":{"kind":"reference","source":"tall","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":593,"end_line":593,"start":32583,"end":32634},"resolved":{"kind":"object","value":[{"key":"body","value":{"kind":"string","value":"
spacer
"}}]}}},{"key":"act","value":{"kind":"reference","source":"tapFragment","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":594,"end_line":596,"start":32663,"end":32756},"resolved":{"kind":"source-expression","source":"async ({ frame }) => {\n await frame?.click('#fraglink', { timeout: 2000 })\n }"}}},{"key":"reportAfterAct","value":{"kind":"string","value":"frame-src"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, extra: tall, act: tapFragment, reportAfterAct: 'frame-src' }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:611:inline-api-or-fixture-input:35","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":611,"end_line":616,"start":33389,"end":33540,"source":"open(browser(), {\n signal: ctx.signal,\n extra: tall,\n grants: ['navigate', 'storage'],\n act: tapFragment\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":611,"end_line":616,"start":33389,"end":33540},"binding":"open","resolution":[],"enclosing_case":{"line":590,"title":"taps a fragment link, which navigates this frame rather than scrolling it"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":611,"end_line":611,"start":33394,"end":33403,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":611,"end_line":616,"start":33405,"end":33539,"source":"{\n signal: ctx.signal,\n extra: tall,\n grants: ['navigate', 'storage'],\n act: tapFragment\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"extra","value":{"kind":"reference","source":"tall","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":593,"end_line":593,"start":32583,"end":32634},"resolved":{"kind":"object","value":[{"key":"body","value":{"kind":"string","value":"
spacer
"}}]}}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"},{"kind":"string","value":"storage"}]}},{"key":"act","value":{"kind":"reference","source":"tapFragment","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":594,"end_line":596,"start":32663,"end":32756},"resolved":{"kind":"source-expression","source":"async ({ frame }) => {\n await frame?.click('#fraglink', { timeout: 2000 })\n }"}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, extra: tall, grants: ['navigate', 'storage'], act: tapFragment }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: taps a fragment link, which navigates this frame rather than scrolling it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:631:inline-api-or-fixture-input:36","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":631,"end_line":637,"start":34347,"end":34559,"source":"open(browser(), {\n signal: ctx.signal,\n expectNavigation: 'main-frame',\n act: async ({ frame }) => {\n await frame?.click('#toplink', { timeout: 2000 })\n }\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":631,"end_line":637,"start":34347,"end":34559},"binding":"open","resolution":[],"enclosing_case":{"line":630,"title":"hands a user's tap on a link to the top frame, exactly once"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: hands a user's tap on a link to the top frame, exactly once.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":631,"end_line":631,"start":34352,"end":34361,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: hands a user's tap on a link to the top frame, exactly once.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":631,"end_line":637,"start":34363,"end":34558,"source":"{\n signal: ctx.signal,\n expectNavigation: 'main-frame',\n act: async ({ frame }) => {\n await frame?.click('#toplink', { timeout: 2000 })\n }\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"expectNavigation","value":{"kind":"string","value":"main-frame"}},{"key":"act","value":{"kind":"source-expression","source":"async ({ frame }) => {\n await frame?.click('#toplink', { timeout: 2000 })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, expectNavigation: 'main-frame', act: async ({ frame }) => { await frame?.cli. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: hands a user's tap on a link to the top frame, exactly once.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:635:browser-event-input:37","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":635,"end_line":635,"start":34493,"end":34536,"source":"frame?.click('#toplink', { timeout: 2000 })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":635,"end_line":635,"start":34493,"end":34536},"binding":"frame?.click","resolution":[],"enclosing_case":{"line":630,"title":"hands a user's tap on a link to the top frame, exactly once"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: hands a user's tap on a link to the top frame, exactly once.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":635,"end_line":635,"start":34506,"end":34516,"source":"'#toplink'","value":{"kind":"string","value":"#toplink"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: '#toplink'. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: hands a user's tap on a link to the top frame, exactly once.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":635,"end_line":635,"start":34518,"end":34535,"source":"{ timeout: 2000 }","value":{"kind":"object","value":[{"key":"timeout","value":{"kind":"number","value":2000}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { timeout: 2000 }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: hands a user's tap on a link to the top frame, exactly once.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:649:inline-api-or-fixture-input:38","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":649,"end_line":652,"start":35222,"end":35355,"source":"open(browser(), {\n signal: ctx.signal,\n extra: { head: '' }\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":649,"end_line":652,"start":35222,"end":35355},"binding":"open","resolution":[],"enclosing_case":{"line":644,"title":"cannot reach the shell through a meta refresh at the embedder's own URL"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":649,"end_line":649,"start":35227,"end":35236,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":649,"end_line":652,"start":35238,"end":35354,"source":"{\n signal: ctx.signal,\n extra: { head: '' }\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"extra","value":{"kind":"object","value":[{"key":"head","value":{"kind":"string","value":""}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, extra: { head: '' } }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:667:inline-api-or-fixture-input:39","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":667,"end_line":676,"start":36274,"end":36767,"source":"open(browser(), {\n signal: ctx.signal,\n csp: null,\n sandbox: 'allow-scripts allow-same-origin allow-top-navigation',\n extra: { head: '' },\n // This arm's frame leaves the artifact behind, which is the whole point of it, so the\n // marker is not what says it is ready, and the navigation it makes is what it waits for.\n frameReady: 'load',\n expectNavigation: 'frame'\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":667,"end_line":676,"start":36274,"end":36767},"binding":"open","resolution":[],"enclosing_case":{"line":644,"title":"cannot reach the shell through a meta refresh at the embedder's own URL"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":667,"end_line":667,"start":36279,"end":36288,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":667,"end_line":676,"start":36290,"end":36766,"source":"{\n signal: ctx.signal,\n csp: null,\n sandbox: 'allow-scripts allow-same-origin allow-top-navigation',\n extra: { head: '' },\n // This arm's frame leaves the artifact behind, which is the whole point of it, so the\n // marker is not what says it is ready, and the navigation it makes is what it waits for.\n frameReady: 'load',\n expectNavigation: 'frame'\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"csp","value":{"kind":"null","value":null}},{"key":"sandbox","value":{"kind":"string","value":"allow-scripts allow-same-origin allow-top-navigation"}},{"key":"extra","value":{"kind":"object","value":[{"key":"head","value":{"kind":"string","value":""}}]}},{"key":"frameReady","value":{"kind":"string","value":"load"}},{"key":"expectNavigation","value":{"kind":"string","value":"frame"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, csp: null, sandbox: 'allow-scripts allow-same-origin allow-top-navigation', ex. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:684:inline-api-or-fixture-input:40","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":684,"end_line":688,"start":37176,"end":37330,"source":"open(browser(), {\n signal: ctx.signal,\n csp: null,\n extra: { head: '' }\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":684,"end_line":688,"start":37176,"end":37330},"binding":"open","resolution":[],"enclosing_case":{"line":644,"title":"cannot reach the shell through a meta refresh at the embedder's own URL"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":684,"end_line":684,"start":37181,"end":37190,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":684,"end_line":688,"start":37192,"end":37329,"source":"{\n signal: ctx.signal,\n csp: null,\n extra: { head: '' }\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"csp","value":{"kind":"null","value":null}},{"key":"extra","value":{"kind":"object","value":[{"key":"head","value":{"kind":"string","value":""}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, csp: null, extra: { head: '' } }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:699:inline-api-or-fixture-input:41","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":699,"end_line":704,"start":38080,"end":38318,"source":"open(browser(), {\n signal: ctx.signal,\n sandbox: 'allow-scripts allow-same-origin allow-top-navigation',\n extra: { head: '' },\n frameReady: 'load'\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":699,"end_line":704,"start":38080,"end":38318},"binding":"open","resolution":[],"enclosing_case":{"line":644,"title":"cannot reach the shell through a meta refresh at the embedder's own URL"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":699,"end_line":699,"start":38085,"end":38094,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: cannot reach the shell through a meta refresh at the embedder's own URL.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":699,"end_line":704,"start":38096,"end":38317,"source":"{\n signal: ctx.signal,\n sandbox: 'allow-scripts allow-same-origin allow-top-navigation',\n extra: { head: '' },\n frameReady: 'load'\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"sandbox","value":{"kind":"string","value":"allow-scripts allow-same-origin allow-top-navigation"}},{"key":"extra","value":{"kind":"object","value":[{"key":"head","value":{"kind":"string","value":""}}]}},{"key":"frameReady","value":{"kind":"string","value":"load"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, sandbox: 'allow-scripts allow-same-origin allow-top-navigation', extra: { head: '` }\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":711,"end_line":714,"start":38656,"end":38814},"binding":"open","resolution":[],"enclosing_case":{"line":710,"title":"hands up nothing without a tap, and nothing for a form or a new window"},"affected_case_lines":[],"decision":"keep","reason":"Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":711,"end_line":711,"start":38661,"end":38670,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":711,"end_line":714,"start":38672,"end":38813,"source":"{\n signal: ctx.signal,\n extra: { head: `` }\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"extra","value":{"kind":"object","value":[{"key":"head","value":{"kind":"source-expression","source":"``"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, extra: { head: `` } . Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:717:inline-api-or-fixture-input:43","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":717,"end_line":722,"start":38939,"end":39108,"source":"open(browser(), {\n signal: ctx.signal,\n act: async ({ frame }) => {\n await frame?.click('#submit', { timeout: 2000 })\n }\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":717,"end_line":722,"start":38939,"end":39108},"binding":"open","resolution":[],"enclosing_case":{"line":710,"title":"hands up nothing without a tap, and nothing for a form or a new window"},"affected_case_lines":[],"decision":"keep","reason":"Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":717,"end_line":717,"start":38944,"end":38953,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":717,"end_line":722,"start":38955,"end":39107,"source":"{\n signal: ctx.signal,\n act: async ({ frame }) => {\n await frame?.click('#submit', { timeout: 2000 })\n }\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"act","value":{"kind":"source-expression","source":"async ({ frame }) => {\n await frame?.click('#submit', { timeout: 2000 })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, act: async ({ frame }) => { await frame?.click('#submit', { timeout: 2000 }) . Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation":{"disposition":"strengthened","reason":"The same submit/blanklink fixture action now requires a real frame click and actError===null; no-CSP widened-sandbox positive arms prove the form and popup observers detect successful actions."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"strengthened","reason":"The same submit/blanklink fixture action now requires a real frame click and actError===null; no-CSP widened-sandbox positive arms prove the form and popup observers detect successful actions."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:720:browser-event-input:44","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":720,"end_line":720,"start":39043,"end":39085,"source":"frame?.click('#submit', { timeout: 2000 })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":720,"end_line":720,"start":39043,"end":39085},"binding":"frame?.click","resolution":[],"enclosing_case":{"line":710,"title":"hands up nothing without a tap, and nothing for a form or a new window"},"affected_case_lines":[],"decision":"keep","reason":"Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":720,"end_line":720,"start":39056,"end":39065,"source":"'#submit'","value":{"kind":"string","value":"#submit"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: '#submit'. Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":720,"end_line":720,"start":39067,"end":39084,"source":"{ timeout: 2000 }","value":{"kind":"object","value":[{"key":"timeout","value":{"kind":"number","value":2000}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { timeout: 2000 }. Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:725:inline-api-or-fixture-input:45","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":725,"end_line":730,"start":39233,"end":39405,"source":"open(browser(), {\n signal: ctx.signal,\n act: async ({ frame }) => {\n await frame?.click('#blanklink', { timeout: 2000 })\n }\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":725,"end_line":730,"start":39233,"end":39405},"binding":"open","resolution":[],"enclosing_case":{"line":710,"title":"hands up nothing without a tap, and nothing for a form or a new window"},"affected_case_lines":[],"decision":"keep","reason":"Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":725,"end_line":725,"start":39238,"end":39247,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":725,"end_line":730,"start":39249,"end":39404,"source":"{\n signal: ctx.signal,\n act: async ({ frame }) => {\n await frame?.click('#blanklink', { timeout: 2000 })\n }\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"act","value":{"kind":"source-expression","source":"async ({ frame }) => {\n await frame?.click('#blanklink', { timeout: 2000 })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, act: async ({ frame }) => { await frame?.click('#blanklink', { timeout: 2000 }) . Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation":{"disposition":"strengthened","reason":"The same submit/blanklink fixture action now requires a real frame click and actError===null; no-CSP widened-sandbox positive arms prove the form and popup observers detect successful actions."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"strengthened","reason":"The same submit/blanklink fixture action now requires a real frame click and actError===null; no-CSP widened-sandbox positive arms prove the form and popup observers detect successful actions."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:728:browser-event-input:46","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":728,"end_line":728,"start":39337,"end":39382,"source":"frame?.click('#blanklink', { timeout: 2000 })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":728,"end_line":728,"start":39337,"end":39382},"binding":"frame?.click","resolution":[],"enclosing_case":{"line":710,"title":"hands up nothing without a tap, and nothing for a form or a new window"},"affected_case_lines":[],"decision":"keep","reason":"Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":728,"end_line":728,"start":39350,"end":39362,"source":"'#blanklink'","value":{"kind":"string","value":"#blanklink"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: '#blanklink'. Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":728,"end_line":728,"start":39364,"end":39381,"source":"{ timeout: 2000 }","value":{"kind":"object","value":[{"key":"timeout","value":{"kind":"number","value":2000}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { timeout: 2000 }. Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:742:fixture-or-oracle-declaration:47","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":742,"end_line":742,"start":40019,"end":40031,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":742,"end_line":742,"start":40029,"end":40031},"binding":"printed","resolution":[],"enclosing_case":{"line":739,"title":"reads the frame while a navigation it expects has not arrived"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: reads the frame while a navigation it expects has not arrived.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:748:inline-api-or-fixture-input:48","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":748,"end_line":755,"start":40273,"end":40495,"source":"waitForRecordedNavigation(\n page,\n [],\n () => false,\n stop.signal,\n { arm: 'arm sampling-probe', browserVersion: browser().version() },\n { sampleEveryMs: 25 }\n )","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":748,"end_line":755,"start":40273,"end":40495},"binding":"waitForRecordedNavigation","resolution":[],"enclosing_case":{"line":739,"title":"reads the frame while a navigation it expects has not arrived"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: reads the frame while a navigation it expects has not arrived.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":749,"end_line":749,"start":40310,"end":40314,"source":"page","value":{"kind":"reference","source":"page","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":741,"end_line":741,"start":39979,"end":40004},"resolved":{"kind":"source-expression","source":"await browser().newPage()"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: reads the frame while a navigation it expects has not arrived.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":750,"end_line":750,"start":40326,"end":40328,"source":"[]","value":{"kind":"array","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: []. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: reads the frame while a navigation it expects has not arrived.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":751,"end_line":751,"start":40340,"end":40351,"source":"() => false","value":{"kind":"source-expression","source":"() => false"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: () => false. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: reads the frame while a navigation it expects has not arrived.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":752,"end_line":752,"start":40363,"end":40374,"source":"stop.signal","value":{"kind":"source-expression","source":"stop.signal"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: stop.signal. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: reads the frame while a navigation it expects has not arrived.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":5,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":753,"end_line":753,"start":40386,"end":40452,"source":"{ arm: 'arm sampling-probe', browserVersion: browser().version() }","value":{"kind":"object","value":[{"key":"arm","value":{"kind":"string","value":"arm sampling-probe"}},{"key":"browserVersion","value":{"kind":"call-source","callee":"browser().version","arguments":[],"source":"browser().version()"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { arm: 'arm sampling-probe', browserVersion: browser().version() }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: reads the frame while a navigation it expects has not arrived.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":6,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":754,"end_line":754,"start":40464,"end":40485,"source":"{ sampleEveryMs: 25 }","value":{"kind":"object","value":[{"key":"sampleEveryMs","value":{"kind":"number","value":25}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { sampleEveryMs: 25 }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: reads the frame while a navigation it expects has not arrived.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:772:inline-api-or-fixture-input:49","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":772,"end_line":783,"start":41330,"end":41656,"source":"waitForRecordedNavigation(\n page,\n [],\n () => false,\n null,\n {\n arm: 'arm bound-probe',\n browserVersion: browser().version(),\n actError: 'locator.click: Timeout 2000ms exceeded'\n },\n { boundMs: 50 }\n )","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":772,"end_line":783,"start":41330,"end":41656},"binding":"waitForRecordedNavigation","resolution":[],"enclosing_case":{"line":768,"title":"gives up on a navigation that is not coming, and names why"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: gives up on a navigation that is not coming, and names why.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":773,"end_line":773,"start":41369,"end":41373,"source":"page","value":{"kind":"reference","source":"page","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":770,"end_line":770,"start":41259,"end":41284},"resolved":{"kind":"source-expression","source":"await browser().newPage()"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: gives up on a navigation that is not coming, and names why.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":774,"end_line":774,"start":41387,"end":41389,"source":"[]","value":{"kind":"array","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: []. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: gives up on a navigation that is not coming, and names why.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":775,"end_line":775,"start":41403,"end":41414,"source":"() => false","value":{"kind":"source-expression","source":"() => false"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: () => false. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: gives up on a navigation that is not coming, and names why.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":776,"end_line":776,"start":41428,"end":41432,"source":"null","value":{"kind":"null","value":null},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: null. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: gives up on a navigation that is not coming, and names why.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":5,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":777,"end_line":781,"start":41446,"end":41615,"source":"{\n arm: 'arm bound-probe',\n browserVersion: browser().version(),\n actError: 'locator.click: Timeout 2000ms exceeded'\n }","value":{"kind":"object","value":[{"key":"arm","value":{"kind":"string","value":"arm bound-probe"}},{"key":"browserVersion","value":{"kind":"call-source","callee":"browser().version","arguments":[],"source":"browser().version()"}},{"key":"actError","value":{"kind":"string","value":"locator.click: Timeout 2000ms exceeded"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { arm: 'arm bound-probe', browserVersion: browser().version(), actError: 'locator.click: Timeout 2. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: gives up on a navigation that is not coming, and names why.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":6,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":782,"end_line":782,"start":41629,"end":41644,"source":"{ boundMs: 50 }","value":{"kind":"object","value":[{"key":"boundMs","value":{"kind":"number","value":50}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { boundMs: 50 }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: gives up on a navigation that is not coming, and names why.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:796:inline-api-or-fixture-input:50","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":796,"end_line":801,"start":42283,"end":42469,"source":"open(browser(), {\n signal: ctx.signal,\n act: async ({ page }) => {\n await page.getByLabel('View HTML source').click({ timeout: 2000 })\n }\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":796,"end_line":801,"start":42283,"end":42469},"binding":"open","resolution":[],"enclosing_case":{"line":795,"title":"keeps the Preview/Source toggle, and Source shows the source"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: keeps the Preview/Source toggle, and Source shows the source.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":796,"end_line":796,"start":42288,"end":42297,"source":"browser()","value":{"kind":"call-source","callee":"browser","arguments":[],"source":"browser()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: browser(). Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: keeps the Preview/Source toggle, and Source shows the source.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":796,"end_line":801,"start":42299,"end":42468,"source":"{\n signal: ctx.signal,\n act: async ({ page }) => {\n await page.getByLabel('View HTML source').click({ timeout: 2000 })\n }\n }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"source-expression","source":"ctx.signal"}},{"key":"act","value":{"kind":"source-expression","source":"async ({ page }) => {\n await page.getByLabel('View HTML source').click({ timeout: 2000 })\n }"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { signal: ctx.signal, act: async ({ page }) => { await page.getByLabel('View HTML source').click({ timeout: . Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: keeps the Preview/Source toggle, and Source shows the source.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}},{"id":"22:799:browser-event-input:51","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":799,"end_line":799,"start":42386,"end":42446,"source":"page.getByLabel('View HTML source').click({ timeout: 2000 })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":799,"end_line":799,"start":42386,"end":42446},"binding":"page.getByLabel('View HTML source').click","resolution":[],"enclosing_case":{"line":795,"title":"keeps the Preview/Source toggle, and Source shows the source"},"affected_case_lines":[],"decision":"keep","reason":"Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: keeps the Preview/Source toggle, and Source shows the source.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","line":799,"end_line":799,"start":42428,"end":42445,"source":"{ timeout: 2000 }","value":{"kind":"object","value":[{"key":"timeout","value":{"kind":"number","value":2000}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: { timeout: 2000 }. Actual sealed HTML preview in both engines is measured against painted artifacts and widened/no-policy positive controls, using browser navigation/network/pixel/accessibility observations. Scenario: keeps the Preview/Source toggle, and Source shows the source.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"}}],"original_review_sha256":"4f9caea703cc8aa02ef7790e4f42b4b5de7b0610128127ba41965aca2f56cc3e","reviewer":"audit_config","reviewed_sha256":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","final_declarations":15,"current_controls":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","each":[],"for_of":[{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","start":9933,"end":9955,"line":225,"end_line":225,"source":"['chromium', 'webkit']","binding":"const engine","changed":false}],"literal_nodes_without_original_source_match":[{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","start":38955,"end":39106,"line":717,"end_line":722,"source":"{\n signal: ctx.signal,\n act: async ({ frame }) => {\n await frame.click('#submit', { timeout: 2000 })\n }\n }","kind":"object"},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","start":39289,"end":39443,"line":726,"end_line":731,"source":"{\n signal: ctx.signal,\n act: async ({ frame }) => {\n await frame.click('#blanklink', { timeout: 2000 })\n }\n }","kind":"object"},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","start":39672,"end":39960,"line":736,"end_line":744,"source":"{\n signal: ctx.signal,\n csp: null,\n sandbox: 'allow-forms allow-top-navigation-by-user-activation',\n expectNavigation: 'main-frame',\n act: async ({ frame }) => {\n await frame.click('#submit', { timeout: 2000 })\n }\n }","kind":"object"},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","start":40171,"end":40524,"line":748,"end_line":758,"source":"{\n signal: ctx.signal,\n csp: null,\n sandbox: 'allow-popups allow-popups-to-escape-sandbox',\n act: async ({ page, frame }) => {\n await Promise.all([\n page.waitForEvent('popup', { timeout: 10_000 }),\n frame.click('#blanklink', { timeout: 2000 })\n ])\n }\n }","kind":"object"},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","start":40364,"end":40501,"line":753,"end_line":756,"source":"[\n page.waitForEvent('popup', { timeout: 10_000 }),\n frame.click('#blanklink', { timeout: 2000 })\n ]","kind":"array"},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","start":40407,"end":40426,"line":754,"end_line":754,"source":"{ timeout: 10_000 }","kind":"object"}]},"mutations":[{"name":"preview-submit-selector-never-clicks","reason":"Sealed form absence must fail when the action never runs; both engines.","baseline_hashes":{"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"},"test":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","pattern":"hands up nothing without a tap","log":"/tmp/orca-config-0007-mutation-preview-submit-selector-never-clicks.log","command":["pnpm","test","config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","-t","hands up nothing without a tap","--maxWorkers=1"],"seconds":9.39,"exit_code":1,"assertion_failure_seen":true,"expected_failure_seen":true,"failed_tests":["2 failed | 28 skipped (30)"],"restored_hashes":{"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"},"restored":true,"log_sha256":"9af41207a545ab418fcba4d717aefac76fce5f126a977b5d5253a91e424ff6c9"},{"name":"preview-popup-selector-never-clicks","reason":"Sealed popup absence must fail when the action never runs; both engines.","baseline_hashes":{"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"},"test":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","pattern":"hands up nothing without a tap","log":"/tmp/orca-config-0007-mutation-preview-popup-selector-never-clicks.log","command":["pnpm","test","config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","-t","hands up nothing without a tap","--maxWorkers=1"],"seconds":9.75,"exit_code":1,"assertion_failure_seen":true,"expected_failure_seen":true,"failed_tests":["2 failed | 28 skipped (30)"],"restored_hashes":{"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"},"restored":true,"log_sha256":"f8cfeca9d220c1cb2101f5cf0f99f66c1b222bf754cef41af529866bffa0d0b8"},{"name":"preview-positive-form-remains-sealed","reason":"Form positive arm must detect lost form capability; both engines. Use the no-navigation settle path to reach the independent top-navigation count assertion after the first attempt failed at the bounded navigation precondition.","baseline_hashes":{"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"},"test":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","pattern":"hands up nothing without a tap","log":"/tmp/orca-config-0007-mutation-preview-positive-form-remains-sealed-attempt2.log","command":["pnpm","test","config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","-t","hands up nothing without a tap","--maxWorkers=1"],"seconds":6.64,"exit_code":1,"assertion_failure_seen":true,"expected_failure_seen":true,"failed_tests":["2 failed | 28 skipped (30)"],"restored_hashes":{"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"},"restored":true,"log_sha256":"5b31454b6cfd41445b4c3bdebf943367ad1ad1a60a1ba2b4894e234c88d4b061"},{"name":"preview-positive-popup-remains-sealed","reason":"Popup positive arm must detect lost popup capability; both engines.","baseline_hashes":{"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"},"test":"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","pattern":"hands up nothing without a tap","log":"/tmp/orca-config-0007-mutation-preview-positive-popup-remains-sealed.log","command":["pnpm","test","config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs","-t","hands up nothing without a tap","--maxWorkers=1"],"seconds":27.07,"exit_code":1,"assertion_failure_seen":true,"expected_failure_seen":true,"failed_tests":["2 failed | 28 skipped (30)"],"restored_hashes":{"config/scripts/mobile-web-app/preview/mobile-web-app-html-preview-render.test.mjs":"8564d2c841c4acc5c9a1bb829f366f9c8b4189b5698e922de9b10b21234dcea8"},"restored":true,"log_sha256":"25a8c0d33be8dfaa0eacfd90abd06d166d8e0a57b8ddea2a687aecdf5b9993c4"}]},"implemented_changes":[{"original_line":710,"title":"hands up nothing without a tap, and nothing for a form or a new window","decision":"fix","change":"Assert both form and new-window click outcomes are successful before absence checks, and add widened-sandbox/no-policy positive controls proving form/navigation and popup observations can detect these fixture actions. Retain the sealed zero outcomes and meta-refresh control."}],"manual_implementation_notes":[],"evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-preview-arm-driver.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-preview-artifact-fixture.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-preview-asset-server.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-preview-csp-reports.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-preview-frame-readiness.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-render-harness.mjs","mobile/src/components/MobileHtmlPreview.tsx"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","sha256":"a4113c1b7da0e54c2bed9edcd2623228cbb431e5ae368045de46344c40b6d85d","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":23,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"a4113c1b7da0e54c2bed9edcd2623228cbb431e5ae368045de46344c40b6d85d","cases":[{"line":114,"title":"plays and seeks %s, then releases playback and its Blob on navigation","decision":"fix","reason":"Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","explicit_input_controls":[{"control_id":"23:114:parameter-table:5","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":114,"source":"[\n ['music.wav', wavFixture(), 'audio'],\n ['movie.webm', Buffer.from(WEBM, 'base64'), 'video']\n ]","rows":[{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":115,"end_line":115,"start":4773,"end":4809,"source":"['music.wav', wavFixture(), 'audio']","value":{"kind":"array","value":[{"kind":"string","value":"music.wav"},{"kind":"call-source","callee":"wavFixture","arguments":[],"source":"wavFixture()"},{"kind":"string","value":"audio"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['music.wav', wavFixture(), 'audio']. Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":116,"end_line":116,"start":4815,"end":4867,"source":"['movie.webm', Buffer.from(WEBM, 'base64'), 'video']","value":{"kind":"array","value":[{"kind":"string","value":"movie.webm"},{"kind":"call-source","callee":"Buffer.from","arguments":[{"kind":"reference","source":"WEBM","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":19,"end_line":19,"start":728,"end":1470},"resolved":{"kind":"string","value":"GkXfo59ChoEBQveBAULygQRC84EIQoKEd2VibUKHgQJChYECGFOAZwEAAAAAAAH6EU2bdLpNu4tTq4QVSalmU6yBoU27i1OrhBZUrmtTrIHWTbuMU6uEElTDZ1OsggEjTbuMU6uEHFO7a1OsggHk7AEAAAAAAABZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVSalmsCrXsYMPQkBNgIxMYXZmNjIuMy4xMDBXQYxMYXZmNjIuMy4xMDBEiYhAn0AAAAAAABZUrmvIrgEAAAAAAAA/14EBc8WIPYwl7RGcI1acgQAitZyDdW5kiIEAhoVWX1ZQOYOBASPjg4Q7msoA4JCwgSC6gSCagQJVsIRVuYEBElTDZ0B/c3OfY8CAZ8iZRaOHRU5DT0RFUkSHjExhdmY2Mi4zLjEwMHNz2mPAi2PFiD2MJe0RnCNWZ8ilRaOHRU5DT0RFUkSHmExhdmM2Mi4xMS4xMDAgbGlidnB4LXZwOWfIoUWjiERVUkFUSU9ORIeTMDA6MDA6MDIuMDAwMDAwMDAwAB9DtnW354EAo52BAACAgkmDQgAB8AH2ADgkHBhKAAAwYAAAItXAAKOTgQPoAIYAQJKcAFAAAANgAABDQBxTu2uRu4+zgQC3iveBAfGCAajwgQM="}},{"kind":"string","value":"base64"}],"source":"Buffer.from(WEBM, 'base64')"},{"kind":"string","value":"video"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['movie.webm', Buffer.from(WEBM, 'base64'), 'video']. Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"23:120:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":120,"source":"openMedia(name, bytes)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":120,"end_line":120,"start":5032,"end":5036,"source":"name","value":{"kind":"source-expression","source":"name"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: name. Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":120,"end_line":120,"start":5038,"end":5043,"source":"bytes","value":{"kind":"reference","source":"bytes","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":21,"end_line":21,"start":1511,"end":1542},"resolved":{"kind":"call-source","callee":"Buffer.alloc","arguments":[{"kind":"source-expression","source":"44 + 8000 * 2 * 2"}],"source":"Buffer.alloc(44 + 8000 * 2 * 2)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: bytes. Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"23:122:browser-event-input:7","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":122,"source":"page.evaluate(async (tag) => {\n const media = document.querySelector(tag)\n globalThis.__previousMedia = media\n media.muted = true\n media.currentTime = 1\n await media.play()\n await new Promise((resolve) => setTimeout(resolve, 200))\n media.pause()\n return {\n duration: media.duration,\n time: media.currentTime,\n controls: media.controls,\n autoplay: media.autoplay,\n uri: media.currentSrc\n }\n }, tag)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":122,"end_line":137,"start":5181,"end":5671,"source":"async (tag) => {\n const media = document.querySelector(tag)\n globalThis.__previousMedia = media\n media.muted = true\n media.currentTime = 1\n await media.play()\n await new Promise((resolve) => setTimeout(resolve, 200))\n media.pause()\n return {\n duration: media.duration,\n time: media.currentTime,\n controls: media.controls,\n autoplay: media.autoplay,\n uri: media.currentSrc\n }\n }","value":{"kind":"source-expression","source":"async (tag) => {\n const media = document.querySelector(tag)\n globalThis.__previousMedia = media\n media.muted = true\n media.currentTime = 1\n await media.play()\n await new Promise((resolve) => setTimeout(resolve, 200))\n media.pause()\n return {\n duration: media.duration,\n time: media.currentTime,\n controls: media.controls,\n autoplay: media.autoplay,\n uri: media.currentSrc\n }\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: async (tag) => { const media = document.querySelector(tag) globalThis.__previousMedia = media media.muted = true . Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation":{"disposition":"strengthened","reason":"The same successful play and seek now wait for bounded currentTime>1 before pause/read instead of sleeping200ms; audio/video and navigation cleanup observations remain."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":137,"end_line":137,"start":5673,"end":5676,"source":"tag","value":{"kind":"source-expression","source":"tag"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: tag. Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation_rows":[{"index":1,"disposition":"strengthened","reason":"The same successful play and seek now wait for bounded currentTime>1 before pause/read instead of sleeping200ms; audio/video and navigation cleanup observations remain."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"23:142:browser-event-input:8","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":142,"source":"page.evaluate((pathname) => {\n history.pushState(null, '', `${pathname}?relativePath=README.md`)\n dispatchEvent(new PopStateEvent('popstate'))\n }, pathname)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":142,"end_line":145,"start":5888,"end":6038,"source":"(pathname) => {\n history.pushState(null, '', `${pathname}?relativePath=README.md`)\n dispatchEvent(new PopStateEvent('popstate'))\n }","value":{"kind":"source-expression","source":"(pathname) => {\n history.pushState(null, '', `${pathname}?relativePath=README.md`)\n dispatchEvent(new PopStateEvent('popstate'))\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (pathname) => { history.pushState(null, '', `${pathname}?relativePath=README.md`) dispatchEvent(new PopStateEvent('popstate'. Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":145,"end_line":145,"start":6040,"end":6048,"source":"pathname","value":{"kind":"reference","source":"pathname","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":38,"end_line":38,"start":2112,"end":2156},"resolved":{"kind":"string","value":"/h/media-host/files/preview/folder-project"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: pathname. Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"23:148:browser-event-input:9","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":148,"source":"page.evaluate(() => ({\n paused: globalThis.__previousMedia.paused,\n src: globalThis.__previousMedia.getAttribute('src'),\n revoked: globalThis.__revokedMedia\n }))","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":148,"end_line":152,"start":6188,"end":6368,"source":"() => ({\n paused: globalThis.__previousMedia.paused,\n src: globalThis.__previousMedia.getAttribute('src'),\n revoked: globalThis.__revokedMedia\n })","value":{"kind":"source-expression","source":"() => ({\n paused: globalThis.__previousMedia.paused,\n src: globalThis.__previousMedia.getAttribute('src'),\n revoked: globalThis.__revokedMedia\n })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => ({ paused: globalThis.__previousMedia.paused, src: globalThis.__previousMedia.getAttribute('src'), revok. Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":114,"title":"plays and seeks %s, then releases playback and its Blob on navigation","start":4759,"end":6682},"implementation_status":"implemented"},{"line":159,"title":"explains the required app update when an older shell blocks Blob playback","decision":"keep","reason":"Actual page route reads real media bytes through host fixture RPCs; browser playback/seeking and navigation cleanup or the older-shell update message are independently observed. Scenario: explains the required app update when an older shell blocks Blob playback.","explicit_input_controls":[{"control_id":"23:160:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":160,"source":"openMedia('music.wav', wavFixture(), true)","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":160,"end_line":160,"start":6653,"end":6664,"source":"'music.wav'","value":{"kind":"string","value":"music.wav"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'music.wav'. Actual page route reads real media bytes through host fixture RPCs; browser playback/seeking and navigation cleanup or the older-shell update message are independently observed. Scenario: explains the required app update when an older shell blocks Blob playback.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":160,"end_line":160,"start":6666,"end":6678,"source":"wavFixture()","value":{"kind":"call-source","callee":"wavFixture","arguments":[],"source":"wavFixture()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: wavFixture(). Actual page route reads real media bytes through host fixture RPCs; browser playback/seeking and navigation cleanup or the older-shell update message are independently observed. Scenario: explains the required app update when an older shell blocks Blob playback.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":160,"end_line":160,"start":6680,"end":6684,"source":"true","value":{"kind":"boolean","value":true},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: true. Actual page route reads real media bytes through host fixture RPCs; browser playback/seeking and navigation cleanup or the older-shell update message are independently observed. Scenario: explains the required app update when an older shell blocks Blob playback.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual page route reads real media bytes through host fixture RPCs; browser playback/seeking and navigation cleanup or the older-shell update message are independently observed. Scenario: explains the required app update when an older shell blocks Blob playback.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":164,"title":"explains the required app update when an older shell blocks Blob playback","start":6685,"end":7004},"implementation_status":"retained"}],"lines":167,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"Actual page route reads real media bytes through host fixture RPCs; browser playback/seeking and navigation cleanup or the older-shell update message are independently observed.","planned_changes":[{"original_line":114,"title":"plays and seeks %s, then releases playback and its Blob on navigation","decision":"fix","change":"Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations."}],"production_evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-render-harness.mjs","config/scripts/mobile-web-page-routes.mjs"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"23:36:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":36,"end_line":36,"start":1943,"end":2037,"source":"{ id: 'media-host', name: 'Media Host', endpoint: 'ws://media-test', lastConnected: 1 }","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":36,"end_line":36,"start":1950,"end":2037},"binding":"host","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual page route reads real media bytes through host fixture RPCs; browser playback/seeking and navigation cleanup or the older-shell update message are independently observed.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":36,"end_line":36,"start":1952,"end":1968,"source":"id: 'media-host'","value":{"kind":"property","key":"id","value":{"kind":"string","value":"media-host"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: id: 'media-host'. Actual page route reads real media bytes through host fixture RPCs; browser playback/seeking and navigation cleanup or the older-shell update message are independently observed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":36,"end_line":36,"start":1970,"end":1988,"source":"name: 'Media Host'","value":{"kind":"property","key":"name","value":{"kind":"string","value":"Media Host"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: name: 'Media Host'. Actual page route reads real media bytes through host fixture RPCs; browser playback/seeking and navigation cleanup or the older-shell update message are independently observed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":36,"end_line":36,"start":1990,"end":2017,"source":"endpoint: 'ws://media-test'","value":{"kind":"property","key":"endpoint","value":{"kind":"string","value":"ws://media-test"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: endpoint: 'ws://media-test'. Actual page route reads real media bytes through host fixture RPCs; browser playback/seeking and navigation cleanup or the older-shell update message are independently observed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":36,"end_line":36,"start":2019,"end":2035,"source":"lastConnected: 1","value":{"kind":"property","key":"lastConnected","value":{"kind":"number","value":1}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: lastConnected: 1. Actual page route reads real media bytes through host fixture RPCs; browser playback/seeking and navigation cleanup or the older-shell update message are independently observed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"31e7554a7f8ba2539c662939bc3dc90c22b304df3fc54729add1ac8b239966d7"}},{"id":"23:46:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":46,"end_line":46,"start":2423,"end":2483,"source":"buildMobileWebAppBundle({ outDir: join(scratch, 'bundle') })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":46,"end_line":46,"start":2423,"end":2483},"binding":"buildMobileWebAppBundle","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual page route reads real media bytes through host fixture RPCs; browser playback/seeking and navigation cleanup or the older-shell update message are independently observed.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":46,"end_line":46,"start":2447,"end":2482,"source":"{ outDir: join(scratch, 'bundle') }","value":{"kind":"object","value":[{"key":"outDir","value":{"kind":"call-source","callee":"join","arguments":[{"kind":"source-expression","source":"scratch"},{"kind":"string","value":"bundle"}],"source":"join(scratch, 'bundle')"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { outDir: join(scratch, 'bundle') }. Actual page route reads real media bytes through host fixture RPCs; browser playback/seeking and navigation cleanup or the older-shell update message are independently observed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"31e7554a7f8ba2539c662939bc3dc90c22b304df3fc54729add1ac8b239966d7"}},{"id":"23:50:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":50,"end_line":56,"start":2629,"end":2830,"source":"createBundleServer({\n outDir: built.outDir,\n cspHeader: (request) =>\n request.url.includes('oldShell=1')\n ? policy.replace('media-src blob:', \"media-src 'none'\")\n : policy\n })","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":50,"end_line":56,"start":2629,"end":2830},"binding":"createBundleServer","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual page route reads real media bytes through host fixture RPCs; browser playback/seeking and navigation cleanup or the older-shell update message are independently observed.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":50,"end_line":56,"start":2648,"end":2829,"source":"{\n outDir: built.outDir,\n cspHeader: (request) =>\n request.url.includes('oldShell=1')\n ? policy.replace('media-src blob:', \"media-src 'none'\")\n : policy\n }","value":{"kind":"object","value":[{"key":"outDir","value":{"kind":"source-expression","source":"built.outDir"}},{"key":"cspHeader","value":{"kind":"source-expression","source":"(request) =>\n request.url.includes('oldShell=1')\n ? policy.replace('media-src blob:', \"media-src 'none'\")\n : policy"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { outDir: built.outDir, cspHeader: (request) => request.url.includes('oldShell=1') ? policy.replace('media-src blob:',. Actual page route reads real media bytes through host fixture RPCs; browser playback/seeking and navigation cleanup or the older-shell update message are independently observed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"31e7554a7f8ba2539c662939bc3dc90c22b304df3fc54729add1ac8b239966d7"}},{"id":"23:71:fixture-or-oracle-declaration:4","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":71,"end_line":71,"start":3423,"end":3434,"source":"[]","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":71,"end_line":71,"start":3432,"end":3434},"binding":"errors","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual page route reads real media bytes through host fixture RPCs; browser playback/seeking and navigation cleanup or the older-shell update message are independently observed.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"31e7554a7f8ba2539c662939bc3dc90c22b304df3fc54729add1ac8b239966d7"}},{"id":"23:114:parameter-table:5","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":114,"end_line":158,"start":4759,"end":6519,"source":"[\n ['music.wav', wavFixture(), 'audio'],\n ['movie.webm', Buffer.from(WEBM, 'base64'), 'video']\n ]","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":114,"end_line":117,"start":4767,"end":4871},"binding":"it.each","resolution":[],"enclosing_case":{"line":114,"title":"plays and seeks %s, then releases playback and its Blob on navigation"},"affected_case_lines":[114],"decision":"keep","reason":"Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","rows":[{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":115,"end_line":115,"start":4773,"end":4809,"source":"['music.wav', wavFixture(), 'audio']","value":{"kind":"array","value":[{"kind":"string","value":"music.wav"},{"kind":"call-source","callee":"wavFixture","arguments":[],"source":"wavFixture()"},{"kind":"string","value":"audio"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['music.wav', wavFixture(), 'audio']. Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":116,"end_line":116,"start":4815,"end":4867,"source":"['movie.webm', Buffer.from(WEBM, 'base64'), 'video']","value":{"kind":"array","value":[{"kind":"string","value":"movie.webm"},{"kind":"call-source","callee":"Buffer.from","arguments":[{"kind":"reference","source":"WEBM","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":19,"end_line":19,"start":728,"end":1470},"resolved":{"kind":"string","value":"GkXfo59ChoEBQveBAULygQRC84EIQoKEd2VibUKHgQJChYECGFOAZwEAAAAAAAH6EU2bdLpNu4tTq4QVSalmU6yBoU27i1OrhBZUrmtTrIHWTbuMU6uEElTDZ1OsggEjTbuMU6uEHFO7a1OsggHk7AEAAAAAAABZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVSalmsCrXsYMPQkBNgIxMYXZmNjIuMy4xMDBXQYxMYXZmNjIuMy4xMDBEiYhAn0AAAAAAABZUrmvIrgEAAAAAAAA/14EBc8WIPYwl7RGcI1acgQAitZyDdW5kiIEAhoVWX1ZQOYOBASPjg4Q7msoA4JCwgSC6gSCagQJVsIRVuYEBElTDZ0B/c3OfY8CAZ8iZRaOHRU5DT0RFUkSHjExhdmY2Mi4zLjEwMHNz2mPAi2PFiD2MJe0RnCNWZ8ilRaOHRU5DT0RFUkSHmExhdmM2Mi4xMS4xMDAgbGlidnB4LXZwOWfIoUWjiERVUkFUSU9ORIeTMDA6MDA6MDIuMDAwMDAwMDAwAB9DtnW354EAo52BAACAgkmDQgAB8AH2ADgkHBhKAAAwYAAAItXAAKOTgQPoAIYAQJKcAFAAAANgAABDQBxTu2uRu4+zgQC3iveBAfGCAajwgQM="}},{"kind":"string","value":"base64"}],"source":"Buffer.from(WEBM, 'base64')"},{"kind":"string","value":"video"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['movie.webm', Buffer.from(WEBM, 'base64'), 'video']. Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"31e7554a7f8ba2539c662939bc3dc90c22b304df3fc54729add1ac8b239966d7"}},{"id":"23:120:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":120,"end_line":120,"start":5022,"end":5044,"source":"openMedia(name, bytes)","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":120,"end_line":120,"start":5022,"end":5044},"binding":"openMedia","resolution":[],"enclosing_case":{"line":114,"title":"plays and seeks %s, then releases playback and its Blob on navigation"},"affected_case_lines":[],"decision":"keep","reason":"Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":120,"end_line":120,"start":5032,"end":5036,"source":"name","value":{"kind":"source-expression","source":"name"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: name. Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":120,"end_line":120,"start":5038,"end":5043,"source":"bytes","value":{"kind":"reference","source":"bytes","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":21,"end_line":21,"start":1511,"end":1542},"resolved":{"kind":"call-source","callee":"Buffer.alloc","arguments":[{"kind":"source-expression","source":"44 + 8000 * 2 * 2"}],"source":"Buffer.alloc(44 + 8000 * 2 * 2)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: bytes. Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"31e7554a7f8ba2539c662939bc3dc90c22b304df3fc54729add1ac8b239966d7"}},{"id":"23:122:browser-event-input:7","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":122,"end_line":137,"start":5167,"end":5677,"source":"page.evaluate(async (tag) => {\n const media = document.querySelector(tag)\n globalThis.__previousMedia = media\n media.muted = true\n media.currentTime = 1\n await media.play()\n await new Promise((resolve) => setTimeout(resolve, 200))\n media.pause()\n return {\n duration: media.duration,\n time: media.currentTime,\n controls: media.controls,\n autoplay: media.autoplay,\n uri: media.currentSrc\n }\n }, tag)","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":122,"end_line":137,"start":5167,"end":5677},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":114,"title":"plays and seeks %s, then releases playback and its Blob on navigation"},"affected_case_lines":[],"decision":"keep","reason":"Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":122,"end_line":137,"start":5181,"end":5671,"source":"async (tag) => {\n const media = document.querySelector(tag)\n globalThis.__previousMedia = media\n media.muted = true\n media.currentTime = 1\n await media.play()\n await new Promise((resolve) => setTimeout(resolve, 200))\n media.pause()\n return {\n duration: media.duration,\n time: media.currentTime,\n controls: media.controls,\n autoplay: media.autoplay,\n uri: media.currentSrc\n }\n }","value":{"kind":"source-expression","source":"async (tag) => {\n const media = document.querySelector(tag)\n globalThis.__previousMedia = media\n media.muted = true\n media.currentTime = 1\n await media.play()\n await new Promise((resolve) => setTimeout(resolve, 200))\n media.pause()\n return {\n duration: media.duration,\n time: media.currentTime,\n controls: media.controls,\n autoplay: media.autoplay,\n uri: media.currentSrc\n }\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: async (tag) => { const media = document.querySelector(tag) globalThis.__previousMedia = media media.muted = true . Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation":{"disposition":"strengthened","reason":"The same successful play and seek now wait for bounded currentTime>1 before pause/read instead of sleeping200ms; audio/video and navigation cleanup observations remain."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":137,"end_line":137,"start":5673,"end":5676,"source":"tag","value":{"kind":"source-expression","source":"tag"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: tag. Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"strengthened","reason":"The same successful play and seek now wait for bounded currentTime>1 before pause/read instead of sleeping200ms; audio/video and navigation cleanup observations remain."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"31e7554a7f8ba2539c662939bc3dc90c22b304df3fc54729add1ac8b239966d7"}},{"id":"23:142:browser-event-input:8","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":142,"end_line":145,"start":5874,"end":6049,"source":"page.evaluate((pathname) => {\n history.pushState(null, '', `${pathname}?relativePath=README.md`)\n dispatchEvent(new PopStateEvent('popstate'))\n }, pathname)","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":142,"end_line":145,"start":5874,"end":6049},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":114,"title":"plays and seeks %s, then releases playback and its Blob on navigation"},"affected_case_lines":[],"decision":"keep","reason":"Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":142,"end_line":145,"start":5888,"end":6038,"source":"(pathname) => {\n history.pushState(null, '', `${pathname}?relativePath=README.md`)\n dispatchEvent(new PopStateEvent('popstate'))\n }","value":{"kind":"source-expression","source":"(pathname) => {\n history.pushState(null, '', `${pathname}?relativePath=README.md`)\n dispatchEvent(new PopStateEvent('popstate'))\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: (pathname) => { history.pushState(null, '', `${pathname}?relativePath=README.md`) dispatchEvent(new PopStateEvent('popstate'. Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":145,"end_line":145,"start":6040,"end":6048,"source":"pathname","value":{"kind":"reference","source":"pathname","resolved_at":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":38,"end_line":38,"start":2112,"end":2156},"resolved":{"kind":"string","value":"/h/media-host/files/preview/folder-project"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: pathname. Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"31e7554a7f8ba2539c662939bc3dc90c22b304df3fc54729add1ac8b239966d7"}},{"id":"23:148:browser-event-input:9","kind":"browser-event-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":148,"end_line":152,"start":6174,"end":6369,"source":"page.evaluate(() => ({\n paused: globalThis.__previousMedia.paused,\n src: globalThis.__previousMedia.getAttribute('src'),\n revoked: globalThis.__revokedMedia\n }))","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":148,"end_line":152,"start":6174,"end":6369},"binding":"page.evaluate","resolution":[],"enclosing_case":{"line":114,"title":"plays and seeks %s, then releases playback and its Blob on navigation"},"affected_case_lines":[],"decision":"keep","reason":"Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":148,"end_line":152,"start":6188,"end":6368,"source":"() => ({\n paused: globalThis.__previousMedia.paused,\n src: globalThis.__previousMedia.getAttribute('src'),\n revoked: globalThis.__revokedMedia\n })","value":{"kind":"source-expression","source":"() => ({\n paused: globalThis.__previousMedia.paused,\n src: globalThis.__previousMedia.getAttribute('src'),\n revoked: globalThis.__revokedMedia\n })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original browser-event-input control: () => ({ paused: globalThis.__previousMedia.paused, src: globalThis.__previousMedia.getAttribute('src'), revok. Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"31e7554a7f8ba2539c662939bc3dc90c22b304df3fc54729add1ac8b239966d7"}},{"id":"23:160:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":160,"end_line":160,"start":6643,"end":6685,"source":"openMedia('music.wav', wavFixture(), true)","input_position":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":160,"end_line":160,"start":6643,"end":6685},"binding":"openMedia","resolution":[],"enclosing_case":{"line":159,"title":"explains the required app update when an older shell blocks Blob playback"},"affected_case_lines":[],"decision":"keep","reason":"Actual page route reads real media bytes through host fixture RPCs; browser playback/seeking and navigation cleanup or the older-shell update message are independently observed. Scenario: explains the required app update when an older shell blocks Blob playback.","rows":[{"index":1,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":160,"end_line":160,"start":6653,"end":6664,"source":"'music.wav'","value":{"kind":"string","value":"music.wav"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'music.wav'. Actual page route reads real media bytes through host fixture RPCs; browser playback/seeking and navigation cleanup or the older-shell update message are independently observed. Scenario: explains the required app update when an older shell blocks Blob playback.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":160,"end_line":160,"start":6666,"end":6678,"source":"wavFixture()","value":{"kind":"call-source","callee":"wavFixture","arguments":[],"source":"wavFixture()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: wavFixture(). Actual page route reads real media bytes through host fixture RPCs; browser playback/seeking and navigation cleanup or the older-shell update message are independently observed. Scenario: explains the required app update when an older shell blocks Blob playback.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","line":160,"end_line":160,"start":6680,"end":6684,"source":"true","value":{"kind":"boolean","value":true},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: true. Actual page route reads real media bytes through host fixture RPCs; browser playback/seeking and navigation cleanup or the older-shell update message are independently observed. Scenario: explains the required app update when an older shell blocks Blob playback.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"31e7554a7f8ba2539c662939bc3dc90c22b304df3fc54729add1ac8b239966d7"}}],"original_review_sha256":"8ec5ef90a8dedb3075545b43aa4aa733703da3bf5dddc7958404c396f6ed35ee","reviewer":"audit_config","reviewed_sha256":"31e7554a7f8ba2539c662939bc3dc90c22b304df3fc54729add1ac8b239966d7","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","final_declarations":2,"current_controls":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","each":[{"input":{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","start":4767,"end":4871,"line":114,"end_line":117,"source":"[\n ['music.wav', wavFixture(), 'audio'],\n ['movie.webm', Buffer.from(WEBM, 'base64'), 'video']\n ]"},"rows":[{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","start":4773,"end":4809,"line":115,"end_line":115,"source":"['music.wav', wavFixture(), 'audio']"},{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","start":4815,"end":4867,"line":116,"end_line":116,"source":"['movie.webm', Buffer.from(WEBM, 'base64'), 'video']"}]}],"for_of":[],"literal_nodes_without_original_source_match":[{"path":"config/scripts/mobile-web-app/preview/mobile-web-app-media-preview-render.test.mjs","start":5464,"end":5497,"line":129,"end_line":131,"source":"{\n timeout: 10_000\n }","kind":"object"}]},"mutations":[]},"implemented_changes":[{"original_line":114,"title":"plays and seeks %s, then releases playback and its Blob on navigation","decision":"fix","change":"Replace the fixed200ms playback sleep with a bounded browser media-progress observation (currentTime>1 after successful play), then pause/read. Keep both audio/video inputs and exact cleanup observations."}],"manual_implementation_notes":[],"evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs","config/scripts/mobile-web-app/preview/mobile-web-app-render-harness.mjs","config/scripts/mobile-web-page-routes.mjs"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","sha256":"90822ee3fede144b3f71f91791d03d9b2fda3553d7482a2fde609d33c91dba52","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":24,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"90822ee3fede144b3f71f91791d03d9b2fda3553d7482a2fde609d33c91dba52","cases":[{"line":22,"title":"sorts by path, so input order cannot change the id","decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: sorts by path, so input order cannot change the id.","explicit_input_controls":[{"control_id":"24:23:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":23,"source":"computeMobileWebBundleBuildId(assets.toReversed())","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":23,"end_line":23,"start":885,"end":904,"source":"assets.toReversed()","value":{"kind":"call-source","callee":"assets.toReversed","arguments":[],"source":"assets.toReversed()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: assets.toReversed(). The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: sorts by path, so input order cannot change the id.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: sorts by path, so input order cannot change the id.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"24:24:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":24,"source":"computeMobileWebBundleBuildId(assets)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":24,"end_line":24,"start":949,"end":955,"source":"assets","value":{"kind":"reference","source":"assets","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":17,"end_line":20,"start":578,"end":775},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"'a'.repeat","arguments":[{"kind":"number","value":64}],"source":"'a'.repeat(64)"}},{"key":"byteLength","value":{"kind":"number","value":3}},{"key":"contentType","value":{"kind":"string","value":"text/html"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/b.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"'b'.repeat","arguments":[{"kind":"number","value":64}],"source":"'b'.repeat(64)"}},{"key":"byteLength","value":{"kind":"number","value":5}},{"key":"contentType","value":{"kind":"string","value":"text/javascript"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: assets. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: sorts by path, so input order cannot change the id.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: sorts by path, so input order cannot change the id.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":25,"title":"sorts by path, so input order cannot change the id","start":808,"end":996},"implementation_status":"retained"},{"line":28,"title":"serializes a fixed key order regardless of the input object key order","decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: serializes a fixed key order regardless of the input object key order.","explicit_input_controls":[{"control_id":"24:35:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":35,"source":"serializeMobileWebBundleAssets(reordered)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":35,"end_line":35,"start":1250,"end":1259,"source":"reordered","value":{"kind":"reference","source":"reordered","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":29,"end_line":34,"start":1077,"end":1207},"resolved":{"kind":"call-source","callee":"assets.map","arguments":[{"kind":"source-expression","source":"({ contentType, byteLength, sha256, path }) => ({\n contentType,\n byteLength,\n sha256,\n path\n })"}],"source":"assets.map(({ contentType, byteLength, sha256, path }) => ({\n contentType,\n byteLength,\n sha256,\n path\n }))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: reordered. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: serializes a fixed key order regardless of the input object key order.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: serializes a fixed key order regardless of the input object key order.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"24:35:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":35,"source":"serializeMobileWebBundleAssets(assets)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":35,"end_line":35,"start":1298,"end":1304,"source":"assets","value":{"kind":"reference","source":"assets","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":17,"end_line":20,"start":578,"end":775},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"'a'.repeat","arguments":[{"kind":"number","value":64}],"source":"'a'.repeat(64)"}},{"key":"byteLength","value":{"kind":"number","value":3}},{"key":"contentType","value":{"kind":"string","value":"text/html"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/b.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"'b'.repeat","arguments":[{"kind":"number","value":64}],"source":"'b'.repeat(64)"}},{"key":"byteLength","value":{"kind":"number","value":5}},{"key":"contentType","value":{"kind":"string","value":"text/javascript"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: assets. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: serializes a fixed key order regardless of the input object key order.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: serializes a fixed key order regardless of the input object key order.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":31,"title":"serializes a fixed key order regardless of the input object key order","start":1000,"end":1340},"implementation_status":"retained"},{"line":38,"title":"changes when any hashed field changes","decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: changes when any hashed field changes.","explicit_input_controls":[{"control_id":"24:39:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":39,"source":"computeMobileWebBundleBuildId(assets)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":39,"end_line":39,"start":1418,"end":1424,"source":"assets","value":{"kind":"reference","source":"assets","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":17,"end_line":20,"start":578,"end":775},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"'a'.repeat","arguments":[{"kind":"number","value":64}],"source":"'a'.repeat(64)"}},{"key":"byteLength","value":{"kind":"number","value":3}},{"key":"contentType","value":{"kind":"string","value":"text/html"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/b.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"'b'.repeat","arguments":[{"kind":"number","value":64}],"source":"'b'.repeat(64)"}},{"key":"byteLength","value":{"kind":"number","value":5}},{"key":"contentType","value":{"kind":"string","value":"text/javascript"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: assets. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: changes when any hashed field changes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: changes when any hashed field changes.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"24:40:for-of:7","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":40,"source":"['sha256', 'byteLength', 'contentType', 'path']","rows":[{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":40,"end_line":40,"start":1451,"end":1459,"source":"'sha256'","value":{"kind":"string","value":"sha256"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'sha256'. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: changes when any hashed field changes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":40,"end_line":40,"start":1461,"end":1473,"source":"'byteLength'","value":{"kind":"string","value":"byteLength"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'byteLength'. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: changes when any hashed field changes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":40,"end_line":40,"start":1475,"end":1488,"source":"'contentType'","value":{"kind":"string","value":"contentType"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'contentType'. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: changes when any hashed field changes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":40,"end_line":40,"start":1490,"end":1496,"source":"'path'","value":{"kind":"string","value":"path"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'path'. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: changes when any hashed field changes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: changes when any hashed field changes.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"24:44:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":44,"source":"computeMobileWebBundleBuildId(mutated)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":44,"end_line":44,"start":1704,"end":1711,"source":"mutated","value":{"kind":"reference","source":"mutated","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":41,"end_line":43,"start":1523,"end":1660},"resolved":{"kind":"call-source","callee":"assets.map","arguments":[{"kind":"source-expression","source":"(asset, index) =>\n index === 0 ? { ...asset, [field]: field === 'byteLength' ? 4 : `${asset[field]}x` } : asset"}],"source":"assets.map((asset, index) =>\n index === 0 ? { ...asset, [field]: field === 'byteLength' ? 4 : `${asset[field]}x` } : asset\n )"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mutated. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: changes when any hashed field changes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: changes when any hashed field changes.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":41,"title":"changes when any hashed field changes","start":1344,"end":1772},"implementation_status":"retained"},{"line":50,"title":"names an asset by its own digest, which is what makes the tree content-addressed","decision":"fix","reason":"Add the independent known SHA256 of body and literal MIME expectation instead of relying only on digest shape/self-referenced asset.path and calling the same MIME helper for expected output.","explicit_input_controls":[{"control_id":"24:51:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":51,"source":"hashedAsset(Buffer.from('body', 'utf8'), 'js')","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":51,"end_line":51,"start":1907,"end":1934,"source":"Buffer.from('body', 'utf8')","value":{"kind":"call-source","callee":"Buffer.from","arguments":[{"kind":"string","value":"body"},{"kind":"string","value":"utf8"}],"source":"Buffer.from('body', 'utf8')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: Buffer.from('body', 'utf8'). Add the independent known SHA256 of body and literal MIME expectation instead of relying only on digest shape/self-referenced asset.path and calling the same MIME helper for expected output.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":51,"end_line":51,"start":1936,"end":1940,"source":"'js'","value":{"kind":"string","value":"js"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'js'. Add the independent known SHA256 of body and literal MIME expectation instead of relying only on digest shape/self-referenced asset.path and calling the same MIME helper for expected output.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Add the independent known SHA256 of body and literal MIME expectation instead of relying only on digest shape/self-referenced asset.path and calling the same MIME helper for expected output.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"24:56:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":56,"source":"contentTypeForExtension('js')","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":56,"end_line":56,"start":2147,"end":2151,"source":"'js'","value":{"kind":"string","value":"js"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'js'. Add the independent known SHA256 of body and literal MIME expectation instead of relying only on digest shape/self-referenced asset.path and calling the same MIME helper for expected output.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Add the independent known SHA256 of body and literal MIME expectation instead of relying only on digest shape/self-referenced asset.path and calling the same MIME helper for expected output.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":53,"title":"names an asset by its own digest, which is what makes the tree content-addressed","start":1811,"end":2237},"implementation_status":"implemented"},{"line":59,"title":"refuses an extension with no registered content type","decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: refuses an extension with no registered content type.","explicit_input_controls":[{"control_id":"24:62:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":62,"source":"hashedAsset(Buffer.from('body'), 'wasm')","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":62,"end_line":62,"start":2447,"end":2466,"source":"Buffer.from('body')","value":{"kind":"call-source","callee":"Buffer.from","arguments":[{"kind":"string","value":"body"}],"source":"Buffer.from('body')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: Buffer.from('body'). The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: refuses an extension with no registered content type.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":62,"end_line":62,"start":2468,"end":2474,"source":"'wasm'","value":{"kind":"string","value":"wasm"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'wasm'. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: refuses an extension with no registered content type.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: refuses an extension with no registered content type.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":62,"title":"refuses an extension with no registered content type","start":2241,"end":2598},"implementation_status":"retained"},{"line":67,"title":"stamps the page version the contract names, which the shell floors on","decision":"fix","reason":"Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","explicit_input_controls":[{"control_id":"24:71:fixture-or-oracle-declaration:12","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":71,"source":"{\n path: 'index.html',\n bytes,\n sha256: sha256Hex(bytes),\n byteLength: bytes.byteLength,\n contentType: contentTypeForExtension('html')\n }","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":72,"end_line":72,"start":2842,"end":2860,"source":"path: 'index.html'","value":{"kind":"property","key":"path","value":{"kind":"string","value":"index.html"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: path: 'index.html'. Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":73,"end_line":73,"start":2870,"end":2875,"source":"bytes","value":{"kind":"source-expression","source":"bytes"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: bytes. Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":74,"end_line":74,"start":2885,"end":2909,"source":"sha256: sha256Hex(bytes)","value":{"kind":"property","key":"sha256","value":{"kind":"call-source","callee":"sha256Hex","arguments":[{"kind":"reference","source":"bytes","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":70,"end_line":70,"start":2771,"end":2811},"resolved":{"kind":"call-source","callee":"Buffer.from","arguments":[{"kind":"string","value":"\n"},{"kind":"string","value":"utf8"}],"source":"Buffer.from('\\n', 'utf8')"}}],"source":"sha256Hex(bytes)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: sha256: sha256Hex(bytes). Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":75,"end_line":75,"start":2919,"end":2947,"source":"byteLength: bytes.byteLength","value":{"kind":"property","key":"byteLength","value":{"kind":"source-expression","source":"bytes.byteLength"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: byteLength: bytes.byteLength. Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":5,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":76,"end_line":76,"start":2957,"end":3001,"source":"contentType: contentTypeForExtension('html')","value":{"kind":"property","key":"contentType","value":{"kind":"call-source","callee":"contentTypeForExtension","arguments":[{"kind":"string","value":"html"}],"source":"contentTypeForExtension('html')"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: contentType: contentTypeForExtension('html'). Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"24:74:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":74,"source":"sha256Hex(bytes)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":74,"end_line":74,"start":2903,"end":2908,"source":"bytes","value":{"kind":"reference","source":"bytes","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":70,"end_line":70,"start":2771,"end":2811},"resolved":{"kind":"call-source","callee":"Buffer.from","arguments":[{"kind":"string","value":"\n"},{"kind":"string","value":"utf8"}],"source":"Buffer.from('\\n', 'utf8')"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: bytes. Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"24:76:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":76,"source":"contentTypeForExtension('html')","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":76,"end_line":76,"start":2994,"end":3000,"source":"'html'","value":{"kind":"string","value":"html"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'html'. Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"24:78:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":78,"source":"writeMobileWebBundleTree({\n outDir,\n written: [entry],\n desktopVersion: '1.0.0',\n protocolWindow: { runtimeProtocolVersion: 3, minCompatibleRuntimeProtocolVersion: 3 }\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":78,"end_line":83,"start":3047,"end":3225,"source":"{\n outDir,\n written: [entry],\n desktopVersion: '1.0.0',\n protocolWindow: { runtimeProtocolVersion: 3, minCompatibleRuntimeProtocolVersion: 3 }\n }","value":{"kind":"object","value":[{"source":"outDir"},{"key":"written","value":{"kind":"array","value":[{"kind":"reference","source":"entry","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":71,"end_line":77,"start":2832,"end":3009},"resolved":{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"source":"bytes"},{"key":"sha256","value":{"kind":"call-source","callee":"sha256Hex","arguments":[{"kind":"reference","source":"bytes","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":70,"end_line":70,"start":2771,"end":2811},"resolved":{"kind":"call-source","callee":"Buffer.from","arguments":[{"kind":"string","value":"\n"},{"kind":"string","value":"utf8"}],"source":"Buffer.from('\\n', 'utf8')"}}],"source":"sha256Hex(bytes)"}},{"key":"byteLength","value":{"kind":"source-expression","source":"bytes.byteLength"}},{"key":"contentType","value":{"kind":"call-source","callee":"contentTypeForExtension","arguments":[{"kind":"string","value":"html"}],"source":"contentTypeForExtension('html')"}}]}}]}},{"key":"desktopVersion","value":{"kind":"string","value":"1.0.0"}},{"key":"protocolWindow","value":{"kind":"object","value":[{"key":"runtimeProtocolVersion","value":{"kind":"number","value":3}},{"key":"minCompatibleRuntimeProtocolVersion","value":{"kind":"number","value":3}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { outDir, written: [entry], desktopVersion: '1.0.0', protocolWindow: { runtimeProtocolVersion: 3, minCompati. Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":70,"title":"stamps the page version the contract names, which the shell floors on","start":2650,"end":3642},"implementation_status":"implemented"},{"line":92,"title":"marks a dark build outside the manifest, so its buildId is the same tree\u2019s","decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: marks a dark build outside the manifest, so its buildId is the same tree\u2019s.","explicit_input_controls":[{"control_id":"24:97:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":97,"source":"writeMobileWebBundleTree({\n outDir,\n written: [\n {\n path: 'index.html',\n bytes,\n sha256: sha256Hex(bytes),\n byteLength: bytes.byteLength,\n contentType: contentTypeForExtension('html')\n }\n ],\n desktopVersion: '1.0.0',\n protocolWindow: { runtimeProtocolVersion: 3, minCompatibleRuntimeProtocolVersion: 3 },\n env\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":97,"end_line":111,"start":3873,"end":4308,"source":"{\n outDir,\n written: [\n {\n path: 'index.html',\n bytes,\n sha256: sha256Hex(bytes),\n byteLength: bytes.byteLength,\n contentType: contentTypeForExtension('html')\n }\n ],\n desktopVersion: '1.0.0',\n protocolWindow: { runtimeProtocolVersion: 3, minCompatibleRuntimeProtocolVersion: 3 },\n env\n }","value":{"kind":"object","value":[{"source":"outDir"},{"key":"written","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"source":"bytes"},{"key":"sha256","value":{"kind":"call-source","callee":"sha256Hex","arguments":[{"kind":"reference","source":"bytes","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":95,"end_line":95,"start":3771,"end":3811},"resolved":{"kind":"call-source","callee":"Buffer.from","arguments":[{"kind":"string","value":"\n"},{"kind":"string","value":"utf8"}],"source":"Buffer.from('\\n', 'utf8')"}}],"source":"sha256Hex(bytes)"}},{"key":"byteLength","value":{"kind":"source-expression","source":"bytes.byteLength"}},{"key":"contentType","value":{"kind":"call-source","callee":"contentTypeForExtension","arguments":[{"kind":"string","value":"html"}],"source":"contentTypeForExtension('html')"}}]}]}},{"key":"desktopVersion","value":{"kind":"string","value":"1.0.0"}},{"key":"protocolWindow","value":{"kind":"object","value":[{"key":"runtimeProtocolVersion","value":{"kind":"number","value":3}},{"key":"minCompatibleRuntimeProtocolVersion","value":{"kind":"number","value":3}}]}},{"source":"env"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { outDir, written: [ { path: 'index.html', bytes, sha256: sha256He. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: marks a dark build outside the manifest, so its buildId is the same tree\u2019s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: marks a dark build outside the manifest, so its buildId is the same tree\u2019s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"24:103:inline-api-or-fixture-input:17","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":103,"source":"sha256Hex(bytes)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":103,"end_line":103,"start":4015,"end":4020,"source":"bytes","value":{"kind":"reference","source":"bytes","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":95,"end_line":95,"start":3771,"end":3811},"resolved":{"kind":"call-source","callee":"Buffer.from","arguments":[{"kind":"string","value":"\n"},{"kind":"string","value":"utf8"}],"source":"Buffer.from('\\n', 'utf8')"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: bytes. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: marks a dark build outside the manifest, so its buildId is the same tree\u2019s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: marks a dark build outside the manifest, so its buildId is the same tree\u2019s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"24:105:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":105,"source":"contentTypeForExtension('html')","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":105,"end_line":105,"start":4118,"end":4124,"source":"'html'","value":{"kind":"string","value":"html"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'html'. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: marks a dark build outside the manifest, so its buildId is the same tree\u2019s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: marks a dark build outside the manifest, so its buildId is the same tree\u2019s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":95,"title":"marks a dark build outside the manifest, so its buildId is the same tree\u2019s","start":3646,"end":4789},"implementation_status":"retained"}],"lines":122,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract.","planned_changes":[{"original_line":50,"title":"names an asset by its own digest, which is what makes the tree content-addressed","decision":"fix","change":"Add the independent known SHA256 of body and literal MIME expectation instead of relying only on digest shape/self-referenced asset.path and calling the same MIME helper for expected output."},{"original_line":67,"title":"stamps the page version the contract names, which the shell floors on","decision":"fix","change":"Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer."}],"production_evidence":["config/scripts/mobile-web-bundle-manifest.mjs","src/shared/mobile-web-bundle/manifest-contract.ts"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"24:17:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":17,"end_line":20,"start":569,"end":775,"source":"[\n { path: 'index.html', sha256: 'a'.repeat(64), byteLength: 3, contentType: 'text/html' },\n { path: 'assets/b.js', sha256: 'b'.repeat(64), byteLength: 5, contentType: 'text/javascript' }\n ]","input_position":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":17,"end_line":20,"start":578,"end":775},"binding":"assets","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract.","rows":[{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":18,"end_line":18,"start":584,"end":671,"source":"{ path: 'index.html', sha256: 'a'.repeat(64), byteLength: 3, contentType: 'text/html' }","value":{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"'a'.repeat","arguments":[{"kind":"number","value":64}],"source":"'a'.repeat(64)"}},{"key":"byteLength","value":{"kind":"number","value":3}},{"key":"contentType","value":{"kind":"string","value":"text/html"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { path: 'index.html', sha256: 'a'.repeat(64), byteLength: 3, contentType: 'text/html' }. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":19,"end_line":19,"start":677,"end":771,"source":"{ path: 'assets/b.js', sha256: 'b'.repeat(64), byteLength: 5, contentType: 'text/javascript' }","value":{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/b.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"'b'.repeat","arguments":[{"kind":"number","value":64}],"source":"'b'.repeat(64)"}},{"key":"byteLength","value":{"kind":"number","value":5}},{"key":"contentType","value":{"kind":"string","value":"text/javascript"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { path: 'assets/b.js', sha256: 'b'.repeat(64), byteLength: 5, contentType: 'text/javascript' }. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2229d8f36576c9d868f1e72c0b905b0507100908bf8c744f4f604da0c97133fd"}},{"id":"24:23:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":23,"end_line":23,"start":855,"end":905,"source":"computeMobileWebBundleBuildId(assets.toReversed())","input_position":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":23,"end_line":23,"start":855,"end":905},"binding":"computeMobileWebBundleBuildId","resolution":[],"enclosing_case":{"line":22,"title":"sorts by path, so input order cannot change the id"},"affected_case_lines":[],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: sorts by path, so input order cannot change the id.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":23,"end_line":23,"start":885,"end":904,"source":"assets.toReversed()","value":{"kind":"call-source","callee":"assets.toReversed","arguments":[],"source":"assets.toReversed()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: assets.toReversed(). The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: sorts by path, so input order cannot change the id.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2229d8f36576c9d868f1e72c0b905b0507100908bf8c744f4f604da0c97133fd"}},{"id":"24:24:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":24,"end_line":24,"start":919,"end":956,"source":"computeMobileWebBundleBuildId(assets)","input_position":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":24,"end_line":24,"start":919,"end":956},"binding":"computeMobileWebBundleBuildId","resolution":[],"enclosing_case":{"line":22,"title":"sorts by path, so input order cannot change the id"},"affected_case_lines":[],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: sorts by path, so input order cannot change the id.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":24,"end_line":24,"start":949,"end":955,"source":"assets","value":{"kind":"reference","source":"assets","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":17,"end_line":20,"start":578,"end":775},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"'a'.repeat","arguments":[{"kind":"number","value":64}],"source":"'a'.repeat(64)"}},{"key":"byteLength","value":{"kind":"number","value":3}},{"key":"contentType","value":{"kind":"string","value":"text/html"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/b.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"'b'.repeat","arguments":[{"kind":"number","value":64}],"source":"'b'.repeat(64)"}},{"key":"byteLength","value":{"kind":"number","value":5}},{"key":"contentType","value":{"kind":"string","value":"text/javascript"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: assets. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: sorts by path, so input order cannot change the id.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2229d8f36576c9d868f1e72c0b905b0507100908bf8c744f4f604da0c97133fd"}},{"id":"24:35:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":35,"end_line":35,"start":1219,"end":1260,"source":"serializeMobileWebBundleAssets(reordered)","input_position":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":35,"end_line":35,"start":1219,"end":1260},"binding":"serializeMobileWebBundleAssets","resolution":[],"enclosing_case":{"line":28,"title":"serializes a fixed key order regardless of the input object key order"},"affected_case_lines":[],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: serializes a fixed key order regardless of the input object key order.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":35,"end_line":35,"start":1250,"end":1259,"source":"reordered","value":{"kind":"reference","source":"reordered","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":29,"end_line":34,"start":1077,"end":1207},"resolved":{"kind":"call-source","callee":"assets.map","arguments":[{"kind":"source-expression","source":"({ contentType, byteLength, sha256, path }) => ({\n contentType,\n byteLength,\n sha256,\n path\n })"}],"source":"assets.map(({ contentType, byteLength, sha256, path }) => ({\n contentType,\n byteLength,\n sha256,\n path\n }))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: reordered. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: serializes a fixed key order regardless of the input object key order.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2229d8f36576c9d868f1e72c0b905b0507100908bf8c744f4f604da0c97133fd"}},{"id":"24:35:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":35,"end_line":35,"start":1267,"end":1305,"source":"serializeMobileWebBundleAssets(assets)","input_position":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":35,"end_line":35,"start":1267,"end":1305},"binding":"serializeMobileWebBundleAssets","resolution":[],"enclosing_case":{"line":28,"title":"serializes a fixed key order regardless of the input object key order"},"affected_case_lines":[],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: serializes a fixed key order regardless of the input object key order.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":35,"end_line":35,"start":1298,"end":1304,"source":"assets","value":{"kind":"reference","source":"assets","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":17,"end_line":20,"start":578,"end":775},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"'a'.repeat","arguments":[{"kind":"number","value":64}],"source":"'a'.repeat(64)"}},{"key":"byteLength","value":{"kind":"number","value":3}},{"key":"contentType","value":{"kind":"string","value":"text/html"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/b.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"'b'.repeat","arguments":[{"kind":"number","value":64}],"source":"'b'.repeat(64)"}},{"key":"byteLength","value":{"kind":"number","value":5}},{"key":"contentType","value":{"kind":"string","value":"text/javascript"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: assets. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: serializes a fixed key order regardless of the input object key order.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2229d8f36576c9d868f1e72c0b905b0507100908bf8c744f4f604da0c97133fd"}},{"id":"24:39:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":39,"end_line":39,"start":1388,"end":1425,"source":"computeMobileWebBundleBuildId(assets)","input_position":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":39,"end_line":39,"start":1388,"end":1425},"binding":"computeMobileWebBundleBuildId","resolution":[],"enclosing_case":{"line":38,"title":"changes when any hashed field changes"},"affected_case_lines":[],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: changes when any hashed field changes.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":39,"end_line":39,"start":1418,"end":1424,"source":"assets","value":{"kind":"reference","source":"assets","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":17,"end_line":20,"start":578,"end":775},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"'a'.repeat","arguments":[{"kind":"number","value":64}],"source":"'a'.repeat(64)"}},{"key":"byteLength","value":{"kind":"number","value":3}},{"key":"contentType","value":{"kind":"string","value":"text/html"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/b.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"'b'.repeat","arguments":[{"kind":"number","value":64}],"source":"'b'.repeat(64)"}},{"key":"byteLength","value":{"kind":"number","value":5}},{"key":"contentType","value":{"kind":"string","value":"text/javascript"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: assets. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: changes when any hashed field changes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2229d8f36576c9d868f1e72c0b905b0507100908bf8c744f4f604da0c97133fd"}},{"id":"24:40:for-of:7","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":40,"end_line":45,"start":1430,"end":1738,"source":"['sha256', 'byteLength', 'contentType', 'path']","input_position":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":40,"end_line":40,"start":1450,"end":1497},"binding":"const field","resolution":[],"enclosing_case":{"line":38,"title":"changes when any hashed field changes"},"affected_case_lines":[],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: changes when any hashed field changes.","rows":[{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":40,"end_line":40,"start":1451,"end":1459,"source":"'sha256'","value":{"kind":"string","value":"sha256"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'sha256'. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: changes when any hashed field changes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":40,"end_line":40,"start":1461,"end":1473,"source":"'byteLength'","value":{"kind":"string","value":"byteLength"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'byteLength'. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: changes when any hashed field changes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":40,"end_line":40,"start":1475,"end":1488,"source":"'contentType'","value":{"kind":"string","value":"contentType"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'contentType'. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: changes when any hashed field changes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":40,"end_line":40,"start":1490,"end":1496,"source":"'path'","value":{"kind":"string","value":"path"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'path'. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: changes when any hashed field changes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2229d8f36576c9d868f1e72c0b905b0507100908bf8c744f4f604da0c97133fd"}},{"id":"24:44:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":44,"end_line":44,"start":1674,"end":1712,"source":"computeMobileWebBundleBuildId(mutated)","input_position":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":44,"end_line":44,"start":1674,"end":1712},"binding":"computeMobileWebBundleBuildId","resolution":[],"enclosing_case":{"line":38,"title":"changes when any hashed field changes"},"affected_case_lines":[],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: changes when any hashed field changes.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":44,"end_line":44,"start":1704,"end":1711,"source":"mutated","value":{"kind":"reference","source":"mutated","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":41,"end_line":43,"start":1523,"end":1660},"resolved":{"kind":"call-source","callee":"assets.map","arguments":[{"kind":"source-expression","source":"(asset, index) =>\n index === 0 ? { ...asset, [field]: field === 'byteLength' ? 4 : `${asset[field]}x` } : asset"}],"source":"assets.map((asset, index) =>\n index === 0 ? { ...asset, [field]: field === 'byteLength' ? 4 : `${asset[field]}x` } : asset\n )"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: mutated. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: changes when any hashed field changes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2229d8f36576c9d868f1e72c0b905b0507100908bf8c744f4f604da0c97133fd"}},{"id":"24:51:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":51,"end_line":51,"start":1895,"end":1941,"source":"hashedAsset(Buffer.from('body', 'utf8'), 'js')","input_position":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":51,"end_line":51,"start":1895,"end":1941},"binding":"hashedAsset","resolution":[],"enclosing_case":{"line":50,"title":"names an asset by its own digest, which is what makes the tree content-addressed"},"affected_case_lines":[],"decision":"keep","reason":"Add the independent known SHA256 of body and literal MIME expectation instead of relying only on digest shape/self-referenced asset.path and calling the same MIME helper for expected output.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":51,"end_line":51,"start":1907,"end":1934,"source":"Buffer.from('body', 'utf8')","value":{"kind":"call-source","callee":"Buffer.from","arguments":[{"kind":"string","value":"body"},{"kind":"string","value":"utf8"}],"source":"Buffer.from('body', 'utf8')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: Buffer.from('body', 'utf8'). Add the independent known SHA256 of body and literal MIME expectation instead of relying only on digest shape/self-referenced asset.path and calling the same MIME helper for expected output.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":51,"end_line":51,"start":1936,"end":1940,"source":"'js'","value":{"kind":"string","value":"js"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'js'. Add the independent known SHA256 of body and literal MIME expectation instead of relying only on digest shape/self-referenced asset.path and calling the same MIME helper for expected output.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2229d8f36576c9d868f1e72c0b905b0507100908bf8c744f4f604da0c97133fd"}},{"id":"24:56:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":56,"end_line":56,"start":2123,"end":2152,"source":"contentTypeForExtension('js')","input_position":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":56,"end_line":56,"start":2123,"end":2152},"binding":"contentTypeForExtension","resolution":[],"enclosing_case":{"line":50,"title":"names an asset by its own digest, which is what makes the tree content-addressed"},"affected_case_lines":[],"decision":"keep","reason":"Add the independent known SHA256 of body and literal MIME expectation instead of relying only on digest shape/self-referenced asset.path and calling the same MIME helper for expected output.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":56,"end_line":56,"start":2147,"end":2151,"source":"'js'","value":{"kind":"string","value":"js"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'js'. Add the independent known SHA256 of body and literal MIME expectation instead of relying only on digest shape/self-referenced asset.path and calling the same MIME helper for expected output.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2229d8f36576c9d868f1e72c0b905b0507100908bf8c744f4f604da0c97133fd"}},{"id":"24:62:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":62,"end_line":62,"start":2435,"end":2475,"source":"hashedAsset(Buffer.from('body'), 'wasm')","input_position":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":62,"end_line":62,"start":2435,"end":2475},"binding":"hashedAsset","resolution":[],"enclosing_case":{"line":59,"title":"refuses an extension with no registered content type"},"affected_case_lines":[],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: refuses an extension with no registered content type.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":62,"end_line":62,"start":2447,"end":2466,"source":"Buffer.from('body')","value":{"kind":"call-source","callee":"Buffer.from","arguments":[{"kind":"string","value":"body"}],"source":"Buffer.from('body')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: Buffer.from('body'). The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: refuses an extension with no registered content type.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":62,"end_line":62,"start":2468,"end":2474,"source":"'wasm'","value":{"kind":"string","value":"wasm"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'wasm'. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: refuses an extension with no registered content type.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2229d8f36576c9d868f1e72c0b905b0507100908bf8c744f4f604da0c97133fd"}},{"id":"24:71:fixture-or-oracle-declaration:12","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":71,"end_line":77,"start":2824,"end":3009,"source":"{\n path: 'index.html',\n bytes,\n sha256: sha256Hex(bytes),\n byteLength: bytes.byteLength,\n contentType: contentTypeForExtension('html')\n }","input_position":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":71,"end_line":77,"start":2832,"end":3009},"binding":"entry","resolution":[],"enclosing_case":{"line":67,"title":"stamps the page version the contract names, which the shell floors on"},"affected_case_lines":[],"decision":"keep","reason":"Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":72,"end_line":72,"start":2842,"end":2860,"source":"path: 'index.html'","value":{"kind":"property","key":"path","value":{"kind":"string","value":"index.html"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: path: 'index.html'. Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":73,"end_line":73,"start":2870,"end":2875,"source":"bytes","value":{"kind":"source-expression","source":"bytes"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: bytes. Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":74,"end_line":74,"start":2885,"end":2909,"source":"sha256: sha256Hex(bytes)","value":{"kind":"property","key":"sha256","value":{"kind":"call-source","callee":"sha256Hex","arguments":[{"kind":"reference","source":"bytes","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":70,"end_line":70,"start":2771,"end":2811},"resolved":{"kind":"call-source","callee":"Buffer.from","arguments":[{"kind":"string","value":"\n"},{"kind":"string","value":"utf8"}],"source":"Buffer.from('\\n', 'utf8')"}}],"source":"sha256Hex(bytes)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: sha256: sha256Hex(bytes). Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":75,"end_line":75,"start":2919,"end":2947,"source":"byteLength: bytes.byteLength","value":{"kind":"property","key":"byteLength","value":{"kind":"source-expression","source":"bytes.byteLength"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: byteLength: bytes.byteLength. Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":5,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":76,"end_line":76,"start":2957,"end":3001,"source":"contentType: contentTypeForExtension('html')","value":{"kind":"property","key":"contentType","value":{"kind":"call-source","callee":"contentTypeForExtension","arguments":[{"kind":"string","value":"html"}],"source":"contentTypeForExtension('html')"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: contentType: contentTypeForExtension('html'). Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2229d8f36576c9d868f1e72c0b905b0507100908bf8c744f4f604da0c97133fd"}},{"id":"24:74:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":74,"end_line":74,"start":2893,"end":2909,"source":"sha256Hex(bytes)","input_position":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":74,"end_line":74,"start":2893,"end":2909},"binding":"sha256Hex","resolution":[],"enclosing_case":{"line":67,"title":"stamps the page version the contract names, which the shell floors on"},"affected_case_lines":[],"decision":"keep","reason":"Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":74,"end_line":74,"start":2903,"end":2908,"source":"bytes","value":{"kind":"reference","source":"bytes","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":70,"end_line":70,"start":2771,"end":2811},"resolved":{"kind":"call-source","callee":"Buffer.from","arguments":[{"kind":"string","value":"\n"},{"kind":"string","value":"utf8"}],"source":"Buffer.from('\\n', 'utf8')"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: bytes. Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2229d8f36576c9d868f1e72c0b905b0507100908bf8c744f4f604da0c97133fd"}},{"id":"24:76:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":76,"end_line":76,"start":2970,"end":3001,"source":"contentTypeForExtension('html')","input_position":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":76,"end_line":76,"start":2970,"end":3001},"binding":"contentTypeForExtension","resolution":[],"enclosing_case":{"line":67,"title":"stamps the page version the contract names, which the shell floors on"},"affected_case_lines":[],"decision":"keep","reason":"Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":76,"end_line":76,"start":2994,"end":3000,"source":"'html'","value":{"kind":"string","value":"html"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'html'. Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2229d8f36576c9d868f1e72c0b905b0507100908bf8c744f4f604da0c97133fd"}},{"id":"24:78:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":78,"end_line":83,"start":3022,"end":3226,"source":"writeMobileWebBundleTree({\n outDir,\n written: [entry],\n desktopVersion: '1.0.0',\n protocolWindow: { runtimeProtocolVersion: 3, minCompatibleRuntimeProtocolVersion: 3 }\n })","input_position":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":78,"end_line":83,"start":3022,"end":3226},"binding":"writeMobileWebBundleTree","resolution":[],"enclosing_case":{"line":67,"title":"stamps the page version the contract names, which the shell floors on"},"affected_case_lines":[],"decision":"keep","reason":"Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":78,"end_line":83,"start":3047,"end":3225,"source":"{\n outDir,\n written: [entry],\n desktopVersion: '1.0.0',\n protocolWindow: { runtimeProtocolVersion: 3, minCompatibleRuntimeProtocolVersion: 3 }\n }","value":{"kind":"object","value":[{"source":"outDir"},{"key":"written","value":{"kind":"array","value":[{"kind":"reference","source":"entry","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":71,"end_line":77,"start":2832,"end":3009},"resolved":{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"source":"bytes"},{"key":"sha256","value":{"kind":"call-source","callee":"sha256Hex","arguments":[{"kind":"reference","source":"bytes","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":70,"end_line":70,"start":2771,"end":2811},"resolved":{"kind":"call-source","callee":"Buffer.from","arguments":[{"kind":"string","value":"\n"},{"kind":"string","value":"utf8"}],"source":"Buffer.from('\\n', 'utf8')"}}],"source":"sha256Hex(bytes)"}},{"key":"byteLength","value":{"kind":"source-expression","source":"bytes.byteLength"}},{"key":"contentType","value":{"kind":"call-source","callee":"contentTypeForExtension","arguments":[{"kind":"string","value":"html"}],"source":"contentTypeForExtension('html')"}}]}}]}},{"key":"desktopVersion","value":{"kind":"string","value":"1.0.0"}},{"key":"protocolWindow","value":{"kind":"object","value":[{"key":"runtimeProtocolVersion","value":{"kind":"number","value":3}},{"key":"minCompatibleRuntimeProtocolVersion","value":{"kind":"number","value":3}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { outDir, written: [entry], desktopVersion: '1.0.0', protocolWindow: { runtimeProtocolVersion: 3, minCompati. Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2229d8f36576c9d868f1e72c0b905b0507100908bf8c744f4f604da0c97133fd"}},{"id":"24:97:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":97,"end_line":111,"start":3848,"end":4309,"source":"writeMobileWebBundleTree({\n outDir,\n written: [\n {\n path: 'index.html',\n bytes,\n sha256: sha256Hex(bytes),\n byteLength: bytes.byteLength,\n contentType: contentTypeForExtension('html')\n }\n ],\n desktopVersion: '1.0.0',\n protocolWindow: { runtimeProtocolVersion: 3, minCompatibleRuntimeProtocolVersion: 3 },\n env\n })","input_position":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":97,"end_line":111,"start":3848,"end":4309},"binding":"writeMobileWebBundleTree","resolution":[],"enclosing_case":{"line":92,"title":"marks a dark build outside the manifest, so its buildId is the same tree\u2019s"},"affected_case_lines":[],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: marks a dark build outside the manifest, so its buildId is the same tree\u2019s.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":97,"end_line":111,"start":3873,"end":4308,"source":"{\n outDir,\n written: [\n {\n path: 'index.html',\n bytes,\n sha256: sha256Hex(bytes),\n byteLength: bytes.byteLength,\n contentType: contentTypeForExtension('html')\n }\n ],\n desktopVersion: '1.0.0',\n protocolWindow: { runtimeProtocolVersion: 3, minCompatibleRuntimeProtocolVersion: 3 },\n env\n }","value":{"kind":"object","value":[{"source":"outDir"},{"key":"written","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"source":"bytes"},{"key":"sha256","value":{"kind":"call-source","callee":"sha256Hex","arguments":[{"kind":"reference","source":"bytes","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":95,"end_line":95,"start":3771,"end":3811},"resolved":{"kind":"call-source","callee":"Buffer.from","arguments":[{"kind":"string","value":"\n"},{"kind":"string","value":"utf8"}],"source":"Buffer.from('\\n', 'utf8')"}}],"source":"sha256Hex(bytes)"}},{"key":"byteLength","value":{"kind":"source-expression","source":"bytes.byteLength"}},{"key":"contentType","value":{"kind":"call-source","callee":"contentTypeForExtension","arguments":[{"kind":"string","value":"html"}],"source":"contentTypeForExtension('html')"}}]}]}},{"key":"desktopVersion","value":{"kind":"string","value":"1.0.0"}},{"key":"protocolWindow","value":{"kind":"object","value":[{"key":"runtimeProtocolVersion","value":{"kind":"number","value":3}},{"key":"minCompatibleRuntimeProtocolVersion","value":{"kind":"number","value":3}}]}},{"source":"env"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { outDir, written: [ { path: 'index.html', bytes, sha256: sha256He. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: marks a dark build outside the manifest, so its buildId is the same tree\u2019s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2229d8f36576c9d868f1e72c0b905b0507100908bf8c744f4f604da0c97133fd"}},{"id":"24:103:inline-api-or-fixture-input:17","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":103,"end_line":103,"start":4005,"end":4021,"source":"sha256Hex(bytes)","input_position":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":103,"end_line":103,"start":4005,"end":4021},"binding":"sha256Hex","resolution":[],"enclosing_case":{"line":92,"title":"marks a dark build outside the manifest, so its buildId is the same tree\u2019s"},"affected_case_lines":[],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: marks a dark build outside the manifest, so its buildId is the same tree\u2019s.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":103,"end_line":103,"start":4015,"end":4020,"source":"bytes","value":{"kind":"reference","source":"bytes","resolved_at":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":95,"end_line":95,"start":3771,"end":3811},"resolved":{"kind":"call-source","callee":"Buffer.from","arguments":[{"kind":"string","value":"\n"},{"kind":"string","value":"utf8"}],"source":"Buffer.from('\\n', 'utf8')"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: bytes. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: marks a dark build outside the manifest, so its buildId is the same tree\u2019s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2229d8f36576c9d868f1e72c0b905b0507100908bf8c744f4f604da0c97133fd"}},{"id":"24:105:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":105,"end_line":105,"start":4094,"end":4125,"source":"contentTypeForExtension('html')","input_position":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":105,"end_line":105,"start":4094,"end":4125},"binding":"contentTypeForExtension","resolution":[],"enclosing_case":{"line":92,"title":"marks a dark build outside the manifest, so its buildId is the same tree\u2019s"},"affected_case_lines":[],"decision":"keep","reason":"The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: marks a dark build outside the manifest, so its buildId is the same tree\u2019s.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","line":105,"end_line":105,"start":4118,"end":4124,"source":"'html'","value":{"kind":"string","value":"html"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'html'. The real asset hashing/serialization or on-disk tree writer is called with independent assets and actual filesystem observations; the expected order/field mutation/marker behavior is part of the public bundle contract. Scenario: marks a dark build outside the manifest, so its buildId is the same tree\u2019s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2229d8f36576c9d868f1e72c0b905b0507100908bf8c744f4f604da0c97133fd"}}],"original_review_sha256":"b3023e4e34026b431ce45d9256ba799c7abe7b5b23d3cc016e5ffc3e5ad561e4","reviewer":"audit_config","reviewed_sha256":"2229d8f36576c9d868f1e72c0b905b0507100908bf8c744f4f604da0c97133fd","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-bundle-manifest.test.mjs","final_declarations":7,"current_controls":{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","each":[],"for_of":[{"path":"config/scripts/mobile-web-bundle-manifest.test.mjs","start":1479,"end":1526,"line":43,"end_line":43,"source":"['sha256', 'byteLength', 'contentType', 'path']","binding":"const field","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[{"name":"asset-valid-wrong-digest","reason":"Independent known digest rejects another valid64-character digest.","baseline_hashes":{"config/scripts/mobile-web-bundle-manifest.mjs":"b3bd6d823add34d5e9c137a491731b19c6f6f3dd7637abb61578667332b9dbf1"},"test":"config/scripts/mobile-web-bundle-manifest.test.mjs","pattern":"names an asset by its own digest","log":"/tmp/orca-config-0007-mutation-asset-valid-wrong-digest.log","command":["pnpm","test","config/scripts/mobile-web-bundle-manifest.test.mjs","-t","names an asset by its own digest","--maxWorkers=1"],"seconds":2.37,"exit_code":1,"assertion_failure_seen":true,"expected_failure_seen":true,"failed_tests":["1 failed | 6 skipped (7)"],"restored_hashes":{"config/scripts/mobile-web-bundle-manifest.mjs":"b3bd6d823add34d5e9c137a491731b19c6f6f3dd7637abb61578667332b9dbf1"},"restored":true,"log_sha256":"4ee082d0c4a72b4682f2733bdda6e86a337718097eb7e79f9f3edf115bd55aa9"},{"name":"asset-valid-wrong-mime","reason":"Independent MIME rejects another syntactically valid type.","baseline_hashes":{"config/scripts/mobile-web-bundle-manifest.mjs":"b3bd6d823add34d5e9c137a491731b19c6f6f3dd7637abb61578667332b9dbf1"},"test":"config/scripts/mobile-web-bundle-manifest.test.mjs","pattern":"names an asset by its own digest","log":"/tmp/orca-config-0007-mutation-asset-valid-wrong-mime.log","command":["pnpm","test","config/scripts/mobile-web-bundle-manifest.test.mjs","-t","names an asset by its own digest","--maxWorkers=1"],"seconds":3.52,"exit_code":1,"assertion_failure_seen":true,"expected_failure_seen":true,"failed_tests":["1 failed | 6 skipped (7)"],"restored_hashes":{"config/scripts/mobile-web-bundle-manifest.mjs":"b3bd6d823add34d5e9c137a491731b19c6f6f3dd7637abb61578667332b9dbf1"},"restored":true,"log_sha256":"bab795abb17393b2d426608bd0f0dd782847037583c7ed98f7fe273312f0cd49"},{"name":"manifest-valid-wrong-page-version","reason":"Contract comparison rejects another nonnegative page version.","baseline_hashes":{"config/scripts/mobile-web-bundle-manifest.mjs":"b3bd6d823add34d5e9c137a491731b19c6f6f3dd7637abb61578667332b9dbf1"},"test":"config/scripts/mobile-web-bundle-manifest.test.mjs","pattern":"stamps the page version","log":"/tmp/orca-config-0007-mutation-manifest-valid-wrong-page-version.log","command":["pnpm","test","config/scripts/mobile-web-bundle-manifest.test.mjs","-t","stamps the page version","--maxWorkers=1"],"seconds":2.57,"exit_code":1,"assertion_failure_seen":true,"expected_failure_seen":true,"failed_tests":["1 failed | 6 skipped (7)"],"restored_hashes":{"config/scripts/mobile-web-bundle-manifest.mjs":"b3bd6d823add34d5e9c137a491731b19c6f6f3dd7637abb61578667332b9dbf1"},"restored":true,"log_sha256":"e2d112511c287891d669ab57f6fe69eee319ea2465c0eb200e4be2f40bcd555c"}]},"implemented_changes":[{"original_line":50,"title":"names an asset by its own digest, which is what makes the tree content-addressed","decision":"fix","change":"Add the independent known SHA256 of body and literal MIME expectation instead of relying only on digest shape/self-referenced asset.path and calling the same MIME helper for expected output."},{"original_line":67,"title":"stamps the page version the contract names, which the shell floors on","decision":"fix","change":"Compare the emitted pageVersion to MOBILE_WEB_PAGE_VERSION from the shared contract. Parsing the same integer and comparing it to itself currently permits any nonnegative integer."}],"manual_implementation_notes":[],"evidence":["config/scripts/mobile-web-bundle-manifest.mjs","src/shared/mobile-web-bundle/manifest-contract.ts"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","sha256":"65b7420795a187d02a1cbe68bcff97f29e5c5f30db7442da8ff5d1ca4ecc10d2","declarations":5,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":25,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"65b7420795a187d02a1cbe68bcff97f29e5c5f30db7442da8ff5d1ca4ecc10d2","cases":[{"line":59,"title":"produce one string for the builder, the packaging guard, and the shared contract","decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: produce one string for the builder, the packaging guard, and the shared contract.","explicit_input_controls":[{"control_id":"25:60:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":60,"source":"serializeInContract(ASSETS)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":60,"end_line":60,"start":2227,"end":2233,"source":"ASSETS","value":{"kind":"reference","source":"ASSETS","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":31,"end_line":51,"start":1359,"end":1835},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/Za.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"a1"}],"source":"digest('a1')"}},{"key":"byteLength","value":{"kind":"number","value":2048}},{"key":"contentType","value":{"kind":"string","value":"text/javascript; charset=utf-8"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/aQ.css"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"b2"}],"source":"digest('b2')"}},{"key":"byteLength","value":{"kind":"number","value":512}},{"key":"contentType","value":{"kind":"string","value":"text/css"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/nested/mark.png"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"c3"}],"source":"digest('c3')"}},{"key":"byteLength","value":{"kind":"number","value":40960}},{"key":"contentType","value":{"kind":"string","value":"image/png"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"d4"}],"source":"digest('d4')"}},{"key":"byteLength","value":{"kind":"number","value":640}},{"key":"contentType","value":{"kind":"string","value":"text/html; charset=utf-8"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ASSETS. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: produce one string for the builder, the packaging guard, and the shared contract.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: produce one string for the builder, the packaging guard, and the shared contract.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"25:62:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":62,"source":"serializeInBuilder(ASSETS)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":62,"end_line":62,"start":2266,"end":2272,"source":"ASSETS","value":{"kind":"reference","source":"ASSETS","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":31,"end_line":51,"start":1359,"end":1835},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/Za.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"a1"}],"source":"digest('a1')"}},{"key":"byteLength","value":{"kind":"number","value":2048}},{"key":"contentType","value":{"kind":"string","value":"text/javascript; charset=utf-8"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/aQ.css"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"b2"}],"source":"digest('b2')"}},{"key":"byteLength","value":{"kind":"number","value":512}},{"key":"contentType","value":{"kind":"string","value":"text/css"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/nested/mark.png"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"c3"}],"source":"digest('c3')"}},{"key":"byteLength","value":{"kind":"number","value":40960}},{"key":"contentType","value":{"kind":"string","value":"image/png"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"d4"}],"source":"digest('d4')"}},{"key":"byteLength","value":{"kind":"number","value":640}},{"key":"contentType","value":{"kind":"string","value":"text/html; charset=utf-8"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ASSETS. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: produce one string for the builder, the packaging guard, and the shared contract.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: produce one string for the builder, the packaging guard, and the shared contract.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":59,"title":"produce one string for the builder, the packaging guard, and the shared contract","start":2087,"end":2354},"implementation_status":"retained"},{"line":66,"title":"are order-independent, so %s input serializes identically","decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: are order-independent, so %s input serializes identically.","explicit_input_controls":[{"control_id":"25:66:parameter-table:5","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":66,"source":"[\n ['reordered', REORDERED],\n ['reversed', REVERSED]\n ]","rows":[{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":67,"end_line":67,"start":2372,"end":2396,"source":"['reordered', REORDERED]","value":{"kind":"array","value":[{"kind":"string","value":"reordered"},{"kind":"reference","source":"REORDERED","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":53,"end_line":53,"start":1855,"end":1899},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"ASSETS[3]"},{"kind":"source-expression","source":"ASSETS[1]"},{"kind":"source-expression","source":"ASSETS[0]"},{"kind":"source-expression","source":"ASSETS[2]"}]}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['reordered', REORDERED]. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: are order-independent, so %s input serializes identically.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":68,"end_line":68,"start":2402,"end":2424,"source":"['reversed', REVERSED]","value":{"kind":"array","value":[{"kind":"string","value":"reversed"},{"kind":"reference","source":"REVERSED","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":54,"end_line":54,"start":1917,"end":1936},"resolved":{"kind":"call-source","callee":"ASSETS.toReversed","arguments":[],"source":"ASSETS.toReversed()"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['reversed', REVERSED]. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: are order-independent, so %s input serializes identically.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: are order-independent, so %s input serializes identically.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"25:70:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":70,"source":"serializeInContract(ASSETS)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":70,"end_line":70,"start":2553,"end":2559,"source":"ASSETS","value":{"kind":"reference","source":"ASSETS","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":31,"end_line":51,"start":1359,"end":1835},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/Za.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"a1"}],"source":"digest('a1')"}},{"key":"byteLength","value":{"kind":"number","value":2048}},{"key":"contentType","value":{"kind":"string","value":"text/javascript; charset=utf-8"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/aQ.css"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"b2"}],"source":"digest('b2')"}},{"key":"byteLength","value":{"kind":"number","value":512}},{"key":"contentType","value":{"kind":"string","value":"text/css"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/nested/mark.png"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"c3"}],"source":"digest('c3')"}},{"key":"byteLength","value":{"kind":"number","value":40960}},{"key":"contentType","value":{"kind":"string","value":"image/png"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"d4"}],"source":"digest('d4')"}},{"key":"byteLength","value":{"kind":"number","value":640}},{"key":"contentType","value":{"kind":"string","value":"text/html; charset=utf-8"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ASSETS. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: are order-independent, so %s input serializes identically.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: are order-independent, so %s input serializes identically.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"25:72:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":72,"source":"serializeInContract(input)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":72,"end_line":72,"start":2593,"end":2598,"source":"input","value":{"kind":"reference","source":"input","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":78,"end_line":78,"start":2841,"end":2855},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"...REORDERED"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: input. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: are order-independent, so %s input serializes identically.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: are order-independent, so %s input serializes identically.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"25:73:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":73,"source":"serializeInBuilder(input)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":73,"end_line":73,"start":2646,"end":2651,"source":"input","value":{"kind":"reference","source":"input","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":78,"end_line":78,"start":2841,"end":2855},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"...REORDERED"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: input. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: are order-independent, so %s input serializes identically.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: are order-independent, so %s input serializes identically.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":66,"title":"are order-independent, so %s input serializes identically","start":2358,"end":2724},"implementation_status":"retained"},{"line":77,"title":"leaves the caller-supplied array untouched, so a build cannot depend on the sort","decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: leaves the caller-supplied array untouched, so a build cannot depend on the sort.","explicit_input_controls":[{"control_id":"25:78:fixture-or-oracle-declaration:9","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":78,"source":"[...REORDERED]","rows":[{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":53,"end_line":53,"start":1856,"end":1865,"source":"ASSETS[3]","value":{"kind":"source-expression","source":"ASSETS[3]"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ASSETS[3]. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: leaves the caller-supplied array untouched, so a build cannot depend on the sort.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":53,"end_line":53,"start":1867,"end":1876,"source":"ASSETS[1]","value":{"kind":"source-expression","source":"ASSETS[1]"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ASSETS[1]. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: leaves the caller-supplied array untouched, so a build cannot depend on the sort.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":53,"end_line":53,"start":1878,"end":1887,"source":"ASSETS[0]","value":{"kind":"source-expression","source":"ASSETS[0]"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ASSETS[0]. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: leaves the caller-supplied array untouched, so a build cannot depend on the sort.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":53,"end_line":53,"start":1889,"end":1898,"source":"ASSETS[2]","value":{"kind":"source-expression","source":"ASSETS[2]"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ASSETS[2]. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: leaves the caller-supplied array untouched, so a build cannot depend on the sort.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: leaves the caller-supplied array untouched, so a build cannot depend on the sort.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"25:79:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":79,"source":"serializeInContract(input)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":79,"end_line":79,"start":2880,"end":2885,"source":"input","value":{"kind":"reference","source":"input","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":78,"end_line":78,"start":2841,"end":2855},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"...REORDERED"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: input. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: leaves the caller-supplied array untouched, so a build cannot depend on the sort.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: leaves the caller-supplied array untouched, so a build cannot depend on the sort.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"25:80:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":80,"source":"serializeInBuilder(input)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":80,"end_line":80,"start":2910,"end":2915,"source":"input","value":{"kind":"reference","source":"input","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":78,"end_line":78,"start":2841,"end":2855},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"...REORDERED"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: input. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: leaves the caller-supplied array untouched, so a build cannot depend on the sort.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: leaves the caller-supplied array untouched, so a build cannot depend on the sort.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":77,"title":"leaves the caller-supplied array untouched, so a build cannot depend on the sort","start":2728,"end":2987},"implementation_status":"retained"},{"line":86,"title":"emit exactly path, sha256, byteLength, contentType, in that order, and nothing else","decision":"fix","reason":"Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","explicit_input_controls":[{"control_id":"25:89:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":89,"source":"serializeInContract(decorated)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":89,"end_line":89,"start":3219,"end":3228,"source":"decorated","value":{"kind":"reference","source":"decorated","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":87,"end_line":87,"start":3111,"end":3186},"resolved":{"kind":"call-source","callee":"ASSETS.map","arguments":[{"kind":"source-expression","source":"(asset) => ({ ...asset, sourcePath: '/tmp/ignored', extra: 1 })"}],"source":"ASSETS.map((asset) => ({ ...asset, sourcePath: '/tmp/ignored', extra: 1 }))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: decorated. Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"25:89:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":89,"source":"serializeInContract(ASSETS)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":89,"end_line":89,"start":3256,"end":3262,"source":"ASSETS","value":{"kind":"reference","source":"ASSETS","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":31,"end_line":51,"start":1359,"end":1835},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/Za.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"a1"}],"source":"digest('a1')"}},{"key":"byteLength","value":{"kind":"number","value":2048}},{"key":"contentType","value":{"kind":"string","value":"text/javascript; charset=utf-8"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/aQ.css"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"b2"}],"source":"digest('b2')"}},{"key":"byteLength","value":{"kind":"number","value":512}},{"key":"contentType","value":{"kind":"string","value":"text/css"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/nested/mark.png"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"c3"}],"source":"digest('c3')"}},{"key":"byteLength","value":{"kind":"number","value":40960}},{"key":"contentType","value":{"kind":"string","value":"image/png"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"d4"}],"source":"digest('d4')"}},{"key":"byteLength","value":{"kind":"number","value":640}},{"key":"contentType","value":{"kind":"string","value":"text/html; charset=utf-8"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ASSETS. Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"25:90:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":90,"source":"serializeInBuilder(decorated)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":90,"end_line":90,"start":3295,"end":3304,"source":"decorated","value":{"kind":"reference","source":"decorated","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":87,"end_line":87,"start":3111,"end":3186},"resolved":{"kind":"call-source","callee":"ASSETS.map","arguments":[{"kind":"source-expression","source":"(asset) => ({ ...asset, sourcePath: '/tmp/ignored', extra: 1 })"}],"source":"ASSETS.map((asset) => ({ ...asset, sourcePath: '/tmp/ignored', extra: 1 }))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: decorated. Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"25:90:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":90,"source":"serializeInContract(ASSETS)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":90,"end_line":90,"start":3332,"end":3338,"source":"ASSETS","value":{"kind":"reference","source":"ASSETS","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":31,"end_line":51,"start":1359,"end":1835},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/Za.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"a1"}],"source":"digest('a1')"}},{"key":"byteLength","value":{"kind":"number","value":2048}},{"key":"contentType","value":{"kind":"string","value":"text/javascript; charset=utf-8"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/aQ.css"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"b2"}],"source":"digest('b2')"}},{"key":"byteLength","value":{"kind":"number","value":512}},{"key":"contentType","value":{"kind":"string","value":"text/css"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/nested/mark.png"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"c3"}],"source":"digest('c3')"}},{"key":"byteLength","value":{"kind":"number","value":40960}},{"key":"contentType","value":{"kind":"string","value":"image/png"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"d4"}],"source":"digest('d4')"}},{"key":"byteLength","value":{"kind":"number","value":640}},{"key":"contentType","value":{"kind":"string","value":"text/html; charset=utf-8"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ASSETS. Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"25:91:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":91,"source":"serializeInContract(ASSETS)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":91,"end_line":91,"start":3406,"end":3412,"source":"ASSETS","value":{"kind":"reference","source":"ASSETS","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":31,"end_line":51,"start":1359,"end":1835},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/Za.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"a1"}],"source":"digest('a1')"}},{"key":"byteLength","value":{"kind":"number","value":2048}},{"key":"contentType","value":{"kind":"string","value":"text/javascript; charset=utf-8"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/aQ.css"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"b2"}],"source":"digest('b2')"}},{"key":"byteLength","value":{"kind":"number","value":512}},{"key":"contentType","value":{"kind":"string","value":"text/css"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/nested/mark.png"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"c3"}],"source":"digest('c3')"}},{"key":"byteLength","value":{"kind":"number","value":40960}},{"key":"contentType","value":{"kind":"string","value":"image/png"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"d4"}],"source":"digest('d4')"}},{"key":"byteLength","value":{"kind":"number","value":640}},{"key":"contentType","value":{"kind":"string","value":"text/html; charset=utf-8"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ASSETS. Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"25:92:inline-api-or-fixture-input:17","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":92,"source":"serializeInContract(ASSETS)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":92,"end_line":92,"start":3457,"end":3463,"source":"ASSETS","value":{"kind":"reference","source":"ASSETS","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":31,"end_line":51,"start":1359,"end":1835},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/Za.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"a1"}],"source":"digest('a1')"}},{"key":"byteLength","value":{"kind":"number","value":2048}},{"key":"contentType","value":{"kind":"string","value":"text/javascript; charset=utf-8"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/aQ.css"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"b2"}],"source":"digest('b2')"}},{"key":"byteLength","value":{"kind":"number","value":512}},{"key":"contentType","value":{"kind":"string","value":"text/css"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/nested/mark.png"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"c3"}],"source":"digest('c3')"}},{"key":"byteLength","value":{"kind":"number","value":40960}},{"key":"contentType","value":{"kind":"string","value":"image/png"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"d4"}],"source":"digest('d4')"}},{"key":"byteLength","value":{"kind":"number","value":640}},{"key":"contentType","value":{"kind":"string","value":"text/html; charset=utf-8"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ASSETS. Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":86,"title":"emit exactly path, sha256, byteLength, contentType, in that order, and nothing else","start":2991,"end":4022},"implementation_status":"implemented"},{"line":100,"title":"hash to one buildId, which the manifest schema then accepts","decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","explicit_input_controls":[{"control_id":"25:101:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":101,"source":"computeMobileWebBundleId(REORDERED)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":101,"end_line":101,"start":3746,"end":3755,"source":"REORDERED","value":{"kind":"reference","source":"REORDERED","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":53,"end_line":53,"start":1855,"end":1899},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"ASSETS[3]"},{"kind":"source-expression","source":"ASSETS[1]"},{"kind":"source-expression","source":"ASSETS[0]"},{"kind":"source-expression","source":"ASSETS[2]"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: REORDERED. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"25:103:inline-api-or-fixture-input:19","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":103,"source":"computeMobileWebBundleBuildId(REORDERED)","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":103,"end_line":103,"start":3799,"end":3808,"source":"REORDERED","value":{"kind":"reference","source":"REORDERED","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":53,"end_line":53,"start":1855,"end":1899},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"ASSETS[3]"},{"kind":"source-expression","source":"ASSETS[1]"},{"kind":"source-expression","source":"ASSETS[0]"},{"kind":"source-expression","source":"ASSETS[2]"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: REORDERED. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"25:106:fixture-or-oracle-declaration:20","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":106,"source":"{\n schemaVersion: 1,\n buildId,\n desktopVersion: '1.4.200',\n minCompatibleRuntimeProtocolVersion: 2,\n runtimeProtocolVersion: 2,\n entrypoint: 'index.html',\n totalBytes: ASSETS.reduce((total, asset) => total + asset.byteLength, 0),\n assets: [...ASSETS],\n // Outside the hash on purpose, which the assertion below is what says.\n routes: [{ pathname: '/h/[hostId]', grants: ['navigate'] }]\n }","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":107,"end_line":107,"start":3920,"end":3936,"source":"schemaVersion: 1","value":{"kind":"property","key":"schemaVersion","value":{"kind":"number","value":1}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: schemaVersion: 1. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":108,"end_line":108,"start":3944,"end":3951,"source":"buildId","value":{"kind":"source-expression","source":"buildId"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: buildId. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":109,"end_line":109,"start":3959,"end":3984,"source":"desktopVersion: '1.4.200'","value":{"kind":"property","key":"desktopVersion","value":{"kind":"string","value":"1.4.200"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: desktopVersion: '1.4.200'. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":110,"end_line":110,"start":3992,"end":4030,"source":"minCompatibleRuntimeProtocolVersion: 2","value":{"kind":"property","key":"minCompatibleRuntimeProtocolVersion","value":{"kind":"number","value":2}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: minCompatibleRuntimeProtocolVersion: 2. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":5,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":111,"end_line":111,"start":4038,"end":4063,"source":"runtimeProtocolVersion: 2","value":{"kind":"property","key":"runtimeProtocolVersion","value":{"kind":"number","value":2}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: runtimeProtocolVersion: 2. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":6,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":112,"end_line":112,"start":4071,"end":4095,"source":"entrypoint: 'index.html'","value":{"kind":"property","key":"entrypoint","value":{"kind":"string","value":"index.html"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: entrypoint: 'index.html'. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":7,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":113,"end_line":113,"start":4103,"end":4175,"source":"totalBytes: ASSETS.reduce((total, asset) => total + asset.byteLength, 0)","value":{"kind":"property","key":"totalBytes","value":{"kind":"call-source","callee":"ASSETS.reduce","arguments":[{"kind":"source-expression","source":"(total, asset) => total + asset.byteLength"},{"kind":"number","value":0}],"source":"ASSETS.reduce((total, asset) => total + asset.byteLength, 0)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: totalBytes: ASSETS.reduce((total, asset) => total + asset.byteLength, 0). Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":8,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":114,"end_line":114,"start":4183,"end":4202,"source":"assets: [...ASSETS]","value":{"kind":"property","key":"assets","value":{"kind":"array","value":[{"kind":"source-expression","source":"...ASSETS"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: assets: [...ASSETS]. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":9,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":116,"end_line":116,"start":4288,"end":4347,"source":"routes: [{ pathname: '/h/[hostId]', grants: ['navigate'] }]","value":{"kind":"property","key":"routes","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"}]}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: routes: [{ pathname: '/h/[hostId]', grants: ['navigate'] }]. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":99,"title":"hash to one buildId, which the manifest schema then accepts","start":4026,"end":4838},"implementation_status":"retained"}],"lines":122,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components.","planned_changes":[{"original_line":86,"title":"emit exactly path, sha256, byteLength, contentType, in that order, and nothing else","decision":"fix","change":"Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression."}],"production_evidence":["config/scripts/mobile-web-bundle-manifest.mjs","src/shared/mobile-web-bundle/manifest-contract.ts"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"25:31:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":31,"end_line":51,"start":1350,"end":1835,"source":"[\n {\n path: 'assets/Za.js',\n sha256: digest('a1'),\n byteLength: 2048,\n contentType: 'text/javascript; charset=utf-8'\n },\n { path: 'assets/aQ.css', sha256: digest('b2'), byteLength: 512, contentType: 'text/css' },\n {\n path: 'assets/nested/mark.png',\n sha256: digest('c3'),\n byteLength: 40_960,\n contentType: 'image/png'\n },\n {\n path: 'index.html',\n sha256: digest('d4'),\n byteLength: 640,\n contentType: 'text/html; charset=utf-8'\n }\n]","input_position":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":31,"end_line":51,"start":1359,"end":1835},"binding":"ASSETS","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components.","rows":[{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":32,"end_line":37,"start":1363,"end":1492,"source":"{\n path: 'assets/Za.js',\n sha256: digest('a1'),\n byteLength: 2048,\n contentType: 'text/javascript; charset=utf-8'\n }","value":{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/Za.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"a1"}],"source":"digest('a1')"}},{"key":"byteLength","value":{"kind":"number","value":2048}},{"key":"contentType","value":{"kind":"string","value":"text/javascript; charset=utf-8"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { path: 'assets/Za.js', sha256: digest('a1'), byteLength: 2048, contentType: 'text/javascript; charset=utf-8' }. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":38,"end_line":38,"start":1496,"end":1585,"source":"{ path: 'assets/aQ.css', sha256: digest('b2'), byteLength: 512, contentType: 'text/css' }","value":{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/aQ.css"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"b2"}],"source":"digest('b2')"}},{"key":"byteLength","value":{"kind":"number","value":512}},{"key":"contentType","value":{"kind":"string","value":"text/css"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { path: 'assets/aQ.css', sha256: digest('b2'), byteLength: 512, contentType: 'text/css' }. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":39,"end_line":44,"start":1589,"end":1709,"source":"{\n path: 'assets/nested/mark.png',\n sha256: digest('c3'),\n byteLength: 40_960,\n contentType: 'image/png'\n }","value":{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/nested/mark.png"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"c3"}],"source":"digest('c3')"}},{"key":"byteLength","value":{"kind":"number","value":40960}},{"key":"contentType","value":{"kind":"string","value":"image/png"}}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { path: 'assets/nested/mark.png', sha256: digest('c3'), byteLength: 40_960, contentType: 'image/png' }. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":45,"end_line":50,"start":1713,"end":1833,"source":"{\n path: 'index.html',\n sha256: digest('d4'),\n byteLength: 640,\n contentType: 'text/html; charset=utf-8'\n }","value":{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"d4"}],"source":"digest('d4')"}},{"key":"byteLength","value":{"kind":"number","value":640}},{"key":"contentType","value":{"kind":"string","value":"text/html; charset=utf-8"}}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { path: 'index.html', sha256: digest('d4'), byteLength: 640, contentType: 'text/html; charset=utf-8' }. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c"}},{"id":"25:53:fixture-or-oracle-declaration:2","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":53,"end_line":53,"start":1843,"end":1899,"source":"[ASSETS[3], ASSETS[1], ASSETS[0], ASSETS[2]]","input_position":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":53,"end_line":53,"start":1855,"end":1899},"binding":"REORDERED","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components.","rows":[{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":53,"end_line":53,"start":1856,"end":1865,"source":"ASSETS[3]","value":{"kind":"source-expression","source":"ASSETS[3]"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ASSETS[3]. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":53,"end_line":53,"start":1867,"end":1876,"source":"ASSETS[1]","value":{"kind":"source-expression","source":"ASSETS[1]"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ASSETS[1]. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":53,"end_line":53,"start":1878,"end":1887,"source":"ASSETS[0]","value":{"kind":"source-expression","source":"ASSETS[0]"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ASSETS[0]. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":53,"end_line":53,"start":1889,"end":1898,"source":"ASSETS[2]","value":{"kind":"source-expression","source":"ASSETS[2]"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ASSETS[2]. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c"}},{"id":"25:60:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":60,"end_line":60,"start":2207,"end":2234,"source":"serializeInContract(ASSETS)","input_position":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":60,"end_line":60,"start":2207,"end":2234},"binding":"serializeInContract","resolution":[],"enclosing_case":{"line":59,"title":"produce one string for the builder, the packaging guard, and the shared contract"},"affected_case_lines":[],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: produce one string for the builder, the packaging guard, and the shared contract.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":60,"end_line":60,"start":2227,"end":2233,"source":"ASSETS","value":{"kind":"reference","source":"ASSETS","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":31,"end_line":51,"start":1359,"end":1835},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/Za.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"a1"}],"source":"digest('a1')"}},{"key":"byteLength","value":{"kind":"number","value":2048}},{"key":"contentType","value":{"kind":"string","value":"text/javascript; charset=utf-8"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/aQ.css"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"b2"}],"source":"digest('b2')"}},{"key":"byteLength","value":{"kind":"number","value":512}},{"key":"contentType","value":{"kind":"string","value":"text/css"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/nested/mark.png"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"c3"}],"source":"digest('c3')"}},{"key":"byteLength","value":{"kind":"number","value":40960}},{"key":"contentType","value":{"kind":"string","value":"image/png"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"d4"}],"source":"digest('d4')"}},{"key":"byteLength","value":{"kind":"number","value":640}},{"key":"contentType","value":{"kind":"string","value":"text/html; charset=utf-8"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ASSETS. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: produce one string for the builder, the packaging guard, and the shared contract.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c"}},{"id":"25:62:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":62,"end_line":62,"start":2247,"end":2273,"source":"serializeInBuilder(ASSETS)","input_position":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":62,"end_line":62,"start":2247,"end":2273},"binding":"serializeInBuilder","resolution":[],"enclosing_case":{"line":59,"title":"produce one string for the builder, the packaging guard, and the shared contract"},"affected_case_lines":[],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: produce one string for the builder, the packaging guard, and the shared contract.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":62,"end_line":62,"start":2266,"end":2272,"source":"ASSETS","value":{"kind":"reference","source":"ASSETS","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":31,"end_line":51,"start":1359,"end":1835},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/Za.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"a1"}],"source":"digest('a1')"}},{"key":"byteLength","value":{"kind":"number","value":2048}},{"key":"contentType","value":{"kind":"string","value":"text/javascript; charset=utf-8"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/aQ.css"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"b2"}],"source":"digest('b2')"}},{"key":"byteLength","value":{"kind":"number","value":512}},{"key":"contentType","value":{"kind":"string","value":"text/css"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/nested/mark.png"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"c3"}],"source":"digest('c3')"}},{"key":"byteLength","value":{"kind":"number","value":40960}},{"key":"contentType","value":{"kind":"string","value":"image/png"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"d4"}],"source":"digest('d4')"}},{"key":"byteLength","value":{"kind":"number","value":640}},{"key":"contentType","value":{"kind":"string","value":"text/html; charset=utf-8"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ASSETS. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: produce one string for the builder, the packaging guard, and the shared contract.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c"}},{"id":"25:66:parameter-table:5","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":66,"end_line":75,"start":2358,"end":2724,"source":"[\n ['reordered', REORDERED],\n ['reversed', REVERSED]\n ]","input_position":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":66,"end_line":69,"start":2366,"end":2428},"binding":"it.each","resolution":[],"enclosing_case":{"line":66,"title":"are order-independent, so %s input serializes identically"},"affected_case_lines":[66],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: are order-independent, so %s input serializes identically.","rows":[{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":67,"end_line":67,"start":2372,"end":2396,"source":"['reordered', REORDERED]","value":{"kind":"array","value":[{"kind":"string","value":"reordered"},{"kind":"reference","source":"REORDERED","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":53,"end_line":53,"start":1855,"end":1899},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"ASSETS[3]"},{"kind":"source-expression","source":"ASSETS[1]"},{"kind":"source-expression","source":"ASSETS[0]"},{"kind":"source-expression","source":"ASSETS[2]"}]}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['reordered', REORDERED]. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: are order-independent, so %s input serializes identically.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":68,"end_line":68,"start":2402,"end":2424,"source":"['reversed', REVERSED]","value":{"kind":"array","value":[{"kind":"string","value":"reversed"},{"kind":"reference","source":"REVERSED","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":54,"end_line":54,"start":1917,"end":1936},"resolved":{"kind":"call-source","callee":"ASSETS.toReversed","arguments":[],"source":"ASSETS.toReversed()"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['reversed', REVERSED]. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: are order-independent, so %s input serializes identically.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c"}},{"id":"25:70:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":70,"end_line":70,"start":2533,"end":2560,"source":"serializeInContract(ASSETS)","input_position":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":70,"end_line":70,"start":2533,"end":2560},"binding":"serializeInContract","resolution":[],"enclosing_case":{"line":66,"title":"are order-independent, so %s input serializes identically"},"affected_case_lines":[],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: are order-independent, so %s input serializes identically.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":70,"end_line":70,"start":2553,"end":2559,"source":"ASSETS","value":{"kind":"reference","source":"ASSETS","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":31,"end_line":51,"start":1359,"end":1835},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/Za.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"a1"}],"source":"digest('a1')"}},{"key":"byteLength","value":{"kind":"number","value":2048}},{"key":"contentType","value":{"kind":"string","value":"text/javascript; charset=utf-8"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/aQ.css"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"b2"}],"source":"digest('b2')"}},{"key":"byteLength","value":{"kind":"number","value":512}},{"key":"contentType","value":{"kind":"string","value":"text/css"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/nested/mark.png"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"c3"}],"source":"digest('c3')"}},{"key":"byteLength","value":{"kind":"number","value":40960}},{"key":"contentType","value":{"kind":"string","value":"image/png"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"d4"}],"source":"digest('d4')"}},{"key":"byteLength","value":{"kind":"number","value":640}},{"key":"contentType","value":{"kind":"string","value":"text/html; charset=utf-8"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ASSETS. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: are order-independent, so %s input serializes identically.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c"}},{"id":"25:72:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":72,"end_line":72,"start":2573,"end":2599,"source":"serializeInContract(input)","input_position":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":72,"end_line":72,"start":2573,"end":2599},"binding":"serializeInContract","resolution":[],"enclosing_case":{"line":66,"title":"are order-independent, so %s input serializes identically"},"affected_case_lines":[],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: are order-independent, so %s input serializes identically.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":72,"end_line":72,"start":2593,"end":2598,"source":"input","value":{"kind":"reference","source":"input","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":78,"end_line":78,"start":2841,"end":2855},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"...REORDERED"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: input. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: are order-independent, so %s input serializes identically.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c"}},{"id":"25:73:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":73,"end_line":73,"start":2627,"end":2652,"source":"serializeInBuilder(input)","input_position":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":73,"end_line":73,"start":2627,"end":2652},"binding":"serializeInBuilder","resolution":[],"enclosing_case":{"line":66,"title":"are order-independent, so %s input serializes identically"},"affected_case_lines":[],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: are order-independent, so %s input serializes identically.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":73,"end_line":73,"start":2646,"end":2651,"source":"input","value":{"kind":"reference","source":"input","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":78,"end_line":78,"start":2841,"end":2855},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"...REORDERED"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: input. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: are order-independent, so %s input serializes identically.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c"}},{"id":"25:78:fixture-or-oracle-declaration:9","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":78,"end_line":78,"start":2833,"end":2855,"source":"[...REORDERED]","input_position":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":78,"end_line":78,"start":2841,"end":2855},"binding":"input","resolution":[],"enclosing_case":{"line":77,"title":"leaves the caller-supplied array untouched, so a build cannot depend on the sort"},"affected_case_lines":[],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: leaves the caller-supplied array untouched, so a build cannot depend on the sort.","rows":[{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":53,"end_line":53,"start":1856,"end":1865,"source":"ASSETS[3]","value":{"kind":"source-expression","source":"ASSETS[3]"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ASSETS[3]. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: leaves the caller-supplied array untouched, so a build cannot depend on the sort.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":53,"end_line":53,"start":1867,"end":1876,"source":"ASSETS[1]","value":{"kind":"source-expression","source":"ASSETS[1]"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ASSETS[1]. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: leaves the caller-supplied array untouched, so a build cannot depend on the sort.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":53,"end_line":53,"start":1878,"end":1887,"source":"ASSETS[0]","value":{"kind":"source-expression","source":"ASSETS[0]"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ASSETS[0]. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: leaves the caller-supplied array untouched, so a build cannot depend on the sort.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":53,"end_line":53,"start":1889,"end":1898,"source":"ASSETS[2]","value":{"kind":"source-expression","source":"ASSETS[2]"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ASSETS[2]. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: leaves the caller-supplied array untouched, so a build cannot depend on the sort.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c"}},{"id":"25:79:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":79,"end_line":79,"start":2860,"end":2886,"source":"serializeInContract(input)","input_position":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":79,"end_line":79,"start":2860,"end":2886},"binding":"serializeInContract","resolution":[],"enclosing_case":{"line":77,"title":"leaves the caller-supplied array untouched, so a build cannot depend on the sort"},"affected_case_lines":[],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: leaves the caller-supplied array untouched, so a build cannot depend on the sort.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":79,"end_line":79,"start":2880,"end":2885,"source":"input","value":{"kind":"reference","source":"input","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":78,"end_line":78,"start":2841,"end":2855},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"...REORDERED"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: input. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: leaves the caller-supplied array untouched, so a build cannot depend on the sort.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c"}},{"id":"25:80:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":80,"end_line":80,"start":2891,"end":2916,"source":"serializeInBuilder(input)","input_position":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":80,"end_line":80,"start":2891,"end":2916},"binding":"serializeInBuilder","resolution":[],"enclosing_case":{"line":77,"title":"leaves the caller-supplied array untouched, so a build cannot depend on the sort"},"affected_case_lines":[],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: leaves the caller-supplied array untouched, so a build cannot depend on the sort.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":80,"end_line":80,"start":2910,"end":2915,"source":"input","value":{"kind":"reference","source":"input","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":78,"end_line":78,"start":2841,"end":2855},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"...REORDERED"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: input. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: leaves the caller-supplied array untouched, so a build cannot depend on the sort.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c"}},{"id":"25:89:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":89,"end_line":89,"start":3199,"end":3229,"source":"serializeInContract(decorated)","input_position":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":89,"end_line":89,"start":3199,"end":3229},"binding":"serializeInContract","resolution":[],"enclosing_case":{"line":86,"title":"emit exactly path, sha256, byteLength, contentType, in that order, and nothing else"},"affected_case_lines":[],"decision":"keep","reason":"Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":89,"end_line":89,"start":3219,"end":3228,"source":"decorated","value":{"kind":"reference","source":"decorated","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":87,"end_line":87,"start":3111,"end":3186},"resolved":{"kind":"call-source","callee":"ASSETS.map","arguments":[{"kind":"source-expression","source":"(asset) => ({ ...asset, sourcePath: '/tmp/ignored', extra: 1 })"}],"source":"ASSETS.map((asset) => ({ ...asset, sourcePath: '/tmp/ignored', extra: 1 }))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: decorated. Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c"}},{"id":"25:89:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":89,"end_line":89,"start":3236,"end":3263,"source":"serializeInContract(ASSETS)","input_position":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":89,"end_line":89,"start":3236,"end":3263},"binding":"serializeInContract","resolution":[],"enclosing_case":{"line":86,"title":"emit exactly path, sha256, byteLength, contentType, in that order, and nothing else"},"affected_case_lines":[],"decision":"keep","reason":"Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":89,"end_line":89,"start":3256,"end":3262,"source":"ASSETS","value":{"kind":"reference","source":"ASSETS","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":31,"end_line":51,"start":1359,"end":1835},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/Za.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"a1"}],"source":"digest('a1')"}},{"key":"byteLength","value":{"kind":"number","value":2048}},{"key":"contentType","value":{"kind":"string","value":"text/javascript; charset=utf-8"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/aQ.css"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"b2"}],"source":"digest('b2')"}},{"key":"byteLength","value":{"kind":"number","value":512}},{"key":"contentType","value":{"kind":"string","value":"text/css"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/nested/mark.png"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"c3"}],"source":"digest('c3')"}},{"key":"byteLength","value":{"kind":"number","value":40960}},{"key":"contentType","value":{"kind":"string","value":"image/png"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"d4"}],"source":"digest('d4')"}},{"key":"byteLength","value":{"kind":"number","value":640}},{"key":"contentType","value":{"kind":"string","value":"text/html; charset=utf-8"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ASSETS. Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c"}},{"id":"25:90:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":90,"end_line":90,"start":3276,"end":3305,"source":"serializeInBuilder(decorated)","input_position":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":90,"end_line":90,"start":3276,"end":3305},"binding":"serializeInBuilder","resolution":[],"enclosing_case":{"line":86,"title":"emit exactly path, sha256, byteLength, contentType, in that order, and nothing else"},"affected_case_lines":[],"decision":"keep","reason":"Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":90,"end_line":90,"start":3295,"end":3304,"source":"decorated","value":{"kind":"reference","source":"decorated","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":87,"end_line":87,"start":3111,"end":3186},"resolved":{"kind":"call-source","callee":"ASSETS.map","arguments":[{"kind":"source-expression","source":"(asset) => ({ ...asset, sourcePath: '/tmp/ignored', extra: 1 })"}],"source":"ASSETS.map((asset) => ({ ...asset, sourcePath: '/tmp/ignored', extra: 1 }))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: decorated. Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c"}},{"id":"25:90:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":90,"end_line":90,"start":3312,"end":3339,"source":"serializeInContract(ASSETS)","input_position":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":90,"end_line":90,"start":3312,"end":3339},"binding":"serializeInContract","resolution":[],"enclosing_case":{"line":86,"title":"emit exactly path, sha256, byteLength, contentType, in that order, and nothing else"},"affected_case_lines":[],"decision":"keep","reason":"Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":90,"end_line":90,"start":3332,"end":3338,"source":"ASSETS","value":{"kind":"reference","source":"ASSETS","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":31,"end_line":51,"start":1359,"end":1835},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/Za.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"a1"}],"source":"digest('a1')"}},{"key":"byteLength","value":{"kind":"number","value":2048}},{"key":"contentType","value":{"kind":"string","value":"text/javascript; charset=utf-8"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/aQ.css"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"b2"}],"source":"digest('b2')"}},{"key":"byteLength","value":{"kind":"number","value":512}},{"key":"contentType","value":{"kind":"string","value":"text/css"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/nested/mark.png"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"c3"}],"source":"digest('c3')"}},{"key":"byteLength","value":{"kind":"number","value":40960}},{"key":"contentType","value":{"kind":"string","value":"image/png"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"d4"}],"source":"digest('d4')"}},{"key":"byteLength","value":{"kind":"number","value":640}},{"key":"contentType","value":{"kind":"string","value":"text/html; charset=utf-8"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ASSETS. Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c"}},{"id":"25:91:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":91,"end_line":91,"start":3386,"end":3413,"source":"serializeInContract(ASSETS)","input_position":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":91,"end_line":91,"start":3386,"end":3413},"binding":"serializeInContract","resolution":[],"enclosing_case":{"line":86,"title":"emit exactly path, sha256, byteLength, contentType, in that order, and nothing else"},"affected_case_lines":[],"decision":"keep","reason":"Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":91,"end_line":91,"start":3406,"end":3412,"source":"ASSETS","value":{"kind":"reference","source":"ASSETS","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":31,"end_line":51,"start":1359,"end":1835},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/Za.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"a1"}],"source":"digest('a1')"}},{"key":"byteLength","value":{"kind":"number","value":2048}},{"key":"contentType","value":{"kind":"string","value":"text/javascript; charset=utf-8"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/aQ.css"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"b2"}],"source":"digest('b2')"}},{"key":"byteLength","value":{"kind":"number","value":512}},{"key":"contentType","value":{"kind":"string","value":"text/css"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/nested/mark.png"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"c3"}],"source":"digest('c3')"}},{"key":"byteLength","value":{"kind":"number","value":40960}},{"key":"contentType","value":{"kind":"string","value":"image/png"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"d4"}],"source":"digest('d4')"}},{"key":"byteLength","value":{"kind":"number","value":640}},{"key":"contentType","value":{"kind":"string","value":"text/html; charset=utf-8"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ASSETS. Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c"}},{"id":"25:92:inline-api-or-fixture-input:17","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":92,"end_line":92,"start":3437,"end":3464,"source":"serializeInContract(ASSETS)","input_position":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":92,"end_line":92,"start":3437,"end":3464},"binding":"serializeInContract","resolution":[],"enclosing_case":{"line":86,"title":"emit exactly path, sha256, byteLength, contentType, in that order, and nothing else"},"affected_case_lines":[],"decision":"keep","reason":"Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":92,"end_line":92,"start":3457,"end":3463,"source":"ASSETS","value":{"kind":"reference","source":"ASSETS","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":31,"end_line":51,"start":1359,"end":1835},"resolved":{"kind":"array","value":[{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/Za.js"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"a1"}],"source":"digest('a1')"}},{"key":"byteLength","value":{"kind":"number","value":2048}},{"key":"contentType","value":{"kind":"string","value":"text/javascript; charset=utf-8"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/aQ.css"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"b2"}],"source":"digest('b2')"}},{"key":"byteLength","value":{"kind":"number","value":512}},{"key":"contentType","value":{"kind":"string","value":"text/css"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"assets/nested/mark.png"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"c3"}],"source":"digest('c3')"}},{"key":"byteLength","value":{"kind":"number","value":40960}},{"key":"contentType","value":{"kind":"string","value":"image/png"}}]},{"kind":"object","value":[{"key":"path","value":{"kind":"string","value":"index.html"}},{"key":"sha256","value":{"kind":"call-source","callee":"digest","arguments":[{"kind":"string","value":"d4"}],"source":"digest('d4')"}},{"key":"byteLength","value":{"kind":"number","value":640}},{"key":"contentType","value":{"kind":"string","value":"text/html; charset=utf-8"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ASSETS. Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c"}},{"id":"25:101:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":101,"end_line":101,"start":3721,"end":3756,"source":"computeMobileWebBundleId(REORDERED)","input_position":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":101,"end_line":101,"start":3721,"end":3756},"binding":"computeMobileWebBundleId","resolution":[],"enclosing_case":{"line":100,"title":"hash to one buildId, which the manifest schema then accepts"},"affected_case_lines":[],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":101,"end_line":101,"start":3746,"end":3755,"source":"REORDERED","value":{"kind":"reference","source":"REORDERED","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":53,"end_line":53,"start":1855,"end":1899},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"ASSETS[3]"},{"kind":"source-expression","source":"ASSETS[1]"},{"kind":"source-expression","source":"ASSETS[0]"},{"kind":"source-expression","source":"ASSETS[2]"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: REORDERED. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c"}},{"id":"25:103:inline-api-or-fixture-input:19","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":103,"end_line":103,"start":3769,"end":3809,"source":"computeMobileWebBundleBuildId(REORDERED)","input_position":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":103,"end_line":103,"start":3769,"end":3809},"binding":"computeMobileWebBundleBuildId","resolution":[],"enclosing_case":{"line":100,"title":"hash to one buildId, which the manifest schema then accepts"},"affected_case_lines":[],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":103,"end_line":103,"start":3799,"end":3808,"source":"REORDERED","value":{"kind":"reference","source":"REORDERED","resolved_at":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":53,"end_line":53,"start":1855,"end":1899},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"ASSETS[3]"},{"kind":"source-expression","source":"ASSETS[1]"},{"kind":"source-expression","source":"ASSETS[0]"},{"kind":"source-expression","source":"ASSETS[2]"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: REORDERED. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c"}},{"id":"25:106:fixture-or-oracle-declaration:20","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":106,"end_line":117,"start":3901,"end":4353,"source":"{\n schemaVersion: 1,\n buildId,\n desktopVersion: '1.4.200',\n minCompatibleRuntimeProtocolVersion: 2,\n runtimeProtocolVersion: 2,\n entrypoint: 'index.html',\n totalBytes: ASSETS.reduce((total, asset) => total + asset.byteLength, 0),\n assets: [...ASSETS],\n // Outside the hash on purpose, which the assertion below is what says.\n routes: [{ pathname: '/h/[hostId]', grants: ['navigate'] }]\n }","input_position":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":106,"end_line":117,"start":3912,"end":4353},"binding":"manifest","resolution":[],"enclosing_case":{"line":100,"title":"hash to one buildId, which the manifest schema then accepts"},"affected_case_lines":[],"decision":"keep","reason":"Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","rows":[{"index":1,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":107,"end_line":107,"start":3920,"end":3936,"source":"schemaVersion: 1","value":{"kind":"property","key":"schemaVersion","value":{"kind":"number","value":1}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: schemaVersion: 1. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":108,"end_line":108,"start":3944,"end":3951,"source":"buildId","value":{"kind":"source-expression","source":"buildId"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: buildId. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":109,"end_line":109,"start":3959,"end":3984,"source":"desktopVersion: '1.4.200'","value":{"kind":"property","key":"desktopVersion","value":{"kind":"string","value":"1.4.200"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: desktopVersion: '1.4.200'. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":110,"end_line":110,"start":3992,"end":4030,"source":"minCompatibleRuntimeProtocolVersion: 2","value":{"kind":"property","key":"minCompatibleRuntimeProtocolVersion","value":{"kind":"number","value":2}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: minCompatibleRuntimeProtocolVersion: 2. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":5,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":111,"end_line":111,"start":4038,"end":4063,"source":"runtimeProtocolVersion: 2","value":{"kind":"property","key":"runtimeProtocolVersion","value":{"kind":"number","value":2}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: runtimeProtocolVersion: 2. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":6,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":112,"end_line":112,"start":4071,"end":4095,"source":"entrypoint: 'index.html'","value":{"kind":"property","key":"entrypoint","value":{"kind":"string","value":"index.html"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: entrypoint: 'index.html'. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":7,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":113,"end_line":113,"start":4103,"end":4175,"source":"totalBytes: ASSETS.reduce((total, asset) => total + asset.byteLength, 0)","value":{"kind":"property","key":"totalBytes","value":{"kind":"call-source","callee":"ASSETS.reduce","arguments":[{"kind":"source-expression","source":"(total, asset) => total + asset.byteLength"},{"kind":"number","value":0}],"source":"ASSETS.reduce((total, asset) => total + asset.byteLength, 0)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: totalBytes: ASSETS.reduce((total, asset) => total + asset.byteLength, 0). Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":8,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":114,"end_line":114,"start":4183,"end":4202,"source":"assets: [...ASSETS]","value":{"kind":"property","key":"assets","value":{"kind":"array","value":[{"kind":"source-expression","source":"...ASSETS"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: assets: [...ASSETS]. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":9,"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","line":116,"end_line":116,"start":4288,"end":4347,"source":"routes: [{ pathname: '/h/[hostId]', grants: ['navigate'] }]","value":{"kind":"property","key":"routes","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"}]}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: routes: [{ pathname: '/h/[hostId]', grants: ['navigate'] }]. Three real independently shipped serializers/build-ID consumers process mixed-case/nested assets; parity, mutation safety and manifest validation protect wire compatibility across separately updated components. Scenario: hash to one buildId, which the manifest schema then accepts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c"}}],"original_review_sha256":"903f7bac6e13af812ec570eb1f4b3ea07dd6a9171c1a10b0a6dbb81084fc08a1","reviewer":"audit_config","reviewed_sha256":"cff42fc95cce003c3f3d4a35b7f69760e925dc5c5f96fdf4ff36eda4a2f13e5c","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-bundle-serializer-parity.test.mjs","final_declarations":5,"current_controls":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","each":[{"input":{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","start":2366,"end":2428,"line":66,"end_line":69,"source":"[\n ['reordered', REORDERED],\n ['reversed', REVERSED]\n ]"},"rows":[{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","start":2372,"end":2396,"line":67,"end_line":67,"source":"['reordered', REORDERED]"},{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","start":2402,"end":2424,"line":68,"end_line":68,"source":"['reversed', REVERSED]"}]}],"for_of":[{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","start":3899,"end":3958,"line":94,"end_line":94,"source":"[serializeInContract, serializeInBuilder, serializeInGuard]","binding":"const serialize","changed":true}],"literal_nodes_without_original_source_match":[{"path":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","start":3899,"end":3958,"line":94,"end_line":94,"source":"[serializeInContract, serializeInBuilder, serializeInGuard]","kind":"array"}]},"mutations":[{"name":"all-serializers-shared-wrong-key-order","reason":"An identical ordering defect in all three serializers evades parity but fails independent string.","baseline_hashes":{"config/scripts/mobile-web-bundle-manifest.mjs":"b3bd6d823add34d5e9c137a491731b19c6f6f3dd7637abb61578667332b9dbf1","config/scripts/verify-packaged-mobile-web-bundle.cjs":"7c0cbaa4e4802b905c1f348745654e15765360728f821b913e90e66b67d30bf2","src/shared/mobile-web-bundle/manifest-contract.ts":"81678aea2b6083ce199c7932fed86a1683f1c978e71b7419a4128ffd2275f430"},"test":"config/scripts/mobile-web-bundle-serializer-parity.test.mjs","pattern":"emit exactly path","log":"/tmp/orca-config-0007-mutation-all-serializers-shared-wrong-key-order.log","command":["pnpm","test","config/scripts/mobile-web-bundle-serializer-parity.test.mjs","-t","emit exactly path","--maxWorkers=1"],"seconds":2.57,"exit_code":1,"assertion_failure_seen":true,"expected_failure_seen":true,"failed_tests":["1 failed | 5 skipped (6)"],"restored_hashes":{"config/scripts/mobile-web-bundle-manifest.mjs":"b3bd6d823add34d5e9c137a491731b19c6f6f3dd7637abb61578667332b9dbf1","config/scripts/verify-packaged-mobile-web-bundle.cjs":"7c0cbaa4e4802b905c1f348745654e15765360728f821b913e90e66b67d30bf2","src/shared/mobile-web-bundle/manifest-contract.ts":"81678aea2b6083ce199c7932fed86a1683f1c978e71b7419a4128ffd2275f430"},"restored":true,"log_sha256":"fbec61067d42750dca6a386cad7f62cfd0252e9fc71c6b2b49ee0f0036245c44"}]},"implemented_changes":[{"original_line":86,"title":"emit exactly path, sha256, byteLength, contentType, in that order, and nothing else","decision":"fix","change":"Assert an independent exact canonical serialized fixture string/key order. Parsed object equality ignores JSON key order, while cross-serializer equality alone can share the same ordering regression."}],"manual_implementation_notes":[],"evidence":["config/scripts/mobile-web-bundle-manifest.mjs","src/shared/mobile-web-bundle/manifest-contract.ts"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/mobile-web-page-routes.test.mjs","sha256":"c06d42fe3e12d34dfbf34e68ac701d44104a6b95c9cf7c5521319c68846141a5","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":26,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"c06d42fe3e12d34dfbf34e68ac701d44104a6b95c9cf7c5521319c68846141a5","cases":[{"line":20,"title":"turns a route key into the URL pattern expo-router gives it","decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: turns a route key into the URL pattern expo-router gives it.","explicit_input_controls":[{"control_id":"26:21:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-page-routes.test.mjs","line":21,"source":"routePathnameFromKey('./h/[hostId]/index.tsx')","rows":[{"index":1,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":21,"end_line":21,"start":1097,"end":1121,"source":"'./h/[hostId]/index.tsx'","value":{"kind":"string","value":"./h/[hostId]/index.tsx"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: './h/[hostId]/index.tsx'. Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: turns a route key into the URL pattern expo-router gives it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: turns a route key into the URL pattern expo-router gives it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"26:22:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-page-routes.test.mjs","line":22,"source":"routePathnameFromKey('./h/[hostId]/tasks.tsx')","rows":[{"index":1,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":22,"end_line":22,"start":1176,"end":1200,"source":"'./h/[hostId]/tasks.tsx'","value":{"kind":"string","value":"./h/[hostId]/tasks.tsx"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: './h/[hostId]/tasks.tsx'. Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: turns a route key into the URL pattern expo-router gives it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: turns a route key into the URL pattern expo-router gives it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"26:23:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-page-routes.test.mjs","line":23,"source":"routePathnameFromKey('./h/[hostId]/session/[worktreeId].tsx')","rows":[{"index":1,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":23,"end_line":23,"start":1261,"end":1300,"source":"'./h/[hostId]/session/[worktreeId].tsx'","value":{"kind":"string","value":"./h/[hostId]/session/[worktreeId].tsx"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: './h/[hostId]/session/[worktreeId].tsx'. Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: turns a route key into the URL pattern expo-router gives it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: turns a route key into the URL pattern expo-router gives it.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":20,"title":"turns a route key into the URL pattern expo-router gives it","start":991,"end":1360},"implementation_status":"retained"},{"line":28,"title":"answers null for a layout, which is not a screen anyone navigates to","decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: answers null for a layout, which is not a screen anyone navigates to.","explicit_input_controls":[{"control_id":"26:29:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-page-routes.test.mjs","line":29,"source":"routePathnameFromKey('./h/_layout.tsx')","rows":[{"index":1,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":29,"end_line":29,"start":1479,"end":1496,"source":"'./h/_layout.tsx'","value":{"kind":"string","value":"./h/_layout.tsx"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: './h/_layout.tsx'. Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: answers null for a layout, which is not a screen anyone navigates to.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: answers null for a layout, which is not a screen anyone navigates to.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"26:30:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-page-routes.test.mjs","line":30,"source":"routePathnameFromKey('./h/[hostId]/_layout.tsx')","rows":[{"index":1,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":30,"end_line":30,"start":1542,"end":1568,"source":"'./h/[hostId]/_layout.tsx'","value":{"kind":"string","value":"./h/[hostId]/_layout.tsx"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: './h/[hostId]/_layout.tsx'. Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: answers null for a layout, which is not a screen anyone navigates to.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: answers null for a layout, which is not a screen anyone navigates to.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":28,"title":"answers null for a layout, which is not a screen anyone navigates to","start":1364,"end":1586},"implementation_status":"retained"},{"line":40,"title":"carries an optional grant list through, and writes no key for a route without one","decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: carries an optional grant list through, and writes no key for a route without one.","explicit_input_controls":[{"control_id":"26:42:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-page-routes.test.mjs","line":42,"source":"resolveMobileWebPageRoutes(\n ['./h/[hostId]/index.tsx', './h/[hostId]/tasks.tsx'],\n [\n {\n pathname: '/h/[hostId]',\n grants: ['navigate'],\n optionalGrants: ['externalNavigation']\n },\n { pathname: '/h/[hostId]/tasks', grants: ['navigate'], optionalGrants: [] }\n ]\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":43,"end_line":43,"start":2131,"end":2183,"source":"['./h/[hostId]/index.tsx', './h/[hostId]/tasks.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"./h/[hostId]/index.tsx"},{"kind":"string","value":"./h/[hostId]/tasks.tsx"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['./h/[hostId]/index.tsx', './h/[hostId]/tasks.tsx']. Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: carries an optional grant list through, and writes no key for a route without one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":44,"end_line":51,"start":2193,"end":2437,"source":"[\n {\n pathname: '/h/[hostId]',\n grants: ['navigate'],\n optionalGrants: ['externalNavigation']\n },\n { pathname: '/h/[hostId]/tasks', grants: ['navigate'], optionalGrants: [] }\n ]","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"}]}},{"key":"optionalGrants","value":{"kind":"array","value":[{"kind":"string","value":"externalNavigation"}]}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/tasks"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"}]}},{"key":"optionalGrants","value":{"kind":"array","value":[]}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ { pathname: '/h/[hostId]', grants: ['navigate'], optionalGrants: ['externalNavigation'] . Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: carries an optional grant list through, and writes no key for a route without one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: carries an optional grant list through, and writes no key for a route without one.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":40,"title":"carries an optional grant list through, and writes no key for a route without one","start":1981,"end":2632},"implementation_status":"retained"},{"line":59,"title":"carries the host-area declaration through, and writes no key where there is none","decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: carries the host-area declaration through, and writes no key where there is none.","explicit_input_controls":[{"control_id":"26:61:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-page-routes.test.mjs","line":61,"source":"resolveMobileWebPageRoutes(\n ['./h/[hostId]/index.tsx', './h/[hostId]/tasks.tsx'],\n [\n { pathname: '/h/[hostId]', grants: ['navigate'], canOwnHostArea: true },\n { pathname: '/h/[hostId]/tasks', grants: ['navigate'] }\n ]\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":62,"end_line":62,"start":2785,"end":2837,"source":"['./h/[hostId]/index.tsx', './h/[hostId]/tasks.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"./h/[hostId]/index.tsx"},{"kind":"string","value":"./h/[hostId]/tasks.tsx"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['./h/[hostId]/index.tsx', './h/[hostId]/tasks.tsx']. Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: carries the host-area declaration through, and writes no key where there is none.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":63,"end_line":66,"start":2847,"end":3007,"source":"[\n { pathname: '/h/[hostId]', grants: ['navigate'], canOwnHostArea: true },\n { pathname: '/h/[hostId]/tasks', grants: ['navigate'] }\n ]","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"}]}},{"key":"canOwnHostArea","value":{"kind":"boolean","value":true}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/tasks"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"}]}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ { pathname: '/h/[hostId]', grants: ['navigate'], canOwnHostArea: true }, { pathname: '/h/[hostId]/tasks', grants: ['na. Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: carries the host-area declaration through, and writes no key where there is none.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: carries the host-area declaration through, and writes no key where there is none.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":59,"title":"carries the host-area declaration through, and writes no key where there is none","start":2636,"end":3184},"implementation_status":"retained"},{"line":78,"title":"declares the host area on the host route alone, under one route-grant ceiling","decision":"fix","reason":"Remove copied canOwnHostArea pathname inventory; retain the independently useful aggregate required/optional grant-union ceiling rule, and name the case for that rule.","explicit_input_controls":[],"current_declaration":{"line":78,"title":"bounds the aggregate required and optional grants by one route-grant ceiling","start":3400,"end":3707},"implementation_status":"implemented"},{"line":88,"title":"holds the optional lane to the manifest grammar and the ceiling over the union","decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: holds the optional lane to the manifest grammar and the ceiling over the union.","explicit_input_controls":[],"current_declaration":{"line":85,"title":"holds the optional lane to the manifest grammar and the ceiling over the union","start":3711,"end":4660},"implementation_status":"retained"},{"line":103,"title":"fails the build on a declaration the bundle cannot render","decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: fails the build on a declaration the bundle cannot render.","explicit_input_controls":[{"control_id":"26:107:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-page-routes.test.mjs","line":107,"source":"resolveMobileWebPageRoutes(\n ['./h/[hostId]/index.tsx'],\n [{ pathname: '/h/[hostId]/gone', grants: [] }]\n )","rows":[{"index":1,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":108,"end_line":108,"start":5126,"end":5152,"source":"['./h/[hostId]/index.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"./h/[hostId]/index.tsx"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['./h/[hostId]/index.tsx']. Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: fails the build on a declaration the bundle cannot render.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":109,"end_line":109,"start":5162,"end":5208,"source":"[{ pathname: '/h/[hostId]/gone', grants: [] }]","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/gone"}},{"key":"grants","value":{"kind":"array","value":[]}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [{ pathname: '/h/[hostId]/gone', grants: [] }]. Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: fails the build on a declaration the bundle cannot render.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: fails the build on a declaration the bundle cannot render.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":100,"title":"fails the build on a declaration the bundle cannot render","start":4664,"end":5122},"implementation_status":"retained"}],"lines":114,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection.","planned_changes":[{"original_line":78,"title":"declares the host area on the host route alone, under one route-grant ceiling","decision":"fix","change":"Remove copied canOwnHostArea pathname inventory; retain the independently useful aggregate required/optional grant-union ceiling rule, and name the case for that rule."}],"production_evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-route-manifest.mjs","config/scripts/mobile-web-page-routes.mjs","src/shared/mobile-web-bundle/manifest-contract.ts"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"26:21:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-page-routes.test.mjs","line":21,"end_line":21,"start":1076,"end":1122,"source":"routePathnameFromKey('./h/[hostId]/index.tsx')","input_position":{"path":"config/scripts/mobile-web-page-routes.test.mjs","line":21,"end_line":21,"start":1076,"end":1122},"binding":"routePathnameFromKey","resolution":[],"enclosing_case":{"line":20,"title":"turns a route key into the URL pattern expo-router gives it"},"affected_case_lines":[],"decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: turns a route key into the URL pattern expo-router gives it.","rows":[{"index":1,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":21,"end_line":21,"start":1097,"end":1121,"source":"'./h/[hostId]/index.tsx'","value":{"kind":"string","value":"./h/[hostId]/index.tsx"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: './h/[hostId]/index.tsx'. Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: turns a route key into the URL pattern expo-router gives it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4948110e497148be21e842e5715cf75bb2218b577cf2fd70f4baf2e345c35445"}},{"id":"26:22:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-page-routes.test.mjs","line":22,"end_line":22,"start":1155,"end":1201,"source":"routePathnameFromKey('./h/[hostId]/tasks.tsx')","input_position":{"path":"config/scripts/mobile-web-page-routes.test.mjs","line":22,"end_line":22,"start":1155,"end":1201},"binding":"routePathnameFromKey","resolution":[],"enclosing_case":{"line":20,"title":"turns a route key into the URL pattern expo-router gives it"},"affected_case_lines":[],"decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: turns a route key into the URL pattern expo-router gives it.","rows":[{"index":1,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":22,"end_line":22,"start":1176,"end":1200,"source":"'./h/[hostId]/tasks.tsx'","value":{"kind":"string","value":"./h/[hostId]/tasks.tsx"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: './h/[hostId]/tasks.tsx'. Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: turns a route key into the URL pattern expo-router gives it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4948110e497148be21e842e5715cf75bb2218b577cf2fd70f4baf2e345c35445"}},{"id":"26:23:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-page-routes.test.mjs","line":23,"end_line":23,"start":1240,"end":1301,"source":"routePathnameFromKey('./h/[hostId]/session/[worktreeId].tsx')","input_position":{"path":"config/scripts/mobile-web-page-routes.test.mjs","line":23,"end_line":23,"start":1240,"end":1301},"binding":"routePathnameFromKey","resolution":[],"enclosing_case":{"line":20,"title":"turns a route key into the URL pattern expo-router gives it"},"affected_case_lines":[],"decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: turns a route key into the URL pattern expo-router gives it.","rows":[{"index":1,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":23,"end_line":23,"start":1261,"end":1300,"source":"'./h/[hostId]/session/[worktreeId].tsx'","value":{"kind":"string","value":"./h/[hostId]/session/[worktreeId].tsx"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: './h/[hostId]/session/[worktreeId].tsx'. Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: turns a route key into the URL pattern expo-router gives it.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4948110e497148be21e842e5715cf75bb2218b577cf2fd70f4baf2e345c35445"}},{"id":"26:29:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-page-routes.test.mjs","line":29,"end_line":29,"start":1458,"end":1497,"source":"routePathnameFromKey('./h/_layout.tsx')","input_position":{"path":"config/scripts/mobile-web-page-routes.test.mjs","line":29,"end_line":29,"start":1458,"end":1497},"binding":"routePathnameFromKey","resolution":[],"enclosing_case":{"line":28,"title":"answers null for a layout, which is not a screen anyone navigates to"},"affected_case_lines":[],"decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: answers null for a layout, which is not a screen anyone navigates to.","rows":[{"index":1,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":29,"end_line":29,"start":1479,"end":1496,"source":"'./h/_layout.tsx'","value":{"kind":"string","value":"./h/_layout.tsx"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: './h/_layout.tsx'. Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: answers null for a layout, which is not a screen anyone navigates to.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4948110e497148be21e842e5715cf75bb2218b577cf2fd70f4baf2e345c35445"}},{"id":"26:30:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-page-routes.test.mjs","line":30,"end_line":30,"start":1521,"end":1569,"source":"routePathnameFromKey('./h/[hostId]/_layout.tsx')","input_position":{"path":"config/scripts/mobile-web-page-routes.test.mjs","line":30,"end_line":30,"start":1521,"end":1569},"binding":"routePathnameFromKey","resolution":[],"enclosing_case":{"line":28,"title":"answers null for a layout, which is not a screen anyone navigates to"},"affected_case_lines":[],"decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: answers null for a layout, which is not a screen anyone navigates to.","rows":[{"index":1,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":30,"end_line":30,"start":1542,"end":1568,"source":"'./h/[hostId]/_layout.tsx'","value":{"kind":"string","value":"./h/[hostId]/_layout.tsx"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: './h/[hostId]/_layout.tsx'. Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: answers null for a layout, which is not a screen anyone navigates to.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4948110e497148be21e842e5715cf75bb2218b577cf2fd70f4baf2e345c35445"}},{"id":"26:42:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-page-routes.test.mjs","line":42,"end_line":52,"start":2095,"end":2445,"source":"resolveMobileWebPageRoutes(\n ['./h/[hostId]/index.tsx', './h/[hostId]/tasks.tsx'],\n [\n {\n pathname: '/h/[hostId]',\n grants: ['navigate'],\n optionalGrants: ['externalNavigation']\n },\n { pathname: '/h/[hostId]/tasks', grants: ['navigate'], optionalGrants: [] }\n ]\n )","input_position":{"path":"config/scripts/mobile-web-page-routes.test.mjs","line":42,"end_line":52,"start":2095,"end":2445},"binding":"resolveMobileWebPageRoutes","resolution":[],"enclosing_case":{"line":40,"title":"carries an optional grant list through, and writes no key for a route without one"},"affected_case_lines":[],"decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: carries an optional grant list through, and writes no key for a route without one.","rows":[{"index":1,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":43,"end_line":43,"start":2131,"end":2183,"source":"['./h/[hostId]/index.tsx', './h/[hostId]/tasks.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"./h/[hostId]/index.tsx"},{"kind":"string","value":"./h/[hostId]/tasks.tsx"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['./h/[hostId]/index.tsx', './h/[hostId]/tasks.tsx']. Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: carries an optional grant list through, and writes no key for a route without one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":44,"end_line":51,"start":2193,"end":2437,"source":"[\n {\n pathname: '/h/[hostId]',\n grants: ['navigate'],\n optionalGrants: ['externalNavigation']\n },\n { pathname: '/h/[hostId]/tasks', grants: ['navigate'], optionalGrants: [] }\n ]","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"}]}},{"key":"optionalGrants","value":{"kind":"array","value":[{"kind":"string","value":"externalNavigation"}]}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/tasks"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"}]}},{"key":"optionalGrants","value":{"kind":"array","value":[]}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ { pathname: '/h/[hostId]', grants: ['navigate'], optionalGrants: ['externalNavigation'] . Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: carries an optional grant list through, and writes no key for a route without one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4948110e497148be21e842e5715cf75bb2218b577cf2fd70f4baf2e345c35445"}},{"id":"26:61:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-page-routes.test.mjs","line":61,"end_line":67,"start":2749,"end":3015,"source":"resolveMobileWebPageRoutes(\n ['./h/[hostId]/index.tsx', './h/[hostId]/tasks.tsx'],\n [\n { pathname: '/h/[hostId]', grants: ['navigate'], canOwnHostArea: true },\n { pathname: '/h/[hostId]/tasks', grants: ['navigate'] }\n ]\n )","input_position":{"path":"config/scripts/mobile-web-page-routes.test.mjs","line":61,"end_line":67,"start":2749,"end":3015},"binding":"resolveMobileWebPageRoutes","resolution":[],"enclosing_case":{"line":59,"title":"carries the host-area declaration through, and writes no key where there is none"},"affected_case_lines":[],"decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: carries the host-area declaration through, and writes no key where there is none.","rows":[{"index":1,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":62,"end_line":62,"start":2785,"end":2837,"source":"['./h/[hostId]/index.tsx', './h/[hostId]/tasks.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"./h/[hostId]/index.tsx"},{"kind":"string","value":"./h/[hostId]/tasks.tsx"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['./h/[hostId]/index.tsx', './h/[hostId]/tasks.tsx']. Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: carries the host-area declaration through, and writes no key where there is none.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":63,"end_line":66,"start":2847,"end":3007,"source":"[\n { pathname: '/h/[hostId]', grants: ['navigate'], canOwnHostArea: true },\n { pathname: '/h/[hostId]/tasks', grants: ['navigate'] }\n ]","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"}]}},{"key":"canOwnHostArea","value":{"kind":"boolean","value":true}}]},{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/tasks"}},{"key":"grants","value":{"kind":"array","value":[{"kind":"string","value":"navigate"}]}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ { pathname: '/h/[hostId]', grants: ['navigate'], canOwnHostArea: true }, { pathname: '/h/[hostId]/tasks', grants: ['na. Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: carries the host-area declaration through, and writes no key where there is none.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4948110e497148be21e842e5715cf75bb2218b577cf2fd70f4baf2e345c35445"}},{"id":"26:107:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-page-routes.test.mjs","line":107,"end_line":110,"start":5090,"end":5216,"source":"resolveMobileWebPageRoutes(\n ['./h/[hostId]/index.tsx'],\n [{ pathname: '/h/[hostId]/gone', grants: [] }]\n )","input_position":{"path":"config/scripts/mobile-web-page-routes.test.mjs","line":107,"end_line":110,"start":5090,"end":5216},"binding":"resolveMobileWebPageRoutes","resolution":[],"enclosing_case":{"line":103,"title":"fails the build on a declaration the bundle cannot render"},"affected_case_lines":[],"decision":"keep","reason":"Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: fails the build on a declaration the bundle cannot render.","rows":[{"index":1,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":108,"end_line":108,"start":5126,"end":5152,"source":"['./h/[hostId]/index.tsx']","value":{"kind":"array","value":[{"kind":"string","value":"./h/[hostId]/index.tsx"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['./h/[hostId]/index.tsx']. Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: fails the build on a declaration the bundle cannot render.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-page-routes.test.mjs","line":109,"end_line":109,"start":5162,"end":5208,"source":"[{ pathname: '/h/[hostId]/gone', grants: [] }]","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"pathname","value":{"kind":"string","value":"/h/[hostId]/gone"}},{"key":"grants","value":{"kind":"array","value":[]}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [{ pathname: '/h/[hostId]/gone', grants: [] }]. Real route-key normalization, declaration mapping or manifest schema receives independent route/grant inputs and produces explicit expected patterns, optional keys or rejection. Scenario: fails the build on a declaration the bundle cannot render.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4948110e497148be21e842e5715cf75bb2218b577cf2fd70f4baf2e345c35445"}}],"original_review_sha256":"e061337104e81872c9df9663d61449f111273c7fb84637e7d8ae6c305b3eb707","reviewer":"audit_config","reviewed_sha256":"4948110e497148be21e842e5715cf75bb2218b577cf2fd70f4baf2e345c35445","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-page-routes.test.mjs","final_declarations":7,"current_controls":{"path":"config/scripts/mobile-web-page-routes.test.mjs","each":[],"for_of":[],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[{"original_line":78,"title":"declares the host area on the host route alone, under one route-grant ceiling","decision":"fix","change":"Remove copied canOwnHostArea pathname inventory; retain the independently useful aggregate required/optional grant-union ceiling rule, and name the case for that rule."}],"manual_implementation_notes":[],"evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-route-manifest.mjs","config/scripts/mobile-web-page-routes.mjs","src/shared/mobile-web-bundle/manifest-contract.ts"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","sha256":"26349aebb23ffaf1973c933b275226670e0ee6a026779d2d744a4ff219854570","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":27,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"26349aebb23ffaf1973c933b275226670e0ee6a026779d2d744a4ff219854570","cases":[{"line":55,"title":"pins every tracked text source to LF and leaves the binaries alone","decision":"keep","reason":"Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: pins every tracked text source to LF and leaves the binaries alone.","explicit_input_controls":[],"current_declaration":{"line":55,"title":"pins every tracked text source to LF and leaves the binaries alone","start":2002,"end":2770},"implementation_status":"retained"},{"line":75,"title":"resolves %s to %s=%s","decision":"keep","reason":"Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: resolves %s to %s=%s.","explicit_input_controls":[{"control_id":"27:75:parameter-table:3","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":75,"source":"[\n ['mobile/src/deep/nested/module.ts', 'eol', 'lf'],\n ['mobile/app/h/[hostId]/new-route.tsx', 'eol', 'lf'],\n ['mobile/web-entry/index.tsx', 'eol', 'lf'],\n ['mobile/src/assets/new.png', 'text', 'unset'],\n ['mobile/app/assets/new.woff2', 'text', 'unset'],\n ['mobile/scripts/build-something.mjs', 'eol', 'unspecified']\n ]","rows":[{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":76,"end_line":76,"start":2975,"end":3024,"source":"['mobile/src/deep/nested/module.ts', 'eol', 'lf']","value":{"kind":"array","value":[{"kind":"string","value":"mobile/src/deep/nested/module.ts"},{"kind":"string","value":"eol"},{"kind":"string","value":"lf"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['mobile/src/deep/nested/module.ts', 'eol', 'lf']. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: resolves %s to %s=%s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":77,"end_line":77,"start":3030,"end":3082,"source":"['mobile/app/h/[hostId]/new-route.tsx', 'eol', 'lf']","value":{"kind":"array","value":[{"kind":"string","value":"mobile/app/h/[hostId]/new-route.tsx"},{"kind":"string","value":"eol"},{"kind":"string","value":"lf"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['mobile/app/h/[hostId]/new-route.tsx', 'eol', 'lf']. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: resolves %s to %s=%s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":78,"end_line":78,"start":3088,"end":3131,"source":"['mobile/web-entry/index.tsx', 'eol', 'lf']","value":{"kind":"array","value":[{"kind":"string","value":"mobile/web-entry/index.tsx"},{"kind":"string","value":"eol"},{"kind":"string","value":"lf"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['mobile/web-entry/index.tsx', 'eol', 'lf']. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: resolves %s to %s=%s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":79,"end_line":79,"start":3137,"end":3183,"source":"['mobile/src/assets/new.png', 'text', 'unset']","value":{"kind":"array","value":[{"kind":"string","value":"mobile/src/assets/new.png"},{"kind":"string","value":"text"},{"kind":"string","value":"unset"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['mobile/src/assets/new.png', 'text', 'unset']. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: resolves %s to %s=%s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":80,"end_line":80,"start":3189,"end":3237,"source":"['mobile/app/assets/new.woff2', 'text', 'unset']","value":{"kind":"array","value":[{"kind":"string","value":"mobile/app/assets/new.woff2"},{"kind":"string","value":"text"},{"kind":"string","value":"unset"}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['mobile/app/assets/new.woff2', 'text', 'unset']. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: resolves %s to %s=%s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":81,"end_line":81,"start":3243,"end":3303,"source":"['mobile/scripts/build-something.mjs', 'eol', 'unspecified']","value":{"kind":"array","value":[{"kind":"string","value":"mobile/scripts/build-something.mjs"},{"kind":"string","value":"eol"},{"kind":"string","value":"unspecified"}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['mobile/scripts/build-something.mjs', 'eol', 'unspecified']. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: resolves %s to %s=%s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: resolves %s to %s=%s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":75,"title":"resolves %s to %s=%s","start":2961,"end":3427},"implementation_status":"retained"},{"line":88,"title":"accepts every committed page source tree","decision":"keep","reason":"Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: accepts every committed page source tree.","explicit_input_controls":[{"control_id":"27:89:for-of:4","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":89,"source":"PAGE_SOURCE_TREES","rows":[{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":19,"end_line":19,"start":864,"end":876,"source":"'mobile/src'","value":{"kind":"string","value":"mobile/src"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'mobile/src'. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: accepts every committed page source tree.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":19,"end_line":19,"start":878,"end":890,"source":"'mobile/app'","value":{"kind":"string","value":"mobile/app"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'mobile/app'. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: accepts every committed page source tree.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":19,"end_line":19,"start":892,"end":910,"source":"'mobile/web-entry'","value":{"kind":"string","value":"mobile/web-entry"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'mobile/web-entry'. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: accepts every committed page source tree.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: accepts every committed page source tree.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"27:90:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":90,"source":"assertNoCarriageReturnsInSource(join(projectDir, tree))","rows":[{"index":1,"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":90,"end_line":90,"start":3642,"end":3664,"source":"join(projectDir, tree)","value":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"projectDir","resolved_at":{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":18,"end_line":18,"start":799,"end":836},"resolved":{"kind":"call-source","callee":"resolve","arguments":[{"kind":"source-expression","source":"import.meta.dirname"},{"kind":"string","value":"../.."}],"source":"resolve(import.meta.dirname, '../..')"}},{"kind":"source-expression","source":"tree"}],"source":"join(projectDir, tree)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: join(projectDir, tree). Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: accepts every committed page source tree.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: accepts every committed page source tree.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":88,"title":"accepts every committed page source tree","start":3486,"end":3702},"implementation_status":"retained"},{"line":94,"title":"rejects a CRLF source file, because CRLF changes every asset hash and the buildId","decision":"keep","reason":"Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: rejects a CRLF source file, because CRLF changes every asset hash and the buildId.","explicit_input_controls":[{"control_id":"27:98:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":98,"source":"assertNoCarriageReturnsInSource(scratch)","rows":[{"index":1,"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":98,"end_line":98,"start":4035,"end":4042,"source":"scratch","value":{"kind":"reference","source":"scratch","resolved_at":{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":95,"end_line":95,"start":3828,"end":3881},"resolved":{"kind":"source-expression","source":"await mkdtemp(join(tmpdir(), 'orca-mobile-web-eol-'))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scratch. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: rejects a CRLF source file, because CRLF changes every asset hash and the buildId.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: rejects a CRLF source file, because CRLF changes every asset hash and the buildId.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":94,"title":"rejects a CRLF source file, because CRLF changes every asset hash and the buildId","start":3706,"end":4190},"implementation_status":"retained"}],"lines":106,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior.","planned_changes":[],"production_evidence":[".gitattributes","config/scripts/mobile-web-source-line-endings.mjs"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"27:19:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":19,"end_line":19,"start":843,"end":911,"source":"['mobile/src', 'mobile/app', 'mobile/web-entry']","input_position":{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":19,"end_line":19,"start":863,"end":911},"binding":"PAGE_SOURCE_TREES","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior.","rows":[{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":19,"end_line":19,"start":864,"end":876,"source":"'mobile/src'","value":{"kind":"string","value":"mobile/src"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'mobile/src'. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":19,"end_line":19,"start":878,"end":890,"source":"'mobile/app'","value":{"kind":"string","value":"mobile/app"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'mobile/app'. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":19,"end_line":19,"start":892,"end":910,"source":"'mobile/web-entry'","value":{"kind":"string","value":"mobile/web-entry"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'mobile/web-entry'. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"26349aebb23ffaf1973c933b275226670e0ee6a026779d2d744a4ff219854570"}},{"id":"27:42:counted-loop:2","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":42,"end_line":44,"start":1683,"end":1795,"source":"let index = 0; index + 2 < fields.length; index += 3","input_position":{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":42,"end_line":42,"start":1688,"end":1740},"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior.","rows":[],"policy":"Exact original fixed/runtime loop bounds and initializer retained; generated repetitions are workload policy, not additional declarations or runtime validations.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"26349aebb23ffaf1973c933b275226670e0ee6a026779d2d744a4ff219854570"}},{"id":"27:75:parameter-table:3","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":75,"end_line":84,"start":2961,"end":3427,"source":"[\n ['mobile/src/deep/nested/module.ts', 'eol', 'lf'],\n ['mobile/app/h/[hostId]/new-route.tsx', 'eol', 'lf'],\n ['mobile/web-entry/index.tsx', 'eol', 'lf'],\n ['mobile/src/assets/new.png', 'text', 'unset'],\n ['mobile/app/assets/new.woff2', 'text', 'unset'],\n ['mobile/scripts/build-something.mjs', 'eol', 'unspecified']\n ]","input_position":{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":75,"end_line":82,"start":2969,"end":3307},"binding":"it.each","resolution":[],"enclosing_case":{"line":75,"title":"resolves %s to %s=%s"},"affected_case_lines":[75],"decision":"keep","reason":"Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: resolves %s to %s=%s.","rows":[{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":76,"end_line":76,"start":2975,"end":3024,"source":"['mobile/src/deep/nested/module.ts', 'eol', 'lf']","value":{"kind":"array","value":[{"kind":"string","value":"mobile/src/deep/nested/module.ts"},{"kind":"string","value":"eol"},{"kind":"string","value":"lf"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['mobile/src/deep/nested/module.ts', 'eol', 'lf']. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: resolves %s to %s=%s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":77,"end_line":77,"start":3030,"end":3082,"source":"['mobile/app/h/[hostId]/new-route.tsx', 'eol', 'lf']","value":{"kind":"array","value":[{"kind":"string","value":"mobile/app/h/[hostId]/new-route.tsx"},{"kind":"string","value":"eol"},{"kind":"string","value":"lf"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['mobile/app/h/[hostId]/new-route.tsx', 'eol', 'lf']. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: resolves %s to %s=%s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":78,"end_line":78,"start":3088,"end":3131,"source":"['mobile/web-entry/index.tsx', 'eol', 'lf']","value":{"kind":"array","value":[{"kind":"string","value":"mobile/web-entry/index.tsx"},{"kind":"string","value":"eol"},{"kind":"string","value":"lf"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['mobile/web-entry/index.tsx', 'eol', 'lf']. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: resolves %s to %s=%s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":79,"end_line":79,"start":3137,"end":3183,"source":"['mobile/src/assets/new.png', 'text', 'unset']","value":{"kind":"array","value":[{"kind":"string","value":"mobile/src/assets/new.png"},{"kind":"string","value":"text"},{"kind":"string","value":"unset"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['mobile/src/assets/new.png', 'text', 'unset']. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: resolves %s to %s=%s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":80,"end_line":80,"start":3189,"end":3237,"source":"['mobile/app/assets/new.woff2', 'text', 'unset']","value":{"kind":"array","value":[{"kind":"string","value":"mobile/app/assets/new.woff2"},{"kind":"string","value":"text"},{"kind":"string","value":"unset"}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['mobile/app/assets/new.woff2', 'text', 'unset']. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: resolves %s to %s=%s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":81,"end_line":81,"start":3243,"end":3303,"source":"['mobile/scripts/build-something.mjs', 'eol', 'unspecified']","value":{"kind":"array","value":[{"kind":"string","value":"mobile/scripts/build-something.mjs"},{"kind":"string","value":"eol"},{"kind":"string","value":"unspecified"}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['mobile/scripts/build-something.mjs', 'eol', 'unspecified']. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: resolves %s to %s=%s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"26349aebb23ffaf1973c933b275226670e0ee6a026779d2d744a4ff219854570"}},{"id":"27:89:for-of:4","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":89,"end_line":91,"start":3551,"end":3697,"source":"PAGE_SOURCE_TREES","input_position":{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":89,"end_line":89,"start":3570,"end":3587},"binding":"const tree","resolution":[{"name":"PAGE_SOURCE_TREES","path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":19,"end_line":19,"start":863,"end":911,"declaration_position":{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":19,"end_line":19,"start":843,"end":911},"source":"['mobile/src', 'mobile/app', 'mobile/web-entry']"}],"enclosing_case":{"line":88,"title":"accepts every committed page source tree"},"affected_case_lines":[],"decision":"keep","reason":"Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: accepts every committed page source tree.","rows":[{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":19,"end_line":19,"start":864,"end":876,"source":"'mobile/src'","value":{"kind":"string","value":"mobile/src"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'mobile/src'. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: accepts every committed page source tree.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":19,"end_line":19,"start":878,"end":890,"source":"'mobile/app'","value":{"kind":"string","value":"mobile/app"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'mobile/app'. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: accepts every committed page source tree.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":19,"end_line":19,"start":892,"end":910,"source":"'mobile/web-entry'","value":{"kind":"string","value":"mobile/web-entry"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'mobile/web-entry'. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: accepts every committed page source tree.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"26349aebb23ffaf1973c933b275226670e0ee6a026779d2d744a4ff219854570"}},{"id":"27:90:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":90,"end_line":90,"start":3610,"end":3665,"source":"assertNoCarriageReturnsInSource(join(projectDir, tree))","input_position":{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":90,"end_line":90,"start":3610,"end":3665},"binding":"assertNoCarriageReturnsInSource","resolution":[],"enclosing_case":{"line":88,"title":"accepts every committed page source tree"},"affected_case_lines":[],"decision":"keep","reason":"Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: accepts every committed page source tree.","rows":[{"index":1,"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":90,"end_line":90,"start":3642,"end":3664,"source":"join(projectDir, tree)","value":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"projectDir","resolved_at":{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":18,"end_line":18,"start":799,"end":836},"resolved":{"kind":"call-source","callee":"resolve","arguments":[{"kind":"source-expression","source":"import.meta.dirname"},{"kind":"string","value":"../.."}],"source":"resolve(import.meta.dirname, '../..')"}},{"kind":"source-expression","source":"tree"}],"source":"join(projectDir, tree)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: join(projectDir, tree). Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: accepts every committed page source tree.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"26349aebb23ffaf1973c933b275226670e0ee6a026779d2d744a4ff219854570"}},{"id":"27:98:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":98,"end_line":98,"start":4003,"end":4043,"source":"assertNoCarriageReturnsInSource(scratch)","input_position":{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":98,"end_line":98,"start":4003,"end":4043},"binding":"assertNoCarriageReturnsInSource","resolution":[],"enclosing_case":{"line":94,"title":"rejects a CRLF source file, because CRLF changes every asset hash and the buildId"},"affected_case_lines":[],"decision":"keep","reason":"Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: rejects a CRLF source file, because CRLF changes every asset hash and the buildId.","rows":[{"index":1,"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":98,"end_line":98,"start":4035,"end":4042,"source":"scratch","value":{"kind":"reference","source":"scratch","resolved_at":{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","line":95,"end_line":95,"start":3828,"end":3881},"resolved":{"kind":"source-expression","source":"await mkdtemp(join(tmpdir(), 'orca-mobile-web-eol-'))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scratch. Real git check-attr and the source-EOL guard inspect committed sources or independent synthetic path/CRLF fixtures; text and binary paths have separate expected behavior. Scenario: rejects a CRLF source file, because CRLF changes every asset hash and the buildId.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"26349aebb23ffaf1973c933b275226670e0ee6a026779d2d744a4ff219854570"}}],"original_review_sha256":"8ef7d8ff612f166c1993e5147dd774158819137d375a952ca57b90184b45f547","reviewer":"audit_config","reviewed_sha256":"26349aebb23ffaf1973c933b275226670e0ee6a026779d2d744a4ff219854570","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-source-line-endings.test.mjs","final_declarations":4,"current_controls":{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","each":[{"input":{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","start":2969,"end":3307,"line":75,"end_line":82,"source":"[\n ['mobile/src/deep/nested/module.ts', 'eol', 'lf'],\n ['mobile/app/h/[hostId]/new-route.tsx', 'eol', 'lf'],\n ['mobile/web-entry/index.tsx', 'eol', 'lf'],\n ['mobile/src/assets/new.png', 'text', 'unset'],\n ['mobile/app/assets/new.woff2', 'text', 'unset'],\n ['mobile/scripts/build-something.mjs', 'eol', 'unspecified']\n ]"},"rows":[{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","start":2975,"end":3024,"line":76,"end_line":76,"source":"['mobile/src/deep/nested/module.ts', 'eol', 'lf']"},{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","start":3030,"end":3082,"line":77,"end_line":77,"source":"['mobile/app/h/[hostId]/new-route.tsx', 'eol', 'lf']"},{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","start":3088,"end":3131,"line":78,"end_line":78,"source":"['mobile/web-entry/index.tsx', 'eol', 'lf']"},{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","start":3137,"end":3183,"line":79,"end_line":79,"source":"['mobile/src/assets/new.png', 'text', 'unset']"},{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","start":3189,"end":3237,"line":80,"end_line":80,"source":"['mobile/app/assets/new.woff2', 'text', 'unset']"},{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","start":3243,"end":3303,"line":81,"end_line":81,"source":"['mobile/scripts/build-something.mjs', 'eol', 'unspecified']"}]}],"for_of":[{"path":"config/scripts/mobile-web-source-line-endings.test.mjs","start":3570,"end":3587,"line":89,"end_line":89,"source":"PAGE_SOURCE_TREES","binding":"const tree","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":[".gitattributes","config/scripts/mobile-web-source-line-endings.mjs"],"runtime_validation":[]}
+{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","sha256":"f4c07a0a224bdf4906e58f32865504d82abe5c82e2fd8624da4f61abda97b45b","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":28,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"f4c07a0a224bdf4906e58f32865504d82abe5c82e2fd8624da4f61abda97b45b","cases":[{"line":54,"title":"is in no closure of the document modules the page imports","decision":"fix","reason":"Remove >30 discovered document-module count from the shared entry collector; retain real document-scope/terminal-init positives and absent generated engine.","explicit_input_controls":[{"control_id":"28:55:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":55,"source":"mobileWebAppModuleClosure(await documentEntryPoints())","rows":[{"index":1,"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":55,"end_line":55,"start":2720,"end":2747,"source":"await documentEntryPoints()","value":{"kind":"source-expression","source":"await documentEntryPoints()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: await documentEntryPoints(). Remove >30 discovered document-module count from the shared entry collector; retain real document-scope/terminal-init positives and absent generated engine.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Remove >30 discovered document-module count from the shared entry collector; retain real document-scope/terminal-init positives and absent generated engine.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":53,"title":"is in no closure of the document modules the page imports","start":2543,"end":2999},"implementation_status":"implemented"},{"line":62,"title":"is in no closure of the page terminal component either","decision":"keep","reason":"Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: is in no closure of the page terminal component either.","explicit_input_controls":[{"control_id":"28:63:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":63,"source":"mobileWebAppModuleClosure(['src/terminal/TerminalWebView'])","rows":[{"index":1,"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":63,"end_line":63,"start":3179,"end":3211,"source":"['src/terminal/TerminalWebView']","value":{"kind":"array","value":[{"kind":"string","value":"src/terminal/TerminalWebView"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/terminal/TerminalWebView']. Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: is in no closure of the page terminal component either.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: is in no closure of the page terminal component either.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":61,"title":"is in no closure of the page terminal component either","start":3005,"end":4583},"implementation_status":"retained"},{"line":83,"title":"is still what the native document reads its CSS beside","decision":"keep","reason":"Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: is still what the native document reads its CSS beside.","explicit_input_controls":[{"control_id":"28:88:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":88,"source":"mobileWebAppModuleClosure([\n 'src/terminal/terminal-webview-html/document-shell'\n ])","rows":[{"index":1,"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":88,"end_line":90,"start":5098,"end":5167,"source":"[\n 'src/terminal/terminal-webview-html/document-shell'\n ]","value":{"kind":"array","value":[{"kind":"string","value":"src/terminal/terminal-webview-html/document-shell"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ 'src/terminal/terminal-webview-html/document-shell' ]. Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: is still what the native document reads its CSS beside.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: is still what the native document reads its CSS beside.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":82,"title":"is still what the native document reads its CSS beside","start":4589,"end":5235},"implementation_status":"retained"},{"line":95,"title":"would be reported if a document module imported it (%s entry)","decision":"keep","reason":"Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: would be reported if a document module imported it (%s entry).","explicit_input_controls":[{"control_id":"28:95:parameter-table:4","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":95,"source":"['bare', 'relative', 'absolute']","rows":[{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":95,"end_line":95,"start":5293,"end":5299,"source":"'bare'","value":{"kind":"string","value":"bare"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'bare'. Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: would be reported if a document module imported it (%s entry).","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":95,"end_line":95,"start":5301,"end":5311,"source":"'relative'","value":{"kind":"string","value":"relative"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'relative'. Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: would be reported if a document module imported it (%s entry).","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":95,"end_line":95,"start":5313,"end":5323,"source":"'absolute'","value":{"kind":"string","value":"absolute"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'absolute'. Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: would be reported if a document module imported it (%s entry).","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: would be reported if a document module imported it (%s entry).","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"28:121:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":121,"source":"mobileWebAppModuleClosure([entryPoint], {\n absWorkingDir: scratch\n })","rows":[{"index":1,"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":121,"end_line":121,"start":6675,"end":6687,"source":"[entryPoint]","value":{"kind":"array","value":[{"kind":"reference","source":"entryPoint","resolved_at":{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":116,"end_line":120,"start":6422,"end":6614},"resolved":{"kind":"source-expression","source":"entryKind === 'absolute'\n ? join(scratch, 'src', 'terminal', 'document', 'planted')\n : entryKind === 'relative'\n ? `./${entry}`\n : entry"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [entryPoint]. Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: would be reported if a document module imported it (%s entry).","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":121,"end_line":123,"start":6689,"end":6737,"source":"{\n absWorkingDir: scratch\n }","value":{"kind":"object","value":[{"key":"absWorkingDir","value":{"kind":"reference","source":"scratch","resolved_at":{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":100,"end_line":100,"start":5638,"end":5695},"resolved":{"kind":"source-expression","source":"await mkdtemp(join(tmpdir(), 'orca-c75-engine-closure-'))"}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { absWorkingDir: scratch }. Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: would be reported if a document module imported it (%s entry).","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: would be reported if a document module imported it (%s entry).","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":94,"title":"would be reported if a document module imported it (%s entry)","start":5241,"end":6865},"implementation_status":"retained"}],"lines":134,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it.","planned_changes":[{"original_line":54,"title":"is in no closure of the document modules the page imports","decision":"fix","change":"Remove >30 discovered document-module count from the shared entry collector; retain real document-scope/terminal-init positives and absent generated engine."}],"production_evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"28:55:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":55,"end_line":55,"start":2694,"end":2748,"source":"mobileWebAppModuleClosure(await documentEntryPoints())","input_position":{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":55,"end_line":55,"start":2694,"end":2748},"binding":"mobileWebAppModuleClosure","resolution":[],"enclosing_case":{"line":54,"title":"is in no closure of the document modules the page imports"},"affected_case_lines":[],"decision":"keep","reason":"Remove >30 discovered document-module count from the shared entry collector; retain real document-scope/terminal-init positives and absent generated engine.","rows":[{"index":1,"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":55,"end_line":55,"start":2720,"end":2747,"source":"await documentEntryPoints()","value":{"kind":"source-expression","source":"await documentEntryPoints()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: await documentEntryPoints(). Remove >30 discovered document-module count from the shared entry collector; retain real document-scope/terminal-init positives and absent generated engine.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"719ab15966f01cdb6e217c547371cafc3a1eb65e62f6df639f6d112902803f57"}},{"id":"28:63:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":63,"end_line":63,"start":3153,"end":3212,"source":"mobileWebAppModuleClosure(['src/terminal/TerminalWebView'])","input_position":{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":63,"end_line":63,"start":3153,"end":3212},"binding":"mobileWebAppModuleClosure","resolution":[],"enclosing_case":{"line":62,"title":"is in no closure of the page terminal component either"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: is in no closure of the page terminal component either.","rows":[{"index":1,"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":63,"end_line":63,"start":3179,"end":3211,"source":"['src/terminal/TerminalWebView']","value":{"kind":"array","value":[{"kind":"string","value":"src/terminal/TerminalWebView"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/terminal/TerminalWebView']. Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: is in no closure of the page terminal component either.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"719ab15966f01cdb6e217c547371cafc3a1eb65e62f6df639f6d112902803f57"}},{"id":"28:88:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":88,"end_line":90,"start":5072,"end":5168,"source":"mobileWebAppModuleClosure([\n 'src/terminal/terminal-webview-html/document-shell'\n ])","input_position":{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":88,"end_line":90,"start":5072,"end":5168},"binding":"mobileWebAppModuleClosure","resolution":[],"enclosing_case":{"line":83,"title":"is still what the native document reads its CSS beside"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: is still what the native document reads its CSS beside.","rows":[{"index":1,"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":88,"end_line":90,"start":5098,"end":5167,"source":"[\n 'src/terminal/terminal-webview-html/document-shell'\n ]","value":{"kind":"array","value":[{"kind":"string","value":"src/terminal/terminal-webview-html/document-shell"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ 'src/terminal/terminal-webview-html/document-shell' ]. Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: is still what the native document reads its CSS beside.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"719ab15966f01cdb6e217c547371cafc3a1eb65e62f6df639f6d112902803f57"}},{"id":"28:95:parameter-table:4","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":95,"end_line":130,"start":5284,"end":6908,"source":"['bare', 'relative', 'absolute']","input_position":{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":95,"end_line":95,"start":5292,"end":5324},"binding":"it.each","resolution":[],"enclosing_case":{"line":95,"title":"would be reported if a document module imported it (%s entry)"},"affected_case_lines":[95],"decision":"keep","reason":"Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: would be reported if a document module imported it (%s entry).","rows":[{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":95,"end_line":95,"start":5293,"end":5299,"source":"'bare'","value":{"kind":"string","value":"bare"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'bare'. Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: would be reported if a document module imported it (%s entry).","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":95,"end_line":95,"start":5301,"end":5311,"source":"'relative'","value":{"kind":"string","value":"relative"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'relative'. Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: would be reported if a document module imported it (%s entry).","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":95,"end_line":95,"start":5313,"end":5323,"source":"'absolute'","value":{"kind":"string","value":"absolute"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'absolute'. Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: would be reported if a document module imported it (%s entry).","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"719ab15966f01cdb6e217c547371cafc3a1eb65e62f6df639f6d112902803f57"}},{"id":"28:121:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":121,"end_line":123,"start":6649,"end":6738,"source":"mobileWebAppModuleClosure([entryPoint], {\n absWorkingDir: scratch\n })","input_position":{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":121,"end_line":123,"start":6649,"end":6738},"binding":"mobileWebAppModuleClosure","resolution":[],"enclosing_case":{"line":95,"title":"would be reported if a document module imported it (%s entry)"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: would be reported if a document module imported it (%s entry).","rows":[{"index":1,"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":121,"end_line":121,"start":6675,"end":6687,"source":"[entryPoint]","value":{"kind":"array","value":[{"kind":"reference","source":"entryPoint","resolved_at":{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":116,"end_line":120,"start":6422,"end":6614},"resolved":{"kind":"source-expression","source":"entryKind === 'absolute'\n ? join(scratch, 'src', 'terminal', 'document', 'planted')\n : entryKind === 'relative'\n ? `./${entry}`\n : entry"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [entryPoint]. Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: would be reported if a document module imported it (%s entry).","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":121,"end_line":123,"start":6689,"end":6737,"source":"{\n absWorkingDir: scratch\n }","value":{"kind":"object","value":[{"key":"absWorkingDir","value":{"kind":"reference","source":"scratch","resolved_at":{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","line":100,"end_line":100,"start":5638,"end":5695},"resolved":{"kind":"source-expression","source":"await mkdtemp(join(tmpdir(), 'orca-c75-engine-closure-'))"}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { absWorkingDir: scratch }. Actual esbuild web/native module resolution and independent planted engine import prove the large generated engine string stays out of page closures while native consumers retain it. Scenario: would be reported if a document module imported it (%s entry).","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"719ab15966f01cdb6e217c547371cafc3a1eb65e62f6df639f6d112902803f57"}}],"original_review_sha256":"a66d7efdd3579b690cedc88d0021608ec323838a62cd96d36a71e87b2f7428f6","reviewer":"audit_config","reviewed_sha256":"719ab15966f01cdb6e217c547371cafc3a1eb65e62f6df639f6d112902803f57","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/mobile-web-terminal-engine-closure.test.mjs","final_declarations":4,"current_controls":{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","each":[{"input":{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","start":5249,"end":5281,"line":94,"end_line":94,"source":"['bare', 'relative', 'absolute']"},"rows":[{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","start":5250,"end":5256,"line":94,"end_line":94,"source":"'bare'"},{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","start":5258,"end":5268,"line":94,"end_line":94,"source":"'relative'"},{"path":"config/scripts/mobile-web-terminal-engine-closure.test.mjs","start":5270,"end":5280,"line":94,"end_line":94,"source":"'absolute'"}]}],"for_of":[],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[{"original_line":54,"title":"is in no closure of the document modules the page imports","decision":"fix","change":"Remove >30 discovered document-module count from the shared entry collector; retain real document-scope/terminal-init positives and absent generated engine."}],"manual_implementation_notes":[],"evidence":["config/scripts/build-mobile-web-app-bundle.mjs","config/scripts/mobile-web-app/mobile-web-app-bundle-dependencies.mjs"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/moved-code-normalization-budget.test.mjs","sha256":"d6fc630c192a5ce4537941854f65db48566603bdf441faaff6b0eaf879816bed","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":29,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"d6fc630c192a5ce4537941854f65db48566603bdf441faaff6b0eaf879816bed","cases":[{"line":24,"title":"normalizes fixed base lines once across repeated changed-line diagnostics","decision":"keep","reason":"Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: normalizes fixed base lines once across repeated changed-line diagnostics.","explicit_input_controls":[{"control_id":"29:29:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/moved-code-normalization-budget.test.mjs","line":29,"source":"[Array.from({ length: 5000 }, (_, index) => ` base_line_${index}() `)]","rows":[{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":29,"end_line":29,"start":1303,"end":1373,"source":"Array.from({ length: 5000 }, (_, index) => ` base_line_${index}() `)","value":{"kind":"call-source","callee":"Array.from","arguments":[{"kind":"object","value":[{"key":"length","value":{"kind":"number","value":5000}}]},{"kind":"source-expression","source":"(_, index) => ` base_line_${index}() `"}],"source":"Array.from({ length: 5000 }, (_, index) => ` base_line_${index}() `)"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: Array.from({ length: 5000 }, (_, index) => ` base_line_${index}() `). Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: normalizes fixed base lines once across repeated changed-line diagnostics.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: normalizes fixed base lines once across repeated changed-line diagnostics.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"29:32:fixture-or-oracle-declaration:2","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/moved-code-normalization-budget.test.mjs","line":32,"source":"{\n filename: file,\n labels: [{ span: { line: 1, offset: 0, length: source.length - 1 } }]\n }","rows":[{"index":1,"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":33,"end_line":33,"start":1518,"end":1532,"source":"filename: file","value":{"kind":"property","key":"filename","value":{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":26,"end_line":26,"start":1187,"end":1212},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":25,"end_line":25,"start":1115,"end":1169},"resolved":{"kind":"call-source","callee":"mkdtempSync","arguments":[{"kind":"call-source","callee":"join","arguments":[{"kind":"call-source","callee":"tmpdir","arguments":[],"source":"tmpdir()"},{"kind":"string","value":"orca-moved-code-budget-"}],"source":"join(tmpdir(), 'orca-moved-code-budget-')"}],"source":"mkdtempSync(join(tmpdir(), 'orca-moved-code-budget-'))"}},{"kind":"string","value":"fixture.mjs"}],"source":"join(root, 'fixture.mjs')"}}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: filename: file. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: normalizes fixed base lines once across repeated changed-line diagnostics.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":34,"end_line":34,"start":1540,"end":1609,"source":"labels: [{ span: { line: 1, offset: 0, length: source.length - 1 } }]","value":{"kind":"property","key":"labels","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"span","value":{"kind":"object","value":[{"key":"line","value":{"kind":"number","value":1}},{"key":"offset","value":{"kind":"number","value":0}},{"key":"length","value":{"kind":"source-expression","source":"source.length - 1"}}]}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: labels: [{ span: { line: 1, offset: 0, length: source.length - 1 } }]. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: normalizes fixed base lines once across repeated changed-line diagnostics.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: normalizes fixed base lines once across repeated changed-line diagnostics.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":24,"title":"normalizes fixed base lines once across repeated changed-line diagnostics","start":1010,"end":2315},"implementation_status":"retained"},{"line":57,"title":"keeps the existing exemption decisions across mixed repeated highlights","decision":"keep","reason":"Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","explicit_input_controls":[{"control_id":"29:59:fixture-or-oracle-declaration:3","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/moved-code-normalization-budget.test.mjs","line":59,"source":"[[' a() ', '', '\\tb()'], body, ['first()', 'last()']]","rows":[{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":59,"end_line":59,"start":2501,"end":2525,"source":"[' a() ', '', '\\tb()']","value":{"kind":"array","value":[{"kind":"string","value":" a() "},{"kind":"string","value":""},{"kind":"string","value":"\tb()"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: [' a() ', '', '\\tb()']. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":59,"end_line":59,"start":2527,"end":2531,"source":"body","value":{"kind":"reference","source":"body","resolved_at":{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":58,"end_line":58,"start":2422,"end":2480},"resolved":{"kind":"call-source","callee":"Array.from","arguments":[{"kind":"object","value":[{"key":"length","value":{"kind":"number","value":20}}]},{"kind":"source-expression","source":"(_, index) => `line${index}()`"}],"source":"Array.from({ length: 20 }, (_, index) => `line${index}()`)"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: body. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":59,"end_line":59,"start":2533,"end":2554,"source":"['first()', 'last()']","value":{"kind":"array","value":[{"kind":"string","value":"first()"},{"kind":"string","value":"last()"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['first()', 'last()']. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"29:61:fixture-or-oracle-declaration:4","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/moved-code-normalization-budget.test.mjs","line":61,"source":"[\n { lines: ['a()', ' ', 'b()'], moved: true },\n { lines: ['', ' '], moved: false },\n { lines: ['brandNewCall()', 'a()'], moved: false },\n { lines: ['first()', 'brandNewCall()'], moved: false },\n { lines: [...body.slice(0, 19), 'newDep,', body[19]], moved: true },\n {\n lines: ['line0()', ...Array.from({ length: 18 }, (_, index) => `fresh${index}()`)],\n moved: false\n },\n { lines: ['b()', 'a()'], moved: false }\n ]","rows":[{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":62,"end_line":62,"start":2631,"end":2675,"source":"{ lines: ['a()', ' ', 'b()'], moved: true }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":"a()"},{"kind":"string","value":" "},{"kind":"string","value":"b()"}]}},{"key":"moved","value":{"kind":"boolean","value":true}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { lines: ['a()', ' ', 'b()'], moved: true }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":63,"end_line":63,"start":2683,"end":2718,"source":"{ lines: ['', ' '], moved: false }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":""},{"kind":"string","value":" "}]}},{"key":"moved","value":{"kind":"boolean","value":false}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { lines: ['', ' '], moved: false }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":64,"end_line":64,"start":2726,"end":2776,"source":"{ lines: ['brandNewCall()', 'a()'], moved: false }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":"brandNewCall()"},{"kind":"string","value":"a()"}]}},{"key":"moved","value":{"kind":"boolean","value":false}}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { lines: ['brandNewCall()', 'a()'], moved: false }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":65,"end_line":65,"start":2784,"end":2838,"source":"{ lines: ['first()', 'brandNewCall()'], moved: false }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":"first()"},{"kind":"string","value":"brandNewCall()"}]}},{"key":"moved","value":{"kind":"boolean","value":false}}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { lines: ['first()', 'brandNewCall()'], moved: false }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":66,"end_line":66,"start":2846,"end":2913,"source":"{ lines: [...body.slice(0, 19), 'newDep,', body[19]], moved: true }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"source-expression","source":"...body.slice(0, 19)"},{"kind":"string","value":"newDep,"},{"kind":"source-expression","source":"body[19]"}]}},{"key":"moved","value":{"kind":"boolean","value":true}}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { lines: [...body.slice(0, 19), 'newDep,', body[19]], moved: true }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":67,"end_line":70,"start":2921,"end":3043,"source":"{\n lines: ['line0()', ...Array.from({ length: 18 }, (_, index) => `fresh${index}()`)],\n moved: false\n }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":"line0()"},{"kind":"source-expression","source":"...Array.from({ length: 18 }, (_, index) => `fresh${index}()`)"}]}},{"key":"moved","value":{"kind":"boolean","value":false}}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { lines: ['line0()', ...Array.from({ length: 18 }, (_, index) => `fresh${index}()`)], moved: false }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":71,"end_line":71,"start":3051,"end":3090,"source":"{ lines: ['b()', 'a()'], moved: false }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":"b()"},{"kind":"string","value":"a()"}]}},{"key":"moved","value":{"kind":"boolean","value":false}}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { lines: ['b()', 'a()'], moved: false }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"29:73:counted-loop:5","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/moved-code-normalization-budget.test.mjs","line":73,"source":"let repeat = 0; repeat < 10; repeat += 1","rows":[],"decision":"keep","reason":"Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation_rows":[]},{"control_id":"29:74:for-of:6","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/moved-code-normalization-budget.test.mjs","line":74,"source":"observations","rows":[{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":62,"end_line":62,"start":2631,"end":2675,"source":"{ lines: ['a()', ' ', 'b()'], moved: true }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":"a()"},{"kind":"string","value":" "},{"kind":"string","value":"b()"}]}},{"key":"moved","value":{"kind":"boolean","value":true}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { lines: ['a()', ' ', 'b()'], moved: true }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":63,"end_line":63,"start":2683,"end":2718,"source":"{ lines: ['', ' '], moved: false }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":""},{"kind":"string","value":" "}]}},{"key":"moved","value":{"kind":"boolean","value":false}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { lines: ['', ' '], moved: false }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":64,"end_line":64,"start":2726,"end":2776,"source":"{ lines: ['brandNewCall()', 'a()'], moved: false }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":"brandNewCall()"},{"kind":"string","value":"a()"}]}},{"key":"moved","value":{"kind":"boolean","value":false}}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { lines: ['brandNewCall()', 'a()'], moved: false }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":65,"end_line":65,"start":2784,"end":2838,"source":"{ lines: ['first()', 'brandNewCall()'], moved: false }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":"first()"},{"kind":"string","value":"brandNewCall()"}]}},{"key":"moved","value":{"kind":"boolean","value":false}}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { lines: ['first()', 'brandNewCall()'], moved: false }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":66,"end_line":66,"start":2846,"end":2913,"source":"{ lines: [...body.slice(0, 19), 'newDep,', body[19]], moved: true }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"source-expression","source":"...body.slice(0, 19)"},{"kind":"string","value":"newDep,"},{"kind":"source-expression","source":"body[19]"}]}},{"key":"moved","value":{"kind":"boolean","value":true}}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { lines: [...body.slice(0, 19), 'newDep,', body[19]], moved: true }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":67,"end_line":70,"start":2921,"end":3043,"source":"{\n lines: ['line0()', ...Array.from({ length: 18 }, (_, index) => `fresh${index}()`)],\n moved: false\n }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":"line0()"},{"kind":"source-expression","source":"...Array.from({ length: 18 }, (_, index) => `fresh${index}()`)"}]}},{"key":"moved","value":{"kind":"boolean","value":false}}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { lines: ['line0()', ...Array.from({ length: 18 }, (_, index) => `fresh${index}()`)], moved: false }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":71,"end_line":71,"start":3051,"end":3090,"source":"{ lines: ['b()', 'a()'], moved: false }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":"b()"},{"kind":"string","value":"a()"}]}},{"key":"moved","value":{"kind":"boolean","value":false}}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { lines: ['b()', 'a()'], moved: false }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":57,"title":"keeps the existing exemption decisions across mixed repeated highlights","start":2319,"end":3327},"implementation_status":"retained"},{"line":81,"title":"does not normalize unvisited blocks and recomputes for the next invocation","decision":"keep","reason":"Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: does not normalize unvisited blocks and recomputes for the next invocation.","explicit_input_controls":[{"control_id":"29:82:fixture-or-oracle-declaration:7","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/moved-code-normalization-budget.test.mjs","line":82,"source":"[' base_line_unused() ']","rows":[{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":82,"end_line":82,"start":3440,"end":3464,"source":"' base_line_unused() '","value":{"kind":"string","value":" base_line_unused() "},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ' base_line_unused() '. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: does not normalize unvisited blocks and recomputes for the next invocation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: does not normalize unvisited blocks and recomputes for the next invocation.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"29:83:fixture-or-oracle-declaration:8","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/moved-code-normalization-budget.test.mjs","line":83,"source":"[['first()'], unused]","rows":[{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":83,"end_line":83,"start":3486,"end":3497,"source":"['first()']","value":{"kind":"array","value":[{"kind":"string","value":"first()"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['first()']. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: does not normalize unvisited blocks and recomputes for the next invocation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":83,"end_line":83,"start":3499,"end":3505,"source":"unused","value":{"kind":"reference","source":"unused","resolved_at":{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":82,"end_line":82,"start":3439,"end":3465},"resolved":{"kind":"array","value":[{"kind":"string","value":" base_line_unused() "}]}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: unused. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: does not normalize unvisited blocks and recomputes for the next invocation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: does not normalize unvisited blocks and recomputes for the next invocation.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":81,"title":"does not normalize unvisited blocks and recomputes for the next invocation","start":3331,"end":4266},"implementation_status":"retained"},{"line":107,"title":"shares the matcher across diagnostics and scans in the actual main entrypoint","decision":"keep","reason":"Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: shares the matcher across diagnostics and scans in the actual main entrypoint.","explicit_input_controls":[],"current_declaration":{"line":107,"title":"shares the matcher across diagnostics and scans in the actual main entrypoint","start":4270,"end":6672},"implementation_status":"retained"}],"lines":168,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing.","planned_changes":[],"production_evidence":["config/scripts/check-changed-code-quality.mjs"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"29:29:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/moved-code-normalization-budget.test.mjs","line":29,"end_line":29,"start":1293,"end":1374,"source":"[Array.from({ length: 5000 }, (_, index) => ` base_line_${index}() `)]","input_position":{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":29,"end_line":29,"start":1302,"end":1374},"binding":"blocks","resolution":[],"enclosing_case":{"line":24,"title":"normalizes fixed base lines once across repeated changed-line diagnostics"},"affected_case_lines":[],"decision":"keep","reason":"Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: normalizes fixed base lines once across repeated changed-line diagnostics.","rows":[{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":29,"end_line":29,"start":1303,"end":1373,"source":"Array.from({ length: 5000 }, (_, index) => ` base_line_${index}() `)","value":{"kind":"call-source","callee":"Array.from","arguments":[{"kind":"object","value":[{"key":"length","value":{"kind":"number","value":5000}}]},{"kind":"source-expression","source":"(_, index) => ` base_line_${index}() `"}],"source":"Array.from({ length: 5000 }, (_, index) => ` base_line_${index}() `)"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: Array.from({ length: 5000 }, (_, index) => ` base_line_${index}() `). Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: normalizes fixed base lines once across repeated changed-line diagnostics.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"d6fc630c192a5ce4537941854f65db48566603bdf441faaff6b0eaf879816bed"}},{"id":"29:32:fixture-or-oracle-declaration:2","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/moved-code-normalization-budget.test.mjs","line":32,"end_line":35,"start":1497,"end":1615,"source":"{\n filename: file,\n labels: [{ span: { line: 1, offset: 0, length: source.length - 1 } }]\n }","input_position":{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":32,"end_line":35,"start":1510,"end":1615},"binding":"diagnostic","resolution":[],"enclosing_case":{"line":24,"title":"normalizes fixed base lines once across repeated changed-line diagnostics"},"affected_case_lines":[],"decision":"keep","reason":"Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: normalizes fixed base lines once across repeated changed-line diagnostics.","rows":[{"index":1,"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":33,"end_line":33,"start":1518,"end":1532,"source":"filename: file","value":{"kind":"property","key":"filename","value":{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":26,"end_line":26,"start":1187,"end":1212},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":25,"end_line":25,"start":1115,"end":1169},"resolved":{"kind":"call-source","callee":"mkdtempSync","arguments":[{"kind":"call-source","callee":"join","arguments":[{"kind":"call-source","callee":"tmpdir","arguments":[],"source":"tmpdir()"},{"kind":"string","value":"orca-moved-code-budget-"}],"source":"join(tmpdir(), 'orca-moved-code-budget-')"}],"source":"mkdtempSync(join(tmpdir(), 'orca-moved-code-budget-'))"}},{"kind":"string","value":"fixture.mjs"}],"source":"join(root, 'fixture.mjs')"}}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: filename: file. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: normalizes fixed base lines once across repeated changed-line diagnostics.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":34,"end_line":34,"start":1540,"end":1609,"source":"labels: [{ span: { line: 1, offset: 0, length: source.length - 1 } }]","value":{"kind":"property","key":"labels","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"span","value":{"kind":"object","value":[{"key":"line","value":{"kind":"number","value":1}},{"key":"offset","value":{"kind":"number","value":0}},{"key":"length","value":{"kind":"source-expression","source":"source.length - 1"}}]}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: labels: [{ span: { line: 1, offset: 0, length: source.length - 1 } }]. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: normalizes fixed base lines once across repeated changed-line diagnostics.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"d6fc630c192a5ce4537941854f65db48566603bdf441faaff6b0eaf879816bed"}},{"id":"29:59:fixture-or-oracle-declaration:3","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/moved-code-normalization-budget.test.mjs","line":59,"end_line":59,"start":2491,"end":2555,"source":"[[' a() ', '', '\\tb()'], body, ['first()', 'last()']]","input_position":{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":59,"end_line":59,"start":2500,"end":2555},"binding":"blocks","resolution":[],"enclosing_case":{"line":57,"title":"keeps the existing exemption decisions across mixed repeated highlights"},"affected_case_lines":[],"decision":"keep","reason":"Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","rows":[{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":59,"end_line":59,"start":2501,"end":2525,"source":"[' a() ', '', '\\tb()']","value":{"kind":"array","value":[{"kind":"string","value":" a() "},{"kind":"string","value":""},{"kind":"string","value":"\tb()"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: [' a() ', '', '\\tb()']. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":59,"end_line":59,"start":2527,"end":2531,"source":"body","value":{"kind":"reference","source":"body","resolved_at":{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":58,"end_line":58,"start":2422,"end":2480},"resolved":{"kind":"call-source","callee":"Array.from","arguments":[{"kind":"object","value":[{"key":"length","value":{"kind":"number","value":20}}]},{"kind":"source-expression","source":"(_, index) => `line${index}()`"}],"source":"Array.from({ length: 20 }, (_, index) => `line${index}()`)"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: body. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":59,"end_line":59,"start":2533,"end":2554,"source":"['first()', 'last()']","value":{"kind":"array","value":[{"kind":"string","value":"first()"},{"kind":"string","value":"last()"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['first()', 'last()']. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"d6fc630c192a5ce4537941854f65db48566603bdf441faaff6b0eaf879816bed"}},{"id":"29:61:fixture-or-oracle-declaration:4","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/moved-code-normalization-budget.test.mjs","line":61,"end_line":72,"start":2608,"end":3096,"source":"[\n { lines: ['a()', ' ', 'b()'], moved: true },\n { lines: ['', ' '], moved: false },\n { lines: ['brandNewCall()', 'a()'], moved: false },\n { lines: ['first()', 'brandNewCall()'], moved: false },\n { lines: [...body.slice(0, 19), 'newDep,', body[19]], moved: true },\n {\n lines: ['line0()', ...Array.from({ length: 18 }, (_, index) => `fresh${index}()`)],\n moved: false\n },\n { lines: ['b()', 'a()'], moved: false }\n ]","input_position":{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":61,"end_line":72,"start":2623,"end":3096},"binding":"observations","resolution":[],"enclosing_case":{"line":57,"title":"keeps the existing exemption decisions across mixed repeated highlights"},"affected_case_lines":[],"decision":"keep","reason":"Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","rows":[{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":62,"end_line":62,"start":2631,"end":2675,"source":"{ lines: ['a()', ' ', 'b()'], moved: true }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":"a()"},{"kind":"string","value":" "},{"kind":"string","value":"b()"}]}},{"key":"moved","value":{"kind":"boolean","value":true}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { lines: ['a()', ' ', 'b()'], moved: true }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":63,"end_line":63,"start":2683,"end":2718,"source":"{ lines: ['', ' '], moved: false }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":""},{"kind":"string","value":" "}]}},{"key":"moved","value":{"kind":"boolean","value":false}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { lines: ['', ' '], moved: false }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":64,"end_line":64,"start":2726,"end":2776,"source":"{ lines: ['brandNewCall()', 'a()'], moved: false }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":"brandNewCall()"},{"kind":"string","value":"a()"}]}},{"key":"moved","value":{"kind":"boolean","value":false}}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { lines: ['brandNewCall()', 'a()'], moved: false }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":65,"end_line":65,"start":2784,"end":2838,"source":"{ lines: ['first()', 'brandNewCall()'], moved: false }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":"first()"},{"kind":"string","value":"brandNewCall()"}]}},{"key":"moved","value":{"kind":"boolean","value":false}}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { lines: ['first()', 'brandNewCall()'], moved: false }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":66,"end_line":66,"start":2846,"end":2913,"source":"{ lines: [...body.slice(0, 19), 'newDep,', body[19]], moved: true }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"source-expression","source":"...body.slice(0, 19)"},{"kind":"string","value":"newDep,"},{"kind":"source-expression","source":"body[19]"}]}},{"key":"moved","value":{"kind":"boolean","value":true}}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { lines: [...body.slice(0, 19), 'newDep,', body[19]], moved: true }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":67,"end_line":70,"start":2921,"end":3043,"source":"{\n lines: ['line0()', ...Array.from({ length: 18 }, (_, index) => `fresh${index}()`)],\n moved: false\n }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":"line0()"},{"kind":"source-expression","source":"...Array.from({ length: 18 }, (_, index) => `fresh${index}()`)"}]}},{"key":"moved","value":{"kind":"boolean","value":false}}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { lines: ['line0()', ...Array.from({ length: 18 }, (_, index) => `fresh${index}()`)], moved: false }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":71,"end_line":71,"start":3051,"end":3090,"source":"{ lines: ['b()', 'a()'], moved: false }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":"b()"},{"kind":"string","value":"a()"}]}},{"key":"moved","value":{"kind":"boolean","value":false}}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { lines: ['b()', 'a()'], moved: false }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"d6fc630c192a5ce4537941854f65db48566603bdf441faaff6b0eaf879816bed"}},{"id":"29:73:counted-loop:5","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/moved-code-normalization-budget.test.mjs","line":73,"end_line":78,"start":3101,"end":3322,"source":"let repeat = 0; repeat < 10; repeat += 1","input_position":{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":73,"end_line":73,"start":3106,"end":3146},"enclosing_case":{"line":57,"title":"keeps the existing exemption decisions across mixed repeated highlights"},"affected_case_lines":[],"decision":"keep","reason":"Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","rows":[],"policy":"Exact original fixed/runtime loop bounds and initializer retained; generated repetitions are workload policy, not additional declarations or runtime validations.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"d6fc630c192a5ce4537941854f65db48566603bdf441faaff6b0eaf879816bed"}},{"id":"29:74:for-of:6","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/moved-code-normalization-budget.test.mjs","line":74,"end_line":77,"start":3156,"end":3316,"source":"observations","input_position":{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":74,"end_line":74,"start":3187,"end":3199},"binding":"const { lines, moved }","resolution":[{"name":"observations","path":"config/scripts/moved-code-normalization-budget.test.mjs","line":61,"end_line":72,"start":2623,"end":3096,"declaration_position":{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":61,"end_line":72,"start":2608,"end":3096},"source":"[\n { lines: ['a()', ' ', 'b()'], moved: true },\n { lines: ['', ' '], moved: false },\n { lines: ['brandNewCall()', 'a()'], moved: false },\n { lines: ['first()', 'brandNewCall()'], moved: false },\n { lines: [...body.slice(0, 19), 'newDep,', body[19]], moved: true },\n {\n lines: ['line0()', ...Array.from({ length: 18 }, (_, index) => `fresh${index}()`)],\n moved: false\n },\n { lines: ['b()', 'a()'], moved: false }\n ]"}],"enclosing_case":{"line":57,"title":"keeps the existing exemption decisions across mixed repeated highlights"},"affected_case_lines":[],"decision":"keep","reason":"Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","rows":[{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":62,"end_line":62,"start":2631,"end":2675,"source":"{ lines: ['a()', ' ', 'b()'], moved: true }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":"a()"},{"kind":"string","value":" "},{"kind":"string","value":"b()"}]}},{"key":"moved","value":{"kind":"boolean","value":true}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { lines: ['a()', ' ', 'b()'], moved: true }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":63,"end_line":63,"start":2683,"end":2718,"source":"{ lines: ['', ' '], moved: false }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":""},{"kind":"string","value":" "}]}},{"key":"moved","value":{"kind":"boolean","value":false}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { lines: ['', ' '], moved: false }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":64,"end_line":64,"start":2726,"end":2776,"source":"{ lines: ['brandNewCall()', 'a()'], moved: false }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":"brandNewCall()"},{"kind":"string","value":"a()"}]}},{"key":"moved","value":{"kind":"boolean","value":false}}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { lines: ['brandNewCall()', 'a()'], moved: false }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":65,"end_line":65,"start":2784,"end":2838,"source":"{ lines: ['first()', 'brandNewCall()'], moved: false }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":"first()"},{"kind":"string","value":"brandNewCall()"}]}},{"key":"moved","value":{"kind":"boolean","value":false}}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { lines: ['first()', 'brandNewCall()'], moved: false }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":66,"end_line":66,"start":2846,"end":2913,"source":"{ lines: [...body.slice(0, 19), 'newDep,', body[19]], moved: true }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"source-expression","source":"...body.slice(0, 19)"},{"kind":"string","value":"newDep,"},{"kind":"source-expression","source":"body[19]"}]}},{"key":"moved","value":{"kind":"boolean","value":true}}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { lines: [...body.slice(0, 19), 'newDep,', body[19]], moved: true }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":67,"end_line":70,"start":2921,"end":3043,"source":"{\n lines: ['line0()', ...Array.from({ length: 18 }, (_, index) => `fresh${index}()`)],\n moved: false\n }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":"line0()"},{"kind":"source-expression","source":"...Array.from({ length: 18 }, (_, index) => `fresh${index}()`)"}]}},{"key":"moved","value":{"kind":"boolean","value":false}}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { lines: ['line0()', ...Array.from({ length: 18 }, (_, index) => `fresh${index}()`)], moved: false }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":71,"end_line":71,"start":3051,"end":3090,"source":"{ lines: ['b()', 'a()'], moved: false }","value":{"kind":"object","value":[{"key":"lines","value":{"kind":"array","value":[{"kind":"string","value":"b()"},{"kind":"string","value":"a()"}]}},{"key":"moved","value":{"kind":"boolean","value":false}}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { lines: ['b()', 'a()'], moved: false }. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: keeps the existing exemption decisions across mixed repeated highlights.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"d6fc630c192a5ce4537941854f65db48566603bdf441faaff6b0eaf879816bed"}},{"id":"29:82:fixture-or-oracle-declaration:7","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/moved-code-normalization-budget.test.mjs","line":82,"end_line":82,"start":3430,"end":3465,"source":"[' base_line_unused() ']","input_position":{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":82,"end_line":82,"start":3439,"end":3465},"binding":"unused","resolution":[],"enclosing_case":{"line":81,"title":"does not normalize unvisited blocks and recomputes for the next invocation"},"affected_case_lines":[],"decision":"keep","reason":"Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: does not normalize unvisited blocks and recomputes for the next invocation.","rows":[{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":82,"end_line":82,"start":3440,"end":3464,"source":"' base_line_unused() '","value":{"kind":"string","value":" base_line_unused() "},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ' base_line_unused() '. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: does not normalize unvisited blocks and recomputes for the next invocation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"d6fc630c192a5ce4537941854f65db48566603bdf441faaff6b0eaf879816bed"}},{"id":"29:83:fixture-or-oracle-declaration:8","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/moved-code-normalization-budget.test.mjs","line":83,"end_line":83,"start":3476,"end":3506,"source":"[['first()'], unused]","input_position":{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":83,"end_line":83,"start":3485,"end":3506},"binding":"blocks","resolution":[],"enclosing_case":{"line":81,"title":"does not normalize unvisited blocks and recomputes for the next invocation"},"affected_case_lines":[],"decision":"keep","reason":"Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: does not normalize unvisited blocks and recomputes for the next invocation.","rows":[{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":83,"end_line":83,"start":3486,"end":3497,"source":"['first()']","value":{"kind":"array","value":[{"kind":"string","value":"first()"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['first()']. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: does not normalize unvisited blocks and recomputes for the next invocation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":83,"end_line":83,"start":3499,"end":3505,"source":"unused","value":{"kind":"reference","source":"unused","resolved_at":{"path":"config/scripts/moved-code-normalization-budget.test.mjs","line":82,"end_line":82,"start":3439,"end":3465},"resolved":{"kind":"array","value":[{"kind":"string","value":" base_line_unused() "}]}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: unused. Actual moved-code matcher and main entrypoint run independently expected moved/new-line decisions; deterministic replace-call telemetry enforces lazy per-invocation normalization instead of wall-clock timing. Scenario: does not normalize unvisited blocks and recomputes for the next invocation.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"d6fc630c192a5ce4537941854f65db48566603bdf441faaff6b0eaf879816bed"}}],"original_review_sha256":"090dd4ee0e6da599e9f79f6c766c4bc58cd3d67b6f430597986fe8df65c8599c","reviewer":"audit_config","reviewed_sha256":"d6fc630c192a5ce4537941854f65db48566603bdf441faaff6b0eaf879816bed","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/moved-code-normalization-budget.test.mjs","final_declarations":4,"current_controls":{"path":"config/scripts/moved-code-normalization-budget.test.mjs","each":[],"for_of":[{"path":"config/scripts/moved-code-normalization-budget.test.mjs","start":3187,"end":3199,"line":74,"end_line":74,"source":"observations","binding":"const { lines, moved }","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/scripts/check-changed-code-quality.mjs"],"runtime_validation":[]}
+{"path":"config/scripts/msbuild-file-tracking.test.mjs","sha256":"bcf96816018d33ee28fd6f5bfcf6fce7619a53badf77e754bec8a33cfb7ad0dc","declarations":3,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":30,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"bcf96816018d33ee28fd6f5bfcf6fce7619a53badf77e754bec8a33cfb7ad0dc","cases":[{"line":5,"title":"turns tracking off on Windows when the caller left it unset","decision":"keep","reason":"The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: turns tracking off on Windows when the caller left it unset.","explicit_input_controls":[{"control_id":"30:6:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/msbuild-file-tracking.test.mjs","line":6,"source":"disableMsbuildFileTrackingOnWindows({ PATH: 'x' }, 'win32')","rows":[{"index":1,"path":"config/scripts/msbuild-file-tracking.test.mjs","line":6,"end_line":6,"start":308,"end":321,"source":"{ PATH: 'x' }","value":{"kind":"object","value":[{"key":"PATH","value":{"kind":"string","value":"x"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { PATH: 'x' }. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: turns tracking off on Windows when the caller left it unset.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/msbuild-file-tracking.test.mjs","line":6,"end_line":6,"start":323,"end":330,"source":"'win32'","value":{"kind":"string","value":"win32"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'win32'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: turns tracking off on Windows when the caller left it unset.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: turns tracking off on Windows when the caller left it unset.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":5,"title":"turns tracking off on Windows when the caller left it unset","start":187,"end":402},"implementation_status":"retained"},{"line":12,"title":"preserves explicit %s values without adding a duplicate key","decision":"keep","reason":"The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","explicit_input_controls":[{"control_id":"30:12:parameter-table:2","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/msbuild-file-tracking.test.mjs","line":12,"source":"['TrackFileAccess', 'trackfileaccess', 'TRACKFILEACCESS', 'tRaCkFiLeAcCeSs']","rows":[{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":12,"end_line":12,"start":415,"end":432,"source":"'TrackFileAccess'","value":{"kind":"string","value":"TrackFileAccess"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'TrackFileAccess'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":12,"end_line":12,"start":434,"end":451,"source":"'trackfileaccess'","value":{"kind":"string","value":"trackfileaccess"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'trackfileaccess'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":12,"end_line":12,"start":453,"end":470,"source":"'TRACKFILEACCESS'","value":{"kind":"string","value":"TRACKFILEACCESS"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'TRACKFILEACCESS'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":12,"end_line":12,"start":472,"end":489,"source":"'tRaCkFiLeAcCeSs'","value":{"kind":"string","value":"tRaCkFiLeAcCeSs"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'tRaCkFiLeAcCeSs'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"30:15:for-of:3","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/msbuild-file-tracking.test.mjs","line":15,"source":"['true', 'false', '']","rows":[{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":15,"end_line":15,"start":602,"end":608,"source":"'true'","value":{"kind":"string","value":"true"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'true'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":15,"end_line":15,"start":610,"end":617,"source":"'false'","value":{"kind":"string","value":"false"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'false'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":15,"end_line":15,"start":619,"end":621,"source":"''","value":{"kind":"string","value":""},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ''. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"30:16:fixture-or-oracle-declaration:4","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/msbuild-file-tracking.test.mjs","line":16,"source":"{ [key]: value }","rows":[{"index":1,"path":"config/scripts/msbuild-file-tracking.test.mjs","line":16,"end_line":16,"start":648,"end":660,"source":"[key]: value","value":{"kind":"property","key":{"source":"[key]"},"value":{"kind":"source-expression","source":"value"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: [key]: value. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"30:17:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/msbuild-file-tracking.test.mjs","line":17,"source":"disableMsbuildFileTrackingOnWindows(env, 'win32')","rows":[{"index":1,"path":"config/scripts/msbuild-file-tracking.test.mjs","line":17,"end_line":17,"start":714,"end":717,"source":"env","value":{"kind":"reference","source":"env","resolved_at":{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":16,"end_line":16,"start":646,"end":662},"resolved":{"kind":"object","value":[{"key":"[key]","value":{"kind":"source-expression","source":"value"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: env. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/msbuild-file-tracking.test.mjs","line":17,"end_line":17,"start":719,"end":726,"source":"'win32'","value":{"kind":"string","value":"win32"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'win32'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":12,"title":"preserves explicit %s values without adding a duplicate key","start":406,"end":802},"implementation_status":"retained"},{"line":23,"title":"leaves %s hosts alone","decision":"keep","reason":"The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: leaves %s hosts alone.","explicit_input_controls":[{"control_id":"30:23:parameter-table:6","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/msbuild-file-tracking.test.mjs","line":23,"source":"['linux', 'darwin']","rows":[{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":23,"end_line":23,"start":815,"end":822,"source":"'linux'","value":{"kind":"string","value":"linux"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'linux'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: leaves %s hosts alone.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":23,"end_line":23,"start":824,"end":832,"source":"'darwin'","value":{"kind":"string","value":"darwin"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'darwin'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: leaves %s hosts alone.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: leaves %s hosts alone.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"30:24:fixture-or-oracle-declaration:7","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/msbuild-file-tracking.test.mjs","line":24,"source":"{ PATH: 'x' }","rows":[{"index":1,"path":"config/scripts/msbuild-file-tracking.test.mjs","line":24,"end_line":24,"start":894,"end":903,"source":"PATH: 'x'","value":{"kind":"property","key":"PATH","value":{"kind":"string","value":"x"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: PATH: 'x'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: leaves %s hosts alone.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: leaves %s hosts alone.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"30:25:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/msbuild-file-tracking.test.mjs","line":25,"source":"disableMsbuildFileTrackingOnWindows(env, platform)","rows":[{"index":1,"path":"config/scripts/msbuild-file-tracking.test.mjs","line":25,"end_line":25,"start":953,"end":956,"source":"env","value":{"kind":"reference","source":"env","resolved_at":{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":24,"end_line":24,"start":892,"end":905},"resolved":{"kind":"object","value":[{"key":"PATH","value":{"kind":"string","value":"x"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: env. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: leaves %s hosts alone.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/msbuild-file-tracking.test.mjs","line":25,"end_line":25,"start":958,"end":966,"source":"platform","value":{"kind":"source-expression","source":"platform"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: platform. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: leaves %s hosts alone.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: leaves %s hosts alone.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":23,"title":"leaves %s hosts alone","start":806,"end":1022},"implementation_status":"retained"}],"lines":29,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior.","planned_changes":[],"production_evidence":["config/scripts/msbuild-file-tracking.mjs"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"30:6:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/msbuild-file-tracking.test.mjs","line":6,"end_line":6,"start":272,"end":331,"source":"disableMsbuildFileTrackingOnWindows({ PATH: 'x' }, 'win32')","input_position":{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":6,"end_line":6,"start":272,"end":331},"binding":"disableMsbuildFileTrackingOnWindows","resolution":[],"enclosing_case":{"line":5,"title":"turns tracking off on Windows when the caller left it unset"},"affected_case_lines":[],"decision":"keep","reason":"The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: turns tracking off on Windows when the caller left it unset.","rows":[{"index":1,"path":"config/scripts/msbuild-file-tracking.test.mjs","line":6,"end_line":6,"start":308,"end":321,"source":"{ PATH: 'x' }","value":{"kind":"object","value":[{"key":"PATH","value":{"kind":"string","value":"x"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { PATH: 'x' }. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: turns tracking off on Windows when the caller left it unset.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/msbuild-file-tracking.test.mjs","line":6,"end_line":6,"start":323,"end":330,"source":"'win32'","value":{"kind":"string","value":"win32"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'win32'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: turns tracking off on Windows when the caller left it unset.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"bcf96816018d33ee28fd6f5bfcf6fce7619a53badf77e754bec8a33cfb7ad0dc"}},{"id":"30:12:parameter-table:2","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/msbuild-file-tracking.test.mjs","line":12,"end_line":21,"start":406,"end":802,"source":"['TrackFileAccess', 'trackfileaccess', 'TRACKFILEACCESS', 'tRaCkFiLeAcCeSs']","input_position":{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":12,"end_line":12,"start":414,"end":490},"binding":"it.each","resolution":[],"enclosing_case":{"line":12,"title":"preserves explicit %s values without adding a duplicate key"},"affected_case_lines":[12],"decision":"keep","reason":"The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","rows":[{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":12,"end_line":12,"start":415,"end":432,"source":"'TrackFileAccess'","value":{"kind":"string","value":"TrackFileAccess"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'TrackFileAccess'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":12,"end_line":12,"start":434,"end":451,"source":"'trackfileaccess'","value":{"kind":"string","value":"trackfileaccess"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'trackfileaccess'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":12,"end_line":12,"start":453,"end":470,"source":"'TRACKFILEACCESS'","value":{"kind":"string","value":"TRACKFILEACCESS"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'TRACKFILEACCESS'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":12,"end_line":12,"start":472,"end":489,"source":"'tRaCkFiLeAcCeSs'","value":{"kind":"string","value":"tRaCkFiLeAcCeSs"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'tRaCkFiLeAcCeSs'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"bcf96816018d33ee28fd6f5bfcf6fce7619a53badf77e754bec8a33cfb7ad0dc"}},{"id":"30:15:for-of:3","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/msbuild-file-tracking.test.mjs","line":15,"end_line":19,"start":581,"end":792,"source":"['true', 'false', '']","input_position":{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":15,"end_line":15,"start":601,"end":622},"binding":"const value","resolution":[],"enclosing_case":{"line":12,"title":"preserves explicit %s values without adding a duplicate key"},"affected_case_lines":[],"decision":"keep","reason":"The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","rows":[{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":15,"end_line":15,"start":602,"end":608,"source":"'true'","value":{"kind":"string","value":"true"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'true'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":15,"end_line":15,"start":610,"end":617,"source":"'false'","value":{"kind":"string","value":"false"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'false'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":15,"end_line":15,"start":619,"end":621,"source":"''","value":{"kind":"string","value":""},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ''. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"bcf96816018d33ee28fd6f5bfcf6fce7619a53badf77e754bec8a33cfb7ad0dc"}},{"id":"30:16:fixture-or-oracle-declaration:4","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/msbuild-file-tracking.test.mjs","line":16,"end_line":16,"start":640,"end":662,"source":"{ [key]: value }","input_position":{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":16,"end_line":16,"start":646,"end":662},"binding":"env","resolution":[],"enclosing_case":{"line":12,"title":"preserves explicit %s values without adding a duplicate key"},"affected_case_lines":[],"decision":"keep","reason":"The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","rows":[{"index":1,"path":"config/scripts/msbuild-file-tracking.test.mjs","line":16,"end_line":16,"start":648,"end":660,"source":"[key]: value","value":{"kind":"property","key":{"source":"[key]"},"value":{"kind":"source-expression","source":"value"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: [key]: value. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"bcf96816018d33ee28fd6f5bfcf6fce7619a53badf77e754bec8a33cfb7ad0dc"}},{"id":"30:17:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/msbuild-file-tracking.test.mjs","line":17,"end_line":17,"start":678,"end":727,"source":"disableMsbuildFileTrackingOnWindows(env, 'win32')","input_position":{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":17,"end_line":17,"start":678,"end":727},"binding":"disableMsbuildFileTrackingOnWindows","resolution":[],"enclosing_case":{"line":12,"title":"preserves explicit %s values without adding a duplicate key"},"affected_case_lines":[],"decision":"keep","reason":"The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","rows":[{"index":1,"path":"config/scripts/msbuild-file-tracking.test.mjs","line":17,"end_line":17,"start":714,"end":717,"source":"env","value":{"kind":"reference","source":"env","resolved_at":{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":16,"end_line":16,"start":646,"end":662},"resolved":{"kind":"object","value":[{"key":"[key]","value":{"kind":"source-expression","source":"value"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: env. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/msbuild-file-tracking.test.mjs","line":17,"end_line":17,"start":719,"end":726,"source":"'win32'","value":{"kind":"string","value":"win32"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'win32'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: preserves explicit %s values without adding a duplicate key.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"bcf96816018d33ee28fd6f5bfcf6fce7619a53badf77e754bec8a33cfb7ad0dc"}},{"id":"30:23:parameter-table:6","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/msbuild-file-tracking.test.mjs","line":23,"end_line":27,"start":806,"end":1022,"source":"['linux', 'darwin']","input_position":{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":23,"end_line":23,"start":814,"end":833},"binding":"it.each","resolution":[],"enclosing_case":{"line":23,"title":"leaves %s hosts alone"},"affected_case_lines":[23],"decision":"keep","reason":"The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: leaves %s hosts alone.","rows":[{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":23,"end_line":23,"start":815,"end":822,"source":"'linux'","value":{"kind":"string","value":"linux"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'linux'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: leaves %s hosts alone.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":23,"end_line":23,"start":824,"end":832,"source":"'darwin'","value":{"kind":"string","value":"darwin"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'darwin'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: leaves %s hosts alone.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"bcf96816018d33ee28fd6f5bfcf6fce7619a53badf77e754bec8a33cfb7ad0dc"}},{"id":"30:24:fixture-or-oracle-declaration:7","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/msbuild-file-tracking.test.mjs","line":24,"end_line":24,"start":886,"end":905,"source":"{ PATH: 'x' }","input_position":{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":24,"end_line":24,"start":892,"end":905},"binding":"env","resolution":[],"enclosing_case":{"line":23,"title":"leaves %s hosts alone"},"affected_case_lines":[],"decision":"keep","reason":"The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: leaves %s hosts alone.","rows":[{"index":1,"path":"config/scripts/msbuild-file-tracking.test.mjs","line":24,"end_line":24,"start":894,"end":903,"source":"PATH: 'x'","value":{"kind":"property","key":"PATH","value":{"kind":"string","value":"x"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: PATH: 'x'. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: leaves %s hosts alone.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"bcf96816018d33ee28fd6f5bfcf6fce7619a53badf77e754bec8a33cfb7ad0dc"}},{"id":"30:25:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/msbuild-file-tracking.test.mjs","line":25,"end_line":25,"start":917,"end":967,"source":"disableMsbuildFileTrackingOnWindows(env, platform)","input_position":{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":25,"end_line":25,"start":917,"end":967},"binding":"disableMsbuildFileTrackingOnWindows","resolution":[],"enclosing_case":{"line":23,"title":"leaves %s hosts alone"},"affected_case_lines":[],"decision":"keep","reason":"The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: leaves %s hosts alone.","rows":[{"index":1,"path":"config/scripts/msbuild-file-tracking.test.mjs","line":25,"end_line":25,"start":953,"end":956,"source":"env","value":{"kind":"reference","source":"env","resolved_at":{"path":"config/scripts/msbuild-file-tracking.test.mjs","line":24,"end_line":24,"start":892,"end":905},"resolved":{"kind":"object","value":[{"key":"PATH","value":{"kind":"string","value":"x"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: env. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: leaves %s hosts alone.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/msbuild-file-tracking.test.mjs","line":25,"end_line":25,"start":958,"end":966,"source":"platform","value":{"kind":"source-expression","source":"platform"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: platform. The actual environment mutator handles the explicit platform/key/value input; exact output and object identity protect Windows case-insensitive caller overrides and non-Windows no-op behavior. Scenario: leaves %s hosts alone.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"bcf96816018d33ee28fd6f5bfcf6fce7619a53badf77e754bec8a33cfb7ad0dc"}}],"original_review_sha256":"ae138396996177f1d9b34a4fcc6e5f31176335dca5b039e61aac20b015b05053","reviewer":"audit_config","reviewed_sha256":"bcf96816018d33ee28fd6f5bfcf6fce7619a53badf77e754bec8a33cfb7ad0dc","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/msbuild-file-tracking.test.mjs","final_declarations":3,"current_controls":{"path":"config/scripts/msbuild-file-tracking.test.mjs","each":[{"input":{"path":"config/scripts/msbuild-file-tracking.test.mjs","start":414,"end":490,"line":12,"end_line":12,"source":"['TrackFileAccess', 'trackfileaccess', 'TRACKFILEACCESS', 'tRaCkFiLeAcCeSs']"},"rows":[{"path":"config/scripts/msbuild-file-tracking.test.mjs","start":415,"end":432,"line":12,"end_line":12,"source":"'TrackFileAccess'"},{"path":"config/scripts/msbuild-file-tracking.test.mjs","start":434,"end":451,"line":12,"end_line":12,"source":"'trackfileaccess'"},{"path":"config/scripts/msbuild-file-tracking.test.mjs","start":453,"end":470,"line":12,"end_line":12,"source":"'TRACKFILEACCESS'"},{"path":"config/scripts/msbuild-file-tracking.test.mjs","start":472,"end":489,"line":12,"end_line":12,"source":"'tRaCkFiLeAcCeSs'"}]},{"input":{"path":"config/scripts/msbuild-file-tracking.test.mjs","start":814,"end":833,"line":23,"end_line":23,"source":"['linux', 'darwin']"},"rows":[{"path":"config/scripts/msbuild-file-tracking.test.mjs","start":815,"end":822,"line":23,"end_line":23,"source":"'linux'"},{"path":"config/scripts/msbuild-file-tracking.test.mjs","start":824,"end":832,"line":23,"end_line":23,"source":"'darwin'"}]}],"for_of":[{"path":"config/scripts/msbuild-file-tracking.test.mjs","start":601,"end":622,"line":15,"end_line":15,"source":"['true', 'false', '']","binding":"const value","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/scripts/msbuild-file-tracking.mjs"],"runtime_validation":[]}
+{"path":"config/scripts/native-build-entry.test.mjs","sha256":"64869360c2335f705bd5f1d5e08bf2f79599a95546a168c83569c22cbbef852c","declarations":12,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":31,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"64869360c2335f705bd5f1d5e08bf2f79599a95546a168c83569c22cbbef852c","cases":[{"line":42,"title":"keys an N-API addon by platform and arch only, so Node and Electron share it","decision":"keep","reason":"Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: keys an N-API addon by platform and arch only, so Node and Electron share it.","explicit_input_controls":[],"current_declaration":{"line":42,"title":"keys an N-API addon by platform and arch only, so Node and Electron share it","start":1268,"end":1842},"implementation_status":"retained"},{"line":60,"title":"separates arches and refuses a package with no descriptor","decision":"keep","reason":"Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: separates arches and refuses a package with no descriptor.","explicit_input_controls":[],"current_declaration":{"line":60,"title":"separates arches and refuses a package with no descriptor","start":1846,"end":2187},"implementation_status":"retained"},{"line":68,"title":"matches the dir the patched node-pty loader tries first","decision":"keep","reason":"Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: matches the dir the patched node-pty loader tries first.","explicit_input_controls":[{"control_id":"31:72:for-of:2","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-build-entry.test.mjs","line":72,"source":"[\n ['darwin', 'arm64'],\n ['linux', 'x64'],\n ['win32', 'arm64']\n ]","rows":[{"path":"config/scripts/native-build-entry.test.mjs","line":73,"end_line":73,"start":2584,"end":2603,"source":"['darwin', 'arm64']","value":{"kind":"array","value":[{"kind":"string","value":"darwin"},{"kind":"string","value":"arm64"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['darwin', 'arm64']. Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: matches the dir the patched node-pty loader tries first.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-build-entry.test.mjs","line":74,"end_line":74,"start":2611,"end":2627,"source":"['linux', 'x64']","value":{"kind":"array","value":[{"kind":"string","value":"linux"},{"kind":"string","value":"x64"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['linux', 'x64']. Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: matches the dir the patched node-pty loader tries first.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-build-entry.test.mjs","line":75,"end_line":75,"start":2635,"end":2653,"source":"['win32', 'arm64']","value":{"kind":"array","value":[{"kind":"string","value":"win32"},{"kind":"string","value":"arm64"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['win32', 'arm64']. Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: matches the dir the patched node-pty loader tries first.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: matches the dir the patched node-pty loader tries first.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":68,"title":"matches the dir the patched node-pty loader tries first","start":2283,"end":2802},"implementation_status":"retained"},{"line":83,"title":"matches the dir the patched windows-process-tree loader prefers","decision":"keep","reason":"Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: matches the dir the patched windows-process-tree loader prefers.","explicit_input_controls":[{"control_id":"31:86:for-of:3","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-build-entry.test.mjs","line":86,"source":"['x64', 'arm64']","rows":[{"path":"config/scripts/native-build-entry.test.mjs","line":86,"end_line":86,"start":3054,"end":3059,"source":"'x64'","value":{"kind":"string","value":"x64"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'x64'. Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: matches the dir the patched windows-process-tree loader prefers.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-build-entry.test.mjs","line":86,"end_line":86,"start":3061,"end":3068,"source":"'arm64'","value":{"kind":"string","value":"arm64"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'arm64'. Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: matches the dir the patched windows-process-tree loader prefers.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: matches the dir the patched windows-process-tree loader prefers.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":83,"title":"matches the dir the patched windows-process-tree loader prefers","start":2806,"end":3369},"implementation_status":"retained"},{"line":96,"title":"treats a package linked in from outside the project as shared","decision":"keep","reason":"Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: treats a package linked in from outside the project as shared.","explicit_input_controls":[],"current_declaration":{"line":96,"title":"treats a package linked in from outside the project as shared","start":3415,"end":3920},"implementation_status":"retained"},{"line":106,"title":"treats the per-project virtual store as private","decision":"keep","reason":"Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: treats the per-project virtual store as private.","explicit_input_controls":[],"current_declaration":{"line":106,"title":"treats the per-project virtual store as private","start":3924,"end":4378},"implementation_status":"retained"},{"line":121,"title":"treats a missing package as private","decision":"keep","reason":"Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: treats a missing package as private.","explicit_input_controls":[],"current_declaration":{"line":121,"title":"treats a missing package as private","start":4382,"end":4538},"implementation_status":"retained"},{"line":128,"title":"prefers a published entry and otherwise reads build/Release","decision":"keep","reason":"Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: prefers a published entry and otherwise reads build/Release.","explicit_input_controls":[{"control_id":"31:130:fixture-or-oracle-declaration:4","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-build-entry.test.mjs","line":130,"source":"{ platform: 'linux', arch: 'x64' }","rows":[{"index":1,"path":"config/scripts/native-build-entry.test.mjs","line":130,"end_line":130,"start":4709,"end":4726,"source":"platform: 'linux'","value":{"kind":"property","key":"platform","value":{"kind":"string","value":"linux"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: platform: 'linux'. Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: prefers a published entry and otherwise reads build/Release.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-build-entry.test.mjs","line":130,"end_line":130,"start":4728,"end":4739,"source":"arch: 'x64'","value":{"kind":"property","key":"arch","value":{"kind":"string","value":"x64"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: arch: 'x64'. Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: prefers a published entry and otherwise reads build/Release.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: prefers a published entry and otherwise reads build/Release.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":128,"title":"prefers a published entry and otherwise reads build/Release","start":4586,"end":5056},"implementation_status":"retained"},{"line":140,"title":"accepts build/Release and a published entry, never a prebuild","decision":"keep","reason":"Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: accepts build/Release and a published entry, never a prebuild.","explicit_input_controls":[],"current_declaration":{"line":140,"title":"accepts build/Release and a published entry, never a prebuild","start":5100,"end":5440},"implementation_status":"retained"},{"line":149,"title":"follows node-pty: ConPTY from Windows build 18309","decision":"keep","reason":"Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: follows node-pty: ConPTY from Windows build 18309.","explicit_input_controls":[],"current_declaration":{"line":149,"title":"follows node-pty: ConPTY from Windows build 18309","start":5491,"end":5772},"implementation_status":"retained"},{"line":166,"title":"ships the target entry as build/Release and drops every other entry","decision":"keep","reason":"Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: ships the target entry as build/Release and drops every other entry.","explicit_input_controls":[],"current_declaration":{"line":166,"title":"ships the target entry as build/Release and drops every other entry","start":6164,"end":6868},"implementation_status":"retained"},{"line":182,"title":"leaves a CI layout with no entries untouched","decision":"keep","reason":"Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: leaves a CI layout with no entries untouched.","explicit_input_controls":[],"current_declaration":{"line":182,"title":"leaves a CI layout with no entries untouched","start":6872,"end":7183},"implementation_status":"retained"}],"lines":189,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers.","planned_changes":[],"production_evidence":["config/packaged-native-build-entries.cjs","config/scripts/native-build-entry.cjs"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"31:19:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-build-entry.test.mjs","line":19,"end_line":19,"start":663,"end":673,"source":"[]","input_position":{"path":"config/scripts/native-build-entry.test.mjs","line":19,"end_line":19,"start":671,"end":673},"binding":"roots","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"64869360c2335f705bd5f1d5e08bf2f79599a95546a168c83569c22cbbef852c"}},{"id":"31:72:for-of:2","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-build-entry.test.mjs","line":72,"end_line":80,"start":2545,"end":2797,"source":"[\n ['darwin', 'arm64'],\n ['linux', 'x64'],\n ['win32', 'arm64']\n ]","input_position":{"path":"config/scripts/native-build-entry.test.mjs","line":72,"end_line":76,"start":2576,"end":2659},"binding":"const [platform, arch]","resolution":[],"enclosing_case":{"line":68,"title":"matches the dir the patched node-pty loader tries first"},"affected_case_lines":[],"decision":"keep","reason":"Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: matches the dir the patched node-pty loader tries first.","rows":[{"path":"config/scripts/native-build-entry.test.mjs","line":73,"end_line":73,"start":2584,"end":2603,"source":"['darwin', 'arm64']","value":{"kind":"array","value":[{"kind":"string","value":"darwin"},{"kind":"string","value":"arm64"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['darwin', 'arm64']. Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: matches the dir the patched node-pty loader tries first.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-build-entry.test.mjs","line":74,"end_line":74,"start":2611,"end":2627,"source":"['linux', 'x64']","value":{"kind":"array","value":[{"kind":"string","value":"linux"},{"kind":"string","value":"x64"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['linux', 'x64']. Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: matches the dir the patched node-pty loader tries first.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-build-entry.test.mjs","line":75,"end_line":75,"start":2635,"end":2653,"source":"['win32', 'arm64']","value":{"kind":"array","value":[{"kind":"string","value":"win32"},{"kind":"string","value":"arm64"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['win32', 'arm64']. Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: matches the dir the patched node-pty loader tries first.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"64869360c2335f705bd5f1d5e08bf2f79599a95546a168c83569c22cbbef852c"}},{"id":"31:86:for-of:3","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-build-entry.test.mjs","line":86,"end_line":91,"start":3034,"end":3364,"source":"['x64', 'arm64']","input_position":{"path":"config/scripts/native-build-entry.test.mjs","line":86,"end_line":86,"start":3053,"end":3069},"binding":"const arch","resolution":[],"enclosing_case":{"line":83,"title":"matches the dir the patched windows-process-tree loader prefers"},"affected_case_lines":[],"decision":"keep","reason":"Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: matches the dir the patched windows-process-tree loader prefers.","rows":[{"path":"config/scripts/native-build-entry.test.mjs","line":86,"end_line":86,"start":3054,"end":3059,"source":"'x64'","value":{"kind":"string","value":"x64"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'x64'. Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: matches the dir the patched windows-process-tree loader prefers.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-build-entry.test.mjs","line":86,"end_line":86,"start":3061,"end":3068,"source":"'arm64'","value":{"kind":"string","value":"arm64"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'arm64'. Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: matches the dir the patched windows-process-tree loader prefers.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"64869360c2335f705bd5f1d5e08bf2f79599a95546a168c83569c22cbbef852c"}},{"id":"31:130:fixture-or-oracle-declaration:4","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-build-entry.test.mjs","line":130,"end_line":130,"start":4698,"end":4741,"source":"{ platform: 'linux', arch: 'x64' }","input_position":{"path":"config/scripts/native-build-entry.test.mjs","line":130,"end_line":130,"start":4707,"end":4741},"binding":"target","resolution":[],"enclosing_case":{"line":128,"title":"prefers a published entry and otherwise reads build/Release"},"affected_case_lines":[],"decision":"keep","reason":"Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: prefers a published entry and otherwise reads build/Release.","rows":[{"index":1,"path":"config/scripts/native-build-entry.test.mjs","line":130,"end_line":130,"start":4709,"end":4726,"source":"platform: 'linux'","value":{"kind":"property","key":"platform","value":{"kind":"string","value":"linux"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: platform: 'linux'. Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: prefers a published entry and otherwise reads build/Release.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-build-entry.test.mjs","line":130,"end_line":130,"start":4728,"end":4739,"source":"arch: 'x64'","value":{"kind":"property","key":"arch","value":{"kind":"string","value":"x64"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: arch: 'x64'. Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers. Scenario: prefers a published entry and otherwise reads build/Release.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"64869360c2335f705bd5f1d5e08bf2f79599a95546a168c83569c22cbbef852c"}},{"id":"31:159:for-of:5","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-build-entry.test.mjs","line":159,"end_line":162,"start":5948,"end":6136,"source":"Object.entries(dirs)","input_position":{"path":"config/scripts/native-build-entry.test.mjs","line":159,"end_line":159,"start":5977,"end":5997},"binding":"const [dir, payload]","resolution":[],"transform":"Object.entries(dirs)","dynamic_source":"Object","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual native-entry selection and packaged filesystem adoption are exercised using independent platform/architecture/ABI or directory fixtures; patch expressions compare two independently shipped name producers.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"64869360c2335f705bd5f1d5e08bf2f79599a95546a168c83569c22cbbef852c"}}],"original_review_sha256":"30294d6cf102cc1a6f3b209ef0d0b17d89adcdcd656799448dc93e5b1b500bd8","reviewer":"audit_config","reviewed_sha256":"64869360c2335f705bd5f1d5e08bf2f79599a95546a168c83569c22cbbef852c","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/native-build-entry.test.mjs","final_declarations":12,"current_controls":{"path":"config/scripts/native-build-entry.test.mjs","each":[],"for_of":[{"path":"config/scripts/native-build-entry.test.mjs","start":2576,"end":2659,"line":72,"end_line":76,"source":"[\n ['darwin', 'arm64'],\n ['linux', 'x64'],\n ['win32', 'arm64']\n ]","binding":"const [platform, arch]","changed":false},{"path":"config/scripts/native-build-entry.test.mjs","start":3053,"end":3069,"line":86,"end_line":86,"source":"['x64', 'arm64']","binding":"const arch","changed":false},{"path":"config/scripts/native-build-entry.test.mjs","start":5977,"end":5997,"line":159,"end_line":159,"source":"Object.entries(dirs)","binding":"const [dir, payload]","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/packaged-native-build-entries.cjs","config/scripts/native-build-entry.cjs"],"runtime_validation":[]}
+{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","sha256":"adf1ae7a4fffecf80b3190c6e1b92b3a7facb8a3d4c758b0a7a2d1311a588825","declarations":3,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":32,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"adf1ae7a4fffecf80b3190c6e1b92b3a7facb8a3d4c758b0a7a2d1311a588825","cases":[{"line":102,"title":"keeps the captured skip visible when the actual 200-item history tail omits only its opener","decision":"keep","reason":"Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: keeps the captured skip visible when the actual 200-item history tail omits only its opener.","explicit_input_controls":[{"control_id":"32:104:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":104,"source":"readAgentSessionHistory(\n { snapshot: () => snapshot },\n { sessionId: 'session-1', direction: 'tail', limit: 200 },\n snapshot\n )","rows":[{"index":1,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":105,"end_line":105,"start":3654,"end":3682,"source":"{ snapshot: () => snapshot }","value":{"kind":"object","value":[{"key":"snapshot","value":{"kind":"source-expression","source":"() => snapshot"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { snapshot: () => snapshot }. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: keeps the captured skip visible when the actual 200-item history tail omits only its opener.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":106,"end_line":106,"start":3688,"end":3745,"source":"{ sessionId: 'session-1', direction: 'tail', limit: 200 }","value":{"kind":"object","value":[{"key":"sessionId","value":{"kind":"string","value":"session-1"}},{"key":"direction","value":{"kind":"string","value":"tail"}},{"key":"limit","value":{"kind":"number","value":200}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { sessionId: 'session-1', direction: 'tail', limit: 200 }. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: keeps the captured skip visible when the actual 200-item history tail omits only its opener.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":107,"end_line":107,"start":3751,"end":3759,"source":"snapshot","value":{"kind":"reference","source":"snapshot","resolved_at":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":103,"end_line":103,"start":3575,"end":3607},"resolved":{"kind":"source-expression","source":"await snapshotWithLaterHistory()"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: snapshot. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: keeps the captured skip visible when the actual 200-item history tail omits only its opener.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: keeps the captured skip visible when the actual 200-item history tail omits only its opener.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":102,"title":"keeps the captured skip visible when the actual 200-item history tail omits only its opener","start":3444,"end":4347},"implementation_status":"retained"},{"line":125,"title":"restores the captured skip after the real older-page read loads its opener","decision":"keep","reason":"Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: restores the captured skip after the real older-page read loads its opener.","explicit_input_controls":[{"control_id":"32:127:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":127,"source":"readAgentSessionHistory(\n { snapshot: () => snapshot },\n { sessionId: 'session-1', direction: 'tail', limit: 200 },\n snapshot\n )","rows":[{"index":1,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":128,"end_line":128,"start":4540,"end":4568,"source":"{ snapshot: () => snapshot }","value":{"kind":"object","value":[{"key":"snapshot","value":{"kind":"source-expression","source":"() => snapshot"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { snapshot: () => snapshot }. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: restores the captured skip after the real older-page read loads its opener.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":129,"end_line":129,"start":4574,"end":4631,"source":"{ sessionId: 'session-1', direction: 'tail', limit: 200 }","value":{"kind":"object","value":[{"key":"sessionId","value":{"kind":"string","value":"session-1"}},{"key":"direction","value":{"kind":"string","value":"tail"}},{"key":"limit","value":{"kind":"number","value":200}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { sessionId: 'session-1', direction: 'tail', limit: 200 }. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: restores the captured skip after the real older-page read loads its opener.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":130,"end_line":130,"start":4637,"end":4645,"source":"snapshot","value":{"kind":"reference","source":"snapshot","resolved_at":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":126,"end_line":126,"start":4463,"end":4495},"resolved":{"kind":"source-expression","source":"await snapshotWithLaterHistory()"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: snapshot. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: restores the captured skip after the real older-page read loads its opener.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: restores the captured skip after the real older-page read loads its opener.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"32:132:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":132,"source":"readAgentSessionHistory(\n { snapshot: () => snapshot },\n { sessionId: 'session-1', direction: 'before', cursor: tail.window.nextCursor, limit: 200 },\n snapshot\n )","rows":[{"index":1,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":133,"end_line":133,"start":4700,"end":4728,"source":"{ snapshot: () => snapshot }","value":{"kind":"object","value":[{"key":"snapshot","value":{"kind":"source-expression","source":"() => snapshot"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { snapshot: () => snapshot }. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: restores the captured skip after the real older-page read loads its opener.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":134,"end_line":134,"start":4734,"end":4825,"source":"{ sessionId: 'session-1', direction: 'before', cursor: tail.window.nextCursor, limit: 200 }","value":{"kind":"object","value":[{"key":"sessionId","value":{"kind":"string","value":"session-1"}},{"key":"direction","value":{"kind":"string","value":"before"}},{"key":"cursor","value":{"kind":"source-expression","source":"tail.window.nextCursor"}},{"key":"limit","value":{"kind":"number","value":200}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { sessionId: 'session-1', direction: 'before', cursor: tail.window.nextCursor, limit: 200 }. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: restores the captured skip after the real older-page read loads its opener.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":135,"end_line":135,"start":4831,"end":4839,"source":"snapshot","value":{"kind":"reference","source":"snapshot","resolved_at":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":126,"end_line":126,"start":4463,"end":4495},"resolved":{"kind":"source-expression","source":"await snapshotWithLaterHistory()"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: snapshot. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: restores the captured skip after the real older-page read loads its opener.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: restores the captured skip after the real older-page read loads its opener.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":125,"title":"restores the captured skip after the real older-page read loads its opener","start":4349,"end":5338},"implementation_status":"retained"},{"line":153,"title":"continues folding an ordinary warning at the same real history boundary","decision":"keep","reason":"Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: continues folding an ordinary warning at the same real history boundary.","explicit_input_controls":[{"control_id":"32:158:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":158,"source":"readAgentSessionHistory(\n { snapshot: () => snapshot },\n { sessionId: 'session-1', direction: 'tail', limit: 200 },\n snapshot\n )","rows":[{"index":1,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":159,"end_line":159,"start":5668,"end":5696,"source":"{ snapshot: () => snapshot }","value":{"kind":"object","value":[{"key":"snapshot","value":{"kind":"source-expression","source":"() => snapshot"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { snapshot: () => snapshot }. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: continues folding an ordinary warning at the same real history boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":160,"end_line":160,"start":5702,"end":5759,"source":"{ sessionId: 'session-1', direction: 'tail', limit: 200 }","value":{"kind":"object","value":[{"key":"sessionId","value":{"kind":"string","value":"session-1"}},{"key":"direction","value":{"kind":"string","value":"tail"}},{"key":"limit","value":{"kind":"number","value":200}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { sessionId: 'session-1', direction: 'tail', limit: 200 }. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: continues folding an ordinary warning at the same real history boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":161,"end_line":161,"start":5765,"end":5773,"source":"snapshot","value":{"kind":"reference","source":"snapshot","resolved_at":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":154,"end_line":154,"start":5451,"end":5483},"resolved":{"kind":"source-expression","source":"await snapshotWithLaterHistory()"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: snapshot. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: continues folding an ordinary warning at the same real history boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: continues folding an ordinary warning at the same real history boundary.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":153,"title":"continues folding an ordinary warning at the same real history boundary","start":5340,"end":6113},"implementation_status":"retained"}],"lines":173,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","planned_changes":[],"production_evidence":["src/main/native-chat/agent-session-wire/agent-session-history-page.ts","src/renderer/src/components/native-chat/native-chat-transcript-slots.ts","src/renderer/src/components/native-chat/structured-agent-session-message-projection.ts","src/shared/native-chat-turn-grouping.ts","src/shared/native-chat-turn-membership.ts","src/shared/native-chat-turn-status.ts","src/shared/structured-agent-session-message-projection.ts","src/shared/structured-agent-session-turn-timing.ts"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"32:18:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":18,"end_line":18,"start":1079,"end":1106,"source":"[...captured.items]","input_position":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":18,"end_line":18,"start":1087,"end":1106},"binding":"items","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"adf1ae7a4fffecf80b3190c6e1b92b3a7facb8a3d4c758b0a7a2d1311a588825"}},{"id":"32:20:counted-loop:2","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":20,"end_line":68,"start":1189,"end":2460,"source":"let n = 0; n < 66; n++","input_position":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":20,"end_line":20,"start":1194,"end":1216},"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","rows":[],"policy":"Exact original fixed/runtime loop bounds and initializer retained; generated repetitions are workload policy, not additional declarations or runtime validations.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"adf1ae7a4fffecf80b3190c6e1b92b3a7facb8a3d4c758b0a7a2d1311a588825"}},{"id":"32:78:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":78,"end_line":78,"start":2650,"end":2721,"source":"projectStructuredAgentSessionMessages(page.items, [], page.submissions)","input_position":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":78,"end_line":78,"start":2650,"end":2721},"binding":"projectStructuredAgentSessionMessages","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","rows":[{"index":1,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":78,"end_line":78,"start":2688,"end":2698,"source":"page.items","value":{"kind":"source-expression","source":"page.items"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page.items. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":78,"end_line":78,"start":2700,"end":2702,"source":"[]","value":{"kind":"array","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: []. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":78,"end_line":78,"start":2704,"end":2720,"source":"page.submissions","value":{"kind":"source-expression","source":"page.submissions"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page.submissions. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"adf1ae7a4fffecf80b3190c6e1b92b3a7facb8a3d4c758b0a7a2d1311a588825"}},{"id":"32:79:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":79,"end_line":79,"start":2743,"end":2783,"source":"nativeChatTurnMembership(messages, page)","input_position":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":79,"end_line":79,"start":2743,"end":2783},"binding":"nativeChatTurnMembership","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","rows":[{"index":1,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":79,"end_line":79,"start":2768,"end":2776,"source":"messages","value":{"kind":"reference","source":"messages","resolved_at":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":78,"end_line":78,"start":2650,"end":2721},"resolved":{"kind":"call-source","callee":"projectStructuredAgentSessionMessages","arguments":[{"kind":"source-expression","source":"page.items"},{"kind":"array","value":[]},{"kind":"source-expression","source":"page.submissions"}],"source":"projectStructuredAgentSessionMessages(page.items, [], page.submissions)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: messages. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":79,"end_line":79,"start":2778,"end":2782,"source":"page","value":{"kind":"reference","source":"page","resolved_at":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":110,"end_line":110,"start":3810,"end":3821},"resolved":{"kind":"source-expression","source":"result.page"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"adf1ae7a4fffecf80b3190c6e1b92b3a7facb8a3d4c758b0a7a2d1311a588825"}},{"id":"32:80:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":80,"end_line":88,"start":2807,"end":3043,"source":"selectNativeChatTurnStatuses(\n {},\n {\n activeTurnKey: membership.liveTurnKey ?? '',\n isWorking: false,\n thinking: false,\n settledByTurn: selectStructuredAgentSettledTurns(page.items, page.submissions)\n }\n )","input_position":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":80,"end_line":88,"start":2807,"end":3043},"binding":"selectNativeChatTurnStatuses","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","rows":[{"index":1,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":81,"end_line":81,"start":2841,"end":2843,"source":"{}","value":{"kind":"object","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: {}. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":82,"end_line":87,"start":2849,"end":3039,"source":"{\n activeTurnKey: membership.liveTurnKey ?? '',\n isWorking: false,\n thinking: false,\n settledByTurn: selectStructuredAgentSettledTurns(page.items, page.submissions)\n }","value":{"kind":"object","value":[{"key":"activeTurnKey","value":{"kind":"source-expression","source":"membership.liveTurnKey ?? ''"}},{"key":"isWorking","value":{"kind":"boolean","value":false}},{"key":"thinking","value":{"kind":"boolean","value":false}},{"key":"settledByTurn","value":{"kind":"call-source","callee":"selectStructuredAgentSettledTurns","arguments":[{"kind":"source-expression","source":"page.items"},{"kind":"source-expression","source":"page.submissions"}],"source":"selectStructuredAgentSettledTurns(page.items, page.submissions)"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { activeTurnKey: membership.liveTurnKey ?? '', isWorking: false, thinking: false, settledByTurn: selectStructuredAge. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"adf1ae7a4fffecf80b3190c6e1b92b3a7facb8a3d4c758b0a7a2d1311a588825"}},{"id":"32:86:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":86,"end_line":86,"start":2970,"end":3033,"source":"selectStructuredAgentSettledTurns(page.items, page.submissions)","input_position":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":86,"end_line":86,"start":2970,"end":3033},"binding":"selectStructuredAgentSettledTurns","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","rows":[{"index":1,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":86,"end_line":86,"start":3004,"end":3014,"source":"page.items","value":{"kind":"source-expression","source":"page.items"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page.items. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":86,"end_line":86,"start":3016,"end":3032,"source":"page.submissions","value":{"kind":"source-expression","source":"page.submissions"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: page.submissions. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"adf1ae7a4fffecf80b3190c6e1b92b3a7facb8a3d4c758b0a7a2d1311a588825"}},{"id":"32:89:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":89,"end_line":99,"start":3053,"end":3440,"source":"buildNativeChatTranscriptSlots({\n messages: nativeChatRowsInDrawOrder(messages, membership.drawOrder),\n turnKeys: nativeChatRowsInDrawOrder(membership.turnKeys, membership.drawOrder),\n liveTurnKey: membership.liveTurnKey,\n receipts: new Map(),\n turnStatuses,\n turnDiffs: new Map(),\n expandedTurnKeys: new Set(),\n isWorking: false,\n lifecycleWorking: false\n })","input_position":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":89,"end_line":99,"start":3053,"end":3440},"binding":"buildNativeChatTranscriptSlots","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","rows":[{"index":1,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":89,"end_line":99,"start":3084,"end":3439,"source":"{\n messages: nativeChatRowsInDrawOrder(messages, membership.drawOrder),\n turnKeys: nativeChatRowsInDrawOrder(membership.turnKeys, membership.drawOrder),\n liveTurnKey: membership.liveTurnKey,\n receipts: new Map(),\n turnStatuses,\n turnDiffs: new Map(),\n expandedTurnKeys: new Set(),\n isWorking: false,\n lifecycleWorking: false\n }","value":{"kind":"object","value":[{"key":"messages","value":{"kind":"call-source","callee":"nativeChatRowsInDrawOrder","arguments":[{"kind":"reference","source":"messages","resolved_at":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":78,"end_line":78,"start":2650,"end":2721},"resolved":{"kind":"call-source","callee":"projectStructuredAgentSessionMessages","arguments":[{"kind":"source-expression","source":"page.items"},{"kind":"array","value":[]},{"kind":"source-expression","source":"page.submissions"}],"source":"projectStructuredAgentSessionMessages(page.items, [], page.submissions)"}},{"kind":"source-expression","source":"membership.drawOrder"}],"source":"nativeChatRowsInDrawOrder(messages, membership.drawOrder)"}},{"key":"turnKeys","value":{"kind":"call-source","callee":"nativeChatRowsInDrawOrder","arguments":[{"kind":"source-expression","source":"membership.turnKeys"},{"kind":"source-expression","source":"membership.drawOrder"}],"source":"nativeChatRowsInDrawOrder(membership.turnKeys, membership.drawOrder)"}},{"key":"liveTurnKey","value":{"kind":"source-expression","source":"membership.liveTurnKey"}},{"key":"receipts","value":{"kind":"source-expression","source":"new Map()"}},{"source":"turnStatuses"},{"key":"turnDiffs","value":{"kind":"source-expression","source":"new Map()"}},{"key":"expandedTurnKeys","value":{"kind":"source-expression","source":"new Set()"}},{"key":"isWorking","value":{"kind":"boolean","value":false}},{"key":"lifecycleWorking","value":{"kind":"boolean","value":false}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { messages: nativeChatRowsInDrawOrder(messages, membership.drawOrder), turnKeys: nativeChatRowsInDrawOrder(membership.turnKeys, memb. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"adf1ae7a4fffecf80b3190c6e1b92b3a7facb8a3d4c758b0a7a2d1311a588825"}},{"id":"32:90:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":90,"end_line":90,"start":3100,"end":3157,"source":"nativeChatRowsInDrawOrder(messages, membership.drawOrder)","input_position":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":90,"end_line":90,"start":3100,"end":3157},"binding":"nativeChatRowsInDrawOrder","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","rows":[{"index":1,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":90,"end_line":90,"start":3126,"end":3134,"source":"messages","value":{"kind":"reference","source":"messages","resolved_at":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":78,"end_line":78,"start":2650,"end":2721},"resolved":{"kind":"call-source","callee":"projectStructuredAgentSessionMessages","arguments":[{"kind":"source-expression","source":"page.items"},{"kind":"array","value":[]},{"kind":"source-expression","source":"page.submissions"}],"source":"projectStructuredAgentSessionMessages(page.items, [], page.submissions)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: messages. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":90,"end_line":90,"start":3136,"end":3156,"source":"membership.drawOrder","value":{"kind":"source-expression","source":"membership.drawOrder"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: membership.drawOrder. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"adf1ae7a4fffecf80b3190c6e1b92b3a7facb8a3d4c758b0a7a2d1311a588825"}},{"id":"32:91:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":91,"end_line":91,"start":3173,"end":3241,"source":"nativeChatRowsInDrawOrder(membership.turnKeys, membership.drawOrder)","input_position":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":91,"end_line":91,"start":3173,"end":3241},"binding":"nativeChatRowsInDrawOrder","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","rows":[{"index":1,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":91,"end_line":91,"start":3199,"end":3218,"source":"membership.turnKeys","value":{"kind":"source-expression","source":"membership.turnKeys"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: membership.turnKeys. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":91,"end_line":91,"start":3220,"end":3240,"source":"membership.drawOrder","value":{"kind":"source-expression","source":"membership.drawOrder"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: membership.drawOrder. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"adf1ae7a4fffecf80b3190c6e1b92b3a7facb8a3d4c758b0a7a2d1311a588825"}},{"id":"32:104:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":104,"end_line":108,"start":3625,"end":3763,"source":"readAgentSessionHistory(\n { snapshot: () => snapshot },\n { sessionId: 'session-1', direction: 'tail', limit: 200 },\n snapshot\n )","input_position":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":104,"end_line":108,"start":3625,"end":3763},"binding":"readAgentSessionHistory","resolution":[],"enclosing_case":{"line":102,"title":"keeps the captured skip visible when the actual 200-item history tail omits only its opener"},"affected_case_lines":[],"decision":"keep","reason":"Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: keeps the captured skip visible when the actual 200-item history tail omits only its opener.","rows":[{"index":1,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":105,"end_line":105,"start":3654,"end":3682,"source":"{ snapshot: () => snapshot }","value":{"kind":"object","value":[{"key":"snapshot","value":{"kind":"source-expression","source":"() => snapshot"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { snapshot: () => snapshot }. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: keeps the captured skip visible when the actual 200-item history tail omits only its opener.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":106,"end_line":106,"start":3688,"end":3745,"source":"{ sessionId: 'session-1', direction: 'tail', limit: 200 }","value":{"kind":"object","value":[{"key":"sessionId","value":{"kind":"string","value":"session-1"}},{"key":"direction","value":{"kind":"string","value":"tail"}},{"key":"limit","value":{"kind":"number","value":200}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { sessionId: 'session-1', direction: 'tail', limit: 200 }. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: keeps the captured skip visible when the actual 200-item history tail omits only its opener.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":107,"end_line":107,"start":3751,"end":3759,"source":"snapshot","value":{"kind":"reference","source":"snapshot","resolved_at":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":103,"end_line":103,"start":3575,"end":3607},"resolved":{"kind":"source-expression","source":"await snapshotWithLaterHistory()"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: snapshot. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: keeps the captured skip visible when the actual 200-item history tail omits only its opener.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"adf1ae7a4fffecf80b3190c6e1b92b3a7facb8a3d4c758b0a7a2d1311a588825"}},{"id":"32:127:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":127,"end_line":131,"start":4511,"end":4649,"source":"readAgentSessionHistory(\n { snapshot: () => snapshot },\n { sessionId: 'session-1', direction: 'tail', limit: 200 },\n snapshot\n )","input_position":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":127,"end_line":131,"start":4511,"end":4649},"binding":"readAgentSessionHistory","resolution":[],"enclosing_case":{"line":125,"title":"restores the captured skip after the real older-page read loads its opener"},"affected_case_lines":[],"decision":"keep","reason":"Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: restores the captured skip after the real older-page read loads its opener.","rows":[{"index":1,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":128,"end_line":128,"start":4540,"end":4568,"source":"{ snapshot: () => snapshot }","value":{"kind":"object","value":[{"key":"snapshot","value":{"kind":"source-expression","source":"() => snapshot"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { snapshot: () => snapshot }. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: restores the captured skip after the real older-page read loads its opener.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":129,"end_line":129,"start":4574,"end":4631,"source":"{ sessionId: 'session-1', direction: 'tail', limit: 200 }","value":{"kind":"object","value":[{"key":"sessionId","value":{"kind":"string","value":"session-1"}},{"key":"direction","value":{"kind":"string","value":"tail"}},{"key":"limit","value":{"kind":"number","value":200}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { sessionId: 'session-1', direction: 'tail', limit: 200 }. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: restores the captured skip after the real older-page read loads its opener.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":130,"end_line":130,"start":4637,"end":4645,"source":"snapshot","value":{"kind":"reference","source":"snapshot","resolved_at":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":126,"end_line":126,"start":4463,"end":4495},"resolved":{"kind":"source-expression","source":"await snapshotWithLaterHistory()"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: snapshot. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: restores the captured skip after the real older-page read loads its opener.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"adf1ae7a4fffecf80b3190c6e1b92b3a7facb8a3d4c758b0a7a2d1311a588825"}},{"id":"32:132:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":132,"end_line":136,"start":4671,"end":4843,"source":"readAgentSessionHistory(\n { snapshot: () => snapshot },\n { sessionId: 'session-1', direction: 'before', cursor: tail.window.nextCursor, limit: 200 },\n snapshot\n )","input_position":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":132,"end_line":136,"start":4671,"end":4843},"binding":"readAgentSessionHistory","resolution":[],"enclosing_case":{"line":125,"title":"restores the captured skip after the real older-page read loads its opener"},"affected_case_lines":[],"decision":"keep","reason":"Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: restores the captured skip after the real older-page read loads its opener.","rows":[{"index":1,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":133,"end_line":133,"start":4700,"end":4728,"source":"{ snapshot: () => snapshot }","value":{"kind":"object","value":[{"key":"snapshot","value":{"kind":"source-expression","source":"() => snapshot"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { snapshot: () => snapshot }. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: restores the captured skip after the real older-page read loads its opener.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":134,"end_line":134,"start":4734,"end":4825,"source":"{ sessionId: 'session-1', direction: 'before', cursor: tail.window.nextCursor, limit: 200 }","value":{"kind":"object","value":[{"key":"sessionId","value":{"kind":"string","value":"session-1"}},{"key":"direction","value":{"kind":"string","value":"before"}},{"key":"cursor","value":{"kind":"source-expression","source":"tail.window.nextCursor"}},{"key":"limit","value":{"kind":"number","value":200}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { sessionId: 'session-1', direction: 'before', cursor: tail.window.nextCursor, limit: 200 }. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: restores the captured skip after the real older-page read loads its opener.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":135,"end_line":135,"start":4831,"end":4839,"source":"snapshot","value":{"kind":"reference","source":"snapshot","resolved_at":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":126,"end_line":126,"start":4463,"end":4495},"resolved":{"kind":"source-expression","source":"await snapshotWithLaterHistory()"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: snapshot. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: restores the captured skip after the real older-page read loads its opener.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"adf1ae7a4fffecf80b3190c6e1b92b3a7facb8a3d4c758b0a7a2d1311a588825"}},{"id":"32:158:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":158,"end_line":162,"start":5639,"end":5777,"source":"readAgentSessionHistory(\n { snapshot: () => snapshot },\n { sessionId: 'session-1', direction: 'tail', limit: 200 },\n snapshot\n )","input_position":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":158,"end_line":162,"start":5639,"end":5777},"binding":"readAgentSessionHistory","resolution":[],"enclosing_case":{"line":153,"title":"continues folding an ordinary warning at the same real history boundary"},"affected_case_lines":[],"decision":"keep","reason":"Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: continues folding an ordinary warning at the same real history boundary.","rows":[{"index":1,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":159,"end_line":159,"start":5668,"end":5696,"source":"{ snapshot: () => snapshot }","value":{"kind":"object","value":[{"key":"snapshot","value":{"kind":"source-expression","source":"() => snapshot"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { snapshot: () => snapshot }. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: continues folding an ordinary warning at the same real history boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":160,"end_line":160,"start":5702,"end":5759,"source":"{ sessionId: 'session-1', direction: 'tail', limit: 200 }","value":{"kind":"object","value":[{"key":"sessionId","value":{"kind":"string","value":"session-1"}},{"key":"direction","value":{"kind":"string","value":"tail"}},{"key":"limit","value":{"kind":"number","value":200}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { sessionId: 'session-1', direction: 'tail', limit: 200 }. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: continues folding an ordinary warning at the same real history boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":161,"end_line":161,"start":5765,"end":5773,"source":"snapshot","value":{"kind":"reference","source":"snapshot","resolved_at":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","line":154,"end_line":154,"start":5451,"end":5483},"resolved":{"kind":"source-expression","source":"await snapshotWithLaterHistory()"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: snapshot. Captured compact-skip evidence plus synthetic later turns crosses the actual200-item history boundary and real projection/membership/status/slot pipeline; an ordinary-warning control must still fold. Scenario: continues folding an ordinary warning at the same real history boundary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"adf1ae7a4fffecf80b3190c6e1b92b3a7facb8a3d4c758b0a7a2d1311a588825"}}],"original_review_sha256":"6e74f7b6e66c87be0a6edd50284f828f859756718a345d592611f06433c4540b","reviewer":"audit_config","reviewed_sha256":"adf1ae7a4fffecf80b3190c6e1b92b3a7facb8a3d4c758b0a7a2d1311a588825","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/native-chat-compaction-pagination.test.mjs","final_declarations":3,"current_controls":{"path":"config/scripts/native-chat-compaction-pagination.test.mjs","each":[],"for_of":[],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["src/main/native-chat/agent-session-wire/agent-session-history-page.ts","src/renderer/src/components/native-chat/native-chat-transcript-slots.ts","src/renderer/src/components/native-chat/structured-agent-session-message-projection.ts","src/shared/native-chat-turn-grouping.ts","src/shared/native-chat-turn-membership.ts","src/shared/native-chat-turn-status.ts","src/shared/structured-agent-session-message-projection.ts","src/shared/structured-agent-session-turn-timing.ts"],"runtime_validation":[]}
+{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","sha256":"0826d059a193e7f46ce2387a095686e77bd4a78d1f25cd2a041b4890afcbee02","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":33,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"0826d059a193e7f46ce2387a095686e77bd4a78d1f25cd2a041b4890afcbee02","cases":[{"line":67,"title":"reports %s","decision":"fix","reason":"Give each forbidden fixture an independently expected specific rule identifier and assert it along with the single diagnostic. A lone diagnostic count currently accepts the wrong rule.","explicit_input_controls":[{"control_id":"33:67:parameter-table:4","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":67,"source":"violations","rows":[{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":21,"end_line":21,"start":639,"end":725,"source":"['arbitrary px size', 'export const X = () => ']","value":{"kind":"array","value":[{"kind":"string","value":"arbitrary px size"},{"kind":"string","value":"export const X = () => "}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['arbitrary px size', 'export const X = () => ']. Give each forbidden fixture an independently expected specific rule identifier and assert it along with the single diagnostic. A lone diagnostic count currently accepts the wrong rule.","implementation":{"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":22,"end_line":22,"start":729,"end":812,"source":"['arbitrary rem size', 'export const X = () => ']","value":{"kind":"array","value":[{"kind":"string","value":"arbitrary rem size"},{"kind":"string","value":"export const X = () => "}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['arbitrary rem size', 'export const X = () => ']. Give each forbidden fixture an independently expected specific rule identifier and assert it along with the single diagnostic. A lone diagnostic count currently accepts the wrong rule.","implementation":{"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":23,"end_line":23,"start":816,"end":910,"source":"['arbitrary size behind a variant', 'export const X = () => ']","value":{"kind":"array","value":[{"kind":"string","value":"arbitrary size behind a variant"},{"kind":"string","value":"export const X = () => "}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['arbitrary size behind a variant', 'export const X = () => ']. Give each forbidden fixture an independently expected specific rule identifier and assert it along with the single diagnostic. A lone diagnostic count currently accepts the wrong rule.","implementation":{"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":24,"end_line":24,"start":914,"end":986,"source":"['arbitrary size in a class constant', \"const ROW = 'flex text-[10px]'\"]","value":{"kind":"array","value":[{"kind":"string","value":"arbitrary size in a class constant"},{"kind":"string","value":"const ROW = 'flex text-[10px]'"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['arbitrary size in a class constant', \"const ROW = 'flex text-[10px]'\"]. Give each forbidden fixture an independently expected specific rule identifier and assert it along with the single diagnostic. A lone diagnostic count currently accepts the wrong rule.","implementation":{"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":25,"end_line":28,"start":990,"end":1101,"source":"[\n 'arbitrary size in a composer',\n \"export const X = () => \"\n ]","value":{"kind":"array","value":[{"kind":"string","value":"arbitrary size in a composer"},{"kind":"string","value":"export const X = () => "}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'arbitrary size in a composer', \"export const X = () => \" ]. Give each forbidden fixture an independently expected specific rule identifier and assert it along with the single diagnostic. A lone diagnostic count currently accepts the wrong rule.","implementation":{"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":29,"end_line":29,"start":1105,"end":1191,"source":"['softened foreground', 'export const X = () => ']","value":{"kind":"array","value":[{"kind":"string","value":"softened foreground"},{"kind":"string","value":"export const X = () => "}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['softened foreground', 'export const X = () => ']. Give each forbidden fixture an independently expected specific rule identifier and assert it along with the single diagnostic. A lone diagnostic count currently accepts the wrong rule.","implementation":{"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":30,"end_line":33,"start":1195,"end":1327,"source":"[\n 'weakened focus ring',\n 'export const X = () => '\n ]","value":{"kind":"array","value":[{"kind":"string","value":"weakened focus ring"},{"kind":"string","value":"export const X = () => "}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'weakened focus ring', 'export const X = () => ' ]. Give each forbidden fixture an independently expected specific rule identifier and assert it along with the single diagnostic. A lone diagnostic count currently accepts the wrong rule.","implementation":{"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}}],"decision":"fix","reason":"Give each forbidden fixture an independently expected specific rule identifier and assert it along with the single diagnostic. A lone diagnostic count currently accepts the wrong rule.","implementation_rows":[{"index":1,"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."},{"index":2,"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."},{"index":3,"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."},{"index":4,"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."},{"index":5,"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."},{"index":6,"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."},{"index":7,"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}]}],"current_declaration":{"line":92,"title":"reports %s","start":2935,"end":3097},"implementation_status":"implemented"},{"line":71,"title":"accepts %s","decision":"keep","reason":"The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input. Scenario: accepts %s.","explicit_input_controls":[{"control_id":"33:71:parameter-table:5","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":71,"source":"accepted","rows":[{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":37,"end_line":37,"start":1352,"end":1445,"source":"['named steps', 'export const X = () => ']","value":{"kind":"array","value":[{"kind":"string","value":"named steps"},{"kind":"string","value":"export const X = () => "}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['named steps', 'export const X = () => ']. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input. Scenario: accepts %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":38,"end_line":38,"start":1449,"end":1533,"source":"['code step', 'export const X = () => ']","value":{"kind":"array","value":[{"kind":"string","value":"code step"},{"kind":"string","value":"export const X = () => "}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['code step', 'export const X = () => ']. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input. Scenario: accepts %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":39,"end_line":42,"start":1537,"end":1648,"source":"[\n 'arbitrary colour',\n 'export const X = () => '\n ]","value":{"kind":"array","value":[{"kind":"string","value":"arbitrary colour"},{"kind":"string","value":"export const X = () => "}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'arbitrary colour', 'export const X = () => ' ]. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input. Scenario: accepts %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":43,"end_line":46,"start":1652,"end":1762,"source":"[\n 'arbitrary non-font length',\n 'export const X = () => '\n ]","value":{"kind":"array","value":[{"kind":"string","value":"arbitrary non-font length"},{"kind":"string","value":"export const X = () => "}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'arbitrary non-font length', 'export const X = () => ' ]. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input. Scenario: accepts %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":47,"end_line":50,"start":1766,"end":1892,"source":"[\n 'chat and surface text colours',\n 'export const X = () => '\n ]","value":{"kind":"array","value":[{"kind":"string","value":"chat and surface text colours"},{"kind":"string","value":"export const X = () => "}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'chat and surface text colours', 'export const X = () => ' ]. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input. Scenario: accepts %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":51,"end_line":51,"start":1896,"end":1985,"source":"['softened state colour', 'export const X = () => ']","value":{"kind":"array","value":[{"kind":"string","value":"softened state colour"},{"kind":"string","value":"export const X = () => "}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['softened state colour', 'export const X = () => ']. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input. Scenario: accepts %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":52,"end_line":55,"start":1989,"end":2114,"source":"[\n 'full focus ring',\n 'export const X = () => '\n ]","value":{"kind":"array","value":[{"kind":"string","value":"full focus ring"},{"kind":"string","value":"export const X = () => "}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'full focus ring', 'export const X = () => ' ]. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input. Scenario: accepts %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input. Scenario: accepts %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":96,"title":"accepts %s","start":3101,"end":3214},"implementation_status":"retained"}],"lines":75,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input.","planned_changes":[{"original_line":67,"title":"reports %s","decision":"fix","change":"Give each forbidden fixture an independently expected specific rule identifier and assert it along with the single diagnostic. A lone diagnostic count currently accepts the wrong rule."}],"production_evidence":["config/oxlint-plugins/native-chat-design-tokens.mjs","config/scripts/app-store-performance-plugin.test.mjs","config/scripts/oxlint-plugin-test-runner.mjs"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"33:8:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":8,"end_line":17,"start":291,"end":612,"source":"runOxlintPluginOnSources({\n pluginName: 'native-chat-design-tokens',\n pluginPath,\n sources,\n rules: {\n 'native-chat-design-tokens/no-arbitrary-font-size': 'warn',\n 'native-chat-design-tokens/no-softened-foreground': 'warn',\n 'native-chat-design-tokens/no-weakened-focus-ring': 'warn'\n }\n })","input_position":{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":8,"end_line":17,"start":291,"end":612},"binding":"runOxlintPluginOnSources","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input.","rows":[{"index":1,"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":8,"end_line":17,"start":316,"end":611,"source":"{\n pluginName: 'native-chat-design-tokens',\n pluginPath,\n sources,\n rules: {\n 'native-chat-design-tokens/no-arbitrary-font-size': 'warn',\n 'native-chat-design-tokens/no-softened-foreground': 'warn',\n 'native-chat-design-tokens/no-weakened-focus-ring': 'warn'\n }\n }","value":{"kind":"object","value":[{"key":"pluginName","value":{"kind":"string","value":"native-chat-design-tokens"}},{"source":"pluginPath"},{"source":"sources"},{"key":"rules","value":{"kind":"object","value":[{"key":"'native-chat-design-tokens/no-arbitrary-font-size'","value":{"kind":"string","value":"warn"}},{"key":"'native-chat-design-tokens/no-softened-foreground'","value":{"kind":"string","value":"warn"}},{"key":"'native-chat-design-tokens/no-weakened-focus-ring'","value":{"kind":"string","value":"warn"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { pluginName: 'native-chat-design-tokens', pluginPath, sources, rules: { 'native-chat-design-tokens/no-arbitrary-font-. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"50c2448b355145274c7dcc325d6ffe6209b412a49e964ee9969b03ed54b85913"}},{"id":"33:20:fixture-or-oracle-declaration:2","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":20,"end_line":34,"start":622,"end":1329,"source":"[\n ['arbitrary px size', 'export const X = () => '],\n ['arbitrary rem size', 'export const X = () => '],\n ['arbitrary size behind a variant', 'export const X = () => '],\n ['arbitrary size in a class constant', \"const ROW = 'flex text-[10px]'\"],\n [\n 'arbitrary size in a composer',\n \"export const X = () => \"\n ],\n ['softened foreground', 'export const X = () => '],\n [\n 'weakened focus ring',\n 'export const X = () => '\n ]\n]","input_position":{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":20,"end_line":34,"start":635,"end":1329},"binding":"violations","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input.","rows":[{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":21,"end_line":21,"start":639,"end":725,"source":"['arbitrary px size', 'export const X = () => ']","value":{"kind":"array","value":[{"kind":"string","value":"arbitrary px size"},{"kind":"string","value":"export const X = () => "}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['arbitrary px size', 'export const X = () => ']. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input.","implementation":{"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":22,"end_line":22,"start":729,"end":812,"source":"['arbitrary rem size', 'export const X = () => ']","value":{"kind":"array","value":[{"kind":"string","value":"arbitrary rem size"},{"kind":"string","value":"export const X = () => "}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['arbitrary rem size', 'export const X = () => ']. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input.","implementation":{"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":23,"end_line":23,"start":816,"end":910,"source":"['arbitrary size behind a variant', 'export const X = () => ']","value":{"kind":"array","value":[{"kind":"string","value":"arbitrary size behind a variant"},{"kind":"string","value":"export const X = () => "}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['arbitrary size behind a variant', 'export const X = () => ']. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input.","implementation":{"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":24,"end_line":24,"start":914,"end":986,"source":"['arbitrary size in a class constant', \"const ROW = 'flex text-[10px]'\"]","value":{"kind":"array","value":[{"kind":"string","value":"arbitrary size in a class constant"},{"kind":"string","value":"const ROW = 'flex text-[10px]'"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['arbitrary size in a class constant', \"const ROW = 'flex text-[10px]'\"]. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input.","implementation":{"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":25,"end_line":28,"start":990,"end":1101,"source":"[\n 'arbitrary size in a composer',\n \"export const X = () => \"\n ]","value":{"kind":"array","value":[{"kind":"string","value":"arbitrary size in a composer"},{"kind":"string","value":"export const X = () => "}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: [ 'arbitrary size in a composer', \"export const X = () => \" ]. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input.","implementation":{"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":29,"end_line":29,"start":1105,"end":1191,"source":"['softened foreground', 'export const X = () => ']","value":{"kind":"array","value":[{"kind":"string","value":"softened foreground"},{"kind":"string","value":"export const X = () => "}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['softened foreground', 'export const X = () => ']. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input.","implementation":{"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":30,"end_line":33,"start":1195,"end":1327,"source":"[\n 'weakened focus ring',\n 'export const X = () => '\n ]","value":{"kind":"array","value":[{"kind":"string","value":"weakened focus ring"},{"kind":"string","value":"export const X = () => "}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: [ 'weakened focus ring', 'export const X = () => ' ]. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input.","implementation":{"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}}],"implementation_rows":[{"index":1,"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."},{"index":2,"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."},{"index":3,"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."},{"index":4,"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."},{"index":5,"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."},{"index":6,"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."},{"index":7,"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"50c2448b355145274c7dcc325d6ffe6209b412a49e964ee9969b03ed54b85913"}},{"id":"33:36:fixture-or-oracle-declaration:3","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":36,"end_line":56,"start":1337,"end":2116,"source":"[\n ['named steps', 'export const X = () => '],\n ['code step', 'export const X = () => '],\n [\n 'arbitrary colour',\n 'export const X = () => '\n ],\n [\n 'arbitrary non-font length',\n 'export const X = () => '\n ],\n [\n 'chat and surface text colours',\n 'export const X = () => '\n ],\n ['softened state colour', 'export const X = () => '],\n [\n 'full focus ring',\n 'export const X = () => '\n ]\n]","input_position":{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":36,"end_line":56,"start":1348,"end":2116},"binding":"accepted","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input.","rows":[{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":37,"end_line":37,"start":1352,"end":1445,"source":"['named steps', 'export const X = () => ']","value":{"kind":"array","value":[{"kind":"string","value":"named steps"},{"kind":"string","value":"export const X = () => "}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['named steps', 'export const X = () => ']. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":38,"end_line":38,"start":1449,"end":1533,"source":"['code step', 'export const X = () => ']","value":{"kind":"array","value":[{"kind":"string","value":"code step"},{"kind":"string","value":"export const X = () => "}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['code step', 'export const X = () => ']. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":39,"end_line":42,"start":1537,"end":1648,"source":"[\n 'arbitrary colour',\n 'export const X = () => '\n ]","value":{"kind":"array","value":[{"kind":"string","value":"arbitrary colour"},{"kind":"string","value":"export const X = () => "}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: [ 'arbitrary colour', 'export const X = () => ' ]. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":43,"end_line":46,"start":1652,"end":1762,"source":"[\n 'arbitrary non-font length',\n 'export const X = () => '\n ]","value":{"kind":"array","value":[{"kind":"string","value":"arbitrary non-font length"},{"kind":"string","value":"export const X = () => "}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: [ 'arbitrary non-font length', 'export const X = () => ' ]. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":47,"end_line":50,"start":1766,"end":1892,"source":"[\n 'chat and surface text colours',\n 'export const X = () => '\n ]","value":{"kind":"array","value":[{"kind":"string","value":"chat and surface text colours"},{"kind":"string","value":"export const X = () => "}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: [ 'chat and surface text colours', 'export const X = () => ' ]. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":51,"end_line":51,"start":1896,"end":1985,"source":"['softened state colour', 'export const X = () => ']","value":{"kind":"array","value":[{"kind":"string","value":"softened state colour"},{"kind":"string","value":"export const X = () => "}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['softened state colour', 'export const X = () => ']. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":52,"end_line":55,"start":1989,"end":2114,"source":"[\n 'full focus ring',\n 'export const X = () => '\n ]","value":{"kind":"array","value":[{"kind":"string","value":"full focus ring"},{"kind":"string","value":"export const X = () => "}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: [ 'full focus ring', 'export const X = () => ' ]. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"50c2448b355145274c7dcc325d6ffe6209b412a49e964ee9969b03ed54b85913"}},{"id":"33:67:parameter-table:4","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":67,"end_line":69,"start":2434,"end":2553,"source":"violations","input_position":{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":67,"end_line":67,"start":2442,"end":2452},"binding":"it.each","resolution":[{"name":"violations","path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":20,"end_line":34,"start":635,"end":1329,"declaration_position":{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":20,"end_line":34,"start":622,"end":1329},"source":"[\n ['arbitrary px size', 'export const X = () => '],\n ['arbitrary rem size', 'export const X = () => '],\n ['arbitrary size behind a variant', 'export const X = () => '],\n ['arbitrary size in a class constant', \"const ROW = 'flex text-[10px]'\"],\n [\n 'arbitrary size in a composer',\n \"export const X = () => \"\n ],\n ['softened foreground', 'export const X = () => '],\n [\n 'weakened focus ring',\n 'export const X = () => '\n ]\n]"}],"enclosing_case":{"line":67,"title":"reports %s"},"affected_case_lines":[67],"decision":"keep","reason":"Give each forbidden fixture an independently expected specific rule identifier and assert it along with the single diagnostic. A lone diagnostic count currently accepts the wrong rule.","rows":[{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":21,"end_line":21,"start":639,"end":725,"source":"['arbitrary px size', 'export const X = () => ']","value":{"kind":"array","value":[{"kind":"string","value":"arbitrary px size"},{"kind":"string","value":"export const X = () => "}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['arbitrary px size', 'export const X = () => ']. Give each forbidden fixture an independently expected specific rule identifier and assert it along with the single diagnostic. A lone diagnostic count currently accepts the wrong rule.","implementation":{"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":22,"end_line":22,"start":729,"end":812,"source":"['arbitrary rem size', 'export const X = () => ']","value":{"kind":"array","value":[{"kind":"string","value":"arbitrary rem size"},{"kind":"string","value":"export const X = () => "}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['arbitrary rem size', 'export const X = () => ']. Give each forbidden fixture an independently expected specific rule identifier and assert it along with the single diagnostic. A lone diagnostic count currently accepts the wrong rule.","implementation":{"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":23,"end_line":23,"start":816,"end":910,"source":"['arbitrary size behind a variant', 'export const X = () => ']","value":{"kind":"array","value":[{"kind":"string","value":"arbitrary size behind a variant"},{"kind":"string","value":"export const X = () => "}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['arbitrary size behind a variant', 'export const X = () => ']. Give each forbidden fixture an independently expected specific rule identifier and assert it along with the single diagnostic. A lone diagnostic count currently accepts the wrong rule.","implementation":{"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":24,"end_line":24,"start":914,"end":986,"source":"['arbitrary size in a class constant', \"const ROW = 'flex text-[10px]'\"]","value":{"kind":"array","value":[{"kind":"string","value":"arbitrary size in a class constant"},{"kind":"string","value":"const ROW = 'flex text-[10px]'"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['arbitrary size in a class constant', \"const ROW = 'flex text-[10px]'\"]. Give each forbidden fixture an independently expected specific rule identifier and assert it along with the single diagnostic. A lone diagnostic count currently accepts the wrong rule.","implementation":{"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":25,"end_line":28,"start":990,"end":1101,"source":"[\n 'arbitrary size in a composer',\n \"export const X = () => \"\n ]","value":{"kind":"array","value":[{"kind":"string","value":"arbitrary size in a composer"},{"kind":"string","value":"export const X = () => "}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'arbitrary size in a composer', \"export const X = () => \" ]. Give each forbidden fixture an independently expected specific rule identifier and assert it along with the single diagnostic. A lone diagnostic count currently accepts the wrong rule.","implementation":{"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":29,"end_line":29,"start":1105,"end":1191,"source":"['softened foreground', 'export const X = () => ']","value":{"kind":"array","value":[{"kind":"string","value":"softened foreground"},{"kind":"string","value":"export const X = () => "}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['softened foreground', 'export const X = () => ']. Give each forbidden fixture an independently expected specific rule identifier and assert it along with the single diagnostic. A lone diagnostic count currently accepts the wrong rule.","implementation":{"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":30,"end_line":33,"start":1195,"end":1327,"source":"[\n 'weakened focus ring',\n 'export const X = () => '\n ]","value":{"kind":"array","value":[{"kind":"string","value":"weakened focus ring"},{"kind":"string","value":"export const X = () => "}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'weakened focus ring', 'export const X = () => ' ]. Give each forbidden fixture an independently expected specific rule identifier and assert it along with the single diagnostic. A lone diagnostic count currently accepts the wrong rule.","implementation":{"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}}],"implementation_rows":[{"index":1,"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."},{"index":2,"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."},{"index":3,"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."},{"index":4,"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."},{"index":5,"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."},{"index":6,"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."},{"index":7,"disposition":"strengthened","reason":"The original fixture label/source is retained and augmented with an independently expected exact diagnostic rule code. All7 forbidden rows and7 accepted rows remain."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"50c2448b355145274c7dcc325d6ffe6209b412a49e964ee9969b03ed54b85913"}},{"id":"33:71:parameter-table:5","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":71,"end_line":73,"start":2557,"end":2670,"source":"accepted","input_position":{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":71,"end_line":71,"start":2565,"end":2573},"binding":"it.each","resolution":[{"name":"accepted","path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":36,"end_line":56,"start":1348,"end":2116,"declaration_position":{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":36,"end_line":56,"start":1337,"end":2116},"source":"[\n ['named steps', 'export const X = () => '],\n ['code step', 'export const X = () => '],\n [\n 'arbitrary colour',\n 'export const X = () => '\n ],\n [\n 'arbitrary non-font length',\n 'export const X = () => '\n ],\n [\n 'chat and surface text colours',\n 'export const X = () => '\n ],\n ['softened state colour', 'export const X = () => '],\n [\n 'full focus ring',\n 'export const X = () => '\n ]\n]"}],"enclosing_case":{"line":71,"title":"accepts %s"},"affected_case_lines":[71],"decision":"keep","reason":"The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input. Scenario: accepts %s.","rows":[{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":37,"end_line":37,"start":1352,"end":1445,"source":"['named steps', 'export const X = () => ']","value":{"kind":"array","value":[{"kind":"string","value":"named steps"},{"kind":"string","value":"export const X = () => "}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['named steps', 'export const X = () => ']. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input. Scenario: accepts %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":38,"end_line":38,"start":1449,"end":1533,"source":"['code step', 'export const X = () => ']","value":{"kind":"array","value":[{"kind":"string","value":"code step"},{"kind":"string","value":"export const X = () => "}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['code step', 'export const X = () => ']. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input. Scenario: accepts %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":39,"end_line":42,"start":1537,"end":1648,"source":"[\n 'arbitrary colour',\n 'export const X = () => '\n ]","value":{"kind":"array","value":[{"kind":"string","value":"arbitrary colour"},{"kind":"string","value":"export const X = () => "}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'arbitrary colour', 'export const X = () => ' ]. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input. Scenario: accepts %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":43,"end_line":46,"start":1652,"end":1762,"source":"[\n 'arbitrary non-font length',\n 'export const X = () => '\n ]","value":{"kind":"array","value":[{"kind":"string","value":"arbitrary non-font length"},{"kind":"string","value":"export const X = () => "}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'arbitrary non-font length', 'export const X = () => ' ]. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input. Scenario: accepts %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":47,"end_line":50,"start":1766,"end":1892,"source":"[\n 'chat and surface text colours',\n 'export const X = () => '\n ]","value":{"kind":"array","value":[{"kind":"string","value":"chat and surface text colours"},{"kind":"string","value":"export const X = () => "}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'chat and surface text colours', 'export const X = () => ' ]. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input. Scenario: accepts %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":51,"end_line":51,"start":1896,"end":1985,"source":"['softened state colour', 'export const X = () => ']","value":{"kind":"array","value":[{"kind":"string","value":"softened state colour"},{"kind":"string","value":"export const X = () => "}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['softened state colour', 'export const X = () => ']. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input. Scenario: accepts %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","line":52,"end_line":55,"start":1989,"end":2114,"source":"[\n 'full focus ring',\n 'export const X = () => '\n ]","value":{"kind":"array","value":[{"kind":"string","value":"full focus ring"},{"kind":"string","value":"export const X = () => "}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'full focus ring', 'export const X = () => ' ]. The real oxlint plugin is invoked on independent accepted/forbidden JSX/class fixtures; diagnostic presence/absence is compared by the original source input. Scenario: accepts %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"50c2448b355145274c7dcc325d6ffe6209b412a49e964ee9969b03ed54b85913"}}],"original_review_sha256":"97252516c4ccbaa80f24b7b043f8d4f43145fdcf47295506e3bb4af9010c8740","reviewer":"audit_config","reviewed_sha256":"50c2448b355145274c7dcc325d6ffe6209b412a49e964ee9969b03ed54b85913","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/native-chat-design-tokens-plugin.test.mjs","final_declarations":2,"current_controls":{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","each":[{"input":{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":2943,"end":2953,"line":92,"end_line":92,"source":"violations"},"rows":[{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":639,"end":794,"line":21,"end_line":25,"source":"[\n 'arbitrary px size',\n 'native-chat-design-tokens(no-arbitrary-font-size)',\n 'export const X = () => '\n ]"},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":798,"end":950,"line":26,"end_line":30,"source":"[\n 'arbitrary rem size',\n 'native-chat-design-tokens(no-arbitrary-font-size)',\n 'export const X = () => '\n ]"},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":954,"end":1117,"line":31,"end_line":35,"source":"[\n 'arbitrary size behind a variant',\n 'native-chat-design-tokens(no-arbitrary-font-size)',\n 'export const X = () => '\n ]"},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":1121,"end":1262,"line":36,"end_line":40,"source":"[\n 'arbitrary size in a class constant',\n 'native-chat-design-tokens(no-arbitrary-font-size)',\n \"const ROW = 'flex text-[10px]'\"\n ]"},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":1266,"end":1434,"line":41,"end_line":45,"source":"[\n 'arbitrary size in a composer',\n 'native-chat-design-tokens(no-arbitrary-font-size)',\n \"export const X = () => \"\n ]"},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":1438,"end":1593,"line":46,"end_line":50,"source":"[\n 'softened foreground',\n 'native-chat-design-tokens(no-softened-foreground)',\n 'export const X = () => '\n ]"},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":1597,"end":1786,"line":51,"end_line":55,"source":"[\n 'weakened focus ring',\n 'native-chat-design-tokens(no-weakened-focus-ring)',\n 'export const X = () => '\n ]"}]},{"input":{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":3109,"end":3117,"line":96,"end_line":96,"source":"accepted"},"rows":[{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":1811,"end":1904,"line":59,"end_line":59,"source":"['named steps', 'export const X = () => ']"},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":1908,"end":1992,"line":60,"end_line":60,"source":"['code step', 'export const X = () => ']"},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":1996,"end":2107,"line":61,"end_line":64,"source":"[\n 'arbitrary colour',\n 'export const X = () => '\n ]"},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":2111,"end":2221,"line":65,"end_line":68,"source":"[\n 'arbitrary non-font length',\n 'export const X = () => '\n ]"},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":2225,"end":2351,"line":69,"end_line":72,"source":"[\n 'chat and surface text colours',\n 'export const X = () => '\n ]"},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":2355,"end":2444,"line":73,"end_line":73,"source":"['softened state colour', 'export const X = () => ']"},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":2448,"end":2573,"line":74,"end_line":77,"source":"[\n 'full focus ring',\n 'export const X = () => '\n ]"}]}],"for_of":[],"literal_nodes_without_original_source_match":[{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":635,"end":1788,"line":20,"end_line":56,"source":"[\n [\n 'arbitrary px size',\n 'native-chat-design-tokens(no-arbitrary-font-size)',\n 'export const X = () => '\n ],\n [\n 'arbitrary rem size',\n 'native-chat-design-tokens(no-arbitrary-font-size)',\n 'export const X = () => '\n ],\n [\n 'arbitrary size behind a variant',\n 'native-chat-design-tokens(no-arbitrary-font-size)',\n 'export const X = () => '\n ],\n [\n 'arbitrary size in a class constant',\n 'native-chat-design-tokens(no-arbitrary-font-size)',\n \"const ROW = 'flex text-[10px]'\"\n ],\n [\n 'arbitrary size in a composer',\n 'native-chat-design-tokens(no-arbitrary-font-size)',\n \"export const X = () => \"\n ],\n [\n 'softened foreground',\n 'native-chat-design-tokens(no-softened-foreground)',\n 'export const X = () => '\n ],\n [\n 'weakened focus ring',\n 'native-chat-design-tokens(no-weakened-focus-ring)',\n 'export const X = () => '\n ]\n]","kind":"array"},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":639,"end":794,"line":21,"end_line":25,"source":"[\n 'arbitrary px size',\n 'native-chat-design-tokens(no-arbitrary-font-size)',\n 'export const X = () => '\n ]","kind":"array"},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":798,"end":950,"line":26,"end_line":30,"source":"[\n 'arbitrary rem size',\n 'native-chat-design-tokens(no-arbitrary-font-size)',\n 'export const X = () => '\n ]","kind":"array"},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":954,"end":1117,"line":31,"end_line":35,"source":"[\n 'arbitrary size behind a variant',\n 'native-chat-design-tokens(no-arbitrary-font-size)',\n 'export const X = () => '\n ]","kind":"array"},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":1121,"end":1262,"line":36,"end_line":40,"source":"[\n 'arbitrary size in a class constant',\n 'native-chat-design-tokens(no-arbitrary-font-size)',\n \"const ROW = 'flex text-[10px]'\"\n ]","kind":"array"},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":1266,"end":1434,"line":41,"end_line":45,"source":"[\n 'arbitrary size in a composer',\n 'native-chat-design-tokens(no-arbitrary-font-size)',\n \"export const X = () => \"\n ]","kind":"array"},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":1438,"end":1593,"line":46,"end_line":50,"source":"[\n 'softened foreground',\n 'native-chat-design-tokens(no-softened-foreground)',\n 'export const X = () => '\n ]","kind":"array"},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":1597,"end":1786,"line":51,"end_line":55,"source":"[\n 'weakened focus ring',\n 'native-chat-design-tokens(no-weakened-focus-ring)',\n 'export const X = () => '\n ]","kind":"array"},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":2651,"end":2749,"line":82,"end_line":85,"source":"[\n ...violations.map(([, , source]) => source),\n ...accepted.map(([, source]) => source)\n ]","kind":"array"},{"path":"config/scripts/native-chat-design-tokens-plugin.test.mjs","start":3085,"end":3091,"line":93,"end_line":93,"source":"[rule]","kind":"array"}]},"mutations":[{"name":"oxlint-wrong-rule-same-diagnostic-count","reason":"Swapped rule identities preserve one diagnostic and must fail exact expected rule codes.","baseline_hashes":{"config/oxlint-plugins/native-chat-design-tokens.mjs":"c937ece9db881404e984902960ba77a9d0d0270a78163567b67b71d135657b98"},"test":"config/scripts/native-chat-design-tokens-plugin.test.mjs","pattern":"reports","log":"/tmp/orca-config-0007-mutation-oxlint-wrong-rule-same-diagnostic-count.log","command":["pnpm","test","config/scripts/native-chat-design-tokens-plugin.test.mjs","-t","reports","--maxWorkers=1"],"seconds":2.47,"exit_code":1,"assertion_failure_seen":true,"expected_failure_seen":true,"failed_tests":["6 failed | 1 passed | 7 skipped (14)"],"restored_hashes":{"config/oxlint-plugins/native-chat-design-tokens.mjs":"c937ece9db881404e984902960ba77a9d0d0270a78163567b67b71d135657b98"},"restored":true,"log_sha256":"48cfc4969d4af802ec4cc4b12b67b9cd21eb010a840b2fe074b73b27e3b454ab"}]},"implemented_changes":[{"original_line":67,"title":"reports %s","decision":"fix","change":"Give each forbidden fixture an independently expected specific rule identifier and assert it along with the single diagnostic. A lone diagnostic count currently accepts the wrong rule."}],"manual_implementation_notes":[],"evidence":["config/oxlint-plugins/native-chat-design-tokens.mjs","config/scripts/app-store-performance-plugin.test.mjs","config/scripts/oxlint-plugin-test-runner.mjs"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/native-chat-fold-benchmark-workloads.mjs","sha256":"2e6996889d678c71513e08c820c2b3dc2ae0731764b7133e5f2a88a72fe5f977","declarations":0,"signals":["auxiliary"],"status":"reviewed","index":34,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"2e6996889d678c71513e08c820c2b3dc2ae0731764b7133e5f2a88a72fe5f977","cases":[],"lines":132,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Six explicit immutable tool-call/result workloads feed actual fold benchmarks; operation telemetry observes actual callId reads/pair-wrapper allocation and identity conservation rather than implementing pairing.","planned_changes":[],"production_evidence":["src/shared/native-chat-tool-fold.ts","src/shared/native-chat-tool-pairs.ts"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"34:98:for-of:1","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark-workloads.mjs","line":98,"end_line":103,"start":3009,"end":3213,"source":"['tool-call', 'tool-result']","input_position":{"path":"config/scripts/native-chat-fold-benchmark-workloads.mjs","line":98,"end_line":98,"start":3028,"end":3056},"binding":"const type","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Six explicit immutable tool-call/result workloads feed actual fold benchmarks; operation telemetry observes actual callId reads/pair-wrapper allocation and identity conservation rather than implementing pairing.","rows":[{"path":"config/scripts/native-chat-fold-benchmark-workloads.mjs","line":98,"end_line":98,"start":3029,"end":3040,"source":"'tool-call'","value":{"kind":"string","value":"tool-call"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'tool-call'. Six explicit immutable tool-call/result workloads feed actual fold benchmarks; operation telemetry observes actual callId reads/pair-wrapper allocation and identity conservation rather than implementing pairing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-fold-benchmark-workloads.mjs","line":98,"end_line":98,"start":3042,"end":3055,"source":"'tool-result'","value":{"kind":"string","value":"tool-result"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'tool-result'. Six explicit immutable tool-call/result workloads feed actual fold benchmarks; operation telemetry observes actual callId reads/pair-wrapper allocation and identity conservation rather than implementing pairing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2e6996889d678c71513e08c820c2b3dc2ae0731764b7133e5f2a88a72fe5f977"}},{"id":"34:113:for-of:2","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark-workloads.mjs","line":113,"end_line":121,"start":3572,"end":3820,"source":"items","input_position":{"path":"config/scripts/native-chat-fold-benchmark-workloads.mjs","line":113,"end_line":113,"start":3591,"end":3596},"binding":"const item","resolution":[],"dynamic_source":"items","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Six explicit immutable tool-call/result workloads feed actual fold benchmarks; operation telemetry observes actual callId reads/pair-wrapper allocation and identity conservation rather than implementing pairing.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"2e6996889d678c71513e08c820c2b3dc2ae0731764b7133e5f2a88a72fe5f977"}}],"original_review_sha256":"882e5027918904194e163d38c3cfc6295fefcfb7b6afc84dd82cbf83f35127ec","reviewer":"audit_config","reviewed_sha256":"2e6996889d678c71513e08c820c2b3dc2ae0731764b7133e5f2a88a72fe5f977","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/native-chat-fold-benchmark-workloads.mjs","final_declarations":0,"current_controls":{"path":"config/scripts/native-chat-fold-benchmark-workloads.mjs","each":[],"for_of":[{"path":"config/scripts/native-chat-fold-benchmark-workloads.mjs","start":3028,"end":3056,"line":98,"end_line":98,"source":"['tool-call', 'tool-result']","binding":"const type","changed":false},{"path":"config/scripts/native-chat-fold-benchmark-workloads.mjs","start":3591,"end":3596,"line":113,"end_line":113,"source":"items","binding":"const item","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["src/shared/native-chat-tool-fold.ts","src/shared/native-chat-tool-pairs.ts"],"runtime_validation":[]}
+{"path":"config/scripts/native-chat-fold-benchmark.mjs","sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e","declarations":0,"signals":["auxiliary"],"status":"reviewed","index":35,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e","cases":[],"lines":275,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","planned_changes":[],"production_evidence":["config/scripts/benchmark-sample-summary.mjs","config/scripts/counterbalanced-benchmark-schedule.mjs","config/scripts/native-chat-fold-benchmark-workloads.mjs","config/scripts/process-failure-message.mjs","src/shared/native-chat-tool-fold.ts","src/shared/native-chat-tool-pairing.ts","src/shared/native-chat-tool-pairs.ts"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"35:20:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":20,"end_line":24,"start":844,"end":983,"source":"{\n original: '51e7181850b022bae2d41091fe1229accef4bd50',\n published: 'b1e44269d655608447dc535f0a4d7d05c37c80b7',\n current: null\n}","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":20,"end_line":24,"start":851,"end":983},"binding":"refs","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[{"index":1,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":21,"end_line":21,"start":855,"end":907,"source":"original: '51e7181850b022bae2d41091fe1229accef4bd50'","value":{"kind":"property","key":"original","value":{"kind":"string","value":"51e7181850b022bae2d41091fe1229accef4bd50"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: original: '51e7181850b022bae2d41091fe1229accef4bd50'. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":22,"end_line":22,"start":911,"end":964,"source":"published: 'b1e44269d655608447dc535f0a4d7d05c37c80b7'","value":{"kind":"property","key":"published","value":{"kind":"string","value":"b1e44269d655608447dc535f0a4d7d05c37c80b7"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: published: 'b1e44269d655608447dc535f0a4d7d05c37c80b7'. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":23,"end_line":23,"start":968,"end":981,"source":"current: null","value":{"kind":"property","key":"current","value":{"kind":"null","value":null}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: current: null. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:78:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":78,"end_line":121,"start":2996,"end":4379,"source":"build({\n stdin: {\n contents: entry,\n resolveDir: root,\n sourcefile: 'fold-benchmark-entry.ts',\n loader: 'ts'\n },\n bundle: true,\n write: false,\n platform: 'node',\n format: 'esm',\n plugins: [\n {\n name: 'exact-chat-source-snapshot',\n setup(builder) {\n builder.onLoad({ filter: /\\.[cm]?[jt]sx?$/ }, ({ path: file }) => {\n const relative = path.relative(root, file).split(path.sep).join('/')\n if (!relative.startsWith('src/')) {\n return undefined\n }\n let source\n if (ref) {\n const read = runProcessSync({\n program: 'git',\n args: ['show', `${ref}:${relative}`],\n cwd: root,\n env: { ...process.env, ORCA_BACKGROUND_LAUNCH: '1' },\n timeoutMs: 30_000,\n maxOutputBytes: 2 * 1024 * 1024\n })\n if (read.code !== 0 || read.timedOut || read.outputTruncated) {\n throw new Error(describeProcessFailure(read))\n }\n source = read.stdout\n } else {\n source = readFileSync(file, 'utf8')\n }\n modules.set(relative, hash(source))\n return { contents: source, loader: file.endsWith('tsx') ? 'tsx' : 'ts' }\n })\n }\n }\n ]\n })","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":78,"end_line":121,"start":2996,"end":4379},"binding":"build","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[{"index":1,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":78,"end_line":121,"start":3002,"end":4378,"source":"{\n stdin: {\n contents: entry,\n resolveDir: root,\n sourcefile: 'fold-benchmark-entry.ts',\n loader: 'ts'\n },\n bundle: true,\n write: false,\n platform: 'node',\n format: 'esm',\n plugins: [\n {\n name: 'exact-chat-source-snapshot',\n setup(builder) {\n builder.onLoad({ filter: /\\.[cm]?[jt]sx?$/ }, ({ path: file }) => {\n const relative = path.relative(root, file).split(path.sep).join('/')\n if (!relative.startsWith('src/')) {\n return undefined\n }\n let source\n if (ref) {\n const read = runProcessSync({\n program: 'git',\n args: ['show', `${ref}:${relative}`],\n cwd: root,\n env: { ...process.env, ORCA_BACKGROUND_LAUNCH: '1' },\n timeoutMs: 30_000,\n maxOutputBytes: 2 * 1024 * 1024\n })\n if (read.code !== 0 || read.timedOut || read.outputTruncated) {\n throw new Error(describeProcessFailure(read))\n }\n source = read.stdout\n } else {\n source = readFileSync(file, 'utf8')\n }\n modules.set(relative, hash(source))\n return { contents: source, loader: file.endsWith('tsx') ? 'tsx' : 'ts' }\n })\n }\n }\n ]\n }","value":{"kind":"object","value":[{"key":"stdin","value":{"kind":"object","value":[{"key":"contents","value":{"kind":"reference","source":"entry","resolved_at":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":25,"end_line":42,"start":998,"end":1925},"resolved":{"kind":"string","value":"\n export { foldToolMessages as fold } from './src/shared/native-chat-tool-fold'\n import { createNativeChatMessageListProjection } from './src/renderer/src/components/native-chat/native-chat-message-list-projection'\n import { deriveNativeChatRowContent } from './src/shared/native-chat-row-content'\n import { pairNativeChatToolResults } from './src/shared/native-chat-tool-pairing'\n export function createPipeline() {\n const project = createNativeChatMessageListProjection()\n return (messages) => {\n const projection = project(messages)\n const rows = [...projection.conversation, ...Array.from(projection.subagentRows.values()).flat().map(row => row.message)]\n const paired = rows.flatMap(row => {\n const tools = deriveNativeChatRowContent(row.blocks).tools\n return tools.length > 0 ? [pairNativeChatToolResults(tools)] : []\n })\n return { rows, projection, paired }\n }\n }\n"}}},{"key":"resolveDir","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":19,"end_line":19,"start":795,"end":837},"resolved":{"kind":"call-source","callee":"path.resolve","arguments":[{"kind":"source-expression","source":"import.meta.dirname"},{"kind":"string","value":"../.."}],"source":"path.resolve(import.meta.dirname, '../..')"}}},{"key":"sourcefile","value":{"kind":"string","value":"fold-benchmark-entry.ts"}},{"key":"loader","value":{"kind":"string","value":"ts"}}]}},{"key":"bundle","value":{"kind":"boolean","value":true}},{"key":"write","value":{"kind":"boolean","value":false}},{"key":"platform","value":{"kind":"string","value":"node"}},{"key":"format","value":{"kind":"string","value":"esm"}},{"key":"plugins","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"exact-chat-source-snapshot"}},{"source":"setup(builder) {\n builder.onLoad({ filter: /\\.[cm]?[jt]sx?$/ }, ({ path: file }) => {\n const relative = path.relative(root, file).split(path.sep).join('/')\n if (!relative.startsWith('src/')) {\n return undefined\n }\n let source\n if (ref) {\n const read = runProcessSync({\n program: 'git',\n args: ['show', `${ref}:${relative}`],\n cwd: root,\n env: { ...process.env, ORCA_BACKGROUND_LAUNCH: '1' },\n timeoutMs: 30_000,\n maxOutputBytes: 2 * 1024 * 1024\n })\n if (read.code !== 0 || read.timedOut || read.outputTruncated) {\n throw new Error(describeProcessFailure(read))\n }\n source = read.stdout\n } else {\n source = readFileSync(file, 'utf8')\n }\n modules.set(relative, hash(source))\n return { contents: source, loader: file.endsWith('tsx') ? 'tsx' : 'ts' }\n })\n }"}]}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { stdin: { contents: entry, resolveDir: root, sourcefile: 'fold-benchmark-entry.ts', loader: 'ts' }, bun. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:100:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":100,"end_line":107,"start":3629,"end":3928,"source":"runProcessSync({\n program: 'git',\n args: ['show', `${ref}:${relative}`],\n cwd: root,\n env: { ...process.env, ORCA_BACKGROUND_LAUNCH: '1' },\n timeoutMs: 30_000,\n maxOutputBytes: 2 * 1024 * 1024\n })","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":100,"end_line":107,"start":3629,"end":3928},"binding":"runProcessSync","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[{"index":1,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":100,"end_line":107,"start":3644,"end":3927,"source":"{\n program: 'git',\n args: ['show', `${ref}:${relative}`],\n cwd: root,\n env: { ...process.env, ORCA_BACKGROUND_LAUNCH: '1' },\n timeoutMs: 30_000,\n maxOutputBytes: 2 * 1024 * 1024\n }","value":{"kind":"object","value":[{"key":"program","value":{"kind":"string","value":"git"}},{"key":"args","value":{"kind":"array","value":[{"kind":"string","value":"show"},{"kind":"source-expression","source":"`${ref}:${relative}`"}]}},{"key":"cwd","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":19,"end_line":19,"start":795,"end":837},"resolved":{"kind":"call-source","callee":"path.resolve","arguments":[{"kind":"source-expression","source":"import.meta.dirname"},{"kind":"string","value":"../.."}],"source":"path.resolve(import.meta.dirname, '../..')"}}},{"key":"env","value":{"kind":"object","value":[{"source":"...process.env"},{"key":"ORCA_BACKGROUND_LAUNCH","value":{"kind":"string","value":"1"}}]}},{"key":"timeoutMs","value":{"kind":"number","value":30000}},{"key":"maxOutputBytes","value":{"kind":"source-expression","source":"2 * 1024 * 1024"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { program: 'git', args: ['show', `${ref}:${relative}`], cwd: root, env: { ... Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:109:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":109,"end_line":109,"start":4039,"end":4067,"source":"describeProcessFailure(read)","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":109,"end_line":109,"start":4039,"end":4067},"binding":"describeProcessFailure","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[{"index":1,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":109,"end_line":109,"start":4062,"end":4066,"source":"read","value":{"kind":"reference","source":"read","resolved_at":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":100,"end_line":107,"start":3629,"end":3928},"resolved":{"kind":"call-source","callee":"runProcessSync","arguments":[{"kind":"object","value":[{"key":"program","value":{"kind":"string","value":"git"}},{"key":"args","value":{"kind":"array","value":[{"kind":"string","value":"show"},{"kind":"source-expression","source":"`${ref}:${relative}`"}]}},{"key":"cwd","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":19,"end_line":19,"start":795,"end":837},"resolved":{"kind":"call-source","callee":"path.resolve","arguments":[{"kind":"source-expression","source":"import.meta.dirname"},{"kind":"string","value":"../.."}],"source":"path.resolve(import.meta.dirname, '../..')"}}},{"key":"env","value":{"kind":"object","value":[{"source":"...process.env"},{"key":"ORCA_BACKGROUND_LAUNCH","value":{"kind":"string","value":"1"}}]}},{"key":"timeoutMs","value":{"kind":"number","value":30000}},{"key":"maxOutputBytes","value":{"kind":"source-expression","source":"2 * 1024 * 1024"}}]}],"source":"runProcessSync({\n program: 'git',\n args: ['show', `${ref}:${relative}`],\n cwd: root,\n env: { ...process.env, ORCA_BACKGROUND_LAUNCH: '1' },\n timeoutMs: 30_000,\n maxOutputBytes: 2 * 1024 * 1024\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: read. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:148:fixture-or-oracle-declaration:5","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":148,"end_line":148,"start":5134,"end":5187,"source":"['fold', 'projection-and-pairing', 'refold']","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":148,"end_line":148,"start":5143,"end":5187},"binding":"stages","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":148,"end_line":148,"start":5144,"end":5150,"source":"'fold'","value":{"kind":"string","value":"fold"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'fold'. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":148,"end_line":148,"start":5152,"end":5176,"source":"'projection-and-pairing'","value":{"kind":"string","value":"projection-and-pairing"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'projection-and-pairing'. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":148,"end_line":148,"start":5178,"end":5186,"source":"'refold'","value":{"kind":"string","value":"refold"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'refold'. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:149:fixture-or-oracle-declaration:6","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":149,"end_line":149,"start":5194,"end":5206,"source":"[]","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":149,"end_line":149,"start":5204,"end":5206},"binding":"results","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:163:for-of:7","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":163,"end_line":252,"start":5582,"end":8914,"source":"[32, 512, 8192]","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":163,"end_line":163,"start":5602,"end":5617},"binding":"const count","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":163,"end_line":163,"start":5603,"end":5605,"source":"32","value":{"kind":"number","value":32},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 32. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":163,"end_line":163,"start":5607,"end":5610,"source":"512","value":{"kind":"number","value":512},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 512. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":163,"end_line":163,"start":5612,"end":5616,"source":"8192","value":{"kind":"number","value":8192},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 8192. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:164:for-of:8","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":164,"end_line":251,"start":5623,"end":8912,"source":"createFoldWorkloads(count)","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":164,"end_line":164,"start":5646,"end":5672},"binding":"const workload","resolution":[],"dynamic_source":"createFoldWorkloads(count)","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:164:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":164,"end_line":164,"start":5646,"end":5672,"source":"createFoldWorkloads(count)","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":164,"end_line":164,"start":5646,"end":5672},"binding":"createFoldWorkloads","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[{"index":1,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":164,"end_line":164,"start":5666,"end":5671,"source":"count","value":{"kind":"source-expression","source":"count"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: count. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:173:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":173,"end_line":173,"start":5983,"end":6037,"source":"assertFoldConservesEvidence(workload.messages, folded)","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":173,"end_line":173,"start":5983,"end":6037},"binding":"assertFoldConservesEvidence","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[{"index":1,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":173,"end_line":173,"start":6011,"end":6028,"source":"workload.messages","value":{"kind":"source-expression","source":"workload.messages"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: workload.messages. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":173,"end_line":173,"start":6030,"end":6036,"source":"folded","value":{"kind":"reference","source":"folded","resolved_at":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":171,"end_line":171,"start":5903,"end":5938},"resolved":{"kind":"call-source","callee":"loaded[arm].fold","arguments":[{"kind":"source-expression","source":"workload.messages"}],"source":"loaded[arm].fold(workload.messages)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: folded. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:176:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":176,"end_line":176,"start":6130,"end":6157,"source":"summarizeFoldOutput(folded)","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":176,"end_line":176,"start":6130,"end":6157},"binding":"summarizeFoldOutput","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[{"index":1,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":176,"end_line":176,"start":6150,"end":6156,"source":"folded","value":{"kind":"reference","source":"folded","resolved_at":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":171,"end_line":171,"start":5903,"end":5938},"resolved":{"kind":"call-source","callee":"loaded[arm].fold","arguments":[{"kind":"source-expression","source":"workload.messages"}],"source":"loaded[arm].fold(workload.messages)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: folded. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:179:for-of:12","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":179,"end_line":249,"start":6178,"end":8840,"source":"stages","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":179,"end_line":179,"start":6198,"end":6204},"binding":"const stage","resolution":[{"name":"stages","path":"config/scripts/native-chat-fold-benchmark.mjs","line":148,"end_line":148,"start":5143,"end":5187,"declaration_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":148,"end_line":148,"start":5134,"end":5187},"source":"['fold', 'projection-and-pairing', 'refold']"}],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":148,"end_line":148,"start":5144,"end":5150,"source":"'fold'","value":{"kind":"string","value":"fold"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'fold'. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":148,"end_line":148,"start":5152,"end":5176,"source":"'projection-and-pairing'","value":{"kind":"string","value":"projection-and-pairing"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'projection-and-pairing'. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":148,"end_line":148,"start":5178,"end":5186,"source":"'refold'","value":{"kind":"string","value":"refold"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'refold'. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:186:counted-loop:13","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":186,"end_line":190,"start":6492,"end":6651,"source":"let warmup = 0; warmup < 3; warmup += 1","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":186,"end_line":186,"start":6497,"end":6536},"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[],"policy":"Exact original fixed/runtime loop bounds and initializer retained; generated repetitions are workload policy, not additional declarations or runtime validations.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:187:for-of:14","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":187,"end_line":189,"start":6548,"end":6643,"source":"Object.keys(loaded)","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":187,"end_line":187,"start":6566,"end":6585},"binding":"const arm","resolution":[],"transform":"Object.keys(loaded)","dynamic_source":"Object","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:192:fixture-or-oracle-declaration:15","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":192,"end_line":192,"start":6731,"end":6747,"source":"[]","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":192,"end_line":192,"start":6745,"end":6747},"binding":"comparisons","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:193:for-of:16","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":193,"end_line":214,"start":6754,"end":7659,"source":"['original', 'published']","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":193,"end_line":193,"start":6777,"end":6802},"binding":"const baseline","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":193,"end_line":193,"start":6778,"end":6788,"source":"'original'","value":{"kind":"string","value":"original"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'original'. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":193,"end_line":193,"start":6790,"end":6801,"source":"'published'","value":{"kind":"string","value":"published"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'published'. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:194:fixture-or-oracle-declaration:17","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":194,"end_line":194,"start":6820,"end":6861,"source":"{ [baseline]: [], current: [] }","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":194,"end_line":194,"start":6830,"end":6861},"binding":"samples","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[{"index":1,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":194,"end_line":194,"start":6832,"end":6846,"source":"[baseline]: []","value":{"kind":"property","key":{"source":"[baseline]"},"value":{"kind":"array","value":[]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: [baseline]: []. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":194,"end_line":194,"start":6848,"end":6859,"source":"current: []","value":{"kind":"property","key":"current","value":{"kind":"array","value":[]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: current: []. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:195:for-of:18","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":195,"end_line":205,"start":6870,"end":7368,"source":"buildCounterbalancedSchedule(6, baseline, 'current')","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":195,"end_line":195,"start":6889,"end":6941},"binding":"const pair","resolution":[],"dynamic_source":"buildCounterbalancedSchedule(6, baseline, 'current')","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:195:inline-api-or-fixture-input:19","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":195,"end_line":195,"start":6889,"end":6941,"source":"buildCounterbalancedSchedule(6, baseline, 'current')","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":195,"end_line":195,"start":6889,"end":6941},"binding":"buildCounterbalancedSchedule","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[{"index":1,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":195,"end_line":195,"start":6918,"end":6919,"source":"6","value":{"kind":"number","value":6},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 6. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":195,"end_line":195,"start":6921,"end":6929,"source":"baseline","value":{"kind":"source-expression","source":"baseline"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: baseline. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":195,"end_line":195,"start":6931,"end":6940,"source":"'current'","value":{"kind":"string","value":"current"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'current'. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:196:for-of:20","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":196,"end_line":204,"start":6955,"end":7358,"source":"pair","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":196,"end_line":196,"start":6973,"end":6977},"binding":"const arm","resolution":[],"dynamic_source":"pair","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:199:counted-loop:21","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":199,"end_line":201,"start":7062,"end":7190,"source":"let repeat = 0; repeat < iterations; repeat += 1","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":199,"end_line":199,"start":7067,"end":7115},"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[],"policy":"Exact original fixed/runtime loop bounds and initializer retained; generated repetitions are workload policy, not additional declarations or runtime validations.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:211:inline-api-or-fixture-input:22","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":211,"end_line":211,"start":7593,"end":7626,"source":"summarizeBenchmarkSamples(values)","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":211,"end_line":211,"start":7593,"end":7626},"binding":"summarizeBenchmarkSamples","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[{"index":1,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":211,"end_line":211,"start":7619,"end":7625,"source":"values","value":{"kind":"source-expression","source":"values"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: values. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:215:fixture-or-oracle-declaration:23","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":215,"end_line":215,"start":7672,"end":7692,"source":"{}","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":215,"end_line":215,"start":7690,"end":7692},"binding":"operationsCount","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:216:fixture-or-oracle-declaration:24","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":216,"end_line":216,"start":7705,"end":7716,"source":"{}","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":216,"end_line":216,"start":7714,"end":7716},"binding":"memory","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:217:for-of:25","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":217,"end_line":238,"start":7723,"end":8601,"source":"Object.keys(loaded)","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":217,"end_line":217,"start":7741,"end":7760},"binding":"const arm","resolution":[],"transform":"Object.keys(loaded)","dynamic_source":"Object","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:218:fixture-or-oracle-declaration:26","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":218,"end_line":218,"start":7778,"end":7798,"source":"{ count: 0 }","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":218,"end_line":218,"start":7786,"end":7798},"binding":"reads","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[{"index":1,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":218,"end_line":218,"start":7788,"end":7796,"source":"count: 0","value":{"kind":"property","key":"count","value":{"kind":"number","value":0}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: count: 0. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:219:inline-api-or-fixture-input:27","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":219,"end_line":219,"start":7823,"end":7856,"source":"createFoldWorkloads(count, reads)","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":219,"end_line":219,"start":7823,"end":7856},"binding":"createFoldWorkloads","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[{"index":1,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":219,"end_line":219,"start":7843,"end":7848,"source":"count","value":{"kind":"source-expression","source":"count"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: count. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":219,"end_line":219,"start":7850,"end":7855,"source":"reads","value":{"kind":"reference","source":"reads","resolved_at":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":218,"end_line":218,"start":7786,"end":7798},"resolved":{"kind":"object","value":[{"key":"count","value":{"kind":"number","value":0}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: reads. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:223:inline-api-or-fixture-input:28","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":223,"end_line":223,"start":8015,"end":8071,"source":"countFoldOperations(countedRun, counted.messages, reads)","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":223,"end_line":223,"start":8015,"end":8071},"binding":"countFoldOperations","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[{"index":1,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":223,"end_line":223,"start":8035,"end":8045,"source":"countedRun","value":{"kind":"reference","source":"countedRun","resolved_at":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":222,"end_line":222,"start":7950,"end":7989},"resolved":{"kind":"call-source","callee":"operation","arguments":[{"kind":"source-expression","source":"arm"},{"kind":"source-expression","source":"stage"},{"kind":"source-expression","source":"counted.messages"}],"source":"operation(arm, stage, counted.messages)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: countedRun. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":223,"end_line":223,"start":8047,"end":8063,"source":"counted.messages","value":{"kind":"source-expression","source":"counted.messages"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: counted.messages. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/native-chat-fold-benchmark.mjs","line":223,"end_line":223,"start":8065,"end":8070,"source":"reads","value":{"kind":"reference","source":"reads","resolved_at":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":218,"end_line":218,"start":7786,"end":7798},"resolved":{"kind":"object","value":[{"key":"count","value":{"kind":"number","value":0}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: reads. Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:228:fixture-or-oracle-declaration:29","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":228,"end_line":228,"start":8220,"end":8232,"source":"[]","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":228,"end_line":228,"start":8230,"end":8232},"binding":"samples","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}},{"id":"35:229:counted-loop:30","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-fold-benchmark.mjs","line":229,"end_line":236,"start":8241,"end":8563,"source":"let sample = 0; sample < 5; sample += 1","input_position":{"path":"config/scripts/native-chat-fold-benchmark.mjs","line":229,"end_line":229,"start":8246,"end":8285},"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark executes real fold, projection and pairing from hashed source snapshots; validates published/current equality, evidence conservation and refold behavior outside timing. Fixed historical arms are intentional reproducibility inputs.","rows":[],"policy":"Exact original fixed/runtime loop bounds and initializer retained; generated repetitions are workload policy, not additional declarations or runtime validations.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e"}}],"original_review_sha256":"b4968db11759439031c063e21e61805af9ab844cc563442c5bfa118a86da8c84","reviewer":"audit_config","reviewed_sha256":"36c8b4dcd96958c42826a986321630599d0d366b3fe2fa769ec9b16d1275792e","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/native-chat-fold-benchmark.mjs","final_declarations":0,"current_controls":{"path":"config/scripts/native-chat-fold-benchmark.mjs","each":[],"for_of":[{"path":"config/scripts/native-chat-fold-benchmark.mjs","start":5602,"end":5617,"line":163,"end_line":163,"source":"[32, 512, 8192]","binding":"const count","changed":false},{"path":"config/scripts/native-chat-fold-benchmark.mjs","start":5646,"end":5672,"line":164,"end_line":164,"source":"createFoldWorkloads(count)","binding":"const workload","changed":false},{"path":"config/scripts/native-chat-fold-benchmark.mjs","start":6198,"end":6204,"line":179,"end_line":179,"source":"stages","binding":"const stage","changed":false},{"path":"config/scripts/native-chat-fold-benchmark.mjs","start":6566,"end":6585,"line":187,"end_line":187,"source":"Object.keys(loaded)","binding":"const arm","changed":false},{"path":"config/scripts/native-chat-fold-benchmark.mjs","start":6777,"end":6802,"line":193,"end_line":193,"source":"['original', 'published']","binding":"const baseline","changed":false},{"path":"config/scripts/native-chat-fold-benchmark.mjs","start":6889,"end":6941,"line":195,"end_line":195,"source":"buildCounterbalancedSchedule(6, baseline, 'current')","binding":"const pair","changed":false},{"path":"config/scripts/native-chat-fold-benchmark.mjs","start":6973,"end":6977,"line":196,"end_line":196,"source":"pair","binding":"const arm","changed":false},{"path":"config/scripts/native-chat-fold-benchmark.mjs","start":7741,"end":7760,"line":217,"end_line":217,"source":"Object.keys(loaded)","binding":"const arm","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/scripts/benchmark-sample-summary.mjs","config/scripts/counterbalanced-benchmark-schedule.mjs","config/scripts/native-chat-fold-benchmark-workloads.mjs","config/scripts/process-failure-message.mjs","src/shared/native-chat-tool-fold.ts","src/shared/native-chat-tool-pairing.ts","src/shared/native-chat-tool-pairs.ts"],"runtime_validation":[]}
+{"path":"config/scripts/native-chat-live-session-benchmark.ts","sha256":"3f1418b842516a12adec22e490692aa9de9c21b140f639755810715b258f8aae","declarations":0,"signals":["auxiliary"],"status":"reviewed","index":36,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"3f1418b842516a12adec22e490692aa9de9c21b140f639755810715b258f8aae","cases":[],"lines":339,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":false,"decision":"fix","rationale":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","manual_workload_plan":"Remove oldEmptyPending, empty-pending and combined timing arms plus pending-only imports/sinks/checksum helpers. Keep the five real message-update fixtures and actual status-only assembler/live-session comparison, all deep parity and escaping-output/checksum safeguards.","planned_changes":[{"kind":"manual-benchmark","decision":"fix","change":"Remove oldEmptyPending, empty-pending and combined timing arms plus pending-only imports/sinks/checksum helpers. Keep the five real message-update fixtures and actual status-only assembler/live-session comparison, all deep parity and escaping-output/checksum safeguards."}],"production_evidence":["src/renderer/src/components/native-chat/native-chat-live-message-preparation.ts","src/renderer/src/components/native-chat/native-chat-live-status.ts","src/renderer/src/components/native-chat/native-chat-pending-occurrence.ts","src/renderer/src/components/native-chat/native-chat-pending.ts","src/renderer/src/components/native-chat/native-chat-session-assembler.ts","src/shared/native-chat-agent-profiles.ts","src/shared/native-chat-types.ts","src/shared/native-chat/native-chat-command-envelope.ts"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"36:75:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":75,"end_line":79,"start":3304,"end":3423,"source":"assembleNativeChatSession({\n sources: { transcript: messages },\n sessionId: 'benchmark',\n agent: 'claude'\n })","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":75,"end_line":79,"start":3304,"end":3423},"binding":"assembleNativeChatSession","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[{"index":1,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":75,"end_line":79,"start":3330,"end":3422,"source":"{\n sources: { transcript: messages },\n sessionId: 'benchmark',\n agent: 'claude'\n }","value":{"kind":"object","value":[{"key":"sources","value":{"kind":"object","value":[{"key":"transcript","value":{"kind":"source-expression","source":"messages"}}]}},{"key":"sessionId","value":{"kind":"string","value":"benchmark"}},{"key":"agent","value":{"kind":"string","value":"claude"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { sources: { transcript: messages }, sessionId: 'benchmark', agent: 'claude' }. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:84:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":84,"end_line":84,"start":3551,"end":3590,"source":"getVerifiedNativeChatCommands('claude')","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":84,"end_line":84,"start":3551,"end":3590},"binding":"getVerifiedNativeChatCommands","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[{"index":1,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":84,"end_line":84,"start":3581,"end":3589,"source":"'claude'","value":{"kind":"string","value":"claude"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'claude'. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:86:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":86,"end_line":86,"start":3649,"end":3704,"source":"surfaceSkillInvocationUserTurns(messages, commandNames)","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":86,"end_line":86,"start":3649,"end":3704},"binding":"surfaceSkillInvocationUserTurns","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[{"index":1,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":86,"end_line":86,"start":3681,"end":3689,"source":"messages","value":{"kind":"source-expression","source":"messages"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: messages. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":86,"end_line":86,"start":3691,"end":3703,"source":"commandNames","value":{"kind":"reference","source":"commandNames","resolved_at":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":83,"end_line":85,"start":3538,"end":3625},"resolved":{"kind":"source-expression","source":"new Set(\n getVerifiedNativeChatCommands('claude').map((command) => command.name)\n )"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: commandNames. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:90:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":90,"end_line":95,"start":3806,"end":3973,"source":"mergeNativeChatLiveSession({\n messages: prepareNativeChatLiveMessages(messages, 'claude'),\n sessionId: 'benchmark',\n agent: 'claude',\n hookState: null\n })","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":90,"end_line":95,"start":3806,"end":3973},"binding":"mergeNativeChatLiveSession","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[{"index":1,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":90,"end_line":95,"start":3833,"end":3972,"source":"{\n messages: prepareNativeChatLiveMessages(messages, 'claude'),\n sessionId: 'benchmark',\n agent: 'claude',\n hookState: null\n }","value":{"kind":"object","value":[{"key":"messages","value":{"kind":"call-source","callee":"prepareNativeChatLiveMessages","arguments":[{"kind":"source-expression","source":"messages"},{"kind":"string","value":"claude"}],"source":"prepareNativeChatLiveMessages(messages, 'claude')"}},{"key":"sessionId","value":{"kind":"string","value":"benchmark"}},{"key":"agent","value":{"kind":"string","value":"claude"}},{"key":"hookState","value":{"kind":"null","value":null}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { messages: prepareNativeChatLiveMessages(messages, 'claude'), sessionId: 'benchmark', agent: 'claude', hookState: null }. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:91:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":91,"end_line":91,"start":3849,"end":3898,"source":"prepareNativeChatLiveMessages(messages, 'claude')","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":91,"end_line":91,"start":3849,"end":3898},"binding":"prepareNativeChatLiveMessages","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[{"index":1,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":91,"end_line":91,"start":3879,"end":3887,"source":"messages","value":{"kind":"source-expression","source":"messages"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: messages. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":91,"end_line":91,"start":3889,"end":3897,"source":"'claude'","value":{"kind":"string","value":"claude"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'claude'. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:101:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":101,"end_line":101,"start":4251,"end":4287,"source":"matchingNativeChatUserRows(messages)","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":101,"end_line":101,"start":4251,"end":4287},"binding":"matchingNativeChatUserRows","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"remove","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[{"index":1,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":101,"end_line":101,"start":4278,"end":4286,"source":"messages","value":{"kind":"source-expression","source":"messages"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: messages. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:102:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":102,"end_line":102,"start":4309,"end":4358,"source":"selectPendingIndicesRepresentedByUserRows([], [])","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":102,"end_line":102,"start":4309,"end":4358},"binding":"selectPendingIndicesRepresentedByUserRows","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"remove","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[{"index":1,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":102,"end_line":102,"start":4351,"end":4353,"source":"[]","value":{"kind":"array","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: []. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":102,"end_line":102,"start":4355,"end":4357,"source":"[]","value":{"kind":"array","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: []. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:153:counted-loop:8","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":153,"end_line":155,"start":5977,"end":6078,"source":"let index = 0; index < iterations % values.length; index += 1","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":153,"end_line":153,"start":5982,"end":6043},"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[],"policy":"Exact original fixed/runtime loop bounds and initializer retained; generated repetitions are workload policy, not additional declarations or runtime validations.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:175:counted-loop:9","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":175,"end_line":177,"start":6755,"end":6851,"source":"let index = 0; index < iterations; index += 1","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":175,"end_line":175,"start":6760,"end":6805},"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[],"policy":"Exact original fixed/runtime loop bounds and initializer retained; generated repetitions are workload policy, not additional declarations or runtime validations.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:221:fixture-or-oracle-declaration:10","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":221,"end_line":221,"start":8262,"end":8292,"source":"[]","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":221,"end_line":221,"start":8290,"end":8292},"binding":"baselineSamples","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:222:fixture-or-oracle-declaration:11","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":222,"end_line":222,"start":8301,"end":8332,"source":"[]","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":222,"end_line":222,"start":8330,"end":8332},"binding":"optimizedSamples","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:223:counted-loop:12","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":223,"end_line":243,"start":8335,"end":9038,"source":"let round = 0; round < ROUNDS; round += 1","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":223,"end_line":223,"start":8340,"end":8381},"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[],"policy":"Exact original fixed/runtime loop bounds and initializer retained; generated repetitions are workload policy, not additional declarations or runtime validations.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:260:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":260,"end_line":265,"start":9810,"end":9962,"source":"benchmark(\n name,\n (index) => consumeSession(baselineSession(), index),\n (index) => consumeSession(optimizedSession(), index),\n expected\n )","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":260,"end_line":265,"start":9810,"end":9962},"binding":"benchmark","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[{"index":1,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":261,"end_line":261,"start":9825,"end":9829,"source":"name","value":{"kind":"source-expression","source":"name"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: name. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":262,"end_line":262,"start":9835,"end":9886,"source":"(index) => consumeSession(baselineSession(), index)","value":{"kind":"source-expression","source":"(index) => consumeSession(baselineSession(), index)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: (index) => consumeSession(baselineSession(), index). Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":263,"end_line":263,"start":9892,"end":9944,"source":"(index) => consumeSession(optimizedSession(), index)","value":{"kind":"source-expression","source":"(index) => consumeSession(optimizedSession(), index)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: (index) => consumeSession(optimizedSession(), index). Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":264,"end_line":264,"start":9950,"end":9958,"source":"expected","value":{"kind":"reference","source":"expected","resolved_at":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":259,"end_line":259,"start":9767,"end":9807},"resolved":{"kind":"call-source","callee":"sessionExpectedChecksum","arguments":[{"kind":"reference","source":"expectedSession","resolved_at":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":257,"end_line":257,"start":9646,"end":9663},"resolved":{"kind":"call-source","callee":"baselineSession","arguments":[],"source":"baselineSession()"}}],"source":"sessionExpectedChecksum(expectedSession)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: expected. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:269:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":269,"end_line":273,"start":10053,"end":10183,"source":"benchmarkSessionArms(\n name,\n () => legacyMessageUpdateSession(messages),\n () => directMessageUpdateSession(messages)\n )","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":269,"end_line":273,"start":10053,"end":10183},"binding":"benchmarkSessionArms","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[{"index":1,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":270,"end_line":270,"start":10079,"end":10083,"source":"name","value":{"kind":"source-expression","source":"name"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: name. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":271,"end_line":271,"start":10089,"end":10131,"source":"() => legacyMessageUpdateSession(messages)","value":{"kind":"source-expression","source":"() => legacyMessageUpdateSession(messages)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: () => legacyMessageUpdateSession(messages). Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":272,"end_line":272,"start":10137,"end":10179,"source":"() => directMessageUpdateSession(messages)","value":{"kind":"source-expression","source":"() => directMessageUpdateSession(messages)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: () => directMessageUpdateSession(messages). Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:292:for-of:15","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":292,"end_line":294,"start":10866,"end":10951,"source":"fixtures","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":292,"end_line":292,"start":10897,"end":10905},"binding":"const [name, messages]","resolution":[{"name":"fixtures","path":"config/scripts/native-chat-live-session-benchmark.ts","line":277,"end_line":283,"start":10253,"end":10561,"declaration_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":277,"end_line":283,"start":10242,"end":10561},"source":"[\n ['300 x 2KB prose, no turnId', prose300],\n ['300 x 2KB prose, with turnId', proseFixture(300, 2_048, true)],\n ['300 tool-heavy, no turnId', toolFixture(300)],\n ['100 x 2KB prose, no turnId', proseFixture(100, 2_048, false)],\n ['500 x 2KB prose, no turnId', proseFixture(500, 2_048, false)]\n] as const"}],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":278,"end_line":278,"start":10257,"end":10297,"source":"['300 x 2KB prose, no turnId', prose300]","value":{"kind":"array","value":[{"kind":"string","value":"300 x 2KB prose, no turnId"},{"kind":"reference","source":"prose300","resolved_at":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":276,"end_line":276,"start":10204,"end":10235},"resolved":{"kind":"call-source","callee":"proseFixture","arguments":[{"kind":"number","value":300},{"kind":"number","value":2048},{"kind":"boolean","value":false}],"source":"proseFixture(300, 2_048, false)"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['300 x 2KB prose, no turnId', prose300]. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":279,"end_line":279,"start":10301,"end":10365,"source":"['300 x 2KB prose, with turnId', proseFixture(300, 2_048, true)]","value":{"kind":"array","value":[{"kind":"string","value":"300 x 2KB prose, with turnId"},{"kind":"call-source","callee":"proseFixture","arguments":[{"kind":"number","value":300},{"kind":"number","value":2048},{"kind":"boolean","value":true}],"source":"proseFixture(300, 2_048, true)"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['300 x 2KB prose, with turnId', proseFixture(300, 2_048, true)]. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":280,"end_line":280,"start":10369,"end":10416,"source":"['300 tool-heavy, no turnId', toolFixture(300)]","value":{"kind":"array","value":[{"kind":"string","value":"300 tool-heavy, no turnId"},{"kind":"call-source","callee":"toolFixture","arguments":[{"kind":"number","value":300}],"source":"toolFixture(300)"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['300 tool-heavy, no turnId', toolFixture(300)]. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":281,"end_line":281,"start":10420,"end":10483,"source":"['100 x 2KB prose, no turnId', proseFixture(100, 2_048, false)]","value":{"kind":"array","value":[{"kind":"string","value":"100 x 2KB prose, no turnId"},{"kind":"call-source","callee":"proseFixture","arguments":[{"kind":"number","value":100},{"kind":"number","value":2048},{"kind":"boolean","value":false}],"source":"proseFixture(100, 2_048, false)"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['100 x 2KB prose, no turnId', proseFixture(100, 2_048, false)]. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":282,"end_line":282,"start":10487,"end":10550,"source":"['500 x 2KB prose, no turnId', proseFixture(500, 2_048, false)]","value":{"kind":"array","value":[{"kind":"string","value":"500 x 2KB prose, no turnId"},{"kind":"call-source","callee":"proseFixture","arguments":[{"kind":"number","value":500},{"kind":"number","value":2048},{"kind":"boolean","value":false}],"source":"proseFixture(500, 2_048, false)"}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['500 x 2KB prose, no turnId', proseFixture(500, 2_048, false)]. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:293:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":293,"end_line":293,"start":10911,"end":10949,"source":"benchmarkMessageUpdate(name, messages)","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":293,"end_line":293,"start":10911,"end":10949},"binding":"benchmarkMessageUpdate","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[{"index":1,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":293,"end_line":293,"start":10934,"end":10938,"source":"name","value":{"kind":"source-expression","source":"name"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: name. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":293,"end_line":293,"start":10940,"end":10948,"source":"messages","value":{"kind":"source-expression","source":"messages"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: messages. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:296:inline-api-or-fixture-input:17","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":296,"end_line":306,"start":10953,"end":11191,"source":"benchmarkSessionArms(\n '300 x 2KB status-only frame',\n () => legacySession(prose300),\n () =>\n mergeNativeChatLiveSession({\n messages: prose300,\n sessionId: 'benchmark',\n agent: 'claude',\n hookState: null\n })\n)","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":296,"end_line":306,"start":10953,"end":11191},"binding":"benchmarkSessionArms","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[{"index":1,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":297,"end_line":297,"start":10977,"end":11006,"source":"'300 x 2KB status-only frame'","value":{"kind":"string","value":"300 x 2KB status-only frame"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: '300 x 2KB status-only frame'. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":298,"end_line":298,"start":11010,"end":11039,"source":"() => legacySession(prose300)","value":{"kind":"source-expression","source":"() => legacySession(prose300)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: () => legacySession(prose300). Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":299,"end_line":305,"start":11043,"end":11189,"source":"() =>\n mergeNativeChatLiveSession({\n messages: prose300,\n sessionId: 'benchmark',\n agent: 'claude',\n hookState: null\n })","value":{"kind":"source-expression","source":"() =>\n mergeNativeChatLiveSession({\n messages: prose300,\n sessionId: 'benchmark',\n agent: 'claude',\n hookState: null\n })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: () => mergeNativeChatLiveSession({ messages: prose300, sessionId: 'benchmark', agent: 'claude', hookState: null . Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:300:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":300,"end_line":305,"start":11053,"end":11189,"source":"mergeNativeChatLiveSession({\n messages: prose300,\n sessionId: 'benchmark',\n agent: 'claude',\n hookState: null\n })","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":300,"end_line":305,"start":11053,"end":11189},"binding":"mergeNativeChatLiveSession","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[{"index":1,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":300,"end_line":305,"start":11080,"end":11188,"source":"{\n messages: prose300,\n sessionId: 'benchmark',\n agent: 'claude',\n hookState: null\n }","value":{"kind":"object","value":[{"key":"messages","value":{"kind":"reference","source":"prose300","resolved_at":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":276,"end_line":276,"start":10204,"end":10235},"resolved":{"kind":"call-source","callee":"proseFixture","arguments":[{"kind":"number","value":300},{"kind":"number","value":2048},{"kind":"boolean","value":false}],"source":"proseFixture(300, 2_048, false)"}}},{"key":"sessionId","value":{"kind":"string","value":"benchmark"}},{"key":"agent","value":{"kind":"string","value":"claude"}},{"key":"hookState","value":{"kind":"null","value":null}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { messages: prose300, sessionId: 'benchmark', agent: 'claude', hookState: null }. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:308:inline-api-or-fixture-input:19","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":308,"end_line":308,"start":11209,"end":11245,"source":"pendingSendsAsMessages([], prose300)","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":308,"end_line":308,"start":11209,"end":11245},"binding":"pendingSendsAsMessages","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"remove","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[{"index":1,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":308,"end_line":308,"start":11232,"end":11234,"source":"[]","value":{"kind":"array","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: []. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":308,"end_line":308,"start":11236,"end":11244,"source":"prose300","value":{"kind":"reference","source":"prose300","resolved_at":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":276,"end_line":276,"start":10204,"end":10235},"resolved":{"kind":"call-source","callee":"proseFixture","arguments":[{"kind":"number","value":300},{"kind":"number","value":2048},{"kind":"boolean","value":false}],"source":"proseFixture(300, 2_048, false)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: prose300. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:309:inline-api-or-fixture-input:20","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":309,"end_line":314,"start":11274,"end":11490,"source":"benchmark(\n '300 x 2KB empty pending',\n (index) => consumePendingOutput(oldEmptyPending(prose300), index),\n (index) => consumePendingOutput(pendingSendsAsMessages([], prose300), index),\n pendingExpectedChecksum\n)","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":309,"end_line":314,"start":11274,"end":11490},"binding":"benchmark","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"remove","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[{"index":1,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":310,"end_line":310,"start":11287,"end":11312,"source":"'300 x 2KB empty pending'","value":{"kind":"string","value":"300 x 2KB empty pending"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: '300 x 2KB empty pending'. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"removed-self-implemented-benchmark-arm","reason":"Removed the handwritten oldEmptyPending baseline,empty-pending/combined arms and pending-only sinks/checksum helpers. All5 actual message-update fixtures and the actual status-only assembler/live-session arm retain deep parity and checksum/escaping guards."}},{"index":2,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":311,"end_line":311,"start":11316,"end":11381,"source":"(index) => consumePendingOutput(oldEmptyPending(prose300), index)","value":{"kind":"source-expression","source":"(index) => consumePendingOutput(oldEmptyPending(prose300), index)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: (index) => consumePendingOutput(oldEmptyPending(prose300), index). Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"removed-self-implemented-benchmark-arm","reason":"Removed the handwritten oldEmptyPending baseline,empty-pending/combined arms and pending-only sinks/checksum helpers. All5 actual message-update fixtures and the actual status-only assembler/live-session arm retain deep parity and checksum/escaping guards."}},{"index":3,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":312,"end_line":312,"start":11385,"end":11461,"source":"(index) => consumePendingOutput(pendingSendsAsMessages([], prose300), index)","value":{"kind":"source-expression","source":"(index) => consumePendingOutput(pendingSendsAsMessages([], prose300), index)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: (index) => consumePendingOutput(pendingSendsAsMessages([], prose300), index). Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"removed-self-implemented-benchmark-arm","reason":"Removed the handwritten oldEmptyPending baseline,empty-pending/combined arms and pending-only sinks/checksum helpers. All5 actual message-update fixtures and the actual status-only assembler/live-session arm retain deep parity and checksum/escaping guards."}},{"index":4,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":313,"end_line":313,"start":11465,"end":11488,"source":"pendingExpectedChecksum","value":{"kind":"source-expression","source":"pendingExpectedChecksum"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: pendingExpectedChecksum. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"removed-self-implemented-benchmark-arm","reason":"Removed the handwritten oldEmptyPending baseline,empty-pending/combined arms and pending-only sinks/checksum helpers. All5 actual message-update fixtures and the actual status-only assembler/live-session arm retain deep parity and checksum/escaping guards."}}],"implementation_rows":[{"index":1,"disposition":"removed-self-implemented-benchmark-arm","reason":"Removed the handwritten oldEmptyPending baseline,empty-pending/combined arms and pending-only sinks/checksum helpers. All5 actual message-update fixtures and the actual status-only assembler/live-session arm retain deep parity and checksum/escaping guards."},{"index":2,"disposition":"removed-self-implemented-benchmark-arm","reason":"Removed the handwritten oldEmptyPending baseline,empty-pending/combined arms and pending-only sinks/checksum helpers. All5 actual message-update fixtures and the actual status-only assembler/live-session arm retain deep parity and checksum/escaping guards."},{"index":3,"disposition":"removed-self-implemented-benchmark-arm","reason":"Removed the handwritten oldEmptyPending baseline,empty-pending/combined arms and pending-only sinks/checksum helpers. All5 actual message-update fixtures and the actual status-only assembler/live-session arm retain deep parity and checksum/escaping guards."},{"index":4,"disposition":"removed-self-implemented-benchmark-arm","reason":"Removed the handwritten oldEmptyPending baseline,empty-pending/combined arms and pending-only sinks/checksum helpers. All5 actual message-update fixtures and the actual status-only assembler/live-session arm retain deep parity and checksum/escaping guards."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:312:inline-api-or-fixture-input:21","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":312,"end_line":312,"start":11417,"end":11453,"source":"pendingSendsAsMessages([], prose300)","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":312,"end_line":312,"start":11417,"end":11453},"binding":"pendingSendsAsMessages","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"remove","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[{"index":1,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":312,"end_line":312,"start":11440,"end":11442,"source":"[]","value":{"kind":"array","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: []. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":312,"end_line":312,"start":11444,"end":11452,"source":"prose300","value":{"kind":"reference","source":"prose300","resolved_at":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":276,"end_line":276,"start":10204,"end":10235},"resolved":{"kind":"call-source","callee":"proseFixture","arguments":[{"kind":"number","value":300},{"kind":"number","value":2048},{"kind":"boolean","value":false}],"source":"proseFixture(300, 2_048, false)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: prose300. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:317:inline-api-or-fixture-input:22","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":317,"end_line":326,"start":11586,"end":12003,"source":"benchmark(\n '300 x 2KB combined',\n (index) =>\n consumeSession(legacyMessageUpdateSession(prose300), index) +\n consumePendingOutput(oldEmptyPending(prose300), index),\n (index) =>\n consumeSession(directMessageUpdateSession(prose300), index) +\n consumePendingOutput(pendingSendsAsMessages([], prose300), index),\n (iterations) => combinedSessionExpected(iterations) + pendingExpectedChecksum(iterations)\n)","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":317,"end_line":326,"start":11586,"end":12003},"binding":"benchmark","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"remove","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[{"index":1,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":318,"end_line":318,"start":11599,"end":11619,"source":"'300 x 2KB combined'","value":{"kind":"string","value":"300 x 2KB combined"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: '300 x 2KB combined'. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"removed-self-implemented-benchmark-arm","reason":"Removed the handwritten oldEmptyPending baseline,empty-pending/combined arms and pending-only sinks/checksum helpers. All5 actual message-update fixtures and the actual status-only assembler/live-session arm retain deep parity and checksum/escaping guards."}},{"index":2,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":319,"end_line":321,"start":11623,"end":11758,"source":"(index) =>\n consumeSession(legacyMessageUpdateSession(prose300), index) +\n consumePendingOutput(oldEmptyPending(prose300), index)","value":{"kind":"source-expression","source":"(index) =>\n consumeSession(legacyMessageUpdateSession(prose300), index) +\n consumePendingOutput(oldEmptyPending(prose300), index)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: (index) => consumeSession(legacyMessageUpdateSession(prose300), index) + consumePendingOutput(oldEmptyPending(prose300), index). Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"removed-self-implemented-benchmark-arm","reason":"Removed the handwritten oldEmptyPending baseline,empty-pending/combined arms and pending-only sinks/checksum helpers. All5 actual message-update fixtures and the actual status-only assembler/live-session arm retain deep parity and checksum/escaping guards."}},{"index":3,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":322,"end_line":324,"start":11762,"end":11908,"source":"(index) =>\n consumeSession(directMessageUpdateSession(prose300), index) +\n consumePendingOutput(pendingSendsAsMessages([], prose300), index)","value":{"kind":"source-expression","source":"(index) =>\n consumeSession(directMessageUpdateSession(prose300), index) +\n consumePendingOutput(pendingSendsAsMessages([], prose300), index)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: (index) => consumeSession(directMessageUpdateSession(prose300), index) + consumePendingOutput(pendingSendsAsMessages([], prose300), . Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"removed-self-implemented-benchmark-arm","reason":"Removed the handwritten oldEmptyPending baseline,empty-pending/combined arms and pending-only sinks/checksum helpers. All5 actual message-update fixtures and the actual status-only assembler/live-session arm retain deep parity and checksum/escaping guards."}},{"index":4,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":325,"end_line":325,"start":11912,"end":12001,"source":"(iterations) => combinedSessionExpected(iterations) + pendingExpectedChecksum(iterations)","value":{"kind":"source-expression","source":"(iterations) => combinedSessionExpected(iterations) + pendingExpectedChecksum(iterations)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: (iterations) => combinedSessionExpected(iterations) + pendingExpectedChecksum(iterations). Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"removed-self-implemented-benchmark-arm","reason":"Removed the handwritten oldEmptyPending baseline,empty-pending/combined arms and pending-only sinks/checksum helpers. All5 actual message-update fixtures and the actual status-only assembler/live-session arm retain deep parity and checksum/escaping guards."}}],"implementation_rows":[{"index":1,"disposition":"removed-self-implemented-benchmark-arm","reason":"Removed the handwritten oldEmptyPending baseline,empty-pending/combined arms and pending-only sinks/checksum helpers. All5 actual message-update fixtures and the actual status-only assembler/live-session arm retain deep parity and checksum/escaping guards."},{"index":2,"disposition":"removed-self-implemented-benchmark-arm","reason":"Removed the handwritten oldEmptyPending baseline,empty-pending/combined arms and pending-only sinks/checksum helpers. All5 actual message-update fixtures and the actual status-only assembler/live-session arm retain deep parity and checksum/escaping guards."},{"index":3,"disposition":"removed-self-implemented-benchmark-arm","reason":"Removed the handwritten oldEmptyPending baseline,empty-pending/combined arms and pending-only sinks/checksum helpers. All5 actual message-update fixtures and the actual status-only assembler/live-session arm retain deep parity and checksum/escaping guards."},{"index":4,"disposition":"removed-self-implemented-benchmark-arm","reason":"Removed the handwritten oldEmptyPending baseline,empty-pending/combined arms and pending-only sinks/checksum helpers. All5 actual message-update fixtures and the actual status-only assembler/live-session arm retain deep parity and checksum/escaping guards."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}},{"id":"36:324:inline-api-or-fixture-input:23","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-live-session-benchmark.ts","line":324,"end_line":324,"start":11864,"end":11900,"source":"pendingSendsAsMessages([], prose300)","input_position":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":324,"end_line":324,"start":11864,"end":11900},"binding":"pendingSendsAsMessages","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"remove","reason":"Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","rows":[{"index":1,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":324,"end_line":324,"start":11887,"end":11889,"source":"[]","value":{"kind":"array","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: []. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-live-session-benchmark.ts","line":324,"end_line":324,"start":11891,"end":11899,"source":"prose300","value":{"kind":"reference","source":"prose300","resolved_at":{"path":"config/scripts/native-chat-live-session-benchmark.ts","line":276,"end_line":276,"start":10204,"end":10235},"resolved":{"kind":"call-source","callee":"proseFixture","arguments":[{"kind":"number","value":300},{"kind":"number","value":2048},{"kind":"boolean","value":false}],"source":"proseFixture(300, 2_048, false)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"remove","reason":"Remove this exact original inline-api-or-fixture-input control: prose300. Manual synthetic benchmark retains actual assembler/live-session API comparisons and upfront deep output parity; remove its handwritten old-empty-pending baseline and dependent synthetic arms.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27"}}],"original_review_sha256":"422ba6dec450d6965361a2b946cf57caf7fb9df2e9b77edc4052a4be0e21c426","reviewer":"audit_config","reviewed_sha256":"4947a98eda5392f65a35976673ef3c58778b3c9fbf577f71cbc6141fdce3af27","implementation_status":"implemented","manual_validation_executed":true,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/native-chat-live-session-benchmark.ts","final_declarations":0,"current_controls":{"path":"config/scripts/native-chat-live-session-benchmark.ts","each":[],"for_of":[{"path":"config/scripts/native-chat-live-session-benchmark.ts","start":9919,"end":9927,"line":270,"end_line":270,"source":"fixtures","binding":"const [name, messages]","changed":false}],"literal_nodes_without_original_source_match":[{"path":"config/scripts/native-chat-live-session-benchmark.ts","start":1582,"end":1597,"line":30,"end_line":30,"source":"{ value: null }","kind":"object"}]},"mutations":[]},"implemented_changes":[{"kind":"manual-benchmark","decision":"fix","change":"Remove oldEmptyPending, empty-pending and combined timing arms plus pending-only imports/sinks/checksum helpers. Keep the five real message-update fixtures and actual status-only assembler/live-session comparison, all deep parity and escaping-output/checksum safeguards."}],"manual_implementation_notes":["Focused TypeScript validation also exposed existing missing background-task narrowing and closure-assigned sink narrowing. The benchmark now reads background task taskId explicitly and uses a typed sink object; all6 retained benchmark cases and deep parity/checksum guards passed."],"evidence":["src/renderer/src/components/native-chat/native-chat-live-message-preparation.ts","src/renderer/src/components/native-chat/native-chat-live-status.ts","src/renderer/src/components/native-chat/native-chat-pending-occurrence.ts","src/renderer/src/components/native-chat/native-chat-pending.ts","src/renderer/src/components/native-chat/native-chat-session-assembler.ts","src/shared/native-chat-agent-profiles.ts","src/shared/native-chat-types.ts","src/shared/native-chat/native-chat-command-envelope.ts"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","sha256":"fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062","declarations":0,"signals":["auxiliary"],"status":"reviewed","index":37,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062","cases":[],"lines":127,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","planned_changes":[],"production_evidence":["config/scripts/benchmark-sample-summary.mjs","config/scripts/counterbalanced-benchmark-schedule.mjs","src/shared/native-chat-tool-fold.ts","src/shared/native-chat-tool-pairs.ts"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"37:13:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":13,"end_line":24,"start":619,"end":865,"source":"build({\n stdin: {\n contents: source,\n sourcefile: 'native-chat-tool-fold.ts',\n resolveDir: path.join(root, 'src/shared'),\n loader: 'ts'\n },\n bundle: true,\n write: false,\n platform: 'node',\n format: 'esm'\n })","input_position":{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":13,"end_line":24,"start":619,"end":865},"binding":"build","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","rows":[{"index":1,"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":13,"end_line":24,"start":625,"end":864,"source":"{\n stdin: {\n contents: source,\n sourcefile: 'native-chat-tool-fold.ts',\n resolveDir: path.join(root, 'src/shared'),\n loader: 'ts'\n },\n bundle: true,\n write: false,\n platform: 'node',\n format: 'esm'\n }","value":{"kind":"object","value":[{"key":"stdin","value":{"kind":"object","value":[{"key":"contents","value":{"kind":"source-expression","source":"source"}},{"key":"sourcefile","value":{"kind":"string","value":"native-chat-tool-fold.ts"}},{"key":"resolveDir","value":{"kind":"call-source","callee":"path.join","arguments":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":11,"end_line":11,"start":524,"end":566},"resolved":{"kind":"call-source","callee":"path.resolve","arguments":[{"kind":"source-expression","source":"import.meta.dirname"},{"kind":"string","value":"../.."}],"source":"path.resolve(import.meta.dirname, '../..')"}},{"kind":"string","value":"src/shared"}],"source":"path.join(root, 'src/shared')"}},{"key":"loader","value":{"kind":"string","value":"ts"}}]}},{"key":"bundle","value":{"kind":"boolean","value":true}},{"key":"write","value":{"kind":"boolean","value":false}},{"key":"platform","value":{"kind":"string","value":"node"}},{"key":"format","value":{"kind":"string","value":"esm"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { stdin: { contents: source, sourcefile: 'native-chat-tool-fold.ts', resolveDir: path.join(root, 'src/shared'), . Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062"}},{"id":"37:33:fixture-or-oracle-declaration:2","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":33,"end_line":36,"start":1116,"end":1273,"source":"{\n before: await load(readFileSync(0, 'utf8')),\n after: await load(readFileSync(path.join(root, 'src/shared/native-chat-tool-fold.ts'), 'utf8'))\n}","input_position":{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":33,"end_line":36,"start":1125,"end":1273},"binding":"loaded","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","rows":[{"index":1,"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":34,"end_line":34,"start":1129,"end":1172,"source":"before: await load(readFileSync(0, 'utf8'))","value":{"kind":"property","key":"before","value":{"kind":"source-expression","source":"await load(readFileSync(0, 'utf8'))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: before: await load(readFileSync(0, 'utf8')). Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":35,"end_line":35,"start":1176,"end":1271,"source":"after: await load(readFileSync(path.join(root, 'src/shared/native-chat-tool-fold.ts'), 'utf8'))","value":{"kind":"property","key":"after","value":{"kind":"source-expression","source":"await load(readFileSync(path.join(root, 'src/shared/native-chat-tool-fold.ts'), 'utf8'))"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: after: await load(readFileSync(path.join(root, 'src/shared/native-chat-tool-fold.ts'), 'utf8')). Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062"}},{"id":"37:39:fixture-or-oracle-declaration:3","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":39,"end_line":39,"start":1439,"end":1451,"source":"[]","input_position":{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":39,"end_line":39,"start":1449,"end":1451},"binding":"results","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062"}},{"id":"37:40:for-of:4","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":40,"end_line":109,"start":1452,"end":4358,"source":"[1, 8, 32, 128, 512, 2048, 8192]","input_position":{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":40,"end_line":40,"start":1472,"end":1504},"binding":"const count","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","rows":[{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":40,"end_line":40,"start":1473,"end":1474,"source":"1","value":{"kind":"number","value":1},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 1. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":40,"end_line":40,"start":1476,"end":1477,"source":"8","value":{"kind":"number","value":8},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 8. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":40,"end_line":40,"start":1479,"end":1481,"source":"32","value":{"kind":"number","value":32},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 32. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":40,"end_line":40,"start":1483,"end":1486,"source":"128","value":{"kind":"number","value":128},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 128. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":40,"end_line":40,"start":1488,"end":1491,"source":"512","value":{"kind":"number","value":512},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 512. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":40,"end_line":40,"start":1493,"end":1497,"source":"2048","value":{"kind":"number","value":2048},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 2048. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":40,"end_line":40,"start":1499,"end":1503,"source":"8192","value":{"kind":"number","value":8192},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 8192. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062"}},{"id":"37:45:fixture-or-oracle-declaration:5","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":45,"end_line":62,"start":1803,"end":2565,"source":"[\n { name: 'immediate-named', blocks: named.flatMap((block, index) => [block, answers[index]]) },\n { name: 'reverse-named', blocks: [...named, ...answers.toReversed()] },\n {\n name: 'fifo-positional',\n blocks: [...positional, ...positional.map(() => result(undefined))]\n },\n { name: 'duplicate-id', blocks: [...repeated, ...repeated.map(() => result('same'))] },\n {\n name: 'silent-call-backlog',\n blocks: [\n ...named,\n ...named.flatMap((_, index) => [call(`later-${index}`), result(`later-${index}`)])\n ]\n },\n { name: 'unmatched-named', blocks: [...named, ...named.map(() => result('missing'))] },\n { name: 'limited-reverse', blocks: [...named, ...answers.toReversed()], limit: 8 }\n ]","input_position":{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":45,"end_line":62,"start":1815,"end":2565},"binding":"workloads","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","rows":[{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":46,"end_line":46,"start":1821,"end":1914,"source":"{ name: 'immediate-named', blocks: named.flatMap((block, index) => [block, answers[index]]) }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"immediate-named"}},{"key":"blocks","value":{"kind":"call-source","callee":"named.flatMap","arguments":[{"kind":"source-expression","source":"(block, index) => [block, answers[index]]"}],"source":"named.flatMap((block, index) => [block, answers[index]])"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { name: 'immediate-named', blocks: named.flatMap((block, index) => [block, answers[index]]) }. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":47,"end_line":47,"start":1920,"end":1990,"source":"{ name: 'reverse-named', blocks: [...named, ...answers.toReversed()] }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"reverse-named"}},{"key":"blocks","value":{"kind":"array","value":[{"kind":"source-expression","source":"...named"},{"kind":"source-expression","source":"...answers.toReversed()"}]}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { name: 'reverse-named', blocks: [...named, ...answers.toReversed()] }. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":48,"end_line":51,"start":1996,"end":2108,"source":"{\n name: 'fifo-positional',\n blocks: [...positional, ...positional.map(() => result(undefined))]\n }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"fifo-positional"}},{"key":"blocks","value":{"kind":"array","value":[{"kind":"source-expression","source":"...positional"},{"kind":"source-expression","source":"...positional.map(() => result(undefined))"}]}}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { name: 'fifo-positional', blocks: [...positional, ...positional.map(() => result(undefined))] }. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":52,"end_line":52,"start":2114,"end":2200,"source":"{ name: 'duplicate-id', blocks: [...repeated, ...repeated.map(() => result('same'))] }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"duplicate-id"}},{"key":"blocks","value":{"kind":"array","value":[{"kind":"source-expression","source":"...repeated"},{"kind":"source-expression","source":"...repeated.map(() => result('same'))"}]}}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { name: 'duplicate-id', blocks: [...repeated, ...repeated.map(() => result('same'))] }. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":53,"end_line":59,"start":2206,"end":2381,"source":"{\n name: 'silent-call-backlog',\n blocks: [\n ...named,\n ...named.flatMap((_, index) => [call(`later-${index}`), result(`later-${index}`)])\n ]\n }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"silent-call-backlog"}},{"key":"blocks","value":{"kind":"array","value":[{"kind":"source-expression","source":"...named"},{"kind":"source-expression","source":"...named.flatMap((_, index) => [call(`later-${index}`), result(`later-${index}`)])"}]}}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { name: 'silent-call-backlog', blocks: [ ...named, ...named.flatMap((_, index) => [call(`later-${index}`), resul. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":60,"end_line":60,"start":2387,"end":2473,"source":"{ name: 'unmatched-named', blocks: [...named, ...named.map(() => result('missing'))] }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"unmatched-named"}},{"key":"blocks","value":{"kind":"array","value":[{"kind":"source-expression","source":"...named"},{"kind":"source-expression","source":"...named.map(() => result('missing'))"}]}}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { name: 'unmatched-named', blocks: [...named, ...named.map(() => result('missing'))] }. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":61,"end_line":61,"start":2479,"end":2561,"source":"{ name: 'limited-reverse', blocks: [...named, ...answers.toReversed()], limit: 8 }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"limited-reverse"}},{"key":"blocks","value":{"kind":"array","value":[{"kind":"source-expression","source":"...named"},{"kind":"source-expression","source":"...answers.toReversed()"}]}},{"key":"limit","value":{"kind":"number","value":8}}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: { name: 'limited-reverse', blocks: [...named, ...answers.toReversed()], limit: 8 }. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062"}},{"id":"37:63:for-of:6","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":63,"end_line":108,"start":2568,"end":4356,"source":"workloads","input_position":{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":63,"end_line":63,"start":2591,"end":2600},"binding":"const workload","resolution":[{"name":"workloads","path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":45,"end_line":62,"start":1815,"end":2565,"declaration_position":{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":45,"end_line":62,"start":1803,"end":2565},"source":"[\n { name: 'immediate-named', blocks: named.flatMap((block, index) => [block, answers[index]]) },\n { name: 'reverse-named', blocks: [...named, ...answers.toReversed()] },\n {\n name: 'fifo-positional',\n blocks: [...positional, ...positional.map(() => result(undefined))]\n },\n { name: 'duplicate-id', blocks: [...repeated, ...repeated.map(() => result('same'))] },\n {\n name: 'silent-call-backlog',\n blocks: [\n ...named,\n ...named.flatMap((_, index) => [call(`later-${index}`), result(`later-${index}`)])\n ]\n },\n { name: 'unmatched-named', blocks: [...named, ...named.map(() => result('missing'))] },\n { name: 'limited-reverse', blocks: [...named, ...answers.toReversed()], limit: 8 }\n ]"}],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","rows":[{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":46,"end_line":46,"start":1821,"end":1914,"source":"{ name: 'immediate-named', blocks: named.flatMap((block, index) => [block, answers[index]]) }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"immediate-named"}},{"key":"blocks","value":{"kind":"call-source","callee":"named.flatMap","arguments":[{"kind":"source-expression","source":"(block, index) => [block, answers[index]]"}],"source":"named.flatMap((block, index) => [block, answers[index]])"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'immediate-named', blocks: named.flatMap((block, index) => [block, answers[index]]) }. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":47,"end_line":47,"start":1920,"end":1990,"source":"{ name: 'reverse-named', blocks: [...named, ...answers.toReversed()] }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"reverse-named"}},{"key":"blocks","value":{"kind":"array","value":[{"kind":"source-expression","source":"...named"},{"kind":"source-expression","source":"...answers.toReversed()"}]}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'reverse-named', blocks: [...named, ...answers.toReversed()] }. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":48,"end_line":51,"start":1996,"end":2108,"source":"{\n name: 'fifo-positional',\n blocks: [...positional, ...positional.map(() => result(undefined))]\n }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"fifo-positional"}},{"key":"blocks","value":{"kind":"array","value":[{"kind":"source-expression","source":"...positional"},{"kind":"source-expression","source":"...positional.map(() => result(undefined))"}]}}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'fifo-positional', blocks: [...positional, ...positional.map(() => result(undefined))] }. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":52,"end_line":52,"start":2114,"end":2200,"source":"{ name: 'duplicate-id', blocks: [...repeated, ...repeated.map(() => result('same'))] }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"duplicate-id"}},{"key":"blocks","value":{"kind":"array","value":[{"kind":"source-expression","source":"...repeated"},{"kind":"source-expression","source":"...repeated.map(() => result('same'))"}]}}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'duplicate-id', blocks: [...repeated, ...repeated.map(() => result('same'))] }. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":53,"end_line":59,"start":2206,"end":2381,"source":"{\n name: 'silent-call-backlog',\n blocks: [\n ...named,\n ...named.flatMap((_, index) => [call(`later-${index}`), result(`later-${index}`)])\n ]\n }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"silent-call-backlog"}},{"key":"blocks","value":{"kind":"array","value":[{"kind":"source-expression","source":"...named"},{"kind":"source-expression","source":"...named.flatMap((_, index) => [call(`later-${index}`), result(`later-${index}`)])"}]}}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'silent-call-backlog', blocks: [ ...named, ...named.flatMap((_, index) => [call(`later-${index}`), resul. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":60,"end_line":60,"start":2387,"end":2473,"source":"{ name: 'unmatched-named', blocks: [...named, ...named.map(() => result('missing'))] }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"unmatched-named"}},{"key":"blocks","value":{"kind":"array","value":[{"kind":"source-expression","source":"...named"},{"kind":"source-expression","source":"...named.map(() => result('missing'))"}]}}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'unmatched-named', blocks: [...named, ...named.map(() => result('missing'))] }. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":61,"end_line":61,"start":2479,"end":2561,"source":"{ name: 'limited-reverse', blocks: [...named, ...answers.toReversed()], limit: 8 }","value":{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"limited-reverse"}},{"key":"blocks","value":{"kind":"array","value":[{"kind":"source-expression","source":"...named"},{"kind":"source-expression","source":"...answers.toReversed()"}]}},{"key":"limit","value":{"kind":"number","value":8}}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: { name: 'limited-reverse', blocks: [...named, ...answers.toReversed()], limit: 8 }. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062"}},{"id":"37:64:for-of:7","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":64,"end_line":66,"start":2608,"end":2679,"source":"workload.blocks","input_position":{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":64,"end_line":64,"start":2628,"end":2643},"binding":"const block","resolution":[],"dynamic_source":"workload.blocks","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062"}},{"id":"37:71:counted-loop:8","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":71,"end_line":74,"start":2938,"end":3107,"source":"let warmup = 0; warmup < 16; warmup += 1","input_position":{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":71,"end_line":71,"start":2943,"end":2983},"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","rows":[],"policy":"Exact original fixed/runtime loop bounds and initializer retained; generated repetitions are workload policy, not additional declarations or runtime validations.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062"}},{"id":"37:76:fixture-or-oracle-declaration:9","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":76,"end_line":76,"start":3175,"end":3210,"source":"{ before: [], after: [] }","input_position":{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":76,"end_line":76,"start":3185,"end":3210},"binding":"samples","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","rows":[{"index":1,"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":76,"end_line":76,"start":3187,"end":3197,"source":"before: []","value":{"kind":"property","key":"before","value":{"kind":"array","value":[]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: before: []. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":76,"end_line":76,"start":3199,"end":3208,"source":"after: []","value":{"kind":"property","key":"after","value":{"kind":"array","value":[]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: after: []. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062"}},{"id":"37:77:for-of:10","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":77,"end_line":91,"start":3215,"end":3811,"source":"buildCounterbalancedSchedule(8, 'before', 'after')","input_position":{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":77,"end_line":77,"start":3234,"end":3284},"binding":"const pair","resolution":[],"dynamic_source":"buildCounterbalancedSchedule(8, 'before', 'after')","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062"}},{"id":"37:77:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":77,"end_line":77,"start":3234,"end":3284,"source":"buildCounterbalancedSchedule(8, 'before', 'after')","input_position":{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":77,"end_line":77,"start":3234,"end":3284},"binding":"buildCounterbalancedSchedule","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","rows":[{"index":1,"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":77,"end_line":77,"start":3263,"end":3264,"source":"8","value":{"kind":"number","value":8},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 8. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":77,"end_line":77,"start":3266,"end":3274,"source":"'before'","value":{"kind":"string","value":"before"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'before'. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":77,"end_line":77,"start":3276,"end":3283,"source":"'after'","value":{"kind":"string","value":"after"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'after'. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062"}},{"id":"37:78:for-of:12","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":78,"end_line":90,"start":3294,"end":3805,"source":"pair","input_position":{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":78,"end_line":78,"start":3312,"end":3316},"binding":"const arm","resolution":[],"dynamic_source":"pair","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062"}},{"id":"37:81:counted-loop:13","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":81,"end_line":83,"start":3389,"end":3524,"source":"let repeat = 0; repeat < iterations; repeat += 1","input_position":{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":81,"end_line":81,"start":3394,"end":3442},"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","rows":[],"policy":"Exact original fixed/runtime loop bounds and initializer retained; generated repetitions are workload policy, not additional declarations or runtime validations.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062"}},{"id":"37:104:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":104,"end_line":104,"start":4223,"end":4264,"source":"summarizeBenchmarkSamples(samples.before)","input_position":{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":104,"end_line":104,"start":4223,"end":4264},"binding":"summarizeBenchmarkSamples","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","rows":[{"index":1,"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":104,"end_line":104,"start":4249,"end":4263,"source":"samples.before","value":{"kind":"source-expression","source":"samples.before"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: samples.before. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062"}},{"id":"37:105:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":105,"end_line":105,"start":4279,"end":4319,"source":"summarizeBenchmarkSamples(samples.after)","input_position":{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":105,"end_line":105,"start":4279,"end":4319},"binding":"summarizeBenchmarkSamples","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","rows":[{"index":1,"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","line":105,"end_line":105,"start":4305,"end":4318,"source":"samples.after","value":{"kind":"source-expression","source":"samples.after"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: samples.after. Manual benchmark calls the actual exported pairing function over seven explicit workloads and seven sizes; baseline output equality and exact input-block identity are checked outside timing.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062"}}],"original_review_sha256":"6b42147d71bdc0019460b4460d6cdacd36d0af243e8e855b70cd06835b4de90f","reviewer":"audit_config","reviewed_sha256":"fa529dfb83db216bff9121240dccc7a8c7a1f5a88fb4c25e8a7c2abe8d65f062","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/native-chat-tool-pairing-benchmark.mjs","final_declarations":0,"current_controls":{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","each":[],"for_of":[{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","start":1472,"end":1504,"line":40,"end_line":40,"source":"[1, 8, 32, 128, 512, 2048, 8192]","binding":"const count","changed":false},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","start":2591,"end":2600,"line":63,"end_line":63,"source":"workloads","binding":"const workload","changed":false},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","start":2628,"end":2643,"line":64,"end_line":64,"source":"workload.blocks","binding":"const block","changed":false},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","start":3234,"end":3284,"line":77,"end_line":77,"source":"buildCounterbalancedSchedule(8, 'before', 'after')","binding":"const pair","changed":false},{"path":"config/scripts/native-chat-tool-pairing-benchmark.mjs","start":3312,"end":3316,"line":78,"end_line":78,"source":"pair","binding":"const arm","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/scripts/benchmark-sample-summary.mjs","config/scripts/counterbalanced-benchmark-schedule.mjs","src/shared/native-chat-tool-fold.ts","src/shared/native-chat-tool-pairs.ts"],"runtime_validation":[]}
+{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9","declarations":0,"signals":["auxiliary"],"status":"reviewed","index":38,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9","cases":[],"lines":321,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","planned_changes":[],"production_evidence":["src/main/computer/macos-native-provider-client.ts","src/main/computer/macos-native-provider-transport.ts"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"38:9:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":9,"end_line":9,"start":375,"end":439,"source":"[readFileSync(0, 'utf8'), readFileSync(entry, 'utf8')]","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":9,"end_line":9,"start":385,"end":439},"binding":"sources","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":9,"end_line":9,"start":386,"end":409,"source":"readFileSync(0, 'utf8')","value":{"kind":"call-source","callee":"readFileSync","arguments":[{"kind":"number","value":0},{"kind":"string","value":"utf8"}],"source":"readFileSync(0, 'utf8')"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: readFileSync(0, 'utf8'). Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":9,"end_line":9,"start":411,"end":438,"source":"readFileSync(entry, 'utf8')","value":{"kind":"call-source","callee":"readFileSync","arguments":[{"kind":"reference","source":"entry","resolved_at":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":8,"end_line":8,"start":303,"end":368},"resolved":{"kind":"call-source","callee":"path.resolve","arguments":[{"kind":"string","value":"src/main/computer/macos-native-provider-client.ts"}],"source":"path.resolve('src/main/computer/macos-native-provider-client.ts')"}},{"kind":"string","value":"utf8"}],"source":"readFileSync(entry, 'utf8')"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: readFileSync(entry, 'utf8'). Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:12:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":12,"end_line":43,"start":586,"end":1810,"source":"build({\n entryPoints: [entry],\n bundle: true,\n platform: 'node',\n format: 'esm',\n write: false,\n plugins: [\n {\n name: 'native-client-receive-fixture',\n setup(builder) {\n builder.onLoad({ filter: /macos-native-provider-client\\.ts$/ }, () => ({\n contents: `${source}\\nexport { NativeProviderLineBuffer, consumeNativeProviderLines } from './macos-native-provider-transport';`,\n loader: 'ts',\n resolveDir: path.dirname(entry)\n }))\n builder.onResolve({ filter: /^node:(fs|child_process)$/ }, (args) => ({\n path: args.path,\n namespace: 'forbidden-native-operation'\n }))\n builder.onLoad({ filter: /.*/, namespace: 'forbidden-native-operation' }, (args) => ({\n contents: `function forbidden() { throw new Error('Native operations are forbidden in this benchmark'); }\n export { forbidden as ${\n args.path === 'node:fs'\n ? 'chmodSync, forbidden as mkdtempSync, forbidden as rmSync, forbidden as writeFileSync, forbidden as existsSync'\n : 'spawn'\n } };`,\n loader: 'js'\n }))\n }\n }\n ]\n })","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":12,"end_line":43,"start":586,"end":1810},"binding":"build","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[{"index":1,"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":12,"end_line":43,"start":592,"end":1809,"source":"{\n entryPoints: [entry],\n bundle: true,\n platform: 'node',\n format: 'esm',\n write: false,\n plugins: [\n {\n name: 'native-client-receive-fixture',\n setup(builder) {\n builder.onLoad({ filter: /macos-native-provider-client\\.ts$/ }, () => ({\n contents: `${source}\\nexport { NativeProviderLineBuffer, consumeNativeProviderLines } from './macos-native-provider-transport';`,\n loader: 'ts',\n resolveDir: path.dirname(entry)\n }))\n builder.onResolve({ filter: /^node:(fs|child_process)$/ }, (args) => ({\n path: args.path,\n namespace: 'forbidden-native-operation'\n }))\n builder.onLoad({ filter: /.*/, namespace: 'forbidden-native-operation' }, (args) => ({\n contents: `function forbidden() { throw new Error('Native operations are forbidden in this benchmark'); }\n export { forbidden as ${\n args.path === 'node:fs'\n ? 'chmodSync, forbidden as mkdtempSync, forbidden as rmSync, forbidden as writeFileSync, forbidden as existsSync'\n : 'spawn'\n } };`,\n loader: 'js'\n }))\n }\n }\n ]\n }","value":{"kind":"object","value":[{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"reference","source":"entry","resolved_at":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":8,"end_line":8,"start":303,"end":368},"resolved":{"kind":"call-source","callee":"path.resolve","arguments":[{"kind":"string","value":"src/main/computer/macos-native-provider-client.ts"}],"source":"path.resolve('src/main/computer/macos-native-provider-client.ts')"}}]}},{"key":"bundle","value":{"kind":"boolean","value":true}},{"key":"platform","value":{"kind":"string","value":"node"}},{"key":"format","value":{"kind":"string","value":"esm"}},{"key":"write","value":{"kind":"boolean","value":false}},{"key":"plugins","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"native-client-receive-fixture"}},{"source":"setup(builder) {\n builder.onLoad({ filter: /macos-native-provider-client\\.ts$/ }, () => ({\n contents: `${source}\\nexport { NativeProviderLineBuffer, consumeNativeProviderLines } from './macos-native-provider-transport';`,\n loader: 'ts',\n resolveDir: path.dirname(entry)\n }))\n builder.onResolve({ filter: /^node:(fs|child_process)$/ }, (args) => ({\n path: args.path,\n namespace: 'forbidden-native-operation'\n }))\n builder.onLoad({ filter: /.*/, namespace: 'forbidden-native-operation' }, (args) => ({\n contents: `function forbidden() { throw new Error('Native operations are forbidden in this benchmark'); }\n export { forbidden as ${\n args.path === 'node:fs'\n ? 'chmodSync, forbidden as mkdtempSync, forbidden as rmSync, forbidden as writeFileSync, forbidden as existsSync'\n : 'spawn'\n } };`,\n loader: 'js'\n }))\n }"}]}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { entryPoints: [entry], bundle: true, platform: 'node', format: 'esm', write: false, plugins: [ { name. Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:107:counted-loop:3","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":107,"end_line":156,"start":3468,"end":5239,"source":"let trace = 0; trace < 2000; trace++","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":107,"end_line":107,"start":3473,"end":3509},"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[],"policy":"Exact original fixed/runtime loop bounds and initializer retained; generated repetitions are workload policy, not additional declarations or runtime validations.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:110:counted-loop:4","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":110,"end_line":155,"start":3582,"end":5237,"source":"let step = 0; step < 40; step++","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":110,"end_line":110,"start":3587,"end":3618},"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[],"policy":"Exact original fixed/runtime loop bounds and initializer retained; generated repetitions are workload policy, not additional declarations or runtime validations.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:130:for-of:5","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":130,"end_line":153,"start":4278,"end":5172,"source":"fixtures","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":130,"end_line":130,"start":4300,"end":4308},"binding":"const fixture","resolution":[{"name":"fixtures","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":108,"end_line":108,"start":3532,"end":3558,"declaration_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":108,"end_line":108,"start":3521,"end":3558},"source":"modules.map(clientFixture)"},{"name":"modules","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":47,"end_line":47,"start":2030,"end":2066,"declaration_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":47,"end_line":47,"start":2020,"end":2066},"source":"await Promise.all(sources.map(load))"}],"transform":"modules.map(clientFixture)","dynamic_source":"await Promise.all(sources.map(load))","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:159:counted-loop:6","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":159,"end_line":194,"start":5325,"end":6634,"source":"let trace = 0; trace < 1000; trace++","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":159,"end_line":159,"start":5330,"end":5366},"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[],"policy":"Exact original fixed/runtime loop bounds and initializer retained; generated repetitions are workload policy, not additional declarations or runtime validations.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:162:for-of:7","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":162,"end_line":166,"start":5454,"end":5586,"source":"fixtures","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":162,"end_line":162,"start":5476,"end":5484},"binding":"const fixture","resolution":[{"name":"fixtures","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":160,"end_line":160,"start":5389,"end":5415,"declaration_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":160,"end_line":160,"start":5378,"end":5415},"source":"modules.map(clientFixture)"},{"name":"modules","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":47,"end_line":47,"start":2030,"end":2066,"declaration_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":47,"end_line":47,"start":2020,"end":2066},"source":"await Promise.all(sources.map(load))"}],"transform":"modules.map(clientFixture)","dynamic_source":"await Promise.all(sources.map(load))","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:163:counted-loop:8","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":163,"end_line":165,"start":5492,"end":5582,"source":"let id = 1; id <= 4; id++","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":163,"end_line":163,"start":5497,"end":5522},"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[],"policy":"Exact original fixed/runtime loop bounds and initializer retained; generated repetitions are workload policy, not additional declarations or runtime validations.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:179:for-of:9","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":179,"end_line":185,"start":6076,"end":6288,"source":"fixtures","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":179,"end_line":179,"start":6098,"end":6106},"binding":"const fixture","resolution":[{"name":"fixtures","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":160,"end_line":160,"start":5389,"end":5415,"declaration_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":160,"end_line":160,"start":5378,"end":5415},"source":"modules.map(clientFixture)"},{"name":"modules","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":47,"end_line":47,"start":2030,"end":2066,"declaration_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":47,"end_line":47,"start":2020,"end":2066},"source":"await Promise.all(sources.map(load))"}],"transform":"modules.map(clientFixture)","dynamic_source":"await Promise.all(sources.map(load))","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:188:for-of:10","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":188,"end_line":192,"start":6356,"end":6573,"source":"fixtures","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":188,"end_line":188,"start":6378,"end":6386},"binding":"const fixture","resolution":[{"name":"fixtures","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":160,"end_line":160,"start":5389,"end":5415,"declaration_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":160,"end_line":160,"start":5378,"end":5415},"source":"modules.map(clientFixture)"},{"name":"modules","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":47,"end_line":47,"start":2030,"end":2066,"declaration_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":47,"end_line":47,"start":2020,"end":2066},"source":"await Promise.all(sources.map(load))"}],"transform":"modules.map(clientFixture)","dynamic_source":"await Promise.all(sources.map(load))","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:207:counted-loop:11","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":207,"end_line":234,"start":6941,"end":7804,"source":"let trace = 0; trace < 3000; trace++","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":207,"end_line":207,"start":6946,"end":6982},"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[],"policy":"Exact original fixed/runtime loop bounds and initializer retained; generated repetitions are workload policy, not additional declarations or runtime validations.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:208:fixture-or-oracle-declaration:12","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":208,"end_line":208,"start":6994,"end":7069,"source":"[new BaselineBuffer(), new modules[1].NativeProviderLineBuffer()]","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":208,"end_line":208,"start":7004,"end":7069},"binding":"buffers","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":208,"end_line":208,"start":7005,"end":7025,"source":"new BaselineBuffer()","value":{"kind":"source-expression","source":"new BaselineBuffer()"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: new BaselineBuffer(). Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":208,"end_line":208,"start":7027,"end":7068,"source":"new modules[1].NativeProviderLineBuffer()","value":{"kind":"source-expression","source":"new modules[1].NativeProviderLineBuffer()"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: new modules[1].NativeProviderLineBuffer(). Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:209:fixture-or-oracle-declaration:13","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":209,"end_line":209,"start":7078,"end":7095,"source":"[[], []]","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":209,"end_line":209,"start":7087,"end":7095},"binding":"events","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":209,"end_line":209,"start":7088,"end":7090,"source":"[]","value":{"kind":"array","value":[]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: []. Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":209,"end_line":209,"start":7092,"end":7094,"source":"[]","value":{"kind":"array","value":[]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: []. Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:210:counted-loop:14","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":210,"end_line":233,"start":7098,"end":7802,"source":"let step = 0; step < 30; step++","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":210,"end_line":210,"start":7103,"end":7134},"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[],"policy":"Exact original fixed/runtime loop bounds and initializer retained; generated repetitions are workload policy, not additional declarations or runtime validations.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:250:for-of:15","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":250,"end_line":252,"start":8168,"end":8264,"source":"chunks","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":250,"end_line":250,"start":8188,"end":8194},"binding":"const chunk","resolution":[{"name":"chunks","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":284,"end_line":284,"start":9007,"end":9009,"declaration_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":284,"end_line":284,"start":8998,"end":9009},"source":"[]"}],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:259:counted-loop:16","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":259,"end_line":261,"start":8377,"end":8440,"source":"let i = 0; i < repeats; i++","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":259,"end_line":259,"start":8382,"end":8409},"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[],"policy":"Exact original fixed/runtime loop bounds and initializer retained; generated repetitions are workload policy, not additional declarations or runtime validations.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:274:for-of:17","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":274,"end_line":320,"start":8663,"end":10102,"source":"[\n [64, 65536],\n [120000, 65536],\n [1200000, 65536],\n [1200000, 4096],\n [4800000, 65536],\n [1200000, Number.POSITIVE_INFINITY]\n]","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":274,"end_line":281,"start":8696,"end":8830},"binding":"const [size, chunkBytes]","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":275,"end_line":275,"start":8700,"end":8711,"source":"[64, 65536]","value":{"kind":"array","value":[{"kind":"number","value":64},{"kind":"number","value":65536}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: [64, 65536]. Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":276,"end_line":276,"start":8715,"end":8730,"source":"[120000, 65536]","value":{"kind":"array","value":[{"kind":"number","value":120000},{"kind":"number","value":65536}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: [120000, 65536]. Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":277,"end_line":277,"start":8734,"end":8750,"source":"[1200000, 65536]","value":{"kind":"array","value":[{"kind":"number","value":1200000},{"kind":"number","value":65536}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: [1200000, 65536]. Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":278,"end_line":278,"start":8754,"end":8769,"source":"[1200000, 4096]","value":{"kind":"array","value":[{"kind":"number","value":1200000},{"kind":"number","value":4096}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: [1200000, 4096]. Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":279,"end_line":279,"start":8773,"end":8789,"source":"[4800000, 65536]","value":{"kind":"array","value":[{"kind":"number","value":4800000},{"kind":"number","value":65536}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: [4800000, 65536]. Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":280,"end_line":280,"start":8793,"end":8828,"source":"[1200000, Number.POSITIVE_INFINITY]","value":{"kind":"array","value":[{"kind":"number","value":1200000},{"kind":"source-expression","source":"Number.POSITIVE_INFINITY"}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: [1200000, Number.POSITIVE_INFINITY]. Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:282:fixture-or-oracle-declaration:18","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":282,"end_line":282,"start":8842,"end":8912,"source":"{ screenshot: { data: 'A'.repeat(size) }, text: 'fixture' }","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":282,"end_line":282,"start":8853,"end":8912},"binding":"expected","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[{"index":1,"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":282,"end_line":282,"start":8855,"end":8893,"source":"screenshot: { data: 'A'.repeat(size) }","value":{"kind":"property","key":"screenshot","value":{"kind":"object","value":[{"key":"data","value":{"kind":"call-source","callee":"'A'.repeat","arguments":[{"kind":"source-expression","source":"size"}],"source":"'A'.repeat(size)"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: screenshot: { data: 'A'.repeat(size) }. Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":282,"end_line":282,"start":8895,"end":8910,"source":"text: 'fixture'","value":{"kind":"property","key":"text","value":{"kind":"string","value":"fixture"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: text: 'fixture'. Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:284:fixture-or-oracle-declaration:19","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":284,"end_line":284,"start":8998,"end":9009,"source":"[]","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":284,"end_line":284,"start":9007,"end":9009},"binding":"chunks","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:285:counted-loop:20","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":285,"end_line":287,"start":9012,"end":9141,"source":"let offset = 0; offset < input.length; offset += chunkBytes","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":285,"end_line":285,"start":9017,"end":9076},"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[],"policy":"Exact original fixed/runtime loop bounds and initializer retained; generated repetitions are workload policy, not additional declarations or runtime validations.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:289:for-of:21","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":289,"end_line":295,"start":9183,"end":9373,"source":"arms","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":289,"end_line":289,"start":9201,"end":9205},"binding":"const arm","resolution":[{"name":"arms","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":288,"end_line":288,"start":9157,"end":9180,"declaration_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":288,"end_line":288,"start":9150,"end":9180},"source":"modules.map(receiveArm)"},{"name":"modules","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":47,"end_line":47,"start":2030,"end":2066,"declaration_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":47,"end_line":47,"start":2020,"end":2066},"source":"await Promise.all(sources.map(load))"}],"transform":"modules.map(receiveArm)","dynamic_source":"await Promise.all(sources.map(load))","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:298:fixture-or-oracle-declaration:22","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":298,"end_line":298,"start":9510,"end":9526,"source":"[[], []]","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":298,"end_line":298,"start":9518,"end":9526},"binding":"times","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":298,"end_line":298,"start":9519,"end":9521,"source":"[]","value":{"kind":"array","value":[]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: []. Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":298,"end_line":298,"start":9523,"end":9525,"source":"[]","value":{"kind":"array","value":[]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: []. Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:299:counted-loop:23","kind":"counted-loop","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":299,"end_line":305,"start":9529,"end":9777,"source":"let pair = 0; pair < 8; pair++","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":299,"end_line":299,"start":9534,"end":9564},"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[],"policy":"Exact original fixed/runtime loop bounds and initializer retained; generated repetitions are workload policy, not additional declarations or runtime validations.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}},{"id":"38:300:for-of:24","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":300,"end_line":304,"start":9572,"end":9773,"source":"pair % 2 ? [1, 0] : [0, 1]","input_position":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":300,"end_line":300,"start":9592,"end":9618},"binding":"const index","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","rows":[{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":300,"end_line":300,"start":9604,"end":9605,"source":"1","value":{"kind":"number","value":1},"index":1,"branch":"pair % 2 = true","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 1. Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":300,"end_line":300,"start":9607,"end":9608,"source":"0","value":{"kind":"number","value":0},"index":2,"branch":"pair % 2 = true","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 0. Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":300,"end_line":300,"start":9613,"end":9614,"source":"0","value":{"kind":"number","value":0},"index":3,"branch":"pair % 2 = false","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 0. Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","line":300,"end_line":300,"start":9616,"end":9617,"source":"1","value":{"kind":"number","value":1},"index":4,"branch":"pair % 2 = false","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 1. Manual deterministic differential traces call actual client lifecycle/receive and line-buffer APIs; native process/filesystem operations throw. Fragmented multi-reply journeys have independent final-settlement expectations before timing real payload sizes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9"}}],"original_review_sha256":"ac13c36172bdb42bff8e580937d592a65d8d06fad5432c995c275c1417fa6293","reviewer":"audit_config","reviewed_sha256":"9ad4638227c24700b8e12da0dc7bcfbe0a6121b561919d9c6313b7fdb5f92af9","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/native-provider-line-gate-benchmark.mjs","final_declarations":0,"current_controls":{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","each":[],"for_of":[{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","start":4300,"end":4308,"line":130,"end_line":130,"source":"fixtures","binding":"const fixture","changed":false},{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","start":5476,"end":5484,"line":162,"end_line":162,"source":"fixtures","binding":"const fixture","changed":false},{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","start":6098,"end":6106,"line":179,"end_line":179,"source":"fixtures","binding":"const fixture","changed":false},{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","start":6378,"end":6386,"line":188,"end_line":188,"source":"fixtures","binding":"const fixture","changed":false},{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","start":8188,"end":8194,"line":250,"end_line":250,"source":"chunks","binding":"const chunk","changed":false},{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","start":8696,"end":8830,"line":274,"end_line":281,"source":"[\n [64, 65536],\n [120000, 65536],\n [1200000, 65536],\n [1200000, 4096],\n [4800000, 65536],\n [1200000, Number.POSITIVE_INFINITY]\n]","binding":"const [size, chunkBytes]","changed":false},{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","start":9201,"end":9205,"line":289,"end_line":289,"source":"arms","binding":"const arm","changed":false},{"path":"config/scripts/native-provider-line-gate-benchmark.mjs","start":9592,"end":9618,"line":300,"end_line":300,"source":"pair % 2 ? [1, 0] : [0, 1]","binding":"const index","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["src/main/computer/macos-native-provider-client.ts","src/main/computer/macos-native-provider-transport.ts"],"runtime_validation":[]}
+{"path":"config/scripts/node-old-space-limit.test.mjs","sha256":"f69ecc3d9e8e6ee0c398148e36b018e3c2377db7932f33c3c30403693f5acd65","declarations":3,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":39,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"f69ecc3d9e8e6ee0c398148e36b018e3c2377db7932f33c3c30403693f5acd65","cases":[{"line":7,"title":"caps larger hosts at the release-runner build heap","decision":"keep","reason":"Actual heap-option functions receive explicit host-memory/NODE_OPTIONS inputs and produce independent expected caps, reservation and append ordering. Scenario: caps larger hosts at the release-runner build heap.","explicit_input_controls":[{"control_id":"39:8:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-old-space-limit.test.mjs","line":8,"source":"getBuildOldSpaceSizeMb(8 * gib)","rows":[{"index":1,"path":"config/scripts/node-old-space-limit.test.mjs","line":8,"end_line":8,"start":322,"end":329,"source":"8 * gib","value":{"kind":"source-expression","source":"8 * gib"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 8 * gib. Actual heap-option functions receive explicit host-memory/NODE_OPTIONS inputs and produce independent expected caps, reservation and append ordering. Scenario: caps larger hosts at the release-runner build heap.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual heap-option functions receive explicit host-memory/NODE_OPTIONS inputs and produce independent expected caps, reservation and append ordering. Scenario: caps larger hosts at the release-runner build heap.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":7,"title":"caps larger hosts at the release-runner build heap","start":223,"end":347},"implementation_status":"retained"},{"line":11,"title":"reserves memory for smaller arm64 hosts","decision":"keep","reason":"Actual heap-option functions receive explicit host-memory/NODE_OPTIONS inputs and produce independent expected caps, reservation and append ordering. Scenario: reserves memory for smaller arm64 hosts.","explicit_input_controls":[{"control_id":"39:12:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-old-space-limit.test.mjs","line":12,"source":"getBuildOldSpaceSizeMb(4 * gib)","rows":[{"index":1,"path":"config/scripts/node-old-space-limit.test.mjs","line":12,"end_line":12,"start":439,"end":446,"source":"4 * gib","value":{"kind":"source-expression","source":"4 * gib"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 4 * gib. Actual heap-option functions receive explicit host-memory/NODE_OPTIONS inputs and produce independent expected caps, reservation and append ordering. Scenario: reserves memory for smaller arm64 hosts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual heap-option functions receive explicit host-memory/NODE_OPTIONS inputs and produce independent expected caps, reservation and append ordering. Scenario: reserves memory for smaller arm64 hosts.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":11,"title":"reserves memory for smaller arm64 hosts","start":351,"end":464},"implementation_status":"retained"},{"line":15,"title":"keeps existing NODE_OPTIONS while appending the build heap limit last","decision":"keep","reason":"Actual heap-option functions receive explicit host-memory/NODE_OPTIONS inputs and produce independent expected caps, reservation and append ordering. Scenario: keeps existing NODE_OPTIONS while appending the build heap limit last.","explicit_input_controls":[{"control_id":"39:16:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-old-space-limit.test.mjs","line":16,"source":"appendBuildOldSpaceOption('--trace-warnings --max-old-space-size=8192', 4 * gib)","rows":[{"index":1,"path":"config/scripts/node-old-space-limit.test.mjs","line":16,"end_line":16,"start":589,"end":633,"source":"'--trace-warnings --max-old-space-size=8192'","value":{"kind":"string","value":"--trace-warnings --max-old-space-size=8192"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: '--trace-warnings --max-old-space-size=8192'. Actual heap-option functions receive explicit host-memory/NODE_OPTIONS inputs and produce independent expected caps, reservation and append ordering. Scenario: keeps existing NODE_OPTIONS while appending the build heap limit last.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-old-space-limit.test.mjs","line":16,"end_line":16,"start":635,"end":642,"source":"4 * gib","value":{"kind":"source-expression","source":"4 * gib"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 4 * gib. Actual heap-option functions receive explicit host-memory/NODE_OPTIONS inputs and produce independent expected caps, reservation and append ordering. Scenario: keeps existing NODE_OPTIONS while appending the build heap limit last.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual heap-option functions receive explicit host-memory/NODE_OPTIONS inputs and produce independent expected caps, reservation and append ordering. Scenario: keeps existing NODE_OPTIONS while appending the build heap limit last.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":15,"title":"keeps existing NODE_OPTIONS while appending the build heap limit last","start":468,"end":738},"implementation_status":"retained"}],"lines":21,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Actual heap-option functions receive explicit host-memory/NODE_OPTIONS inputs and produce independent expected caps, reservation and append ordering.","planned_changes":[],"production_evidence":["config/scripts/node-old-space-limit.mjs"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"39:8:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-old-space-limit.test.mjs","line":8,"end_line":8,"start":299,"end":330,"source":"getBuildOldSpaceSizeMb(8 * gib)","input_position":{"path":"config/scripts/node-old-space-limit.test.mjs","line":8,"end_line":8,"start":299,"end":330},"binding":"getBuildOldSpaceSizeMb","resolution":[],"enclosing_case":{"line":7,"title":"caps larger hosts at the release-runner build heap"},"affected_case_lines":[],"decision":"keep","reason":"Actual heap-option functions receive explicit host-memory/NODE_OPTIONS inputs and produce independent expected caps, reservation and append ordering. Scenario: caps larger hosts at the release-runner build heap.","rows":[{"index":1,"path":"config/scripts/node-old-space-limit.test.mjs","line":8,"end_line":8,"start":322,"end":329,"source":"8 * gib","value":{"kind":"source-expression","source":"8 * gib"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 8 * gib. Actual heap-option functions receive explicit host-memory/NODE_OPTIONS inputs and produce independent expected caps, reservation and append ordering. Scenario: caps larger hosts at the release-runner build heap.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"f69ecc3d9e8e6ee0c398148e36b018e3c2377db7932f33c3c30403693f5acd65"}},{"id":"39:12:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-old-space-limit.test.mjs","line":12,"end_line":12,"start":416,"end":447,"source":"getBuildOldSpaceSizeMb(4 * gib)","input_position":{"path":"config/scripts/node-old-space-limit.test.mjs","line":12,"end_line":12,"start":416,"end":447},"binding":"getBuildOldSpaceSizeMb","resolution":[],"enclosing_case":{"line":11,"title":"reserves memory for smaller arm64 hosts"},"affected_case_lines":[],"decision":"keep","reason":"Actual heap-option functions receive explicit host-memory/NODE_OPTIONS inputs and produce independent expected caps, reservation and append ordering. Scenario: reserves memory for smaller arm64 hosts.","rows":[{"index":1,"path":"config/scripts/node-old-space-limit.test.mjs","line":12,"end_line":12,"start":439,"end":446,"source":"4 * gib","value":{"kind":"source-expression","source":"4 * gib"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 4 * gib. Actual heap-option functions receive explicit host-memory/NODE_OPTIONS inputs and produce independent expected caps, reservation and append ordering. Scenario: reserves memory for smaller arm64 hosts.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"f69ecc3d9e8e6ee0c398148e36b018e3c2377db7932f33c3c30403693f5acd65"}},{"id":"39:16:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-old-space-limit.test.mjs","line":16,"end_line":16,"start":563,"end":643,"source":"appendBuildOldSpaceOption('--trace-warnings --max-old-space-size=8192', 4 * gib)","input_position":{"path":"config/scripts/node-old-space-limit.test.mjs","line":16,"end_line":16,"start":563,"end":643},"binding":"appendBuildOldSpaceOption","resolution":[],"enclosing_case":{"line":15,"title":"keeps existing NODE_OPTIONS while appending the build heap limit last"},"affected_case_lines":[],"decision":"keep","reason":"Actual heap-option functions receive explicit host-memory/NODE_OPTIONS inputs and produce independent expected caps, reservation and append ordering. Scenario: keeps existing NODE_OPTIONS while appending the build heap limit last.","rows":[{"index":1,"path":"config/scripts/node-old-space-limit.test.mjs","line":16,"end_line":16,"start":589,"end":633,"source":"'--trace-warnings --max-old-space-size=8192'","value":{"kind":"string","value":"--trace-warnings --max-old-space-size=8192"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: '--trace-warnings --max-old-space-size=8192'. Actual heap-option functions receive explicit host-memory/NODE_OPTIONS inputs and produce independent expected caps, reservation and append ordering. Scenario: keeps existing NODE_OPTIONS while appending the build heap limit last.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-old-space-limit.test.mjs","line":16,"end_line":16,"start":635,"end":642,"source":"4 * gib","value":{"kind":"source-expression","source":"4 * gib"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 4 * gib. Actual heap-option functions receive explicit host-memory/NODE_OPTIONS inputs and produce independent expected caps, reservation and append ordering. Scenario: keeps existing NODE_OPTIONS while appending the build heap limit last.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"f69ecc3d9e8e6ee0c398148e36b018e3c2377db7932f33c3c30403693f5acd65"}}],"original_review_sha256":"182a2e5131027a494a1f23931ef7404aaf574d5286174c74af0d871fd7a346b9","reviewer":"audit_config","reviewed_sha256":"f69ecc3d9e8e6ee0c398148e36b018e3c2377db7932f33c3c30403693f5acd65","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/node-old-space-limit.test.mjs","final_declarations":3,"current_controls":{"path":"config/scripts/node-old-space-limit.test.mjs","each":[],"for_of":[],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/scripts/node-old-space-limit.mjs"],"runtime_validation":[]}
+{"path":"config/scripts/node-server-change-scope.test.mjs","sha256":"6b648882f453353bc9e8545ad9a7a656c415c398faef9844f048ad41027a39b1","declarations":26,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":40,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"6b648882f453353bc9e8545ad9a7a656c415c398faef9844f048ad41027a39b1","cases":[{"line":35,"title":"follows static imports, re-exports, dynamic imports and require without executing source","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: follows static imports, re-exports, dynamic imports and require without executing source.","explicit_input_controls":[{"control_id":"40:36:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":36,"source":"moduleTree({\n 'entry.ts': `import './first'; export * from './exports'; import('./dynamic'); require('./required'); throw Error('never execute')`,\n 'first.ts': `import './nested/leaf'`,\n 'exports.ts': 'export const value = 1',\n 'dynamic.ts': 'export const value = 2',\n 'required.ts': 'module.exports = 3',\n 'nested/leaf.ts': 'export const value = 4',\n 'unrelated.ts': 'throw Error(\"unrelated\")'\n })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":36,"end_line":44,"start":1350,"end":1758,"source":"{\n 'entry.ts': `import './first'; export * from './exports'; import('./dynamic'); require('./required'); throw Error('never execute')`,\n 'first.ts': `import './nested/leaf'`,\n 'exports.ts': 'export const value = 1',\n 'dynamic.ts': 'export const value = 2',\n 'required.ts': 'module.exports = 3',\n 'nested/leaf.ts': 'export const value = 4',\n 'unrelated.ts': 'throw Error(\"unrelated\")'\n }","value":{"kind":"object","value":[{"key":"'entry.ts'","value":{"kind":"string","value":"import './first'; export * from './exports'; import('./dynamic'); require('./required'); throw Error('never execute')"}},{"key":"'first.ts'","value":{"kind":"string","value":"import './nested/leaf'"}},{"key":"'exports.ts'","value":{"kind":"string","value":"export const value = 1"}},{"key":"'dynamic.ts'","value":{"kind":"string","value":"export const value = 2"}},{"key":"'required.ts'","value":{"kind":"string","value":"module.exports = 3"}},{"key":"'nested/leaf.ts'","value":{"kind":"string","value":"export const value = 4"}},{"key":"'unrelated.ts'","value":{"kind":"string","value":"throw Error(\"unrelated\")"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { 'entry.ts': `import './first'; export * from './exports'; import('./dynamic'); require('./required'); throw Error('never execute')`, . Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: follows static imports, re-exports, dynamic imports and require without executing source.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: follows static imports, re-exports, dynamic imports and require without executing source.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:45:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":45,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":45,"end_line":45,"start":1807,"end":1842,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: follows static imports, re-exports, dynamic imports and require without executing source.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: follows static imports, re-exports, dynamic imports and require without executing source.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":35,"title":"follows static imports, re-exports, dynamic imports and require without executing source","start":1215,"end":1998},"implementation_status":"retained"},{"line":56,"title":"runs the matrix when a dependency is deleted or graph analysis fails","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the matrix when a dependency is deleted or graph analysis fails.","explicit_input_controls":[{"control_id":"40:57:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":57,"source":"moduleTree({ 'entry.ts': `import './deleted'` })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":57,"end_line":57,"start":2115,"end":2151,"source":"{ 'entry.ts': `import './deleted'` }","value":{"kind":"object","value":[{"key":"'entry.ts'","value":{"kind":"string","value":"import './deleted'"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { 'entry.ts': `import './deleted'` }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the matrix when a dependency is deleted or graph analysis fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the matrix when a dependency is deleted or graph analysis fails.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:58:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":58,"source":"classifyNodeServerChanges(['deleted.ts'], () =>\n collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })\n )","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":58,"end_line":58,"start":2202,"end":2216,"source":"['deleted.ts']","value":{"kind":"array","value":[{"kind":"string","value":"deleted.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['deleted.ts']. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the matrix when a dependency is deleted or graph analysis fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":58,"end_line":59,"start":2218,"end":2288,"source":"() =>\n collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","value":{"kind":"source-expression","source":"() =>\n collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the matrix when a dependency is deleted or graph analysis fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the matrix when a dependency is deleted or graph analysis fails.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:59:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":59,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":59,"end_line":59,"start":2252,"end":2287,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the matrix when a dependency is deleted or graph analysis fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the matrix when a dependency is deleted or graph analysis fails.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:63:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":63,"source":"classifyNodeServerChanges([])","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":63,"end_line":63,"start":2439,"end":2441,"source":"[]","value":{"kind":"array","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: []. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the matrix when a dependency is deleted or graph analysis fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the matrix when a dependency is deleted or graph analysis fails.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":56,"title":"runs the matrix when a dependency is deleted or graph analysis fails","start":2000,"end":2468},"implementation_status":"retained"},{"line":90,"title":"tracks workspace source and manifest closures without trusting dist or widening to unrelated packages","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","explicit_input_controls":[{"control_id":"40:92:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":92,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":92,"end_line":92,"start":3776,"end":3811,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:101:for-of:12","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":101,"source":"[\n 'src/packages/process-host/package.json',\n 'src/packages/process-host/src/private.ts',\n 'src/packages/byte-buffer/src/byte-buffer.ts'\n ]","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":102,"end_line":102,"start":4141,"end":4181,"source":"'src/packages/process-host/package.json'","value":{"kind":"string","value":"src/packages/process-host/package.json"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/packages/process-host/package.json'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":103,"end_line":103,"start":4187,"end":4229,"source":"'src/packages/process-host/src/private.ts'","value":{"kind":"string","value":"src/packages/process-host/src/private.ts"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/packages/process-host/src/private.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":104,"end_line":104,"start":4235,"end":4280,"source":"'src/packages/byte-buffer/src/byte-buffer.ts'","value":{"kind":"string","value":"src/packages/byte-buffer/src/byte-buffer.ts"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/packages/byte-buffer/src/byte-buffer.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:106:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":106,"source":"classifyNodeServerChanges([file], async () => inputs)","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":106,"end_line":106,"start":4332,"end":4338,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":106,"end_line":106,"start":4340,"end":4358,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:110:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":110,"source":"classifyNodeServerChanges(\n ['src/packages/unrelated/src/unrelated.ts'],\n async () => inputs\n )","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":111,"end_line":111,"start":4450,"end":4493,"source":"['src/packages/unrelated/src/unrelated.ts']","value":{"kind":"array","value":[{"kind":"string","value":"src/packages/unrelated/src/unrelated.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/packages/unrelated/src/unrelated.ts']. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":112,"end_line":112,"start":4503,"end":4521,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":90,"title":"tracks workspace source and manifest closures without trusting dist or widening to unrelated packages","start":3576,"end":4564},"implementation_status":"retained"},{"line":118,"title":"runs for a change to the process-host build input %s","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs for a change to the process-host build input %s.","explicit_input_controls":[{"control_id":"40:118:parameter-table:15","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":118,"source":"[\n 'src/packages/process-host/.gitignore',\n 'src/packages/process-host/scripts/build-dist.mjs',\n 'src/packages/process-host/tsconfig.json'\n]","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":119,"end_line":119,"start":4578,"end":4616,"source":"'src/packages/process-host/.gitignore'","value":{"kind":"string","value":"src/packages/process-host/.gitignore"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/packages/process-host/.gitignore'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs for a change to the process-host build input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":120,"end_line":120,"start":4620,"end":4670,"source":"'src/packages/process-host/scripts/build-dist.mjs'","value":{"kind":"string","value":"src/packages/process-host/scripts/build-dist.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/packages/process-host/scripts/build-dist.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs for a change to the process-host build input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":121,"end_line":121,"start":4674,"end":4715,"source":"'src/packages/process-host/tsconfig.json'","value":{"kind":"string","value":"src/packages/process-host/tsconfig.json"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/packages/process-host/tsconfig.json'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs for a change to the process-host build input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs for a change to the process-host build input %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:123:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":123,"source":"classifyNodeServerChanges([file], async () => new Set())","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":123,"end_line":123,"start":4842,"end":4848,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs for a change to the process-host build input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":123,"end_line":123,"start":4850,"end":4871,"source":"async () => new Set()","value":{"kind":"source-expression","source":"async () => new Set()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => new Set(). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs for a change to the process-host build input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs for a change to the process-host build input %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":118,"title":"runs for a change to the process-host build input %s","start":4566,"end":4980},"implementation_status":"retained"},{"line":128,"title":"retains qualification for an unresolved internal package export: %s","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification for an unresolved internal package export: %s.","explicit_input_controls":[{"control_id":"40:128:parameter-table:17","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":128,"source":"['@orca/unknown', '@orca/process-host/private']","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":128,"end_line":128,"start":4991,"end":5006,"source":"'@orca/unknown'","value":{"kind":"string","value":"@orca/unknown"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '@orca/unknown'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification for an unresolved internal package export: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":128,"end_line":128,"start":5008,"end":5036,"source":"'@orca/process-host/private'","value":{"kind":"string","value":"@orca/process-host/private"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '@orca/process-host/private'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification for an unresolved internal package export: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification for an unresolved internal package export: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:131:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":131,"source":"workspaceTree(specifier)","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":131,"end_line":131,"start":5169,"end":5178,"source":"specifier","value":{"kind":"source-expression","source":"specifier"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: specifier. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification for an unresolved internal package export: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification for an unresolved internal package export: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:132:inline-api-or-fixture-input:19","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":132,"source":"classifyNodeServerChanges(\n ['src/packages/process-host/src/run-process.ts'],\n () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })\n )","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":133,"end_line":133,"start":5238,"end":5286,"source":"['src/packages/process-host/src/run-process.ts']","value":{"kind":"array","value":[{"kind":"string","value":"src/packages/process-host/src/run-process.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/packages/process-host/src/run-process.ts']. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification for an unresolved internal package export: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":134,"end_line":134,"start":5294,"end":5360,"source":"() => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","value":{"kind":"source-expression","source":"() => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification for an unresolved internal package export: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification for an unresolved internal package export: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:134:inline-api-or-fixture-input:20","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":134,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":134,"end_line":134,"start":5324,"end":5359,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification for an unresolved internal package export: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification for an unresolved internal package export: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":128,"title":"retains qualification for an unresolved internal package export: %s","start":4982,"end":5527},"implementation_status":"retained"},{"line":142,"title":"runs deleted or renamed selected tests even when absent from the graph: %j","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs deleted or renamed selected tests even when absent from the graph: %j.","explicit_input_controls":[{"control_id":"40:142:parameter-table:21","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":142,"source":"[\n ['tests/e2e/daemon-running-work-probe.unit.test.ts'],\n ['config/scripts/zip-extractor-command.test.mjs'],\n ['config/scripts/zip-extractor-command.test.mjs', 'config/scripts/renamed-command.test.mjs']\n]","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":143,"end_line":143,"start":5541,"end":5593,"source":"['tests/e2e/daemon-running-work-probe.unit.test.ts']","value":{"kind":"array","value":[{"kind":"string","value":"tests/e2e/daemon-running-work-probe.unit.test.ts"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['tests/e2e/daemon-running-work-probe.unit.test.ts']. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs deleted or renamed selected tests even when absent from the graph: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":144,"end_line":144,"start":5597,"end":5646,"source":"['config/scripts/zip-extractor-command.test.mjs']","value":{"kind":"array","value":[{"kind":"string","value":"config/scripts/zip-extractor-command.test.mjs"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['config/scripts/zip-extractor-command.test.mjs']. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs deleted or renamed selected tests even when absent from the graph: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":145,"end_line":145,"start":5650,"end":5742,"source":"['config/scripts/zip-extractor-command.test.mjs', 'config/scripts/renamed-command.test.mjs']","value":{"kind":"array","value":[{"kind":"string","value":"config/scripts/zip-extractor-command.test.mjs"},{"kind":"string","value":"config/scripts/renamed-command.test.mjs"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['config/scripts/zip-extractor-command.test.mjs', 'config/scripts/renamed-command.test.mjs']. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs deleted or renamed selected tests even when absent from the graph: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs deleted or renamed selected tests even when absent from the graph: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:149:inline-api-or-fixture-input:22","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":149,"source":"classifyNodeServerChanges(files, async () => new Set())","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":149,"end_line":149,"start":5895,"end":5900,"source":"files","value":{"kind":"source-expression","source":"files"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: files. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs deleted or renamed selected tests even when absent from the graph: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":149,"end_line":149,"start":5902,"end":5923,"source":"async () => new Set()","value":{"kind":"source-expression","source":"async () => new Set()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => new Set(). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs deleted or renamed selected tests even when absent from the graph: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs deleted or renamed selected tests even when absent from the graph: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":142,"title":"runs deleted or renamed selected tests even when absent from the graph: %j","start":5529,"end":5953},"implementation_status":"retained"},{"line":153,"title":"always selects build, native and dynamically opened inputs: %s","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","explicit_input_controls":[{"control_id":"40:153:parameter-table:23","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":153,"source":"[\n 'package.json',\n 'pnpm-lock.yaml',\n 'pnpm-workspace.yaml',\n '.npmrc',\n 'tsconfig.json',\n 'config/tsconfig.node.json',\n 'config/scripts/node-server-qualification.mjs',\n 'config/scripts/node-server-native-compat-scope.mjs',\n 'config/patches/node-pty@1.1.0.patch',\n 'native/windows-registry/src/addon.cc',\n '.github/actions/install-node-dependencies/action.yml',\n '.github/actions/restore-pnpm-verification/action.yml',\n '.github/actions/prepare-headless-compiler/action.yml',\n 'config/scripts/headless-detector-compiler-cache.mjs',\n 'config/scripts/workspace-source-exports.mjs',\n 'config/scripts/workspace-source-exports.test.mjs',\n '.github/actions/prepare-native-runtime/action.yml',\n '.github/actions/prepare-orcad-prebuilds/action.yml',\n '.github/workflows/node-server-tests.yml',\n 'src/main/persistence/profile-state/new-worker.ts'\n]","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":154,"end_line":154,"start":5967,"end":5981,"source":"'package.json'","value":{"kind":"string","value":"package.json"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'package.json'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":155,"end_line":155,"start":5985,"end":6001,"source":"'pnpm-lock.yaml'","value":{"kind":"string","value":"pnpm-lock.yaml"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'pnpm-lock.yaml'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":156,"end_line":156,"start":6005,"end":6026,"source":"'pnpm-workspace.yaml'","value":{"kind":"string","value":"pnpm-workspace.yaml"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'pnpm-workspace.yaml'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":157,"end_line":157,"start":6030,"end":6038,"source":"'.npmrc'","value":{"kind":"string","value":".npmrc"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.npmrc'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":158,"end_line":158,"start":6042,"end":6057,"source":"'tsconfig.json'","value":{"kind":"string","value":"tsconfig.json"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'tsconfig.json'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":159,"end_line":159,"start":6061,"end":6088,"source":"'config/tsconfig.node.json'","value":{"kind":"string","value":"config/tsconfig.node.json"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/tsconfig.node.json'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":160,"end_line":160,"start":6092,"end":6138,"source":"'config/scripts/node-server-qualification.mjs'","value":{"kind":"string","value":"config/scripts/node-server-qualification.mjs"},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-qualification.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":161,"end_line":161,"start":6142,"end":6194,"source":"'config/scripts/node-server-native-compat-scope.mjs'","value":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-native-compat-scope.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":162,"end_line":162,"start":6198,"end":6235,"source":"'config/patches/node-pty@1.1.0.patch'","value":{"kind":"string","value":"config/patches/node-pty@1.1.0.patch"},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/patches/node-pty@1.1.0.patch'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":163,"end_line":163,"start":6239,"end":6277,"source":"'native/windows-registry/src/addon.cc'","value":{"kind":"string","value":"native/windows-registry/src/addon.cc"},"index":10,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'native/windows-registry/src/addon.cc'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":164,"end_line":164,"start":6281,"end":6335,"source":"'.github/actions/install-node-dependencies/action.yml'","value":{"kind":"string","value":".github/actions/install-node-dependencies/action.yml"},"index":11,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/install-node-dependencies/action.yml'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":165,"end_line":165,"start":6339,"end":6393,"source":"'.github/actions/restore-pnpm-verification/action.yml'","value":{"kind":"string","value":".github/actions/restore-pnpm-verification/action.yml"},"index":12,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/restore-pnpm-verification/action.yml'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":166,"end_line":166,"start":6397,"end":6451,"source":"'.github/actions/prepare-headless-compiler/action.yml'","value":{"kind":"string","value":".github/actions/prepare-headless-compiler/action.yml"},"index":13,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/prepare-headless-compiler/action.yml'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":167,"end_line":167,"start":6455,"end":6508,"source":"'config/scripts/headless-detector-compiler-cache.mjs'","value":{"kind":"string","value":"config/scripts/headless-detector-compiler-cache.mjs"},"index":14,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/headless-detector-compiler-cache.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":168,"end_line":168,"start":6512,"end":6557,"source":"'config/scripts/workspace-source-exports.mjs'","value":{"kind":"string","value":"config/scripts/workspace-source-exports.mjs"},"index":15,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/workspace-source-exports.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":169,"end_line":169,"start":6561,"end":6611,"source":"'config/scripts/workspace-source-exports.test.mjs'","value":{"kind":"string","value":"config/scripts/workspace-source-exports.test.mjs"},"index":16,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/workspace-source-exports.test.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":170,"end_line":170,"start":6615,"end":6666,"source":"'.github/actions/prepare-native-runtime/action.yml'","value":{"kind":"string","value":".github/actions/prepare-native-runtime/action.yml"},"index":17,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/prepare-native-runtime/action.yml'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":171,"end_line":171,"start":6670,"end":6722,"source":"'.github/actions/prepare-orcad-prebuilds/action.yml'","value":{"kind":"string","value":".github/actions/prepare-orcad-prebuilds/action.yml"},"index":18,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/prepare-orcad-prebuilds/action.yml'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":172,"end_line":172,"start":6726,"end":6767,"source":"'.github/workflows/node-server-tests.yml'","value":{"kind":"string","value":".github/workflows/node-server-tests.yml"},"index":19,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/workflows/node-server-tests.yml'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":173,"end_line":173,"start":6771,"end":6821,"source":"'src/main/persistence/profile-state/new-worker.ts'","value":{"kind":"string","value":"src/main/persistence/profile-state/new-worker.ts"},"index":20,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/profile-state/new-worker.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":11,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":12,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":13,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":14,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":15,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":16,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":17,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":18,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":19,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":20,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:175:inline-api-or-fixture-input:24","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":175,"source":"classifyNodeServerChanges([file], async () => new Set())","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":175,"end_line":175,"start":6951,"end":6957,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":175,"end_line":175,"start":6959,"end":6980,"source":"async () => new Set()","value":{"kind":"source-expression","source":"async () => new Set()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => new Set(). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":153,"title":"always selects build, native and dynamically opened inputs: %s","start":5955,"end":7007},"implementation_status":"retained"},{"line":178,"title":"checks ordinary source unit files against actual imports before skipping the matrix","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","explicit_input_controls":[{"control_id":"40:182:inline-api-or-fixture-input:25","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":182,"source":"moduleTree({\n 'entry.ts': `import './${reachable}'; throw Error('never execute')`,\n [reachable]: 'export const value = 1',\n [unrelated]: 'throw Error(\"never execute unrelated test\")'\n })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":182,"end_line":186,"start":7338,"end":7522,"source":"{\n 'entry.ts': `import './${reachable}'; throw Error('never execute')`,\n [reachable]: 'export const value = 1',\n [unrelated]: 'throw Error(\"never execute unrelated test\")'\n }","value":{"kind":"object","value":[{"key":"'entry.ts'","value":{"kind":"source-expression","source":"`import './${reachable}'; throw Error('never execute')`"}},{"key":"[reachable]","value":{"kind":"string","value":"export const value = 1"}},{"key":"[unrelated]","value":{"kind":"string","value":"throw Error(\"never execute unrelated test\")"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { 'entry.ts': `import './${reachable}'; throw Error('never execute')`, [reachable]: 'export const value = 1', [unrelated]: 'thro. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:187:inline-api-or-fixture-input:26","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":187,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":187,"end_line":187,"start":7571,"end":7606,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:190:inline-api-or-fixture-input:27","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":190,"source":"classifyNodeServerChanges([reachable], async () => inputs)","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":190,"end_line":190,"start":7737,"end":7748,"source":"[reachable]","value":{"kind":"array","value":[{"kind":"reference","source":"reachable","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":179,"end_line":179,"start":7133,"end":7176},"resolved":{"kind":"string","value":"src/main/persistence/example/used.test.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [reachable]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":190,"end_line":190,"start":7750,"end":7768,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:191:inline-api-or-fixture-input:28","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":191,"source":"classifyNodeServerChanges([unrelated], async () => inputs)","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":191,"end_line":191,"start":7835,"end":7846,"source":"[unrelated]","value":{"kind":"array","value":[{"kind":"reference","source":"unrelated","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":180,"end_line":180,"start":7197,"end":7246},"resolved":{"kind":"string","value":"src/main/persistence/example/unrelated.test.tsx"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [unrelated]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":191,"end_line":191,"start":7848,"end":7866,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:192:inline-api-or-fixture-input:29","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":192,"source":"classifyNodeServerChanges([removed], async () => inputs)","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":192,"end_line":192,"start":7934,"end":7943,"source":"[removed]","value":{"kind":"array","value":[{"kind":"reference","source":"removed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":181,"end_line":181,"start":7265,"end":7311},"resolved":{"kind":"string","value":"src/main/persistence/example/removed.test.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [removed]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":192,"end_line":192,"start":7945,"end":7963,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":178,"title":"checks ordinary source unit files against actual imports before skipping the matrix","start":7009,"end":7991},"implementation_status":"retained"},{"line":195,"title":"retains qualification when a removed ordinary unit file breaks an actual import","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification when a removed ordinary unit file breaks an actual import.","explicit_input_controls":[{"control_id":"40:197:inline-api-or-fixture-input:30","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":197,"source":"moduleTree({ 'entry.ts': `import './${removed}'` })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":197,"end_line":197,"start":8184,"end":8223,"source":"{ 'entry.ts': `import './${removed}'` }","value":{"kind":"object","value":[{"key":"'entry.ts'","value":{"kind":"source-expression","source":"`import './${removed}'`"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { 'entry.ts': `import './${removed}'` }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification when a removed ordinary unit file breaks an actual import.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification when a removed ordinary unit file breaks an actual import.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:198:inline-api-or-fixture-input:31","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":198,"source":"classifyNodeServerChanges([removed], () =>\n collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })\n )","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":198,"end_line":198,"start":8274,"end":8283,"source":"[removed]","value":{"kind":"array","value":[{"kind":"reference","source":"removed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":196,"end_line":196,"start":8111,"end":8157},"resolved":{"kind":"string","value":"src/main/persistence/example/removed.test.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [removed]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification when a removed ordinary unit file breaks an actual import.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":198,"end_line":199,"start":8285,"end":8355,"source":"() =>\n collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","value":{"kind":"source-expression","source":"() =>\n collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification when a removed ordinary unit file breaks an actual import.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification when a removed ordinary unit file breaks an actual import.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:199:inline-api-or-fixture-input:32","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":199,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":199,"end_line":199,"start":8319,"end":8354,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification when a removed ordinary unit file breaks an actual import.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification when a removed ordinary unit file breaks an actual import.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":195,"title":"retains qualification when a removed ordinary unit file breaks an actual import","start":7993,"end":8564},"implementation_status":"retained"},{"line":207,"title":"requests the graph for an ordinary source unit edit before dependencies are installed","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: requests the graph for an ordinary source unit edit before dependencies are installed.","explicit_input_controls":[{"control_id":"40:208:inline-api-or-fixture-input:33","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":208,"source":"classifyNodeServerChanges(\n ['src/main/persistence/example/unrelated.test.ts'],\n async () => {\n throw new Error('graph must not run before installation')\n },\n { deferGraph: true }\n )","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":209,"end_line":209,"start":8726,"end":8776,"source":"['src/main/persistence/example/unrelated.test.ts']","value":{"kind":"array","value":[{"kind":"string","value":"src/main/persistence/example/unrelated.test.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/main/persistence/example/unrelated.test.ts']. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: requests the graph for an ordinary source unit edit before dependencies are installed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":210,"end_line":212,"start":8782,"end":8865,"source":"async () => {\n throw new Error('graph must not run before installation')\n }","value":{"kind":"source-expression","source":"async () => {\n throw new Error('graph must not run before installation')\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => { throw new Error('graph must not run before installation') }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: requests the graph for an ordinary source unit edit before dependencies are installed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-change-scope.test.mjs","line":213,"end_line":213,"start":8871,"end":8891,"source":"{ deferGraph: true }","value":{"kind":"object","value":[{"key":"deferGraph","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { deferGraph: true }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: requests the graph for an ordinary source unit edit before dependencies are installed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: requests the graph for an ordinary source unit edit before dependencies are installed.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":207,"title":"requests the graph for an ordinary source unit edit before dependencies are installed","start":8566,"end":8983},"implementation_status":"retained"},{"line":219,"title":"forces explicitly protected tests without relying on graph discovery: %s","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: forces explicitly protected tests without relying on graph discovery: %s.","explicit_input_controls":[{"control_id":"40:219:parameter-table:34","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":219,"source":"[\n 'src/main/persistence/profile-state/removed.test.ts',\n 'src/main/sqlite/removed.test.ts',\n 'src/main/orcad/orcad-entry.test.ts',\n 'src/main/daemon/pty-subprocess/removed.test.ts',\n 'src/main/providers/agent-foreground-process-git-bash.win32.test.ts',\n 'config/scripts/node-server-change-scope.test.mjs'\n]","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":220,"end_line":220,"start":8997,"end":9049,"source":"'src/main/persistence/profile-state/removed.test.ts'","value":{"kind":"string","value":"src/main/persistence/profile-state/removed.test.ts"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/profile-state/removed.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: forces explicitly protected tests without relying on graph discovery: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":221,"end_line":221,"start":9053,"end":9086,"source":"'src/main/sqlite/removed.test.ts'","value":{"kind":"string","value":"src/main/sqlite/removed.test.ts"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/sqlite/removed.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: forces explicitly protected tests without relying on graph discovery: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":222,"end_line":222,"start":9090,"end":9126,"source":"'src/main/orcad/orcad-entry.test.ts'","value":{"kind":"string","value":"src/main/orcad/orcad-entry.test.ts"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/orcad/orcad-entry.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: forces explicitly protected tests without relying on graph discovery: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":223,"end_line":223,"start":9130,"end":9178,"source":"'src/main/daemon/pty-subprocess/removed.test.ts'","value":{"kind":"string","value":"src/main/daemon/pty-subprocess/removed.test.ts"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/daemon/pty-subprocess/removed.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: forces explicitly protected tests without relying on graph discovery: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":224,"end_line":224,"start":9182,"end":9250,"source":"'src/main/providers/agent-foreground-process-git-bash.win32.test.ts'","value":{"kind":"string","value":"src/main/providers/agent-foreground-process-git-bash.win32.test.ts"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/providers/agent-foreground-process-git-bash.win32.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: forces explicitly protected tests without relying on graph discovery: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":225,"end_line":225,"start":9254,"end":9304,"source":"'config/scripts/node-server-change-scope.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-change-scope.test.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: forces explicitly protected tests without relying on graph discovery: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: forces explicitly protected tests without relying on graph discovery: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:227:inline-api-or-fixture-input:35","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":227,"source":"classifyNodeServerChanges([file], async () => {\n throw new Error('protected test must not require graph analysis')\n })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":227,"end_line":227,"start":9451,"end":9457,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: forces explicitly protected tests without relying on graph discovery: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":227,"end_line":229,"start":9459,"end":9546,"source":"async () => {\n throw new Error('protected test must not require graph analysis')\n }","value":{"kind":"source-expression","source":"async () => {\n throw new Error('protected test must not require graph analysis')\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => { throw new Error('protected test must not require graph analysis') }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: forces explicitly protected tests without relying on graph discovery: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: forces explicitly protected tests without relying on graph discovery: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":219,"title":"forces explicitly protected tests without relying on graph discovery: %s","start":8985,"end":9705},"implementation_status":"retained"},{"line":235,"title":"retains prefix protection for production, fixtures and other file conventions: %s","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","explicit_input_controls":[{"control_id":"40:235:parameter-table:36","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":235,"source":"[\n 'src/main/persistence/example/worker.ts',\n 'src/main/persistence/example/state.fixture.ts',\n 'src/main/persistence/example/state.test.ts.fixture',\n 'src/main/persistence/example/state.spec.ts',\n 'src/main/persistence/example/../state.test.ts',\n 'src/main/persistence/example/./state.test.ts',\n '.github/actions/prepare-native-runtime/cache.test.ts'\n]","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":236,"end_line":236,"start":9719,"end":9759,"source":"'src/main/persistence/example/worker.ts'","value":{"kind":"string","value":"src/main/persistence/example/worker.ts"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/example/worker.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":237,"end_line":237,"start":9763,"end":9810,"source":"'src/main/persistence/example/state.fixture.ts'","value":{"kind":"string","value":"src/main/persistence/example/state.fixture.ts"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/example/state.fixture.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":238,"end_line":238,"start":9814,"end":9866,"source":"'src/main/persistence/example/state.test.ts.fixture'","value":{"kind":"string","value":"src/main/persistence/example/state.test.ts.fixture"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/example/state.test.ts.fixture'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":239,"end_line":239,"start":9870,"end":9914,"source":"'src/main/persistence/example/state.spec.ts'","value":{"kind":"string","value":"src/main/persistence/example/state.spec.ts"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/example/state.spec.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":240,"end_line":240,"start":9918,"end":9965,"source":"'src/main/persistence/example/../state.test.ts'","value":{"kind":"string","value":"src/main/persistence/example/../state.test.ts"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/example/../state.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":241,"end_line":241,"start":9969,"end":10015,"source":"'src/main/persistence/example/./state.test.ts'","value":{"kind":"string","value":"src/main/persistence/example/./state.test.ts"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/example/./state.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":242,"end_line":242,"start":10019,"end":10073,"source":"'.github/actions/prepare-native-runtime/cache.test.ts'","value":{"kind":"string","value":".github/actions/prepare-native-runtime/cache.test.ts"},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/prepare-native-runtime/cache.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:246:inline-api-or-fixture-input:37","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":246,"source":"classifyNodeServerChanges([file], async () => {\n throw new Error('protected input must not require graph analysis')\n })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":246,"end_line":246,"start":10236,"end":10242,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":246,"end_line":248,"start":10244,"end":10336,"source":"async () => {\n throw new Error('protected input must not require graph analysis')\n }","value":{"kind":"source-expression","source":"async () => {\n throw new Error('protected input must not require graph analysis')\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => { throw new Error('protected input must not require graph analysis') }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":235,"title":"retains prefix protection for production, fixtures and other file conventions: %s","start":9707,"end":10504},"implementation_status":"retained"},{"line":255,"title":"retains a production force when an unrelated unit test changes in the same diff","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains a production force when an unrelated unit test changes in the same diff.","explicit_input_controls":[{"control_id":"40:256:inline-api-or-fixture-input:38","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":256,"source":"classifyNodeServerChanges(\n ['src/main/persistence/example/unrelated.test.ts', 'src/main/persistence/example/worker.ts'],\n async () => {\n throw new Error('production input must not require graph analysis')\n }\n )","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":257,"end_line":257,"start":10660,"end":10752,"source":"['src/main/persistence/example/unrelated.test.ts', 'src/main/persistence/example/worker.ts']","value":{"kind":"array","value":[{"kind":"string","value":"src/main/persistence/example/unrelated.test.ts"},{"kind":"string","value":"src/main/persistence/example/worker.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/main/persistence/example/unrelated.test.ts', 'src/main/persistence/example/worker.ts']. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains a production force when an unrelated unit test changes in the same diff.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":258,"end_line":260,"start":10758,"end":10851,"source":"async () => {\n throw new Error('production input must not require graph analysis')\n }","value":{"kind":"source-expression","source":"async () => {\n throw new Error('production input must not require graph analysis')\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => { throw new Error('production input must not require graph analysis') }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains a production force when an unrelated unit test changes in the same diff.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains a production force when an unrelated unit test changes in the same diff.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":255,"title":"retains a production force when an unrelated unit test changes in the same diff","start":10506,"end":11044},"implementation_status":"retained"},{"line":267,"title":"defers uncertain paths without issuing a qualification verdict","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: defers uncertain paths without issuing a qualification verdict.","explicit_input_controls":[{"control_id":"40:268:inline-api-or-fixture-input:39","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":268,"source":"classifyNodeServerChanges(\n ['src/renderer/src/example.ts'],\n async () => {\n throw new Error('graph must not run before installation')\n },\n { deferGraph: true }\n )","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":269,"end_line":269,"start":11183,"end":11214,"source":"['src/renderer/src/example.ts']","value":{"kind":"array","value":[{"kind":"string","value":"src/renderer/src/example.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/renderer/src/example.ts']. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: defers uncertain paths without issuing a qualification verdict.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":270,"end_line":272,"start":11220,"end":11303,"source":"async () => {\n throw new Error('graph must not run before installation')\n }","value":{"kind":"source-expression","source":"async () => {\n throw new Error('graph must not run before installation')\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => { throw new Error('graph must not run before installation') }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: defers uncertain paths without issuing a qualification verdict.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-change-scope.test.mjs","line":273,"end_line":273,"start":11309,"end":11329,"source":"{ deferGraph: true }","value":{"kind":"object","value":[{"key":"deferGraph","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { deferGraph: true }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: defers uncertain paths without issuing a qualification verdict.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: defers uncertain paths without issuing a qualification verdict.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":267,"title":"defers uncertain paths without issuing a qualification verdict","start":11046,"end":11421},"implementation_status":"retained"},{"line":279,"title":"fails closed or requests dependencies in an uninstalled checkout: %j","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","explicit_input_controls":[{"control_id":"40:279:parameter-table:40","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":279,"source":"[\n { files: [], deferred: true, expected: 'should_run=true' },\n { files: ['package.json'], deferred: true, expected: 'should_run=true' },\n {\n files: ['src/main/persistence/profile-state/profile-state-windows.ts'],\n deferred: true,\n fullQualification: false,\n qualification: false,\n runners: ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n expected: 'should_run=true'\n },\n {\n files: ['src/main/persistence/profile-state/profile-state-windows.ts'],\n deferred: true,\n expected: 'should_run=true'\n },\n {\n files: ['src/main/providers/provider-windows.ts'],\n deferred: true,\n fullQualification: false,\n expected: 'should_run=true'\n },\n {\n files: ['src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts'],\n deferred: true,\n fullQualification: false,\n pullRequest: true,\n nativeGraph: true,\n expected: 'should_run=true'\n },\n { files: ['src/renderer/src/example.ts'], deferred: true, expected: 'graph_required=true' },\n { files: ['src/renderer/src/example.ts'], deferred: false, expected: 'should_run=true' }\n]","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":280,"end_line":280,"start":11435,"end":11493,"source":"{ files: [], deferred: true, expected: 'should_run=true' }","value":{"kind":"object","value":[{"key":"files","value":{"kind":"array","value":[]}},{"key":"deferred","value":{"kind":"boolean","value":true}},{"key":"expected","value":{"kind":"string","value":"should_run=true"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { files: [], deferred: true, expected: 'should_run=true' }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":281,"end_line":281,"start":11497,"end":11569,"source":"{ files: ['package.json'], deferred: true, expected: 'should_run=true' }","value":{"kind":"object","value":[{"key":"files","value":{"kind":"array","value":[{"kind":"string","value":"package.json"}]}},{"key":"deferred","value":{"kind":"boolean","value":true}},{"key":"expected","value":{"kind":"string","value":"should_run=true"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { files: ['package.json'], deferred: true, expected: 'should_run=true' }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":282,"end_line":289,"start":11573,"end":11827,"source":"{\n files: ['src/main/persistence/profile-state/profile-state-windows.ts'],\n deferred: true,\n fullQualification: false,\n qualification: false,\n runners: ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n expected: 'should_run=true'\n }","value":{"kind":"object","value":[{"key":"files","value":{"kind":"array","value":[{"kind":"string","value":"src/main/persistence/profile-state/profile-state-windows.ts"}]}},{"key":"deferred","value":{"kind":"boolean","value":true}},{"key":"fullQualification","value":{"kind":"boolean","value":false}},{"key":"qualification","value":{"kind":"boolean","value":false}},{"key":"runners","value":{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"windows-2022"},{"kind":"string","value":"windows-11-arm"}]}},{"key":"expected","value":{"kind":"string","value":"should_run=true"}}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { files: ['src/main/persistence/profile-state/profile-state-windows.ts'], deferred: true, fullQualification: false, qualific. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":290,"end_line":294,"start":11831,"end":11964,"source":"{\n files: ['src/main/persistence/profile-state/profile-state-windows.ts'],\n deferred: true,\n expected: 'should_run=true'\n }","value":{"kind":"object","value":[{"key":"files","value":{"kind":"array","value":[{"kind":"string","value":"src/main/persistence/profile-state/profile-state-windows.ts"}]}},{"key":"deferred","value":{"kind":"boolean","value":true}},{"key":"expected","value":{"kind":"string","value":"should_run=true"}}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { files: ['src/main/persistence/profile-state/profile-state-windows.ts'], deferred: true, expected: 'should_run=true' }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":295,"end_line":300,"start":11968,"end":12110,"source":"{\n files: ['src/main/providers/provider-windows.ts'],\n deferred: true,\n fullQualification: false,\n expected: 'should_run=true'\n }","value":{"kind":"object","value":[{"key":"files","value":{"kind":"array","value":[{"kind":"string","value":"src/main/providers/provider-windows.ts"}]}},{"key":"deferred","value":{"kind":"boolean","value":true}},{"key":"fullQualification","value":{"kind":"boolean","value":false}},{"key":"expected","value":{"kind":"string","value":"should_run=true"}}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { files: ['src/main/providers/provider-windows.ts'], deferred: true, fullQualification: false, expected: 'should_run=true' . Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":301,"end_line":308,"start":12114,"end":12346,"source":"{\n files: ['src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts'],\n deferred: true,\n fullQualification: false,\n pullRequest: true,\n nativeGraph: true,\n expected: 'should_run=true'\n }","value":{"kind":"object","value":[{"key":"files","value":{"kind":"array","value":[{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}]}},{"key":"deferred","value":{"kind":"boolean","value":true}},{"key":"fullQualification","value":{"kind":"boolean","value":false}},{"key":"pullRequest","value":{"kind":"boolean","value":true}},{"key":"nativeGraph","value":{"kind":"boolean","value":true}},{"key":"expected","value":{"kind":"string","value":"should_run=true"}}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { files: ['src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts'], deferred: true, fullQualificati. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":309,"end_line":309,"start":12350,"end":12441,"source":"{ files: ['src/renderer/src/example.ts'], deferred: true, expected: 'graph_required=true' }","value":{"kind":"object","value":[{"key":"files","value":{"kind":"array","value":[{"kind":"string","value":"src/renderer/src/example.ts"}]}},{"key":"deferred","value":{"kind":"boolean","value":true}},{"key":"expected","value":{"kind":"string","value":"graph_required=true"}}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { files: ['src/renderer/src/example.ts'], deferred: true, expected: 'graph_required=true' }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":310,"end_line":310,"start":12445,"end":12533,"source":"{ files: ['src/renderer/src/example.ts'], deferred: false, expected: 'should_run=true' }","value":{"kind":"object","value":[{"key":"files","value":{"kind":"array","value":[{"kind":"string","value":"src/renderer/src/example.ts"}]}},{"key":"deferred","value":{"kind":"boolean","value":false}},{"key":"expected","value":{"kind":"string","value":"should_run=true"}}]},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { files: ['src/renderer/src/example.ts'], deferred: false, expected: 'should_run=true' }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:312:inline-api-or-fixture-input:41","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":312,"source":"moduleTree(\n Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )\n )","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":313,"end_line":323,"start":12656,"end":12981,"source":"Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )","value":{"kind":"call-source","callee":"Object.fromEntries","arguments":[{"kind":"call-source","callee":"[\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map","arguments":[{"kind":"source-expression","source":"(name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ]"}],"source":"[\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])"}],"source":"Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: Object.fromEntries( [ 'node-server-change-scope', 'node-server-test-paths', 'node-server-qualification', . Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:335:inline-api-or-fixture-input:42","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":335,"source":"runProcessSync({\n program: process.execPath,\n args: [\n realpathSync(join(root, 'config/scripts/node-server-change-scope.mjs')),\n changes,\n ...(scenario.fullQualification === false ? [] : ['--full-qualification']),\n ...(scenario.deferred ? ['--defer-graph'] : []),\n ...(scenario.pullRequest ? ['--pull-request', '--diff-paths', statuses] : [])\n ],\n cwd: root,\n env: { ...process.env, GITHUB_OUTPUT: stepOutput },\n timeoutMs: 5_000\n })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":335,"end_line":347,"start":13385,"end":13846,"source":"{\n program: process.execPath,\n args: [\n realpathSync(join(root, 'config/scripts/node-server-change-scope.mjs')),\n changes,\n ...(scenario.fullQualification === false ? [] : ['--full-qualification']),\n ...(scenario.deferred ? ['--defer-graph'] : []),\n ...(scenario.pullRequest ? ['--pull-request', '--diff-paths', statuses] : [])\n ],\n cwd: root,\n env: { ...process.env, GITHUB_OUTPUT: stepOutput },\n timeoutMs: 5_000\n }","value":{"kind":"object","value":[{"key":"program","value":{"kind":"source-expression","source":"process.execPath"}},{"key":"args","value":{"kind":"array","value":[{"kind":"call-source","callee":"realpathSync","arguments":[{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":312,"end_line":324,"start":12640,"end":12985},"resolved":{"kind":"call-source","callee":"moduleTree","arguments":[{"kind":"call-source","callee":"Object.fromEntries","arguments":[{"kind":"call-source","callee":"[\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map","arguments":[{"kind":"source-expression","source":"(name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ]"}],"source":"[\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])"}],"source":"Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )"}],"source":"moduleTree(\n Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )\n )"}},{"kind":"string","value":"config/scripts/node-server-change-scope.mjs"}],"source":"join(root, 'config/scripts/node-server-change-scope.mjs')"}],"source":"realpathSync(join(root, 'config/scripts/node-server-change-scope.mjs'))"},{"kind":"reference","source":"changes","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":325,"end_line":325,"start":13004,"end":13025},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":312,"end_line":324,"start":12640,"end":12985},"resolved":{"kind":"call-source","callee":"moduleTree","arguments":[{"kind":"call-source","callee":"Object.fromEntries","arguments":[{"kind":"call-source","callee":"[\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map","arguments":[{"kind":"source-expression","source":"(name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ]"}],"source":"[\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])"}],"source":"Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )"}],"source":"moduleTree(\n Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )\n )"}},{"kind":"string","value":"changes"}],"source":"join(root, 'changes')"}},{"kind":"source-expression","source":"...(scenario.fullQualification === false ? [] : ['--full-qualification'])"},{"kind":"source-expression","source":"...(scenario.deferred ? ['--defer-graph'] : [])"},{"kind":"source-expression","source":"...(scenario.pullRequest ? ['--pull-request', '--diff-paths', statuses] : [])"}]}},{"key":"cwd","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":312,"end_line":324,"start":12640,"end":12985},"resolved":{"kind":"call-source","callee":"moduleTree","arguments":[{"kind":"call-source","callee":"Object.fromEntries","arguments":[{"kind":"call-source","callee":"[\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map","arguments":[{"kind":"source-expression","source":"(name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ]"}],"source":"[\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])"}],"source":"Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )"}],"source":"moduleTree(\n Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )\n )"}}},{"key":"env","value":{"kind":"object","value":[{"source":"...process.env"},{"key":"GITHUB_OUTPUT","value":{"kind":"reference","source":"stepOutput","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":326,"end_line":326,"start":13047,"end":13072},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":312,"end_line":324,"start":12640,"end":12985},"resolved":{"kind":"call-source","callee":"moduleTree","arguments":[{"kind":"call-source","callee":"Object.fromEntries","arguments":[{"kind":"call-source","callee":"[\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map","arguments":[{"kind":"source-expression","source":"(name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ]"}],"source":"[\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])"}],"source":"Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )"}],"source":"moduleTree(\n Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )\n )"}},{"kind":"string","value":"step-output"}],"source":"join(root, 'step-output')"}}}]}},{"key":"timeoutMs","value":{"kind":"number","value":5000}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { program: process.execPath, args: [ realpathSync(join(root, 'config/scripts/node-server-change-scope.mjs')), changes, . Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":279,"title":"fails closed or requests dependencies in an uninstalled checkout: %j","start":11423,"end":14462},"implementation_status":"retained"},{"line":376,"title":"keeps a Node harness smoke without widening it for an unrelated modified SSH unit","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","explicit_input_controls":[{"control_id":"40:379:fixture-or-oracle-declaration:44","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":379,"source":"[registry, unrelatedSshUnit]","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":379,"end_line":379,"start":15152,"end":15160,"source":"registry","value":{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: registry. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":379,"end_line":379,"start":15162,"end":15178,"source":"unrelatedSshUnit","value":{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: unrelatedSshUnit. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:380:inline-api-or-fixture-input:45","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":380,"source":"classifyNodeServerChanges(\n changed,\n () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }),\n { modifiedFiles: changed }\n )","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":381,"end_line":381,"start":15233,"end":15240,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":379,"end_line":379,"start":15151,"end":15179},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":382,"end_line":382,"start":15246,"end":15312,"source":"() => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","value":{"kind":"source-expression","source":"() => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-change-scope.test.mjs","line":383,"end_line":383,"start":15318,"end":15344,"source":"{ modifiedFiles: changed }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":379,"end_line":379,"start":15151,"end":15179},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: changed }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:382:inline-api-or-fixture-input:46","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":382,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":382,"end_line":382,"start":15276,"end":15311,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:386:inline-api-or-fixture-input:47","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":386,"source":"nodeServerQualification(changed, scope)","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":386,"end_line":386,"start":15419,"end":15426,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":379,"end_line":379,"start":15151,"end":15179},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":386,"end_line":386,"start":15428,"end":15433,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":380,"end_line":384,"start":15196,"end":15348},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(\n changed,\n () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }),\n { modifiedFiles: changed }\n )"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:390:inline-api-or-fixture-input:48","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":390,"source":"nodeServerQualification(changed, scope, { fullQualification: true })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":390,"end_line":390,"start":15540,"end":15547,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":379,"end_line":379,"start":15151,"end":15179},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":390,"end_line":390,"start":15549,"end":15554,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":380,"end_line":384,"start":15196,"end":15348},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(\n changed,\n () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }),\n { modifiedFiles: changed }\n )"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-change-scope.test.mjs","line":390,"end_line":390,"start":15556,"end":15583,"source":"{ fullQualification: true }","value":{"kind":"object","value":[{"key":"fullQualification","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { fullQualification: true }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":376,"title":"keeps a Node harness smoke without widening it for an unrelated modified SSH unit","start":14898,"end":15661},"implementation_status":"retained"},{"line":396,"title":"retains daemon platform coverage: %s","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","explicit_input_controls":[{"control_id":"40:396:parameter-table:49","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":396,"source":"[\n ['src/main/daemon/daemon-authenticated-client-activity.test.ts', NODE_SERVER_RUNNERS, true],\n [\n 'src/main/daemon/daemon-endpoint-windows.test.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ]\n]","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":397,"end_line":397,"start":15675,"end":15766,"source":"['src/main/daemon/daemon-authenticated-client-activity.test.ts', NODE_SERVER_RUNNERS, true]","value":{"kind":"array","value":[{"kind":"string","value":"src/main/daemon/daemon-authenticated-client-activity.test.ts"},{"kind":"reference","source":"NODE_SERVER_RUNNERS","resolved_at":{"path":"config/scripts/node-server-qualification.mjs","line":1,"end_line":8,"start":35,"end":149},"resolved":{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"ubuntu-24.04-arm"},{"kind":"string","value":"macos-15"},{"kind":"string","value":"macos-15-intel"},{"kind":"string","value":"windows-2022"},{"kind":"string","value":"windows-11-arm"}]}},{"kind":"boolean","value":true}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['src/main/daemon/daemon-authenticated-client-activity.test.ts', NODE_SERVER_RUNNERS, true]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":398,"end_line":402,"start":15770,"end":15896,"source":"[\n 'src/main/daemon/daemon-endpoint-windows.test.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ]","value":{"kind":"array","value":[{"kind":"string","value":"src/main/daemon/daemon-endpoint-windows.test.ts"},{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"windows-2022"},{"kind":"string","value":"windows-11-arm"}]},{"kind":"boolean","value":false}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'src/main/daemon/daemon-endpoint-windows.test.ts', ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'], false ]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:404:inline-api-or-fixture-input:50","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":404,"source":"qualificationTree({ [daemon]: 'throw Error(\"unselected\")' })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":404,"end_line":404,"start":16017,"end":16058,"source":"{ [daemon]: 'throw Error(\"unselected\")' }","value":{"kind":"object","value":[{"key":"[daemon]","value":{"kind":"string","value":"throw Error(\"unselected\")"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { [daemon]: 'throw Error(\"unselected\")' }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:405:fixture-or-oracle-declaration:51","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":405,"source":"[registry, daemon, unrelatedSshUnit]","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":405,"end_line":405,"start":16076,"end":16084,"source":"registry","value":{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: registry. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":405,"end_line":405,"start":16086,"end":16092,"source":"daemon","value":{"kind":"source-expression","source":"daemon"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: daemon. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":405,"end_line":405,"start":16094,"end":16110,"source":"unrelatedSshUnit","value":{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: unrelatedSshUnit. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:406:inline-api-or-fixture-input:52","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":406,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":406,"end_line":406,"start":16154,"end":16189,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:409:inline-api-or-fixture-input:53","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":409,"source":"classifyNodeServerChanges(diff, async () => g, { modifiedFiles: diff })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":409,"end_line":409,"start":16308,"end":16312,"source":"diff","value":{"kind":"reference","source":"diff","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":405,"end_line":405,"start":16075,"end":16111},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"source-expression","source":"daemon"},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: diff. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":409,"end_line":409,"start":16314,"end":16327,"source":"async () => g","value":{"kind":"source-expression","source":"async () => g"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => g. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-change-scope.test.mjs","line":409,"end_line":409,"start":16329,"end":16352,"source":"{ modifiedFiles: diff }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"reference","source":"diff","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":405,"end_line":405,"start":16075,"end":16111},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"source-expression","source":"daemon"},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: diff }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:411:inline-api-or-fixture-input:54","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":411,"source":"nodeServerQualification(diff, s)","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":411,"end_line":411,"start":16420,"end":16424,"source":"diff","value":{"kind":"reference","source":"diff","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":405,"end_line":405,"start":16075,"end":16111},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"source-expression","source":"daemon"},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: diff. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":411,"end_line":411,"start":16426,"end":16427,"source":"s","value":{"kind":"reference","source":"s","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":409,"end_line":409,"start":16276,"end":16353},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(diff, async () => g, { modifiedFiles: diff })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: s. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":396,"title":"retains daemon platform coverage: %s","start":15663,"end":16468},"implementation_status":"retained"},{"line":414,"title":"keeps every host when the modified SSH production module is an actual consumer","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","explicit_input_controls":[{"control_id":"40:416:inline-api-or-fixture-input:55","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":416,"source":"qualificationTree({\n 'entry.ts': `import './${registry}'; import './${ssh}'; throw Error('never execute')`,\n [ssh]: 'export const materializer = 1'\n })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":416,"end_line":419,"start":16662,"end":16801,"source":"{\n 'entry.ts': `import './${registry}'; import './${ssh}'; throw Error('never execute')`,\n [ssh]: 'export const materializer = 1'\n }","value":{"kind":"object","value":[{"key":"'entry.ts'","value":{"kind":"source-expression","source":"`import './${registry}'; import './${ssh}'; throw Error('never execute')`"}},{"key":"[ssh]","value":{"kind":"string","value":"export const materializer = 1"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { 'entry.ts': `import './${registry}'; import './${ssh}'; throw Error('never execute')`, [ssh]: 'export const materializer = 1' }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:420:fixture-or-oracle-declaration:56","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":420,"source":"[registry, ssh, unrelatedSshUnit]","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":420,"end_line":420,"start":16822,"end":16830,"source":"registry","value":{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: registry. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":420,"end_line":420,"start":16832,"end":16835,"source":"ssh","value":{"kind":"reference","source":"ssh","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":415,"end_line":415,"start":16583,"end":16628},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer.ts"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ssh. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":420,"end_line":420,"start":16837,"end":16853,"source":"unrelatedSshUnit","value":{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: unrelatedSshUnit. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:421:inline-api-or-fixture-input:57","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":421,"source":"classifyNodeServerChanges(\n changed,\n () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }),\n { modifiedFiles: changed }\n )","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":422,"end_line":422,"start":16908,"end":16915,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":420,"end_line":420,"start":16821,"end":16854},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"ssh","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":415,"end_line":415,"start":16583,"end":16628},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer.ts"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":423,"end_line":423,"start":16921,"end":16987,"source":"() => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","value":{"kind":"source-expression","source":"() => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-change-scope.test.mjs","line":424,"end_line":424,"start":16993,"end":17019,"source":"{ modifiedFiles: changed }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":420,"end_line":420,"start":16821,"end":16854},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"ssh","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":415,"end_line":415,"start":16583,"end":16628},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer.ts"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: changed }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:423:inline-api-or-fixture-input:58","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":423,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":423,"end_line":423,"start":16951,"end":16986,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:428:inline-api-or-fixture-input:59","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":428,"source":"nodeServerQualification(changed, scope)","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":428,"end_line":428,"start":17180,"end":17187,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":420,"end_line":420,"start":16821,"end":16854},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"ssh","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":415,"end_line":415,"start":16583,"end":16628},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer.ts"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":428,"end_line":428,"start":17189,"end":17194,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":421,"end_line":425,"start":16871,"end":17023},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(\n changed,\n () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }),\n { modifiedFiles: changed }\n )"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":414,"title":"keeps every host when the modified SSH production module is an actual consumer","start":16470,"end":17272},"implementation_status":"retained"},{"line":434,"title":"retains complete-path qualification when modification evidence is %s","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","explicit_input_controls":[{"control_id":"40:434:parameter-table:60","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":434,"source":"['added', 'deleted', 'renamed', 'unknown', 'duplicate', 'foreign']","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":434,"end_line":434,"start":17283,"end":17290,"source":"'added'","value":{"kind":"string","value":"added"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'added'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":434,"end_line":434,"start":17292,"end":17301,"source":"'deleted'","value":{"kind":"string","value":"deleted"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'deleted'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":434,"end_line":434,"start":17303,"end":17312,"source":"'renamed'","value":{"kind":"string","value":"renamed"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'renamed'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":434,"end_line":434,"start":17314,"end":17323,"source":"'unknown'","value":{"kind":"string","value":"unknown"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'unknown'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":434,"end_line":434,"start":17325,"end":17336,"source":"'duplicate'","value":{"kind":"string","value":"duplicate"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'duplicate'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":434,"end_line":434,"start":17338,"end":17347,"source":"'foreign'","value":{"kind":"string","value":"foreign"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'foreign'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:438:fixture-or-oracle-declaration:61","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":438,"source":"[registry, unrelatedSshUnit]","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":438,"end_line":438,"start":17505,"end":17513,"source":"registry","value":{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: registry. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":438,"end_line":438,"start":17515,"end":17531,"source":"unrelatedSshUnit","value":{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: unrelatedSshUnit. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:439:fixture-or-oracle-declaration:62","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":439,"source":"[registry]","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":439,"end_line":439,"start":17558,"end":17566,"source":"registry","value":{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: registry. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:454:inline-api-or-fixture-input:63","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":454,"source":"classifyNodeServerChanges(\n changed,\n () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }),\n status === 'unknown' ? {} : { modifiedFiles }\n )","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":455,"end_line":455,"start":18129,"end":18136,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":438,"end_line":438,"start":17504,"end":17532},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":456,"end_line":456,"start":18144,"end":18210,"source":"() => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","value":{"kind":"source-expression","source":"() => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-change-scope.test.mjs","line":457,"end_line":457,"start":18218,"end":18263,"source":"status === 'unknown' ? {} : { modifiedFiles }","value":{"kind":"source-expression","source":"status === 'unknown' ? {} : { modifiedFiles }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: status === 'unknown' ? {} : { modifiedFiles }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:456:inline-api-or-fixture-input:64","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":456,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":456,"end_line":456,"start":18174,"end":18209,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:460:inline-api-or-fixture-input:65","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":460,"source":"nodeServerQualification(changed, scope)","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":460,"end_line":460,"start":18344,"end":18351,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":438,"end_line":438,"start":17504,"end":17532},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":460,"end_line":460,"start":18353,"end":18358,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":454,"end_line":458,"start":18090,"end":18269},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(\n changed,\n () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }),\n status === 'unknown' ? {} : { modifiedFiles }\n )"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":434,"title":"retains complete-path qualification when modification evidence is %s","start":17274,"end":18445},"implementation_status":"retained"},{"line":467,"title":"retains protected server tests and broken imports despite complete modification evidence","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","explicit_input_controls":[{"control_id":"40:469:inline-api-or-fixture-input:66","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":469,"source":"qualificationTree({ [protectedTest]: 'export const value = 1' })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":469,"end_line":469,"start":18647,"end":18692,"source":"{ [protectedTest]: 'export const value = 1' }","value":{"kind":"object","value":[{"key":"[protectedTest]","value":{"kind":"string","value":"export const value = 1"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { [protectedTest]: 'export const value = 1' }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:470:fixture-or-oracle-declaration:67","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":470,"source":"[registry, protectedTest, unrelatedSshUnit]","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":470,"end_line":470,"start":18713,"end":18721,"source":"registry","value":{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: registry. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":470,"end_line":470,"start":18723,"end":18736,"source":"protectedTest","value":{"kind":"reference","source":"protectedTest","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":468,"end_line":468,"start":18580,"end":18613},"resolved":{"kind":"string","value":"src/main/sqlite/example.test.ts"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: protectedTest. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":470,"end_line":470,"start":18738,"end":18754,"source":"unrelatedSshUnit","value":{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: unrelatedSshUnit. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:471:inline-api-or-fixture-input:68","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":471,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":471,"end_line":471,"start":18804,"end":18839,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:472:inline-api-or-fixture-input:69","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":472,"source":"classifyNodeServerChanges(changed, collect, {\n modifiedFiles: changed\n })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":472,"end_line":472,"start":18898,"end":18905,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":470,"end_line":470,"start":18712,"end":18755},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"protectedTest","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":468,"end_line":468,"start":18580,"end":18613},"resolved":{"kind":"string","value":"src/main/sqlite/example.test.ts"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":472,"end_line":472,"start":18907,"end":18914,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":471,"end_line":471,"start":18774,"end":18840},"resolved":{"kind":"source-expression","source":"() => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-change-scope.test.mjs","line":472,"end_line":474,"start":18916,"end":18948,"source":"{\n modifiedFiles: changed\n }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":470,"end_line":470,"start":18712,"end":18755},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"protectedTest","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":468,"end_line":468,"start":18580,"end":18613},"resolved":{"kind":"string","value":"src/main/sqlite/example.test.ts"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: changed }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:475:inline-api-or-fixture-input:70","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":475,"source":"nodeServerQualification(changed, protectedScope)","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":475,"end_line":475,"start":18983,"end":18990,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":470,"end_line":470,"start":18712,"end":18755},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"protectedTest","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":468,"end_line":468,"start":18580,"end":18613},"resolved":{"kind":"string","value":"src/main/sqlite/example.test.ts"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":475,"end_line":475,"start":18992,"end":19006,"source":"protectedScope","value":{"kind":"reference","source":"protectedScope","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":472,"end_line":474,"start":18866,"end":18949},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(changed, collect, {\n modifiedFiles: changed\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: protectedScope. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:480:fixture-or-oracle-declaration:71","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":480,"source":"[registry, unrelatedSshUnit]","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":480,"end_line":480,"start":19193,"end":19201,"source":"registry","value":{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: registry. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":480,"end_line":480,"start":19203,"end":19219,"source":"unrelatedSshUnit","value":{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: unrelatedSshUnit. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:481:inline-api-or-fixture-input:72","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":481,"source":"classifyNodeServerChanges(brokenChanged, collect, {\n modifiedFiles: brokenChanged\n })","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":481,"end_line":481,"start":19275,"end":19288,"source":"brokenChanged","value":{"kind":"reference","source":"brokenChanged","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":480,"end_line":480,"start":19192,"end":19220},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: brokenChanged. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":481,"end_line":481,"start":19290,"end":19297,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":471,"end_line":471,"start":18774,"end":18840},"resolved":{"kind":"source-expression","source":"() => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-change-scope.test.mjs","line":481,"end_line":483,"start":19299,"end":19337,"source":"{\n modifiedFiles: brokenChanged\n }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"reference","source":"brokenChanged","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":480,"end_line":480,"start":19192,"end":19220},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: brokenChanged }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:485:inline-api-or-fixture-input:73","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":485,"source":"nodeServerQualification(brokenChanged, brokenScope)","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":485,"end_line":485,"start":19422,"end":19435,"source":"brokenChanged","value":{"kind":"reference","source":"brokenChanged","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":480,"end_line":480,"start":19192,"end":19220},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: brokenChanged. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":485,"end_line":485,"start":19437,"end":19448,"source":"brokenScope","value":{"kind":"reference","source":"brokenScope","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":481,"end_line":483,"start":19243,"end":19338},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(brokenChanged, collect, {\n modifiedFiles: brokenChanged\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: brokenScope. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":467,"title":"retains protected server tests and broken imports despite complete modification evidence","start":18447,"end":19526},"implementation_status":"retained"},{"line":497,"title":"tracks the shared close probe without pulling in its mocked renderer adapter","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks the shared close probe without pulling in its mocked renderer adapter.","explicit_input_controls":[],"current_declaration":{"line":497,"title":"tracks the shared close probe without pulling in its mocked renderer adapter","start":19703,"end":20231},"implementation_status":"retained"},{"line":505,"title":"skips unrelated work: %s","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","explicit_input_controls":[{"control_id":"40:505:parameter-table:74","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":505,"source":"[\n 'config/scripts/ci-shard-timings.json',\n 'config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs',\n 'src/renderer/src/components/terminal/pty-running-work-probe.ts',\n 'src/renderer/src/runtime/runtime-terminal-inspection.ts',\n 'src/main/ssh/ssh-relay-upload-stage-commands.test.ts',\n 'src/main/persistence/terminal-topology/terminal-topology-boundary-ratchet.test.ts',\n 'src/main/menu/register-app-menu.ts'\n ]","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":506,"end_line":506,"start":20249,"end":20287,"source":"'config/scripts/ci-shard-timings.json'","value":{"kind":"string","value":"config/scripts/ci-shard-timings.json"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/ci-shard-timings.json'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":507,"end_line":507,"start":20293,"end":20364,"source":"'config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs'","value":{"kind":"string","value":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":508,"end_line":508,"start":20370,"end":20434,"source":"'src/renderer/src/components/terminal/pty-running-work-probe.ts'","value":{"kind":"string","value":"src/renderer/src/components/terminal/pty-running-work-probe.ts"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/renderer/src/components/terminal/pty-running-work-probe.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":509,"end_line":509,"start":20440,"end":20497,"source":"'src/renderer/src/runtime/runtime-terminal-inspection.ts'","value":{"kind":"string","value":"src/renderer/src/runtime/runtime-terminal-inspection.ts"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/renderer/src/runtime/runtime-terminal-inspection.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":510,"end_line":510,"start":20503,"end":20557,"source":"'src/main/ssh/ssh-relay-upload-stage-commands.test.ts'","value":{"kind":"string","value":"src/main/ssh/ssh-relay-upload-stage-commands.test.ts"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/ssh/ssh-relay-upload-stage-commands.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":511,"end_line":511,"start":20563,"end":20646,"source":"'src/main/persistence/terminal-topology/terminal-topology-boundary-ratchet.test.ts'","value":{"kind":"string","value":"src/main/persistence/terminal-topology/terminal-topology-boundary-ratchet.test.ts"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/terminal-topology/terminal-topology-boundary-ratchet.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":512,"end_line":512,"start":20652,"end":20688,"source":"'src/main/menu/register-app-menu.ts'","value":{"kind":"string","value":"src/main/menu/register-app-menu.ts"},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/menu/register-app-menu.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:514:inline-api-or-fixture-input:75","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":514,"source":"classifyNodeServerChanges([file], async () => inputs)","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":514,"end_line":514,"start":20784,"end":20790,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":514,"end_line":514,"start":20792,"end":20810,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":505,"title":"skips unrelated work: %s","start":20235,"end":20840},"implementation_status":"retained"},{"line":517,"title":"retains the full matrix for a real runtime, worker or test input: %s","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","explicit_input_controls":[{"control_id":"40:517:parameter-table:76","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":517,"source":"[\n ...Object.values(ORCAD_CHILD_ENTRY_POINTS),\n 'src/shared/keybindings/definitions-core-1.ts',\n 'src/shared/pty-running-work-probe.ts',\n 'src/shared/pty-running-work-probe.test.ts',\n 'src/main/runtime/orca-runtime.ts',\n 'src/main/windows/windows-process-table.ts',\n 'src/main/worker-thread-entry-path.ts',\n 'config/scripts/zip-extractor-command.mjs',\n 'config/scripts/windows-process-tree-gyp-rebuild.mjs',\n 'config/scripts/windows-process-tree-prepared-addon.mjs',\n 'config/scripts/orcad-windows-prebuild-cache.mjs',\n 'config/scripts/profile-state-worker-smoke.mjs',\n 'config/scripts/vitest-host-ports-setup.ts',\n 'tests/e2e/daemon-running-work-probe.unit.test.ts'\n ]","rows":[{"index":1,"path":"config/scripts/orcad-entry-build.mjs","line":14,"end_line":14,"start":637,"end":692,"source":"watcher: 'src/main/ipc/parcel-watcher-process-entry.ts'","value":{"kind":"property","key":"watcher","value":{"kind":"string","value":"src/main/ipc/parcel-watcher-process-entry.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: watcher: 'src/main/ipc/parcel-watcher-process-entry.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-entry-build.mjs","line":15,"end_line":15,"start":696,"end":737,"source":"daemon: 'src/main/daemon/daemon-entry.ts'","value":{"kind":"property","key":"daemon","value":{"kind":"string","value":"src/main/daemon/daemon-entry.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: daemon: 'src/main/daemon/daemon-entry.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/orcad-entry-build.mjs","line":16,"end_line":16,"start":741,"end":822,"source":"writer: 'src/main/persistence/profile-state/profile-state-writer-worker-entry.ts'","value":{"kind":"property","key":"writer","value":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-writer-worker-entry.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: writer: 'src/main/persistence/profile-state/profile-state-writer-worker-entry.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/orcad-entry-build.mjs","line":17,"end_line":17,"start":826,"end":907,"source":"backup: 'src/main/persistence/profile-state/profile-state-backup-worker-entry.ts'","value":{"kind":"property","key":"backup","value":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-backup-worker-entry.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: backup: 'src/main/persistence/profile-state/profile-state-backup-worker-entry.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":5,"path":"config/scripts/orcad-entry-build.mjs","line":18,"end_line":18,"start":911,"end":996,"source":"foreignSqliteReader: 'src/main/foreign-sqlite-readers/foreign-sqlite-reader-entry.ts'","value":{"kind":"property","key":"foreignSqliteReader","value":{"kind":"string","value":"src/main/foreign-sqlite-readers/foreign-sqlite-reader-entry.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: foreignSqliteReader: 'src/main/foreign-sqlite-readers/foreign-sqlite-reader-entry.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":6,"path":"config/scripts/orcad-entry-build.mjs","line":19,"end_line":19,"start":1000,"end":1073,"source":"portScanCommandWorker: 'src/main/ports/port-scan-command-worker-entry.ts'","value":{"kind":"property","key":"portScanCommandWorker","value":{"kind":"string","value":"src/main/ports/port-scan-command-worker-entry.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: portScanCommandWorker: 'src/main/ports/port-scan-command-worker-entry.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":7,"path":"config/scripts/orcad-entry-build.mjs","line":20,"end_line":20,"start":1077,"end":1145,"source":"sessionScanner: 'src/main/ai-vault/session-scanner-service-entry.ts'","value":{"kind":"property","key":"sessionScanner","value":{"kind":"string","value":"src/main/ai-vault/session-scanner-service-entry.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: sessionScanner: 'src/main/ai-vault/session-scanner-service-entry.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":8,"path":"config/scripts/orcad-entry-build.mjs","line":21,"end_line":22,"start":1149,"end":1254,"source":"workerThreadChildProcess:\n 'src/main/worker-thread-child-process/worker-thread-child-process-entry.ts'","value":{"kind":"property","key":"workerThreadChildProcess","value":{"kind":"string","value":"src/main/worker-thread-child-process/worker-thread-child-process-entry.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: workerThreadChildProcess: 'src/main/worker-thread-child-process/worker-thread-child-process-entry.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":9,"path":"config/scripts/orcad-entry-build.mjs","line":23,"end_line":23,"start":1258,"end":1341,"source":"claudeProfileSetup: 'src/main/claude-accounts/claude-profile-setup-worker-entry.ts'","value":{"kind":"property","key":"claudeProfileSetup","value":{"kind":"string","value":"src/main/claude-accounts/claude-profile-setup-worker-entry.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: claudeProfileSetup: 'src/main/claude-accounts/claude-profile-setup-worker-entry.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":10,"path":"config/scripts/orcad-entry-build.mjs","line":24,"end_line":24,"start":1345,"end":1387,"source":"sttWorker: 'src/main/speech/stt-worker.ts'","value":{"kind":"property","key":"sttWorker","value":{"kind":"string","value":"src/main/speech/stt-worker.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: sttWorker: 'src/main/speech/stt-worker.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":11,"path":"config/scripts/orcad-entry-build.mjs","line":25,"end_line":25,"start":1391,"end":1447,"source":"computerSidecar: 'src/main/computer/computer-sidecar.ts'","value":{"kind":"property","key":"computerSidecar","value":{"kind":"string","value":"src/main/computer/computer-sidecar.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: computerSidecar: 'src/main/computer/computer-sidecar.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":519,"end_line":519,"start":20906,"end":20952,"source":"'src/shared/keybindings/definitions-core-1.ts'","value":{"kind":"string","value":"src/shared/keybindings/definitions-core-1.ts"},"index":12,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/shared/keybindings/definitions-core-1.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":520,"end_line":520,"start":20958,"end":20996,"source":"'src/shared/pty-running-work-probe.ts'","value":{"kind":"string","value":"src/shared/pty-running-work-probe.ts"},"index":13,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/shared/pty-running-work-probe.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":521,"end_line":521,"start":21002,"end":21045,"source":"'src/shared/pty-running-work-probe.test.ts'","value":{"kind":"string","value":"src/shared/pty-running-work-probe.test.ts"},"index":14,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/shared/pty-running-work-probe.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":522,"end_line":522,"start":21051,"end":21085,"source":"'src/main/runtime/orca-runtime.ts'","value":{"kind":"string","value":"src/main/runtime/orca-runtime.ts"},"index":15,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/runtime/orca-runtime.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":523,"end_line":523,"start":21091,"end":21134,"source":"'src/main/windows/windows-process-table.ts'","value":{"kind":"string","value":"src/main/windows/windows-process-table.ts"},"index":16,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/windows/windows-process-table.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":524,"end_line":524,"start":21140,"end":21178,"source":"'src/main/worker-thread-entry-path.ts'","value":{"kind":"string","value":"src/main/worker-thread-entry-path.ts"},"index":17,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/worker-thread-entry-path.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":525,"end_line":525,"start":21184,"end":21226,"source":"'config/scripts/zip-extractor-command.mjs'","value":{"kind":"string","value":"config/scripts/zip-extractor-command.mjs"},"index":18,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/zip-extractor-command.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":526,"end_line":526,"start":21232,"end":21285,"source":"'config/scripts/windows-process-tree-gyp-rebuild.mjs'","value":{"kind":"string","value":"config/scripts/windows-process-tree-gyp-rebuild.mjs"},"index":19,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/windows-process-tree-gyp-rebuild.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":527,"end_line":527,"start":21291,"end":21347,"source":"'config/scripts/windows-process-tree-prepared-addon.mjs'","value":{"kind":"string","value":"config/scripts/windows-process-tree-prepared-addon.mjs"},"index":20,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/windows-process-tree-prepared-addon.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":528,"end_line":528,"start":21353,"end":21402,"source":"'config/scripts/orcad-windows-prebuild-cache.mjs'","value":{"kind":"string","value":"config/scripts/orcad-windows-prebuild-cache.mjs"},"index":21,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/orcad-windows-prebuild-cache.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":529,"end_line":529,"start":21408,"end":21455,"source":"'config/scripts/profile-state-worker-smoke.mjs'","value":{"kind":"string","value":"config/scripts/profile-state-worker-smoke.mjs"},"index":22,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/profile-state-worker-smoke.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":530,"end_line":530,"start":21461,"end":21504,"source":"'config/scripts/vitest-host-ports-setup.ts'","value":{"kind":"string","value":"config/scripts/vitest-host-ports-setup.ts"},"index":23,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/vitest-host-ports-setup.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":531,"end_line":531,"start":21510,"end":21560,"source":"'tests/e2e/daemon-running-work-probe.unit.test.ts'","value":{"kind":"string","value":"tests/e2e/daemon-running-work-probe.unit.test.ts"},"index":24,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'tests/e2e/daemon-running-work-probe.unit.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":11,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":12,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":13,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":14,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":15,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":16,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":17,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":18,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":19,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":20,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":21,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":22,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":23,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":24,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:534:inline-api-or-fixture-input:77","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":534,"source":"classifyNodeServerChanges([file], async () => inputs)","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":534,"end_line":534,"start":21740,"end":21746,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":534,"end_line":534,"start":21748,"end":21766,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":517,"title":"retains the full matrix for a real runtime, worker or test input: %s","start":20844,"end":21795},"implementation_status":"retained"},{"line":537,"title":"retains all selected tests and the selectors the Bun runner uses","decision":"fix","reason":"Remove >80 selected-test inventory count; retain nonempty discovery and actual graph membership for every selected test/selector.","explicit_input_controls":[],"current_declaration":{"line":537,"title":"retains all selected tests and the selectors the Bun runner uses","start":21799,"end":22157},"implementation_status":"implemented"},{"line":547,"title":"keeps every platform job and runs them when detection is skipped or fails","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every platform job and runs them when detection is skipped or fails.","explicit_input_controls":[{"control_id":"40:548:inline-api-or-fixture-input:78","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":548,"source":"parse(\n readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')\n )","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":549,"end_line":549,"start":22281,"end":22376,"source":"readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')","value":{"kind":"call-source","callee":"readFileSync","arguments":[{"kind":"source-expression","source":"new URL('../../.github/workflows/node-server-tests.yml', import.meta.url)"},{"kind":"string","value":"utf8"}],"source":"readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8'). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every platform job and runs them when detection is skipped or fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every platform job and runs them when detection is skipped or fails.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"40:572:for-of:79","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":572,"source":"['linux_glibc_floor', 'linux_musl']","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":572,"end_line":572,"start":23809,"end":23828,"source":"'linux_glibc_floor'","value":{"kind":"string","value":"linux_glibc_floor"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'linux_glibc_floor'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every platform job and runs them when detection is skipped or fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":572,"end_line":572,"start":23830,"end":23842,"source":"'linux_musl'","value":{"kind":"string","value":"linux_musl"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'linux_musl'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every platform job and runs them when detection is skipped or fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every platform job and runs them when detection is skipped or fails.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":547,"title":"keeps every platform job and runs them when detection is skipped or fails","start":22162,"end":24545},"implementation_status":"retained"},{"line":587,"title":"runs the Bun and Node cross-runtime tests on Linux against pinned inputs","decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the Bun and Node cross-runtime tests on Linux against pinned inputs.","explicit_input_controls":[{"control_id":"40:588:inline-api-or-fixture-input:80","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":588,"source":"parse(\n readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')\n )","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":589,"end_line":589,"start":24665,"end":24760,"source":"readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')","value":{"kind":"call-source","callee":"readFileSync","arguments":[{"kind":"source-expression","source":"new URL('../../.github/workflows/node-server-tests.yml', import.meta.url)"},{"kind":"string","value":"utf8"}],"source":"readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8'). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the Bun and Node cross-runtime tests on Linux against pinned inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the Bun and Node cross-runtime tests on Linux against pinned inputs.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":587,"title":"runs the Bun and Node cross-runtime tests on Linux against pinned inputs","start":24547,"end":26879},"implementation_status":"retained"}],"lines":633,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs.","planned_changes":[{"original_line":537,"title":"retains all selected tests and the selectors the Bun runner uses","decision":"fix","change":"Remove >80 selected-test inventory count; retain nonempty discovery and actual graph membership for every selected test/selector."}],"production_evidence":[".github/workflows/node-server-tests.yml","config/scripts/node-server-change-scope.mjs","config/scripts/node-server-qualification.mjs","config/scripts/node-server-test-paths.mjs","config/scripts/orcad-entry-build.mjs","src/shared/node-runtime-pin.ts"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"40:17:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":17,"end_line":17,"start":754,"end":772,"source":"[]","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":17,"end_line":17,"start":770,"end":772},"binding":"temporaryDirs","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:19:for-of:2","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":19,"end_line":21,"start":793,"end":893,"source":"temporaryDirs.splice(0)","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":19,"end_line":19,"start":812,"end":835},"binding":"const root","resolution":[],"dynamic_source":"temporaryDirs.splice(0)","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:27:for-of:3","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":27,"end_line":31,"start":1021,"end":1197,"source":"Object.entries(files)","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":27,"end_line":27,"start":1050,"end":1071},"binding":"const [file, source]","resolution":[],"transform":"Object.entries(files)","dynamic_source":"Object","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:36:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":36,"end_line":44,"start":1339,"end":1759,"source":"moduleTree({\n 'entry.ts': `import './first'; export * from './exports'; import('./dynamic'); require('./required'); throw Error('never execute')`,\n 'first.ts': `import './nested/leaf'`,\n 'exports.ts': 'export const value = 1',\n 'dynamic.ts': 'export const value = 2',\n 'required.ts': 'module.exports = 3',\n 'nested/leaf.ts': 'export const value = 4',\n 'unrelated.ts': 'throw Error(\"unrelated\")'\n })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":36,"end_line":44,"start":1339,"end":1759},"binding":"moduleTree","resolution":[],"enclosing_case":{"line":35,"title":"follows static imports, re-exports, dynamic imports and require without executing source"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: follows static imports, re-exports, dynamic imports and require without executing source.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":36,"end_line":44,"start":1350,"end":1758,"source":"{\n 'entry.ts': `import './first'; export * from './exports'; import('./dynamic'); require('./required'); throw Error('never execute')`,\n 'first.ts': `import './nested/leaf'`,\n 'exports.ts': 'export const value = 1',\n 'dynamic.ts': 'export const value = 2',\n 'required.ts': 'module.exports = 3',\n 'nested/leaf.ts': 'export const value = 4',\n 'unrelated.ts': 'throw Error(\"unrelated\")'\n }","value":{"kind":"object","value":[{"key":"'entry.ts'","value":{"kind":"string","value":"import './first'; export * from './exports'; import('./dynamic'); require('./required'); throw Error('never execute')"}},{"key":"'first.ts'","value":{"kind":"string","value":"import './nested/leaf'"}},{"key":"'exports.ts'","value":{"kind":"string","value":"export const value = 1"}},{"key":"'dynamic.ts'","value":{"kind":"string","value":"export const value = 2"}},{"key":"'required.ts'","value":{"kind":"string","value":"module.exports = 3"}},{"key":"'nested/leaf.ts'","value":{"kind":"string","value":"export const value = 4"}},{"key":"'unrelated.ts'","value":{"kind":"string","value":"throw Error(\"unrelated\")"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { 'entry.ts': `import './first'; export * from './exports'; import('./dynamic'); require('./required'); throw Error('never execute')`, . Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: follows static imports, re-exports, dynamic imports and require without executing source.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:45:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":45,"end_line":45,"start":1783,"end":1843,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":45,"end_line":45,"start":1783,"end":1843},"binding":"collectNodeServerInputs","resolution":[],"enclosing_case":{"line":35,"title":"follows static imports, re-exports, dynamic imports and require without executing source"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: follows static imports, re-exports, dynamic imports and require without executing source.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":45,"end_line":45,"start":1807,"end":1842,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: follows static imports, re-exports, dynamic imports and require without executing source.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:57:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":57,"end_line":57,"start":2104,"end":2152,"source":"moduleTree({ 'entry.ts': `import './deleted'` })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":57,"end_line":57,"start":2104,"end":2152},"binding":"moduleTree","resolution":[],"enclosing_case":{"line":56,"title":"runs the matrix when a dependency is deleted or graph analysis fails"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the matrix when a dependency is deleted or graph analysis fails.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":57,"end_line":57,"start":2115,"end":2151,"source":"{ 'entry.ts': `import './deleted'` }","value":{"kind":"object","value":[{"key":"'entry.ts'","value":{"kind":"string","value":"import './deleted'"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { 'entry.ts': `import './deleted'` }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the matrix when a dependency is deleted or graph analysis fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:58:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":58,"end_line":60,"start":2176,"end":2292,"source":"classifyNodeServerChanges(['deleted.ts'], () =>\n collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })\n )","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":58,"end_line":60,"start":2176,"end":2292},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":56,"title":"runs the matrix when a dependency is deleted or graph analysis fails"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the matrix when a dependency is deleted or graph analysis fails.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":58,"end_line":58,"start":2202,"end":2216,"source":"['deleted.ts']","value":{"kind":"array","value":[{"kind":"string","value":"deleted.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['deleted.ts']. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the matrix when a dependency is deleted or graph analysis fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":58,"end_line":59,"start":2218,"end":2288,"source":"() =>\n collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","value":{"kind":"source-expression","source":"() =>\n collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the matrix when a dependency is deleted or graph analysis fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:59:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":59,"end_line":59,"start":2228,"end":2288,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":59,"end_line":59,"start":2228,"end":2288},"binding":"collectNodeServerInputs","resolution":[],"enclosing_case":{"line":56,"title":"runs the matrix when a dependency is deleted or graph analysis fails"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the matrix when a dependency is deleted or graph analysis fails.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":59,"end_line":59,"start":2252,"end":2287,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the matrix when a dependency is deleted or graph analysis fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:63:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":63,"end_line":63,"start":2413,"end":2442,"source":"classifyNodeServerChanges([])","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":63,"end_line":63,"start":2413,"end":2442},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":56,"title":"runs the matrix when a dependency is deleted or graph analysis fails"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the matrix when a dependency is deleted or graph analysis fails.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":63,"end_line":63,"start":2439,"end":2441,"source":"[]","value":{"kind":"array","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: []. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the matrix when a dependency is deleted or graph analysis fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:72:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":72,"end_line":87,"start":2692,"end":3572,"source":"moduleTree({\n 'entry.ts': `export * from '${imported}'`,\n 'pnpm-workspace.yaml': 'packages:\\n - src/packages/*\\n',\n 'src/packages/process-host/package.json': manifest(\n '@orca/process-host',\n './src/run-process.ts'\n ),\n 'src/packages/process-host/src/run-process.ts':\n \"import('@orca/byte-buffer'); require('./private'); export const value = 1\",\n 'src/packages/process-host/src/private.ts': 'module.exports = 2',\n 'src/packages/process-host/dist/index.js': \"require('./missing-stale-output')\",\n 'src/packages/byte-buffer/package.json': manifest('@orca/byte-buffer', './src/byte-buffer.ts'),\n 'src/packages/byte-buffer/src/byte-buffer.ts': 'export const value = 3',\n 'src/packages/unrelated/package.json': manifest('@orca/unrelated', './src/unrelated.ts'),\n 'src/packages/unrelated/src/unrelated.ts': 'throw Error(\"unrelated\")'\n })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":72,"end_line":87,"start":2692,"end":3572},"binding":"moduleTree","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":72,"end_line":87,"start":2703,"end":3571,"source":"{\n 'entry.ts': `export * from '${imported}'`,\n 'pnpm-workspace.yaml': 'packages:\\n - src/packages/*\\n',\n 'src/packages/process-host/package.json': manifest(\n '@orca/process-host',\n './src/run-process.ts'\n ),\n 'src/packages/process-host/src/run-process.ts':\n \"import('@orca/byte-buffer'); require('./private'); export const value = 1\",\n 'src/packages/process-host/src/private.ts': 'module.exports = 2',\n 'src/packages/process-host/dist/index.js': \"require('./missing-stale-output')\",\n 'src/packages/byte-buffer/package.json': manifest('@orca/byte-buffer', './src/byte-buffer.ts'),\n 'src/packages/byte-buffer/src/byte-buffer.ts': 'export const value = 3',\n 'src/packages/unrelated/package.json': manifest('@orca/unrelated', './src/unrelated.ts'),\n 'src/packages/unrelated/src/unrelated.ts': 'throw Error(\"unrelated\")'\n }","value":{"kind":"object","value":[{"key":"'entry.ts'","value":{"kind":"source-expression","source":"`export * from '${imported}'`"}},{"key":"'pnpm-workspace.yaml'","value":{"kind":"string","value":"packages:\n - src/packages/*\n"}},{"key":"'src/packages/process-host/package.json'","value":{"kind":"call-source","callee":"manifest","arguments":[{"kind":"string","value":"@orca/process-host"},{"kind":"string","value":"./src/run-process.ts"}],"source":"manifest(\n '@orca/process-host',\n './src/run-process.ts'\n )"}},{"key":"'src/packages/process-host/src/run-process.ts'","value":{"kind":"string","value":"import('@orca/byte-buffer'); require('./private'); export const value = 1"}},{"key":"'src/packages/process-host/src/private.ts'","value":{"kind":"string","value":"module.exports = 2"}},{"key":"'src/packages/process-host/dist/index.js'","value":{"kind":"string","value":"require('./missing-stale-output')"}},{"key":"'src/packages/byte-buffer/package.json'","value":{"kind":"call-source","callee":"manifest","arguments":[{"kind":"string","value":"@orca/byte-buffer"},{"kind":"string","value":"./src/byte-buffer.ts"}],"source":"manifest('@orca/byte-buffer', './src/byte-buffer.ts')"}},{"key":"'src/packages/byte-buffer/src/byte-buffer.ts'","value":{"kind":"string","value":"export const value = 3"}},{"key":"'src/packages/unrelated/package.json'","value":{"kind":"call-source","callee":"manifest","arguments":[{"kind":"string","value":"@orca/unrelated"},{"kind":"string","value":"./src/unrelated.ts"}],"source":"manifest('@orca/unrelated', './src/unrelated.ts')"}},{"key":"'src/packages/unrelated/src/unrelated.ts'","value":{"kind":"string","value":"throw Error(\"unrelated\")"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { 'entry.ts': `export * from '${imported}'`, 'pnpm-workspace.yaml': 'packages:\\n - src/packages/*\\n', 'src/packages/process-hos. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:92:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":92,"end_line":92,"start":3752,"end":3812,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":92,"end_line":92,"start":3752,"end":3812},"binding":"collectNodeServerInputs","resolution":[],"enclosing_case":{"line":90,"title":"tracks workspace source and manifest closures without trusting dist or widening to unrelated packages"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":92,"end_line":92,"start":3776,"end":3811,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:101:for-of:12","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":101,"end_line":107,"start":4116,"end":4386,"source":"[\n 'src/packages/process-host/package.json',\n 'src/packages/process-host/src/private.ts',\n 'src/packages/byte-buffer/src/byte-buffer.ts'\n ]","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":101,"end_line":105,"start":4135,"end":4284},"binding":"const file","resolution":[],"enclosing_case":{"line":90,"title":"tracks workspace source and manifest closures without trusting dist or widening to unrelated packages"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":102,"end_line":102,"start":4141,"end":4181,"source":"'src/packages/process-host/package.json'","value":{"kind":"string","value":"src/packages/process-host/package.json"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/packages/process-host/package.json'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":103,"end_line":103,"start":4187,"end":4229,"source":"'src/packages/process-host/src/private.ts'","value":{"kind":"string","value":"src/packages/process-host/src/private.ts"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/packages/process-host/src/private.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":104,"end_line":104,"start":4235,"end":4280,"source":"'src/packages/byte-buffer/src/byte-buffer.ts'","value":{"kind":"string","value":"src/packages/byte-buffer/src/byte-buffer.ts"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'src/packages/byte-buffer/src/byte-buffer.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:106:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":106,"end_line":106,"start":4306,"end":4359,"source":"classifyNodeServerChanges([file], async () => inputs)","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":106,"end_line":106,"start":4306,"end":4359},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":90,"title":"tracks workspace source and manifest closures without trusting dist or widening to unrelated packages"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":106,"end_line":106,"start":4332,"end":4338,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":106,"end_line":106,"start":4340,"end":4358,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:110:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":110,"end_line":113,"start":4415,"end":4529,"source":"classifyNodeServerChanges(\n ['src/packages/unrelated/src/unrelated.ts'],\n async () => inputs\n )","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":110,"end_line":113,"start":4415,"end":4529},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":90,"title":"tracks workspace source and manifest closures without trusting dist or widening to unrelated packages"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":111,"end_line":111,"start":4450,"end":4493,"source":"['src/packages/unrelated/src/unrelated.ts']","value":{"kind":"array","value":[{"kind":"string","value":"src/packages/unrelated/src/unrelated.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/packages/unrelated/src/unrelated.ts']. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":112,"end_line":112,"start":4503,"end":4521,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: tracks workspace source and manifest closures without trusting dist or widening to unrelated packages.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:118:parameter-table:15","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":118,"end_line":126,"start":4566,"end":4980,"source":"[\n 'src/packages/process-host/.gitignore',\n 'src/packages/process-host/scripts/build-dist.mjs',\n 'src/packages/process-host/tsconfig.json'\n]","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":118,"end_line":122,"start":4574,"end":4717},"binding":"it.each","resolution":[],"enclosing_case":{"line":118,"title":"runs for a change to the process-host build input %s"},"affected_case_lines":[118],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs for a change to the process-host build input %s.","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":119,"end_line":119,"start":4578,"end":4616,"source":"'src/packages/process-host/.gitignore'","value":{"kind":"string","value":"src/packages/process-host/.gitignore"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/packages/process-host/.gitignore'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs for a change to the process-host build input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":120,"end_line":120,"start":4620,"end":4670,"source":"'src/packages/process-host/scripts/build-dist.mjs'","value":{"kind":"string","value":"src/packages/process-host/scripts/build-dist.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/packages/process-host/scripts/build-dist.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs for a change to the process-host build input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":121,"end_line":121,"start":4674,"end":4715,"source":"'src/packages/process-host/tsconfig.json'","value":{"kind":"string","value":"src/packages/process-host/tsconfig.json"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/packages/process-host/tsconfig.json'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs for a change to the process-host build input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:123:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":123,"end_line":123,"start":4816,"end":4872,"source":"classifyNodeServerChanges([file], async () => new Set())","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":123,"end_line":123,"start":4816,"end":4872},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":118,"title":"runs for a change to the process-host build input %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs for a change to the process-host build input %s.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":123,"end_line":123,"start":4842,"end":4848,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs for a change to the process-host build input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":123,"end_line":123,"start":4850,"end":4871,"source":"async () => new Set()","value":{"kind":"source-expression","source":"async () => new Set()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => new Set(). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs for a change to the process-host build input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:128:parameter-table:17","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":128,"end_line":140,"start":4982,"end":5527,"source":"['@orca/unknown', '@orca/process-host/private']","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":128,"end_line":128,"start":4990,"end":5037},"binding":"it.each","resolution":[],"enclosing_case":{"line":128,"title":"retains qualification for an unresolved internal package export: %s"},"affected_case_lines":[128],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification for an unresolved internal package export: %s.","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":128,"end_line":128,"start":4991,"end":5006,"source":"'@orca/unknown'","value":{"kind":"string","value":"@orca/unknown"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '@orca/unknown'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification for an unresolved internal package export: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":128,"end_line":128,"start":5008,"end":5036,"source":"'@orca/process-host/private'","value":{"kind":"string","value":"@orca/process-host/private"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '@orca/process-host/private'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification for an unresolved internal package export: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:131:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":131,"end_line":131,"start":5155,"end":5179,"source":"workspaceTree(specifier)","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":131,"end_line":131,"start":5155,"end":5179},"binding":"workspaceTree","resolution":[],"enclosing_case":{"line":128,"title":"retains qualification for an unresolved internal package export: %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification for an unresolved internal package export: %s.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":131,"end_line":131,"start":5169,"end":5178,"source":"specifier","value":{"kind":"source-expression","source":"specifier"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: specifier. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification for an unresolved internal package export: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:132:inline-api-or-fixture-input:19","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":132,"end_line":135,"start":5205,"end":5366,"source":"classifyNodeServerChanges(\n ['src/packages/process-host/src/run-process.ts'],\n () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })\n )","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":132,"end_line":135,"start":5205,"end":5366},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":128,"title":"retains qualification for an unresolved internal package export: %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification for an unresolved internal package export: %s.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":133,"end_line":133,"start":5238,"end":5286,"source":"['src/packages/process-host/src/run-process.ts']","value":{"kind":"array","value":[{"kind":"string","value":"src/packages/process-host/src/run-process.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/packages/process-host/src/run-process.ts']. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification for an unresolved internal package export: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":134,"end_line":134,"start":5294,"end":5360,"source":"() => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","value":{"kind":"source-expression","source":"() => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification for an unresolved internal package export: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:134:inline-api-or-fixture-input:20","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":134,"end_line":134,"start":5300,"end":5360,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":134,"end_line":134,"start":5300,"end":5360},"binding":"collectNodeServerInputs","resolution":[],"enclosing_case":{"line":128,"title":"retains qualification for an unresolved internal package export: %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification for an unresolved internal package export: %s.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":134,"end_line":134,"start":5324,"end":5359,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification for an unresolved internal package export: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:142:parameter-table:21","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":142,"end_line":151,"start":5529,"end":5953,"source":"[\n ['tests/e2e/daemon-running-work-probe.unit.test.ts'],\n ['config/scripts/zip-extractor-command.test.mjs'],\n ['config/scripts/zip-extractor-command.test.mjs', 'config/scripts/renamed-command.test.mjs']\n]","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":142,"end_line":146,"start":5537,"end":5744},"binding":"it.each","resolution":[],"enclosing_case":{"line":142,"title":"runs deleted or renamed selected tests even when absent from the graph: %j"},"affected_case_lines":[142],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs deleted or renamed selected tests even when absent from the graph: %j.","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":143,"end_line":143,"start":5541,"end":5593,"source":"['tests/e2e/daemon-running-work-probe.unit.test.ts']","value":{"kind":"array","value":[{"kind":"string","value":"tests/e2e/daemon-running-work-probe.unit.test.ts"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['tests/e2e/daemon-running-work-probe.unit.test.ts']. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs deleted or renamed selected tests even when absent from the graph: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":144,"end_line":144,"start":5597,"end":5646,"source":"['config/scripts/zip-extractor-command.test.mjs']","value":{"kind":"array","value":[{"kind":"string","value":"config/scripts/zip-extractor-command.test.mjs"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['config/scripts/zip-extractor-command.test.mjs']. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs deleted or renamed selected tests even when absent from the graph: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":145,"end_line":145,"start":5650,"end":5742,"source":"['config/scripts/zip-extractor-command.test.mjs', 'config/scripts/renamed-command.test.mjs']","value":{"kind":"array","value":[{"kind":"string","value":"config/scripts/zip-extractor-command.test.mjs"},{"kind":"string","value":"config/scripts/renamed-command.test.mjs"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['config/scripts/zip-extractor-command.test.mjs', 'config/scripts/renamed-command.test.mjs']. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs deleted or renamed selected tests even when absent from the graph: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:149:inline-api-or-fixture-input:22","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":149,"end_line":149,"start":5869,"end":5924,"source":"classifyNodeServerChanges(files, async () => new Set())","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":149,"end_line":149,"start":5869,"end":5924},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":142,"title":"runs deleted or renamed selected tests even when absent from the graph: %j"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs deleted or renamed selected tests even when absent from the graph: %j.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":149,"end_line":149,"start":5895,"end":5900,"source":"files","value":{"kind":"source-expression","source":"files"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: files. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs deleted or renamed selected tests even when absent from the graph: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":149,"end_line":149,"start":5902,"end":5923,"source":"async () => new Set()","value":{"kind":"source-expression","source":"async () => new Set()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => new Set(). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs deleted or renamed selected tests even when absent from the graph: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:153:parameter-table:23","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":153,"end_line":176,"start":5955,"end":7007,"source":"[\n 'package.json',\n 'pnpm-lock.yaml',\n 'pnpm-workspace.yaml',\n '.npmrc',\n 'tsconfig.json',\n 'config/tsconfig.node.json',\n 'config/scripts/node-server-qualification.mjs',\n 'config/scripts/node-server-native-compat-scope.mjs',\n 'config/patches/node-pty@1.1.0.patch',\n 'native/windows-registry/src/addon.cc',\n '.github/actions/install-node-dependencies/action.yml',\n '.github/actions/restore-pnpm-verification/action.yml',\n '.github/actions/prepare-headless-compiler/action.yml',\n 'config/scripts/headless-detector-compiler-cache.mjs',\n 'config/scripts/workspace-source-exports.mjs',\n 'config/scripts/workspace-source-exports.test.mjs',\n '.github/actions/prepare-native-runtime/action.yml',\n '.github/actions/prepare-orcad-prebuilds/action.yml',\n '.github/workflows/node-server-tests.yml',\n 'src/main/persistence/profile-state/new-worker.ts'\n]","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":153,"end_line":174,"start":5963,"end":6823},"binding":"it.each","resolution":[],"enclosing_case":{"line":153,"title":"always selects build, native and dynamically opened inputs: %s"},"affected_case_lines":[153],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":154,"end_line":154,"start":5967,"end":5981,"source":"'package.json'","value":{"kind":"string","value":"package.json"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'package.json'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":155,"end_line":155,"start":5985,"end":6001,"source":"'pnpm-lock.yaml'","value":{"kind":"string","value":"pnpm-lock.yaml"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'pnpm-lock.yaml'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":156,"end_line":156,"start":6005,"end":6026,"source":"'pnpm-workspace.yaml'","value":{"kind":"string","value":"pnpm-workspace.yaml"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'pnpm-workspace.yaml'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":157,"end_line":157,"start":6030,"end":6038,"source":"'.npmrc'","value":{"kind":"string","value":".npmrc"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.npmrc'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":158,"end_line":158,"start":6042,"end":6057,"source":"'tsconfig.json'","value":{"kind":"string","value":"tsconfig.json"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'tsconfig.json'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":159,"end_line":159,"start":6061,"end":6088,"source":"'config/tsconfig.node.json'","value":{"kind":"string","value":"config/tsconfig.node.json"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/tsconfig.node.json'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":160,"end_line":160,"start":6092,"end":6138,"source":"'config/scripts/node-server-qualification.mjs'","value":{"kind":"string","value":"config/scripts/node-server-qualification.mjs"},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-qualification.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":161,"end_line":161,"start":6142,"end":6194,"source":"'config/scripts/node-server-native-compat-scope.mjs'","value":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-native-compat-scope.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":162,"end_line":162,"start":6198,"end":6235,"source":"'config/patches/node-pty@1.1.0.patch'","value":{"kind":"string","value":"config/patches/node-pty@1.1.0.patch"},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/patches/node-pty@1.1.0.patch'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":163,"end_line":163,"start":6239,"end":6277,"source":"'native/windows-registry/src/addon.cc'","value":{"kind":"string","value":"native/windows-registry/src/addon.cc"},"index":10,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'native/windows-registry/src/addon.cc'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":164,"end_line":164,"start":6281,"end":6335,"source":"'.github/actions/install-node-dependencies/action.yml'","value":{"kind":"string","value":".github/actions/install-node-dependencies/action.yml"},"index":11,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/install-node-dependencies/action.yml'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":165,"end_line":165,"start":6339,"end":6393,"source":"'.github/actions/restore-pnpm-verification/action.yml'","value":{"kind":"string","value":".github/actions/restore-pnpm-verification/action.yml"},"index":12,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/restore-pnpm-verification/action.yml'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":166,"end_line":166,"start":6397,"end":6451,"source":"'.github/actions/prepare-headless-compiler/action.yml'","value":{"kind":"string","value":".github/actions/prepare-headless-compiler/action.yml"},"index":13,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/prepare-headless-compiler/action.yml'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":167,"end_line":167,"start":6455,"end":6508,"source":"'config/scripts/headless-detector-compiler-cache.mjs'","value":{"kind":"string","value":"config/scripts/headless-detector-compiler-cache.mjs"},"index":14,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/headless-detector-compiler-cache.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":168,"end_line":168,"start":6512,"end":6557,"source":"'config/scripts/workspace-source-exports.mjs'","value":{"kind":"string","value":"config/scripts/workspace-source-exports.mjs"},"index":15,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/workspace-source-exports.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":169,"end_line":169,"start":6561,"end":6611,"source":"'config/scripts/workspace-source-exports.test.mjs'","value":{"kind":"string","value":"config/scripts/workspace-source-exports.test.mjs"},"index":16,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/workspace-source-exports.test.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":170,"end_line":170,"start":6615,"end":6666,"source":"'.github/actions/prepare-native-runtime/action.yml'","value":{"kind":"string","value":".github/actions/prepare-native-runtime/action.yml"},"index":17,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/prepare-native-runtime/action.yml'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":171,"end_line":171,"start":6670,"end":6722,"source":"'.github/actions/prepare-orcad-prebuilds/action.yml'","value":{"kind":"string","value":".github/actions/prepare-orcad-prebuilds/action.yml"},"index":18,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/prepare-orcad-prebuilds/action.yml'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":172,"end_line":172,"start":6726,"end":6767,"source":"'.github/workflows/node-server-tests.yml'","value":{"kind":"string","value":".github/workflows/node-server-tests.yml"},"index":19,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/workflows/node-server-tests.yml'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":173,"end_line":173,"start":6771,"end":6821,"source":"'src/main/persistence/profile-state/new-worker.ts'","value":{"kind":"string","value":"src/main/persistence/profile-state/new-worker.ts"},"index":20,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/profile-state/new-worker.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":11,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":12,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":13,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":14,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":15,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":16,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":17,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":18,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":19,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":20,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:175:inline-api-or-fixture-input:24","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":175,"end_line":175,"start":6925,"end":6981,"source":"classifyNodeServerChanges([file], async () => new Set())","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":175,"end_line":175,"start":6925,"end":6981},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":153,"title":"always selects build, native and dynamically opened inputs: %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":175,"end_line":175,"start":6951,"end":6957,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":175,"end_line":175,"start":6959,"end":6980,"source":"async () => new Set()","value":{"kind":"source-expression","source":"async () => new Set()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => new Set(). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: always selects build, native and dynamically opened inputs: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:182:inline-api-or-fixture-input:25","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":182,"end_line":186,"start":7327,"end":7523,"source":"moduleTree({\n 'entry.ts': `import './${reachable}'; throw Error('never execute')`,\n [reachable]: 'export const value = 1',\n [unrelated]: 'throw Error(\"never execute unrelated test\")'\n })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":182,"end_line":186,"start":7327,"end":7523},"binding":"moduleTree","resolution":[],"enclosing_case":{"line":178,"title":"checks ordinary source unit files against actual imports before skipping the matrix"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":182,"end_line":186,"start":7338,"end":7522,"source":"{\n 'entry.ts': `import './${reachable}'; throw Error('never execute')`,\n [reachable]: 'export const value = 1',\n [unrelated]: 'throw Error(\"never execute unrelated test\")'\n }","value":{"kind":"object","value":[{"key":"'entry.ts'","value":{"kind":"source-expression","source":"`import './${reachable}'; throw Error('never execute')`"}},{"key":"[reachable]","value":{"kind":"string","value":"export const value = 1"}},{"key":"[unrelated]","value":{"kind":"string","value":"throw Error(\"never execute unrelated test\")"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { 'entry.ts': `import './${reachable}'; throw Error('never execute')`, [reachable]: 'export const value = 1', [unrelated]: 'thro. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:187:inline-api-or-fixture-input:26","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":187,"end_line":187,"start":7547,"end":7607,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":187,"end_line":187,"start":7547,"end":7607},"binding":"collectNodeServerInputs","resolution":[],"enclosing_case":{"line":178,"title":"checks ordinary source unit files against actual imports before skipping the matrix"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":187,"end_line":187,"start":7571,"end":7606,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:190:inline-api-or-fixture-input:27","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":190,"end_line":190,"start":7711,"end":7769,"source":"classifyNodeServerChanges([reachable], async () => inputs)","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":190,"end_line":190,"start":7711,"end":7769},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":178,"title":"checks ordinary source unit files against actual imports before skipping the matrix"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":190,"end_line":190,"start":7737,"end":7748,"source":"[reachable]","value":{"kind":"array","value":[{"kind":"reference","source":"reachable","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":179,"end_line":179,"start":7133,"end":7176},"resolved":{"kind":"string","value":"src/main/persistence/example/used.test.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [reachable]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":190,"end_line":190,"start":7750,"end":7768,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:191:inline-api-or-fixture-input:28","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":191,"end_line":191,"start":7809,"end":7867,"source":"classifyNodeServerChanges([unrelated], async () => inputs)","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":191,"end_line":191,"start":7809,"end":7867},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":178,"title":"checks ordinary source unit files against actual imports before skipping the matrix"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":191,"end_line":191,"start":7835,"end":7846,"source":"[unrelated]","value":{"kind":"array","value":[{"kind":"reference","source":"unrelated","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":180,"end_line":180,"start":7197,"end":7246},"resolved":{"kind":"string","value":"src/main/persistence/example/unrelated.test.tsx"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [unrelated]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":191,"end_line":191,"start":7848,"end":7866,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:192:inline-api-or-fixture-input:29","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":192,"end_line":192,"start":7908,"end":7964,"source":"classifyNodeServerChanges([removed], async () => inputs)","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":192,"end_line":192,"start":7908,"end":7964},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":178,"title":"checks ordinary source unit files against actual imports before skipping the matrix"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":192,"end_line":192,"start":7934,"end":7943,"source":"[removed]","value":{"kind":"array","value":[{"kind":"reference","source":"removed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":181,"end_line":181,"start":7265,"end":7311},"resolved":{"kind":"string","value":"src/main/persistence/example/removed.test.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [removed]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":192,"end_line":192,"start":7945,"end":7963,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: checks ordinary source unit files against actual imports before skipping the matrix.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:197:inline-api-or-fixture-input:30","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":197,"end_line":197,"start":8173,"end":8224,"source":"moduleTree({ 'entry.ts': `import './${removed}'` })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":197,"end_line":197,"start":8173,"end":8224},"binding":"moduleTree","resolution":[],"enclosing_case":{"line":195,"title":"retains qualification when a removed ordinary unit file breaks an actual import"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification when a removed ordinary unit file breaks an actual import.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":197,"end_line":197,"start":8184,"end":8223,"source":"{ 'entry.ts': `import './${removed}'` }","value":{"kind":"object","value":[{"key":"'entry.ts'","value":{"kind":"source-expression","source":"`import './${removed}'`"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { 'entry.ts': `import './${removed}'` }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification when a removed ordinary unit file breaks an actual import.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:198:inline-api-or-fixture-input:31","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":198,"end_line":200,"start":8248,"end":8359,"source":"classifyNodeServerChanges([removed], () =>\n collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })\n )","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":198,"end_line":200,"start":8248,"end":8359},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":195,"title":"retains qualification when a removed ordinary unit file breaks an actual import"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification when a removed ordinary unit file breaks an actual import.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":198,"end_line":198,"start":8274,"end":8283,"source":"[removed]","value":{"kind":"array","value":[{"kind":"reference","source":"removed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":196,"end_line":196,"start":8111,"end":8157},"resolved":{"kind":"string","value":"src/main/persistence/example/removed.test.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [removed]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification when a removed ordinary unit file breaks an actual import.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":198,"end_line":199,"start":8285,"end":8355,"source":"() =>\n collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","value":{"kind":"source-expression","source":"() =>\n collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification when a removed ordinary unit file breaks an actual import.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:199:inline-api-or-fixture-input:32","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":199,"end_line":199,"start":8295,"end":8355,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":199,"end_line":199,"start":8295,"end":8355},"binding":"collectNodeServerInputs","resolution":[],"enclosing_case":{"line":195,"title":"retains qualification when a removed ordinary unit file breaks an actual import"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification when a removed ordinary unit file breaks an actual import.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":199,"end_line":199,"start":8319,"end":8354,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains qualification when a removed ordinary unit file breaks an actual import.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:208:inline-api-or-fixture-input:33","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":208,"end_line":214,"start":8695,"end":8895,"source":"classifyNodeServerChanges(\n ['src/main/persistence/example/unrelated.test.ts'],\n async () => {\n throw new Error('graph must not run before installation')\n },\n { deferGraph: true }\n )","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":208,"end_line":214,"start":8695,"end":8895},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":207,"title":"requests the graph for an ordinary source unit edit before dependencies are installed"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: requests the graph for an ordinary source unit edit before dependencies are installed.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":209,"end_line":209,"start":8726,"end":8776,"source":"['src/main/persistence/example/unrelated.test.ts']","value":{"kind":"array","value":[{"kind":"string","value":"src/main/persistence/example/unrelated.test.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/main/persistence/example/unrelated.test.ts']. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: requests the graph for an ordinary source unit edit before dependencies are installed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":210,"end_line":212,"start":8782,"end":8865,"source":"async () => {\n throw new Error('graph must not run before installation')\n }","value":{"kind":"source-expression","source":"async () => {\n throw new Error('graph must not run before installation')\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => { throw new Error('graph must not run before installation') }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: requests the graph for an ordinary source unit edit before dependencies are installed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-change-scope.test.mjs","line":213,"end_line":213,"start":8871,"end":8891,"source":"{ deferGraph: true }","value":{"kind":"object","value":[{"key":"deferGraph","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { deferGraph: true }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: requests the graph for an ordinary source unit edit before dependencies are installed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:219:parameter-table:34","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":219,"end_line":233,"start":8985,"end":9705,"source":"[\n 'src/main/persistence/profile-state/removed.test.ts',\n 'src/main/sqlite/removed.test.ts',\n 'src/main/orcad/orcad-entry.test.ts',\n 'src/main/daemon/pty-subprocess/removed.test.ts',\n 'src/main/providers/agent-foreground-process-git-bash.win32.test.ts',\n 'config/scripts/node-server-change-scope.test.mjs'\n]","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":219,"end_line":226,"start":8993,"end":9306},"binding":"it.each","resolution":[],"enclosing_case":{"line":219,"title":"forces explicitly protected tests without relying on graph discovery: %s"},"affected_case_lines":[219],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: forces explicitly protected tests without relying on graph discovery: %s.","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":220,"end_line":220,"start":8997,"end":9049,"source":"'src/main/persistence/profile-state/removed.test.ts'","value":{"kind":"string","value":"src/main/persistence/profile-state/removed.test.ts"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/profile-state/removed.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: forces explicitly protected tests without relying on graph discovery: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":221,"end_line":221,"start":9053,"end":9086,"source":"'src/main/sqlite/removed.test.ts'","value":{"kind":"string","value":"src/main/sqlite/removed.test.ts"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/sqlite/removed.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: forces explicitly protected tests without relying on graph discovery: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":222,"end_line":222,"start":9090,"end":9126,"source":"'src/main/orcad/orcad-entry.test.ts'","value":{"kind":"string","value":"src/main/orcad/orcad-entry.test.ts"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/orcad/orcad-entry.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: forces explicitly protected tests without relying on graph discovery: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":223,"end_line":223,"start":9130,"end":9178,"source":"'src/main/daemon/pty-subprocess/removed.test.ts'","value":{"kind":"string","value":"src/main/daemon/pty-subprocess/removed.test.ts"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/daemon/pty-subprocess/removed.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: forces explicitly protected tests without relying on graph discovery: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":224,"end_line":224,"start":9182,"end":9250,"source":"'src/main/providers/agent-foreground-process-git-bash.win32.test.ts'","value":{"kind":"string","value":"src/main/providers/agent-foreground-process-git-bash.win32.test.ts"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/providers/agent-foreground-process-git-bash.win32.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: forces explicitly protected tests without relying on graph discovery: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":225,"end_line":225,"start":9254,"end":9304,"source":"'config/scripts/node-server-change-scope.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-change-scope.test.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: forces explicitly protected tests without relying on graph discovery: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:227:inline-api-or-fixture-input:35","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":227,"end_line":229,"start":9425,"end":9547,"source":"classifyNodeServerChanges([file], async () => {\n throw new Error('protected test must not require graph analysis')\n })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":227,"end_line":229,"start":9425,"end":9547},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":219,"title":"forces explicitly protected tests without relying on graph discovery: %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: forces explicitly protected tests without relying on graph discovery: %s.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":227,"end_line":227,"start":9451,"end":9457,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: forces explicitly protected tests without relying on graph discovery: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":227,"end_line":229,"start":9459,"end":9546,"source":"async () => {\n throw new Error('protected test must not require graph analysis')\n }","value":{"kind":"source-expression","source":"async () => {\n throw new Error('protected test must not require graph analysis')\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => { throw new Error('protected test must not require graph analysis') }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: forces explicitly protected tests without relying on graph discovery: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:235:parameter-table:36","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":235,"end_line":253,"start":9707,"end":10504,"source":"[\n 'src/main/persistence/example/worker.ts',\n 'src/main/persistence/example/state.fixture.ts',\n 'src/main/persistence/example/state.test.ts.fixture',\n 'src/main/persistence/example/state.spec.ts',\n 'src/main/persistence/example/../state.test.ts',\n 'src/main/persistence/example/./state.test.ts',\n '.github/actions/prepare-native-runtime/cache.test.ts'\n]","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":235,"end_line":243,"start":9715,"end":10075},"binding":"it.each","resolution":[],"enclosing_case":{"line":235,"title":"retains prefix protection for production, fixtures and other file conventions: %s"},"affected_case_lines":[235],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":236,"end_line":236,"start":9719,"end":9759,"source":"'src/main/persistence/example/worker.ts'","value":{"kind":"string","value":"src/main/persistence/example/worker.ts"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/example/worker.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":237,"end_line":237,"start":9763,"end":9810,"source":"'src/main/persistence/example/state.fixture.ts'","value":{"kind":"string","value":"src/main/persistence/example/state.fixture.ts"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/example/state.fixture.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":238,"end_line":238,"start":9814,"end":9866,"source":"'src/main/persistence/example/state.test.ts.fixture'","value":{"kind":"string","value":"src/main/persistence/example/state.test.ts.fixture"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/example/state.test.ts.fixture'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":239,"end_line":239,"start":9870,"end":9914,"source":"'src/main/persistence/example/state.spec.ts'","value":{"kind":"string","value":"src/main/persistence/example/state.spec.ts"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/example/state.spec.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":240,"end_line":240,"start":9918,"end":9965,"source":"'src/main/persistence/example/../state.test.ts'","value":{"kind":"string","value":"src/main/persistence/example/../state.test.ts"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/example/../state.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":241,"end_line":241,"start":9969,"end":10015,"source":"'src/main/persistence/example/./state.test.ts'","value":{"kind":"string","value":"src/main/persistence/example/./state.test.ts"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/example/./state.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":242,"end_line":242,"start":10019,"end":10073,"source":"'.github/actions/prepare-native-runtime/cache.test.ts'","value":{"kind":"string","value":".github/actions/prepare-native-runtime/cache.test.ts"},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/prepare-native-runtime/cache.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:246:inline-api-or-fixture-input:37","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":246,"end_line":248,"start":10210,"end":10337,"source":"classifyNodeServerChanges([file], async () => {\n throw new Error('protected input must not require graph analysis')\n })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":246,"end_line":248,"start":10210,"end":10337},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":235,"title":"retains prefix protection for production, fixtures and other file conventions: %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":246,"end_line":246,"start":10236,"end":10242,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":246,"end_line":248,"start":10244,"end":10336,"source":"async () => {\n throw new Error('protected input must not require graph analysis')\n }","value":{"kind":"source-expression","source":"async () => {\n throw new Error('protected input must not require graph analysis')\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => { throw new Error('protected input must not require graph analysis') }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains prefix protection for production, fixtures and other file conventions: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:256:inline-api-or-fixture-input:38","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":256,"end_line":261,"start":10629,"end":10855,"source":"classifyNodeServerChanges(\n ['src/main/persistence/example/unrelated.test.ts', 'src/main/persistence/example/worker.ts'],\n async () => {\n throw new Error('production input must not require graph analysis')\n }\n )","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":256,"end_line":261,"start":10629,"end":10855},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":255,"title":"retains a production force when an unrelated unit test changes in the same diff"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains a production force when an unrelated unit test changes in the same diff.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":257,"end_line":257,"start":10660,"end":10752,"source":"['src/main/persistence/example/unrelated.test.ts', 'src/main/persistence/example/worker.ts']","value":{"kind":"array","value":[{"kind":"string","value":"src/main/persistence/example/unrelated.test.ts"},{"kind":"string","value":"src/main/persistence/example/worker.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/main/persistence/example/unrelated.test.ts', 'src/main/persistence/example/worker.ts']. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains a production force when an unrelated unit test changes in the same diff.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":258,"end_line":260,"start":10758,"end":10851,"source":"async () => {\n throw new Error('production input must not require graph analysis')\n }","value":{"kind":"source-expression","source":"async () => {\n throw new Error('production input must not require graph analysis')\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => { throw new Error('production input must not require graph analysis') }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains a production force when an unrelated unit test changes in the same diff.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:268:inline-api-or-fixture-input:39","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":268,"end_line":274,"start":11152,"end":11333,"source":"classifyNodeServerChanges(\n ['src/renderer/src/example.ts'],\n async () => {\n throw new Error('graph must not run before installation')\n },\n { deferGraph: true }\n )","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":268,"end_line":274,"start":11152,"end":11333},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":267,"title":"defers uncertain paths without issuing a qualification verdict"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: defers uncertain paths without issuing a qualification verdict.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":269,"end_line":269,"start":11183,"end":11214,"source":"['src/renderer/src/example.ts']","value":{"kind":"array","value":[{"kind":"string","value":"src/renderer/src/example.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/renderer/src/example.ts']. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: defers uncertain paths without issuing a qualification verdict.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":270,"end_line":272,"start":11220,"end":11303,"source":"async () => {\n throw new Error('graph must not run before installation')\n }","value":{"kind":"source-expression","source":"async () => {\n throw new Error('graph must not run before installation')\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => { throw new Error('graph must not run before installation') }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: defers uncertain paths without issuing a qualification verdict.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-change-scope.test.mjs","line":273,"end_line":273,"start":11309,"end":11329,"source":"{ deferGraph: true }","value":{"kind":"object","value":[{"key":"deferGraph","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { deferGraph: true }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: defers uncertain paths without issuing a qualification verdict.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:279:parameter-table:40","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":279,"end_line":362,"start":11423,"end":14462,"source":"[\n { files: [], deferred: true, expected: 'should_run=true' },\n { files: ['package.json'], deferred: true, expected: 'should_run=true' },\n {\n files: ['src/main/persistence/profile-state/profile-state-windows.ts'],\n deferred: true,\n fullQualification: false,\n qualification: false,\n runners: ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n expected: 'should_run=true'\n },\n {\n files: ['src/main/persistence/profile-state/profile-state-windows.ts'],\n deferred: true,\n expected: 'should_run=true'\n },\n {\n files: ['src/main/providers/provider-windows.ts'],\n deferred: true,\n fullQualification: false,\n expected: 'should_run=true'\n },\n {\n files: ['src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts'],\n deferred: true,\n fullQualification: false,\n pullRequest: true,\n nativeGraph: true,\n expected: 'should_run=true'\n },\n { files: ['src/renderer/src/example.ts'], deferred: true, expected: 'graph_required=true' },\n { files: ['src/renderer/src/example.ts'], deferred: false, expected: 'should_run=true' }\n]","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":279,"end_line":311,"start":11431,"end":12535},"binding":"it.each","resolution":[],"enclosing_case":{"line":279,"title":"fails closed or requests dependencies in an uninstalled checkout: %j"},"affected_case_lines":[279],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":280,"end_line":280,"start":11435,"end":11493,"source":"{ files: [], deferred: true, expected: 'should_run=true' }","value":{"kind":"object","value":[{"key":"files","value":{"kind":"array","value":[]}},{"key":"deferred","value":{"kind":"boolean","value":true}},{"key":"expected","value":{"kind":"string","value":"should_run=true"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { files: [], deferred: true, expected: 'should_run=true' }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":281,"end_line":281,"start":11497,"end":11569,"source":"{ files: ['package.json'], deferred: true, expected: 'should_run=true' }","value":{"kind":"object","value":[{"key":"files","value":{"kind":"array","value":[{"kind":"string","value":"package.json"}]}},{"key":"deferred","value":{"kind":"boolean","value":true}},{"key":"expected","value":{"kind":"string","value":"should_run=true"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { files: ['package.json'], deferred: true, expected: 'should_run=true' }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":282,"end_line":289,"start":11573,"end":11827,"source":"{\n files: ['src/main/persistence/profile-state/profile-state-windows.ts'],\n deferred: true,\n fullQualification: false,\n qualification: false,\n runners: ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n expected: 'should_run=true'\n }","value":{"kind":"object","value":[{"key":"files","value":{"kind":"array","value":[{"kind":"string","value":"src/main/persistence/profile-state/profile-state-windows.ts"}]}},{"key":"deferred","value":{"kind":"boolean","value":true}},{"key":"fullQualification","value":{"kind":"boolean","value":false}},{"key":"qualification","value":{"kind":"boolean","value":false}},{"key":"runners","value":{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"windows-2022"},{"kind":"string","value":"windows-11-arm"}]}},{"key":"expected","value":{"kind":"string","value":"should_run=true"}}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { files: ['src/main/persistence/profile-state/profile-state-windows.ts'], deferred: true, fullQualification: false, qualific. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":290,"end_line":294,"start":11831,"end":11964,"source":"{\n files: ['src/main/persistence/profile-state/profile-state-windows.ts'],\n deferred: true,\n expected: 'should_run=true'\n }","value":{"kind":"object","value":[{"key":"files","value":{"kind":"array","value":[{"kind":"string","value":"src/main/persistence/profile-state/profile-state-windows.ts"}]}},{"key":"deferred","value":{"kind":"boolean","value":true}},{"key":"expected","value":{"kind":"string","value":"should_run=true"}}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { files: ['src/main/persistence/profile-state/profile-state-windows.ts'], deferred: true, expected: 'should_run=true' }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":295,"end_line":300,"start":11968,"end":12110,"source":"{\n files: ['src/main/providers/provider-windows.ts'],\n deferred: true,\n fullQualification: false,\n expected: 'should_run=true'\n }","value":{"kind":"object","value":[{"key":"files","value":{"kind":"array","value":[{"kind":"string","value":"src/main/providers/provider-windows.ts"}]}},{"key":"deferred","value":{"kind":"boolean","value":true}},{"key":"fullQualification","value":{"kind":"boolean","value":false}},{"key":"expected","value":{"kind":"string","value":"should_run=true"}}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { files: ['src/main/providers/provider-windows.ts'], deferred: true, fullQualification: false, expected: 'should_run=true' . Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":301,"end_line":308,"start":12114,"end":12346,"source":"{\n files: ['src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts'],\n deferred: true,\n fullQualification: false,\n pullRequest: true,\n nativeGraph: true,\n expected: 'should_run=true'\n }","value":{"kind":"object","value":[{"key":"files","value":{"kind":"array","value":[{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}]}},{"key":"deferred","value":{"kind":"boolean","value":true}},{"key":"fullQualification","value":{"kind":"boolean","value":false}},{"key":"pullRequest","value":{"kind":"boolean","value":true}},{"key":"nativeGraph","value":{"kind":"boolean","value":true}},{"key":"expected","value":{"kind":"string","value":"should_run=true"}}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { files: ['src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts'], deferred: true, fullQualificati. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":309,"end_line":309,"start":12350,"end":12441,"source":"{ files: ['src/renderer/src/example.ts'], deferred: true, expected: 'graph_required=true' }","value":{"kind":"object","value":[{"key":"files","value":{"kind":"array","value":[{"kind":"string","value":"src/renderer/src/example.ts"}]}},{"key":"deferred","value":{"kind":"boolean","value":true}},{"key":"expected","value":{"kind":"string","value":"graph_required=true"}}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { files: ['src/renderer/src/example.ts'], deferred: true, expected: 'graph_required=true' }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":310,"end_line":310,"start":12445,"end":12533,"source":"{ files: ['src/renderer/src/example.ts'], deferred: false, expected: 'should_run=true' }","value":{"kind":"object","value":[{"key":"files","value":{"kind":"array","value":[{"kind":"string","value":"src/renderer/src/example.ts"}]}},{"key":"deferred","value":{"kind":"boolean","value":false}},{"key":"expected","value":{"kind":"string","value":"should_run=true"}}]},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { files: ['src/renderer/src/example.ts'], deferred: false, expected: 'should_run=true' }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:312:inline-api-or-fixture-input:41","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":312,"end_line":324,"start":12640,"end":12985,"source":"moduleTree(\n Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )\n )","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":312,"end_line":324,"start":12640,"end":12985},"binding":"moduleTree","resolution":[],"enclosing_case":{"line":279,"title":"fails closed or requests dependencies in an uninstalled checkout: %j"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":313,"end_line":323,"start":12656,"end":12981,"source":"Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )","value":{"kind":"call-source","callee":"Object.fromEntries","arguments":[{"kind":"call-source","callee":"[\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map","arguments":[{"kind":"source-expression","source":"(name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ]"}],"source":"[\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])"}],"source":"Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: Object.fromEntries( [ 'node-server-change-scope', 'node-server-test-paths', 'node-server-qualification', . Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:335:inline-api-or-fixture-input:42","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":335,"end_line":347,"start":13370,"end":13847,"source":"runProcessSync({\n program: process.execPath,\n args: [\n realpathSync(join(root, 'config/scripts/node-server-change-scope.mjs')),\n changes,\n ...(scenario.fullQualification === false ? [] : ['--full-qualification']),\n ...(scenario.deferred ? ['--defer-graph'] : []),\n ...(scenario.pullRequest ? ['--pull-request', '--diff-paths', statuses] : [])\n ],\n cwd: root,\n env: { ...process.env, GITHUB_OUTPUT: stepOutput },\n timeoutMs: 5_000\n })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":335,"end_line":347,"start":13370,"end":13847},"binding":"runProcessSync","resolution":[],"enclosing_case":{"line":279,"title":"fails closed or requests dependencies in an uninstalled checkout: %j"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":335,"end_line":347,"start":13385,"end":13846,"source":"{\n program: process.execPath,\n args: [\n realpathSync(join(root, 'config/scripts/node-server-change-scope.mjs')),\n changes,\n ...(scenario.fullQualification === false ? [] : ['--full-qualification']),\n ...(scenario.deferred ? ['--defer-graph'] : []),\n ...(scenario.pullRequest ? ['--pull-request', '--diff-paths', statuses] : [])\n ],\n cwd: root,\n env: { ...process.env, GITHUB_OUTPUT: stepOutput },\n timeoutMs: 5_000\n }","value":{"kind":"object","value":[{"key":"program","value":{"kind":"source-expression","source":"process.execPath"}},{"key":"args","value":{"kind":"array","value":[{"kind":"call-source","callee":"realpathSync","arguments":[{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":312,"end_line":324,"start":12640,"end":12985},"resolved":{"kind":"call-source","callee":"moduleTree","arguments":[{"kind":"call-source","callee":"Object.fromEntries","arguments":[{"kind":"call-source","callee":"[\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map","arguments":[{"kind":"source-expression","source":"(name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ]"}],"source":"[\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])"}],"source":"Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )"}],"source":"moduleTree(\n Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )\n )"}},{"kind":"string","value":"config/scripts/node-server-change-scope.mjs"}],"source":"join(root, 'config/scripts/node-server-change-scope.mjs')"}],"source":"realpathSync(join(root, 'config/scripts/node-server-change-scope.mjs'))"},{"kind":"reference","source":"changes","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":325,"end_line":325,"start":13004,"end":13025},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":312,"end_line":324,"start":12640,"end":12985},"resolved":{"kind":"call-source","callee":"moduleTree","arguments":[{"kind":"call-source","callee":"Object.fromEntries","arguments":[{"kind":"call-source","callee":"[\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map","arguments":[{"kind":"source-expression","source":"(name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ]"}],"source":"[\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])"}],"source":"Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )"}],"source":"moduleTree(\n Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )\n )"}},{"kind":"string","value":"changes"}],"source":"join(root, 'changes')"}},{"kind":"source-expression","source":"...(scenario.fullQualification === false ? [] : ['--full-qualification'])"},{"kind":"source-expression","source":"...(scenario.deferred ? ['--defer-graph'] : [])"},{"kind":"source-expression","source":"...(scenario.pullRequest ? ['--pull-request', '--diff-paths', statuses] : [])"}]}},{"key":"cwd","value":{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":312,"end_line":324,"start":12640,"end":12985},"resolved":{"kind":"call-source","callee":"moduleTree","arguments":[{"kind":"call-source","callee":"Object.fromEntries","arguments":[{"kind":"call-source","callee":"[\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map","arguments":[{"kind":"source-expression","source":"(name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ]"}],"source":"[\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])"}],"source":"Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )"}],"source":"moduleTree(\n Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )\n )"}}},{"key":"env","value":{"kind":"object","value":[{"source":"...process.env"},{"key":"GITHUB_OUTPUT","value":{"kind":"reference","source":"stepOutput","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":326,"end_line":326,"start":13047,"end":13072},"resolved":{"kind":"call-source","callee":"join","arguments":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":312,"end_line":324,"start":12640,"end":12985},"resolved":{"kind":"call-source","callee":"moduleTree","arguments":[{"kind":"call-source","callee":"Object.fromEntries","arguments":[{"kind":"call-source","callee":"[\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map","arguments":[{"kind":"source-expression","source":"(name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ]"}],"source":"[\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])"}],"source":"Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )"}],"source":"moduleTree(\n Object.fromEntries(\n [\n 'node-server-change-scope',\n 'node-server-test-paths',\n 'node-server-qualification',\n 'node-server-native-compat-scope'\n ].map((name) => [\n `config/scripts/${name}.mjs`,\n readFileSync(new URL(`./${name}.mjs`, import.meta.url), 'utf8')\n ])\n )\n )"}},{"kind":"string","value":"step-output"}],"source":"join(root, 'step-output')"}}}]}},{"key":"timeoutMs","value":{"kind":"number","value":5000}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { program: process.execPath, args: [ realpathSync(join(root, 'config/scripts/node-server-change-scope.mjs')), changes, . Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: fails closed or requests dependencies in an uninstalled checkout: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:368:inline-api-or-fixture-input:43","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":368,"end_line":373,"start":14663,"end":14894,"source":"moduleTree({\n 'entry.ts': `import './${registry}'; throw Error('never execute')`,\n [registry]: 'export const NODE_RUNTIME_INCLUDE = []',\n [unrelatedSshUnit]: 'throw Error(\"never execute unrelated test\")',\n ...extra\n })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":368,"end_line":373,"start":14663,"end":14894},"binding":"moduleTree","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":368,"end_line":373,"start":14674,"end":14893,"source":"{\n 'entry.ts': `import './${registry}'; throw Error('never execute')`,\n [registry]: 'export const NODE_RUNTIME_INCLUDE = []',\n [unrelatedSshUnit]: 'throw Error(\"never execute unrelated test\")',\n ...extra\n }","value":{"kind":"object","value":[{"key":"'entry.ts'","value":{"kind":"source-expression","source":"`import './${registry}'; throw Error('never execute')`"}},{"key":"[registry]","value":{"kind":"string","value":"export const NODE_RUNTIME_INCLUDE = []"}},{"key":"[unrelatedSshUnit]","value":{"kind":"string","value":"throw Error(\"never execute unrelated test\")"}},{"source":"...extra"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { 'entry.ts': `import './${registry}'; throw Error('never execute')`, [registry]: 'export const NODE_RUNTIME_INCLUDE = []', [unr. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:379:fixture-or-oracle-declaration:44","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":379,"end_line":379,"start":15141,"end":15179,"source":"[registry, unrelatedSshUnit]","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":379,"end_line":379,"start":15151,"end":15179},"binding":"changed","resolution":[],"enclosing_case":{"line":376,"title":"keeps a Node harness smoke without widening it for an unrelated modified SSH unit"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":379,"end_line":379,"start":15152,"end":15160,"source":"registry","value":{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: registry. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":379,"end_line":379,"start":15162,"end":15178,"source":"unrelatedSshUnit","value":{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: unrelatedSshUnit. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:380:inline-api-or-fixture-input:45","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":380,"end_line":384,"start":15202,"end":15348,"source":"classifyNodeServerChanges(\n changed,\n () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }),\n { modifiedFiles: changed }\n )","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":380,"end_line":384,"start":15202,"end":15348},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":376,"title":"keeps a Node harness smoke without widening it for an unrelated modified SSH unit"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":381,"end_line":381,"start":15233,"end":15240,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":379,"end_line":379,"start":15151,"end":15179},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":382,"end_line":382,"start":15246,"end":15312,"source":"() => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","value":{"kind":"source-expression","source":"() => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-change-scope.test.mjs","line":383,"end_line":383,"start":15318,"end":15344,"source":"{ modifiedFiles: changed }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":379,"end_line":379,"start":15151,"end":15179},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: changed }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:382:inline-api-or-fixture-input:46","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":382,"end_line":382,"start":15252,"end":15312,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":382,"end_line":382,"start":15252,"end":15312},"binding":"collectNodeServerInputs","resolution":[],"enclosing_case":{"line":376,"title":"keeps a Node harness smoke without widening it for an unrelated modified SSH unit"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":382,"end_line":382,"start":15276,"end":15311,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:386:inline-api-or-fixture-input:47","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":386,"end_line":386,"start":15395,"end":15434,"source":"nodeServerQualification(changed, scope)","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":386,"end_line":386,"start":15395,"end":15434},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":376,"title":"keeps a Node harness smoke without widening it for an unrelated modified SSH unit"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":386,"end_line":386,"start":15419,"end":15426,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":379,"end_line":379,"start":15151,"end":15179},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":386,"end_line":386,"start":15428,"end":15433,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":380,"end_line":384,"start":15196,"end":15348},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(\n changed,\n () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }),\n { modifiedFiles: changed }\n )"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:390:inline-api-or-fixture-input:48","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":390,"end_line":390,"start":15516,"end":15584,"source":"nodeServerQualification(changed, scope, { fullQualification: true })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":390,"end_line":390,"start":15516,"end":15584},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":376,"title":"keeps a Node harness smoke without widening it for an unrelated modified SSH unit"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":390,"end_line":390,"start":15540,"end":15547,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":379,"end_line":379,"start":15151,"end":15179},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":390,"end_line":390,"start":15549,"end":15554,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":380,"end_line":384,"start":15196,"end":15348},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(\n changed,\n () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }),\n { modifiedFiles: changed }\n )"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-change-scope.test.mjs","line":390,"end_line":390,"start":15556,"end":15583,"source":"{ fullQualification: true }","value":{"kind":"object","value":[{"key":"fullQualification","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { fullQualification: true }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps a Node harness smoke without widening it for an unrelated modified SSH unit.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:396:parameter-table:49","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":396,"end_line":412,"start":15663,"end":16468,"source":"[\n ['src/main/daemon/daemon-authenticated-client-activity.test.ts', NODE_SERVER_RUNNERS, true],\n [\n 'src/main/daemon/daemon-endpoint-windows.test.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ]\n]","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":396,"end_line":403,"start":15671,"end":15898},"binding":"it.each","resolution":[],"enclosing_case":{"line":396,"title":"retains daemon platform coverage: %s"},"affected_case_lines":[396],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":397,"end_line":397,"start":15675,"end":15766,"source":"['src/main/daemon/daemon-authenticated-client-activity.test.ts', NODE_SERVER_RUNNERS, true]","value":{"kind":"array","value":[{"kind":"string","value":"src/main/daemon/daemon-authenticated-client-activity.test.ts"},{"kind":"reference","source":"NODE_SERVER_RUNNERS","resolved_at":{"path":"config/scripts/node-server-qualification.mjs","line":1,"end_line":8,"start":35,"end":149},"resolved":{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"ubuntu-24.04-arm"},{"kind":"string","value":"macos-15"},{"kind":"string","value":"macos-15-intel"},{"kind":"string","value":"windows-2022"},{"kind":"string","value":"windows-11-arm"}]}},{"kind":"boolean","value":true}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['src/main/daemon/daemon-authenticated-client-activity.test.ts', NODE_SERVER_RUNNERS, true]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":398,"end_line":402,"start":15770,"end":15896,"source":"[\n 'src/main/daemon/daemon-endpoint-windows.test.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ]","value":{"kind":"array","value":[{"kind":"string","value":"src/main/daemon/daemon-endpoint-windows.test.ts"},{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"windows-2022"},{"kind":"string","value":"windows-11-arm"}]},{"kind":"boolean","value":false}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'src/main/daemon/daemon-endpoint-windows.test.ts', ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'], false ]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:404:inline-api-or-fixture-input:50","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":404,"end_line":404,"start":15999,"end":16059,"source":"qualificationTree({ [daemon]: 'throw Error(\"unselected\")' })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":404,"end_line":404,"start":15999,"end":16059},"binding":"qualificationTree","resolution":[],"enclosing_case":{"line":396,"title":"retains daemon platform coverage: %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":404,"end_line":404,"start":16017,"end":16058,"source":"{ [daemon]: 'throw Error(\"unselected\")' }","value":{"kind":"object","value":[{"key":"[daemon]","value":{"kind":"string","value":"throw Error(\"unselected\")"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { [daemon]: 'throw Error(\"unselected\")' }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:405:fixture-or-oracle-declaration:51","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":405,"end_line":405,"start":16068,"end":16111,"source":"[registry, daemon, unrelatedSshUnit]","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":405,"end_line":405,"start":16075,"end":16111},"binding":"diff","resolution":[],"enclosing_case":{"line":396,"title":"retains daemon platform coverage: %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":405,"end_line":405,"start":16076,"end":16084,"source":"registry","value":{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: registry. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":405,"end_line":405,"start":16086,"end":16092,"source":"daemon","value":{"kind":"source-expression","source":"daemon"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: daemon. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":405,"end_line":405,"start":16094,"end":16110,"source":"unrelatedSshUnit","value":{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: unrelatedSshUnit. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:406:inline-api-or-fixture-input:52","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":406,"end_line":406,"start":16130,"end":16190,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":406,"end_line":406,"start":16130,"end":16190},"binding":"collectNodeServerInputs","resolution":[],"enclosing_case":{"line":396,"title":"retains daemon platform coverage: %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":406,"end_line":406,"start":16154,"end":16189,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:409:inline-api-or-fixture-input:53","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":409,"end_line":409,"start":16282,"end":16353,"source":"classifyNodeServerChanges(diff, async () => g, { modifiedFiles: diff })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":409,"end_line":409,"start":16282,"end":16353},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":396,"title":"retains daemon platform coverage: %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":409,"end_line":409,"start":16308,"end":16312,"source":"diff","value":{"kind":"reference","source":"diff","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":405,"end_line":405,"start":16075,"end":16111},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"source-expression","source":"daemon"},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: diff. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":409,"end_line":409,"start":16314,"end":16327,"source":"async () => g","value":{"kind":"source-expression","source":"async () => g"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => g. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-change-scope.test.mjs","line":409,"end_line":409,"start":16329,"end":16352,"source":"{ modifiedFiles: diff }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"reference","source":"diff","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":405,"end_line":405,"start":16075,"end":16111},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"source-expression","source":"daemon"},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: diff }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:411:inline-api-or-fixture-input:54","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":411,"end_line":411,"start":16396,"end":16428,"source":"nodeServerQualification(diff, s)","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":411,"end_line":411,"start":16396,"end":16428},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":396,"title":"retains daemon platform coverage: %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":411,"end_line":411,"start":16420,"end":16424,"source":"diff","value":{"kind":"reference","source":"diff","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":405,"end_line":405,"start":16075,"end":16111},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"source-expression","source":"daemon"},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: diff. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":411,"end_line":411,"start":16426,"end":16427,"source":"s","value":{"kind":"reference","source":"s","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":409,"end_line":409,"start":16276,"end":16353},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(diff, async () => g, { modifiedFiles: diff })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: s. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains daemon platform coverage: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:416:inline-api-or-fixture-input:55","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":416,"end_line":419,"start":16644,"end":16802,"source":"qualificationTree({\n 'entry.ts': `import './${registry}'; import './${ssh}'; throw Error('never execute')`,\n [ssh]: 'export const materializer = 1'\n })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":416,"end_line":419,"start":16644,"end":16802},"binding":"qualificationTree","resolution":[],"enclosing_case":{"line":414,"title":"keeps every host when the modified SSH production module is an actual consumer"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":416,"end_line":419,"start":16662,"end":16801,"source":"{\n 'entry.ts': `import './${registry}'; import './${ssh}'; throw Error('never execute')`,\n [ssh]: 'export const materializer = 1'\n }","value":{"kind":"object","value":[{"key":"'entry.ts'","value":{"kind":"source-expression","source":"`import './${registry}'; import './${ssh}'; throw Error('never execute')`"}},{"key":"[ssh]","value":{"kind":"string","value":"export const materializer = 1"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { 'entry.ts': `import './${registry}'; import './${ssh}'; throw Error('never execute')`, [ssh]: 'export const materializer = 1' }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:420:fixture-or-oracle-declaration:56","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":420,"end_line":420,"start":16811,"end":16854,"source":"[registry, ssh, unrelatedSshUnit]","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":420,"end_line":420,"start":16821,"end":16854},"binding":"changed","resolution":[],"enclosing_case":{"line":414,"title":"keeps every host when the modified SSH production module is an actual consumer"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":420,"end_line":420,"start":16822,"end":16830,"source":"registry","value":{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: registry. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":420,"end_line":420,"start":16832,"end":16835,"source":"ssh","value":{"kind":"reference","source":"ssh","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":415,"end_line":415,"start":16583,"end":16628},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer.ts"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ssh. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":420,"end_line":420,"start":16837,"end":16853,"source":"unrelatedSshUnit","value":{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: unrelatedSshUnit. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:421:inline-api-or-fixture-input:57","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":421,"end_line":425,"start":16877,"end":17023,"source":"classifyNodeServerChanges(\n changed,\n () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }),\n { modifiedFiles: changed }\n )","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":421,"end_line":425,"start":16877,"end":17023},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":414,"title":"keeps every host when the modified SSH production module is an actual consumer"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":422,"end_line":422,"start":16908,"end":16915,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":420,"end_line":420,"start":16821,"end":16854},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"ssh","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":415,"end_line":415,"start":16583,"end":16628},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer.ts"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":423,"end_line":423,"start":16921,"end":16987,"source":"() => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","value":{"kind":"source-expression","source":"() => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-change-scope.test.mjs","line":424,"end_line":424,"start":16993,"end":17019,"source":"{ modifiedFiles: changed }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":420,"end_line":420,"start":16821,"end":16854},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"ssh","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":415,"end_line":415,"start":16583,"end":16628},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer.ts"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: changed }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:423:inline-api-or-fixture-input:58","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":423,"end_line":423,"start":16927,"end":16987,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":423,"end_line":423,"start":16927,"end":16987},"binding":"collectNodeServerInputs","resolution":[],"enclosing_case":{"line":414,"title":"keeps every host when the modified SSH production module is an actual consumer"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":423,"end_line":423,"start":16951,"end":16986,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:428:inline-api-or-fixture-input:59","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":428,"end_line":428,"start":17156,"end":17195,"source":"nodeServerQualification(changed, scope)","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":428,"end_line":428,"start":17156,"end":17195},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":414,"title":"keeps every host when the modified SSH production module is an actual consumer"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":428,"end_line":428,"start":17180,"end":17187,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":420,"end_line":420,"start":16821,"end":16854},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"ssh","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":415,"end_line":415,"start":16583,"end":16628},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer.ts"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":428,"end_line":428,"start":17189,"end":17194,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":421,"end_line":425,"start":16871,"end":17023},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(\n changed,\n () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }),\n { modifiedFiles: changed }\n )"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every host when the modified SSH production module is an actual consumer.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:434:parameter-table:60","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":434,"end_line":465,"start":17274,"end":18445,"source":"['added', 'deleted', 'renamed', 'unknown', 'duplicate', 'foreign']","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":434,"end_line":434,"start":17282,"end":17348},"binding":"it.each","resolution":[],"enclosing_case":{"line":434,"title":"retains complete-path qualification when modification evidence is %s"},"affected_case_lines":[434],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":434,"end_line":434,"start":17283,"end":17290,"source":"'added'","value":{"kind":"string","value":"added"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'added'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":434,"end_line":434,"start":17292,"end":17301,"source":"'deleted'","value":{"kind":"string","value":"deleted"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'deleted'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":434,"end_line":434,"start":17303,"end":17312,"source":"'renamed'","value":{"kind":"string","value":"renamed"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'renamed'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":434,"end_line":434,"start":17314,"end":17323,"source":"'unknown'","value":{"kind":"string","value":"unknown"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'unknown'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":434,"end_line":434,"start":17325,"end":17336,"source":"'duplicate'","value":{"kind":"string","value":"duplicate"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'duplicate'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":434,"end_line":434,"start":17338,"end":17347,"source":"'foreign'","value":{"kind":"string","value":"foreign"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'foreign'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:438:fixture-or-oracle-declaration:61","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":438,"end_line":438,"start":17494,"end":17532,"source":"[registry, unrelatedSshUnit]","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":438,"end_line":438,"start":17504,"end":17532},"binding":"changed","resolution":[],"enclosing_case":{"line":434,"title":"retains complete-path qualification when modification evidence is %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":438,"end_line":438,"start":17505,"end":17513,"source":"registry","value":{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: registry. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":438,"end_line":438,"start":17515,"end":17531,"source":"unrelatedSshUnit","value":{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: unrelatedSshUnit. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:439:fixture-or-oracle-declaration:62","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":439,"end_line":439,"start":17541,"end":17567,"source":"[registry]","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":439,"end_line":439,"start":17557,"end":17567},"binding":"modifiedFiles","resolution":[],"enclosing_case":{"line":434,"title":"retains complete-path qualification when modification evidence is %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":439,"end_line":439,"start":17558,"end":17566,"source":"registry","value":{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: registry. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:454:inline-api-or-fixture-input:63","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":454,"end_line":458,"start":18096,"end":18269,"source":"classifyNodeServerChanges(\n changed,\n () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }),\n status === 'unknown' ? {} : { modifiedFiles }\n )","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":454,"end_line":458,"start":18096,"end":18269},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":434,"title":"retains complete-path qualification when modification evidence is %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":455,"end_line":455,"start":18129,"end":18136,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":438,"end_line":438,"start":17504,"end":17532},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":456,"end_line":456,"start":18144,"end":18210,"source":"() => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","value":{"kind":"source-expression","source":"() => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-change-scope.test.mjs","line":457,"end_line":457,"start":18218,"end":18263,"source":"status === 'unknown' ? {} : { modifiedFiles }","value":{"kind":"source-expression","source":"status === 'unknown' ? {} : { modifiedFiles }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: status === 'unknown' ? {} : { modifiedFiles }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:456:inline-api-or-fixture-input:64","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":456,"end_line":456,"start":18150,"end":18210,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":456,"end_line":456,"start":18150,"end":18210},"binding":"collectNodeServerInputs","resolution":[],"enclosing_case":{"line":434,"title":"retains complete-path qualification when modification evidence is %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":456,"end_line":456,"start":18174,"end":18209,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:460:inline-api-or-fixture-input:65","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":460,"end_line":460,"start":18320,"end":18359,"source":"nodeServerQualification(changed, scope)","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":460,"end_line":460,"start":18320,"end":18359},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":434,"title":"retains complete-path qualification when modification evidence is %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":460,"end_line":460,"start":18344,"end":18351,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":438,"end_line":438,"start":17504,"end":17532},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":460,"end_line":460,"start":18353,"end":18358,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":454,"end_line":458,"start":18090,"end":18269},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(\n changed,\n () => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] }),\n status === 'unknown' ? {} : { modifiedFiles }\n )"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains complete-path qualification when modification evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:469:inline-api-or-fixture-input:66","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":469,"end_line":469,"start":18629,"end":18693,"source":"qualificationTree({ [protectedTest]: 'export const value = 1' })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":469,"end_line":469,"start":18629,"end":18693},"binding":"qualificationTree","resolution":[],"enclosing_case":{"line":467,"title":"retains protected server tests and broken imports despite complete modification evidence"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":469,"end_line":469,"start":18647,"end":18692,"source":"{ [protectedTest]: 'export const value = 1' }","value":{"kind":"object","value":[{"key":"[protectedTest]","value":{"kind":"string","value":"export const value = 1"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { [protectedTest]: 'export const value = 1' }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:470:fixture-or-oracle-declaration:67","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":470,"end_line":470,"start":18702,"end":18755,"source":"[registry, protectedTest, unrelatedSshUnit]","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":470,"end_line":470,"start":18712,"end":18755},"binding":"changed","resolution":[],"enclosing_case":{"line":467,"title":"retains protected server tests and broken imports despite complete modification evidence"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":470,"end_line":470,"start":18713,"end":18721,"source":"registry","value":{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: registry. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":470,"end_line":470,"start":18723,"end":18736,"source":"protectedTest","value":{"kind":"reference","source":"protectedTest","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":468,"end_line":468,"start":18580,"end":18613},"resolved":{"kind":"string","value":"src/main/sqlite/example.test.ts"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: protectedTest. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":470,"end_line":470,"start":18738,"end":18754,"source":"unrelatedSshUnit","value":{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: unrelatedSshUnit. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:471:inline-api-or-fixture-input:68","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":471,"end_line":471,"start":18780,"end":18840,"source":"collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":471,"end_line":471,"start":18780,"end":18840},"binding":"collectNodeServerInputs","resolution":[],"enclosing_case":{"line":467,"title":"retains protected server tests and broken imports despite complete modification evidence"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":471,"end_line":471,"start":18804,"end":18839,"source":"{ root, entryPoints: ['entry.ts'] }","value":{"kind":"object","value":[{"source":"root"},{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"string","value":"entry.ts"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { root, entryPoints: ['entry.ts'] }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:472:inline-api-or-fixture-input:69","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":472,"end_line":474,"start":18872,"end":18949,"source":"classifyNodeServerChanges(changed, collect, {\n modifiedFiles: changed\n })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":472,"end_line":474,"start":18872,"end":18949},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":467,"title":"retains protected server tests and broken imports despite complete modification evidence"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":472,"end_line":472,"start":18898,"end":18905,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":470,"end_line":470,"start":18712,"end":18755},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"protectedTest","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":468,"end_line":468,"start":18580,"end":18613},"resolved":{"kind":"string","value":"src/main/sqlite/example.test.ts"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":472,"end_line":472,"start":18907,"end":18914,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":471,"end_line":471,"start":18774,"end":18840},"resolved":{"kind":"source-expression","source":"() => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-change-scope.test.mjs","line":472,"end_line":474,"start":18916,"end":18948,"source":"{\n modifiedFiles: changed\n }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":470,"end_line":470,"start":18712,"end":18755},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"protectedTest","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":468,"end_line":468,"start":18580,"end":18613},"resolved":{"kind":"string","value":"src/main/sqlite/example.test.ts"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: changed }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:475:inline-api-or-fixture-input:70","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":475,"end_line":475,"start":18959,"end":19007,"source":"nodeServerQualification(changed, protectedScope)","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":475,"end_line":475,"start":18959,"end":19007},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":467,"title":"retains protected server tests and broken imports despite complete modification evidence"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":475,"end_line":475,"start":18983,"end":18990,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":470,"end_line":470,"start":18712,"end":18755},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"protectedTest","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":468,"end_line":468,"start":18580,"end":18613},"resolved":{"kind":"string","value":"src/main/sqlite/example.test.ts"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":475,"end_line":475,"start":18992,"end":19006,"source":"protectedScope","value":{"kind":"reference","source":"protectedScope","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":472,"end_line":474,"start":18866,"end":18949},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(changed, collect, {\n modifiedFiles: changed\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: protectedScope. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:480:fixture-or-oracle-declaration:71","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":480,"end_line":480,"start":19176,"end":19220,"source":"[registry, unrelatedSshUnit]","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":480,"end_line":480,"start":19192,"end":19220},"binding":"brokenChanged","resolution":[],"enclosing_case":{"line":467,"title":"retains protected server tests and broken imports despite complete modification evidence"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":480,"end_line":480,"start":19193,"end":19201,"source":"registry","value":{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: registry. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":480,"end_line":480,"start":19203,"end":19219,"source":"unrelatedSshUnit","value":{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: unrelatedSshUnit. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:481:inline-api-or-fixture-input:72","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":481,"end_line":483,"start":19249,"end":19338,"source":"classifyNodeServerChanges(brokenChanged, collect, {\n modifiedFiles: brokenChanged\n })","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":481,"end_line":483,"start":19249,"end":19338},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":467,"title":"retains protected server tests and broken imports despite complete modification evidence"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":481,"end_line":481,"start":19275,"end":19288,"source":"brokenChanged","value":{"kind":"reference","source":"brokenChanged","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":480,"end_line":480,"start":19192,"end":19220},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: brokenChanged. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":481,"end_line":481,"start":19290,"end":19297,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":471,"end_line":471,"start":18774,"end":18840},"resolved":{"kind":"source-expression","source":"() => collectNodeServerInputs({ root, entryPoints: ['entry.ts'] })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-change-scope.test.mjs","line":481,"end_line":483,"start":19299,"end":19337,"source":"{\n modifiedFiles: brokenChanged\n }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"reference","source":"brokenChanged","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":480,"end_line":480,"start":19192,"end":19220},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: brokenChanged }. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:485:inline-api-or-fixture-input:73","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":485,"end_line":485,"start":19398,"end":19449,"source":"nodeServerQualification(brokenChanged, brokenScope)","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":485,"end_line":485,"start":19398,"end":19449},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":467,"title":"retains protected server tests and broken imports despite complete modification evidence"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":485,"end_line":485,"start":19422,"end":19435,"source":"brokenChanged","value":{"kind":"reference","source":"brokenChanged","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":480,"end_line":480,"start":19192,"end":19220},"resolved":{"kind":"array","value":[{"kind":"reference","source":"registry","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":364,"end_line":364,"start":14481,"end":14527},"resolved":{"kind":"string","value":"config/scripts/vitest-node-runtime-files.mjs"}},{"kind":"reference","source":"unrelatedSshUnit","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":365,"end_line":365,"start":14553,"end":14611},"resolved":{"kind":"string","value":"src/main/ssh/pinned-runtime-materializer-context.test.ts"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: brokenChanged. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":485,"end_line":485,"start":19437,"end":19448,"source":"brokenScope","value":{"kind":"reference","source":"brokenScope","resolved_at":{"path":"config/scripts/node-server-change-scope.test.mjs","line":481,"end_line":483,"start":19243,"end":19338},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(brokenChanged, collect, {\n modifiedFiles: brokenChanged\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: brokenScope. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains protected server tests and broken imports despite complete modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:505:parameter-table:74","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":505,"end_line":515,"start":20235,"end":20840,"source":"[\n 'config/scripts/ci-shard-timings.json',\n 'config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs',\n 'src/renderer/src/components/terminal/pty-running-work-probe.ts',\n 'src/renderer/src/runtime/runtime-terminal-inspection.ts',\n 'src/main/ssh/ssh-relay-upload-stage-commands.test.ts',\n 'src/main/persistence/terminal-topology/terminal-topology-boundary-ratchet.test.ts',\n 'src/main/menu/register-app-menu.ts'\n ]","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":505,"end_line":513,"start":20243,"end":20692},"binding":"it.each","resolution":[],"enclosing_case":{"line":505,"title":"skips unrelated work: %s"},"affected_case_lines":[505],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":506,"end_line":506,"start":20249,"end":20287,"source":"'config/scripts/ci-shard-timings.json'","value":{"kind":"string","value":"config/scripts/ci-shard-timings.json"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/ci-shard-timings.json'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":507,"end_line":507,"start":20293,"end":20364,"source":"'config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs'","value":{"kind":"string","value":"config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":508,"end_line":508,"start":20370,"end":20434,"source":"'src/renderer/src/components/terminal/pty-running-work-probe.ts'","value":{"kind":"string","value":"src/renderer/src/components/terminal/pty-running-work-probe.ts"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/renderer/src/components/terminal/pty-running-work-probe.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":509,"end_line":509,"start":20440,"end":20497,"source":"'src/renderer/src/runtime/runtime-terminal-inspection.ts'","value":{"kind":"string","value":"src/renderer/src/runtime/runtime-terminal-inspection.ts"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/renderer/src/runtime/runtime-terminal-inspection.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":510,"end_line":510,"start":20503,"end":20557,"source":"'src/main/ssh/ssh-relay-upload-stage-commands.test.ts'","value":{"kind":"string","value":"src/main/ssh/ssh-relay-upload-stage-commands.test.ts"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/ssh/ssh-relay-upload-stage-commands.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":511,"end_line":511,"start":20563,"end":20646,"source":"'src/main/persistence/terminal-topology/terminal-topology-boundary-ratchet.test.ts'","value":{"kind":"string","value":"src/main/persistence/terminal-topology/terminal-topology-boundary-ratchet.test.ts"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/terminal-topology/terminal-topology-boundary-ratchet.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":512,"end_line":512,"start":20652,"end":20688,"source":"'src/main/menu/register-app-menu.ts'","value":{"kind":"string","value":"src/main/menu/register-app-menu.ts"},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/menu/register-app-menu.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:514:inline-api-or-fixture-input:75","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":514,"end_line":514,"start":20758,"end":20811,"source":"classifyNodeServerChanges([file], async () => inputs)","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":514,"end_line":514,"start":20758,"end":20811},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":505,"title":"skips unrelated work: %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":514,"end_line":514,"start":20784,"end":20790,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":514,"end_line":514,"start":20792,"end":20810,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: skips unrelated work: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:517:parameter-table:76","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":517,"end_line":535,"start":20844,"end":21795,"source":"[\n ...Object.values(ORCAD_CHILD_ENTRY_POINTS),\n 'src/shared/keybindings/definitions-core-1.ts',\n 'src/shared/pty-running-work-probe.ts',\n 'src/shared/pty-running-work-probe.test.ts',\n 'src/main/runtime/orca-runtime.ts',\n 'src/main/windows/windows-process-table.ts',\n 'src/main/worker-thread-entry-path.ts',\n 'config/scripts/zip-extractor-command.mjs',\n 'config/scripts/windows-process-tree-gyp-rebuild.mjs',\n 'config/scripts/windows-process-tree-prepared-addon.mjs',\n 'config/scripts/orcad-windows-prebuild-cache.mjs',\n 'config/scripts/profile-state-worker-smoke.mjs',\n 'config/scripts/vitest-host-ports-setup.ts',\n 'tests/e2e/daemon-running-work-probe.unit.test.ts'\n ]","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":517,"end_line":532,"start":20852,"end":21564},"binding":"it.each","resolution":[],"enclosing_case":{"line":517,"title":"retains the full matrix for a real runtime, worker or test input: %s"},"affected_case_lines":[517],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","rows":[{"index":1,"path":"config/scripts/orcad-entry-build.mjs","line":14,"end_line":14,"start":637,"end":692,"source":"watcher: 'src/main/ipc/parcel-watcher-process-entry.ts'","value":{"kind":"property","key":"watcher","value":{"kind":"string","value":"src/main/ipc/parcel-watcher-process-entry.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: watcher: 'src/main/ipc/parcel-watcher-process-entry.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-entry-build.mjs","line":15,"end_line":15,"start":696,"end":737,"source":"daemon: 'src/main/daemon/daemon-entry.ts'","value":{"kind":"property","key":"daemon","value":{"kind":"string","value":"src/main/daemon/daemon-entry.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: daemon: 'src/main/daemon/daemon-entry.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/orcad-entry-build.mjs","line":16,"end_line":16,"start":741,"end":822,"source":"writer: 'src/main/persistence/profile-state/profile-state-writer-worker-entry.ts'","value":{"kind":"property","key":"writer","value":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-writer-worker-entry.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: writer: 'src/main/persistence/profile-state/profile-state-writer-worker-entry.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":4,"path":"config/scripts/orcad-entry-build.mjs","line":17,"end_line":17,"start":826,"end":907,"source":"backup: 'src/main/persistence/profile-state/profile-state-backup-worker-entry.ts'","value":{"kind":"property","key":"backup","value":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-backup-worker-entry.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: backup: 'src/main/persistence/profile-state/profile-state-backup-worker-entry.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":5,"path":"config/scripts/orcad-entry-build.mjs","line":18,"end_line":18,"start":911,"end":996,"source":"foreignSqliteReader: 'src/main/foreign-sqlite-readers/foreign-sqlite-reader-entry.ts'","value":{"kind":"property","key":"foreignSqliteReader","value":{"kind":"string","value":"src/main/foreign-sqlite-readers/foreign-sqlite-reader-entry.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: foreignSqliteReader: 'src/main/foreign-sqlite-readers/foreign-sqlite-reader-entry.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":6,"path":"config/scripts/orcad-entry-build.mjs","line":19,"end_line":19,"start":1000,"end":1073,"source":"portScanCommandWorker: 'src/main/ports/port-scan-command-worker-entry.ts'","value":{"kind":"property","key":"portScanCommandWorker","value":{"kind":"string","value":"src/main/ports/port-scan-command-worker-entry.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: portScanCommandWorker: 'src/main/ports/port-scan-command-worker-entry.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":7,"path":"config/scripts/orcad-entry-build.mjs","line":20,"end_line":20,"start":1077,"end":1145,"source":"sessionScanner: 'src/main/ai-vault/session-scanner-service-entry.ts'","value":{"kind":"property","key":"sessionScanner","value":{"kind":"string","value":"src/main/ai-vault/session-scanner-service-entry.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: sessionScanner: 'src/main/ai-vault/session-scanner-service-entry.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":8,"path":"config/scripts/orcad-entry-build.mjs","line":21,"end_line":22,"start":1149,"end":1254,"source":"workerThreadChildProcess:\n 'src/main/worker-thread-child-process/worker-thread-child-process-entry.ts'","value":{"kind":"property","key":"workerThreadChildProcess","value":{"kind":"string","value":"src/main/worker-thread-child-process/worker-thread-child-process-entry.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: workerThreadChildProcess: 'src/main/worker-thread-child-process/worker-thread-child-process-entry.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":9,"path":"config/scripts/orcad-entry-build.mjs","line":23,"end_line":23,"start":1258,"end":1341,"source":"claudeProfileSetup: 'src/main/claude-accounts/claude-profile-setup-worker-entry.ts'","value":{"kind":"property","key":"claudeProfileSetup","value":{"kind":"string","value":"src/main/claude-accounts/claude-profile-setup-worker-entry.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: claudeProfileSetup: 'src/main/claude-accounts/claude-profile-setup-worker-entry.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":10,"path":"config/scripts/orcad-entry-build.mjs","line":24,"end_line":24,"start":1345,"end":1387,"source":"sttWorker: 'src/main/speech/stt-worker.ts'","value":{"kind":"property","key":"sttWorker","value":{"kind":"string","value":"src/main/speech/stt-worker.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: sttWorker: 'src/main/speech/stt-worker.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":11,"path":"config/scripts/orcad-entry-build.mjs","line":25,"end_line":25,"start":1391,"end":1447,"source":"computerSidecar: 'src/main/computer/computer-sidecar.ts'","value":{"kind":"property","key":"computerSidecar","value":{"kind":"string","value":"src/main/computer/computer-sidecar.ts"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: computerSidecar: 'src/main/computer/computer-sidecar.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":519,"end_line":519,"start":20906,"end":20952,"source":"'src/shared/keybindings/definitions-core-1.ts'","value":{"kind":"string","value":"src/shared/keybindings/definitions-core-1.ts"},"index":12,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/shared/keybindings/definitions-core-1.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":520,"end_line":520,"start":20958,"end":20996,"source":"'src/shared/pty-running-work-probe.ts'","value":{"kind":"string","value":"src/shared/pty-running-work-probe.ts"},"index":13,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/shared/pty-running-work-probe.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":521,"end_line":521,"start":21002,"end":21045,"source":"'src/shared/pty-running-work-probe.test.ts'","value":{"kind":"string","value":"src/shared/pty-running-work-probe.test.ts"},"index":14,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/shared/pty-running-work-probe.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":522,"end_line":522,"start":21051,"end":21085,"source":"'src/main/runtime/orca-runtime.ts'","value":{"kind":"string","value":"src/main/runtime/orca-runtime.ts"},"index":15,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/runtime/orca-runtime.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":523,"end_line":523,"start":21091,"end":21134,"source":"'src/main/windows/windows-process-table.ts'","value":{"kind":"string","value":"src/main/windows/windows-process-table.ts"},"index":16,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/windows/windows-process-table.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":524,"end_line":524,"start":21140,"end":21178,"source":"'src/main/worker-thread-entry-path.ts'","value":{"kind":"string","value":"src/main/worker-thread-entry-path.ts"},"index":17,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/worker-thread-entry-path.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":525,"end_line":525,"start":21184,"end":21226,"source":"'config/scripts/zip-extractor-command.mjs'","value":{"kind":"string","value":"config/scripts/zip-extractor-command.mjs"},"index":18,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/zip-extractor-command.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":526,"end_line":526,"start":21232,"end":21285,"source":"'config/scripts/windows-process-tree-gyp-rebuild.mjs'","value":{"kind":"string","value":"config/scripts/windows-process-tree-gyp-rebuild.mjs"},"index":19,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/windows-process-tree-gyp-rebuild.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":527,"end_line":527,"start":21291,"end":21347,"source":"'config/scripts/windows-process-tree-prepared-addon.mjs'","value":{"kind":"string","value":"config/scripts/windows-process-tree-prepared-addon.mjs"},"index":20,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/windows-process-tree-prepared-addon.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":528,"end_line":528,"start":21353,"end":21402,"source":"'config/scripts/orcad-windows-prebuild-cache.mjs'","value":{"kind":"string","value":"config/scripts/orcad-windows-prebuild-cache.mjs"},"index":21,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/orcad-windows-prebuild-cache.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":529,"end_line":529,"start":21408,"end":21455,"source":"'config/scripts/profile-state-worker-smoke.mjs'","value":{"kind":"string","value":"config/scripts/profile-state-worker-smoke.mjs"},"index":22,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/profile-state-worker-smoke.mjs'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":530,"end_line":530,"start":21461,"end":21504,"source":"'config/scripts/vitest-host-ports-setup.ts'","value":{"kind":"string","value":"config/scripts/vitest-host-ports-setup.ts"},"index":23,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/vitest-host-ports-setup.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":531,"end_line":531,"start":21510,"end":21560,"source":"'tests/e2e/daemon-running-work-probe.unit.test.ts'","value":{"kind":"string","value":"tests/e2e/daemon-running-work-probe.unit.test.ts"},"index":24,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'tests/e2e/daemon-running-work-probe.unit.test.ts'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":11,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":12,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":13,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":14,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":15,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":16,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":17,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":18,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":19,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":20,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":21,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":22,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":23,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":24,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:534:inline-api-or-fixture-input:77","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":534,"end_line":534,"start":21714,"end":21767,"source":"classifyNodeServerChanges([file], async () => inputs)","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":534,"end_line":534,"start":21714,"end":21767},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":517,"title":"retains the full matrix for a real runtime, worker or test input: %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":534,"end_line":534,"start":21740,"end":21746,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-change-scope.test.mjs","line":534,"end_line":534,"start":21748,"end":21766,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: retains the full matrix for a real runtime, worker or test input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:548:inline-api-or-fixture-input:78","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":548,"end_line":550,"start":22270,"end":22380,"source":"parse(\n readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')\n )","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":548,"end_line":550,"start":22270,"end":22380},"binding":"parse","resolution":[],"enclosing_case":{"line":547,"title":"keeps every platform job and runs them when detection is skipped or fails"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every platform job and runs them when detection is skipped or fails.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":549,"end_line":549,"start":22281,"end":22376,"source":"readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')","value":{"kind":"call-source","callee":"readFileSync","arguments":[{"kind":"source-expression","source":"new URL('../../.github/workflows/node-server-tests.yml', import.meta.url)"},{"kind":"string","value":"utf8"}],"source":"readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8'). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every platform job and runs them when detection is skipped or fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:572:for-of:79","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":572,"end_line":584,"start":23786,"end":24543,"source":"['linux_glibc_floor', 'linux_musl']","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":572,"end_line":572,"start":23808,"end":23843},"binding":"const jobName","resolution":[],"enclosing_case":{"line":547,"title":"keeps every platform job and runs them when detection is skipped or fails"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every platform job and runs them when detection is skipped or fails.","rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","line":572,"end_line":572,"start":23809,"end":23828,"source":"'linux_glibc_floor'","value":{"kind":"string","value":"linux_glibc_floor"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'linux_glibc_floor'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every platform job and runs them when detection is skipped or fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-change-scope.test.mjs","line":572,"end_line":572,"start":23830,"end":23842,"source":"'linux_musl'","value":{"kind":"string","value":"linux_musl"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'linux_musl'. Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: keeps every platform job and runs them when detection is skipped or fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}},{"id":"40:588:inline-api-or-fixture-input:80","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-change-scope.test.mjs","line":588,"end_line":590,"start":24654,"end":24764,"source":"parse(\n readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')\n )","input_position":{"path":"config/scripts/node-server-change-scope.test.mjs","line":588,"end_line":590,"start":24654,"end":24764},"binding":"parse","resolution":[],"enclosing_case":{"line":587,"title":"runs the Bun and Node cross-runtime tests on Linux against pinned inputs"},"affected_case_lines":[],"decision":"keep","reason":"Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the Bun and Node cross-runtime tests on Linux against pinned inputs.","rows":[{"index":1,"path":"config/scripts/node-server-change-scope.test.mjs","line":589,"end_line":589,"start":24665,"end":24760,"source":"readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')","value":{"kind":"call-source","callee":"readFileSync","arguments":[{"kind":"source-expression","source":"new URL('../../.github/workflows/node-server-tests.yml', import.meta.url)"},{"kind":"string","value":"utf8"}],"source":"readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8'). Actual esbuild dependency collection/classification or subprocess CLI uses independent source trees/status vectors and expects explicit run/skip/defer decisions; final workflow checks protect parsed CI execution inputs. Scenario: runs the Bun and Node cross-runtime tests on Linux against pinned inputs.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738"}}],"original_review_sha256":"f939379547531eab668adfec81bfed17d3ddbf70c3625052c6fabbac76a3037a","reviewer":"audit_config","reviewed_sha256":"3ab20ae89907115bbd7afa53d0d86b08aa83c07c52c820e36c24034abd951738","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/node-server-change-scope.test.mjs","final_declarations":26,"current_controls":{"path":"config/scripts/node-server-change-scope.test.mjs","each":[{"input":{"path":"config/scripts/node-server-change-scope.test.mjs","start":4574,"end":4717,"line":118,"end_line":122,"source":"[\n 'src/packages/process-host/.gitignore',\n 'src/packages/process-host/scripts/build-dist.mjs',\n 'src/packages/process-host/tsconfig.json'\n]"},"rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","start":4578,"end":4616,"line":119,"end_line":119,"source":"'src/packages/process-host/.gitignore'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":4620,"end":4670,"line":120,"end_line":120,"source":"'src/packages/process-host/scripts/build-dist.mjs'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":4674,"end":4715,"line":121,"end_line":121,"source":"'src/packages/process-host/tsconfig.json'"}]},{"input":{"path":"config/scripts/node-server-change-scope.test.mjs","start":4990,"end":5037,"line":128,"end_line":128,"source":"['@orca/unknown', '@orca/process-host/private']"},"rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","start":4991,"end":5006,"line":128,"end_line":128,"source":"'@orca/unknown'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":5008,"end":5036,"line":128,"end_line":128,"source":"'@orca/process-host/private'"}]},{"input":{"path":"config/scripts/node-server-change-scope.test.mjs","start":5537,"end":5744,"line":142,"end_line":146,"source":"[\n ['tests/e2e/daemon-running-work-probe.unit.test.ts'],\n ['config/scripts/zip-extractor-command.test.mjs'],\n ['config/scripts/zip-extractor-command.test.mjs', 'config/scripts/renamed-command.test.mjs']\n]"},"rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","start":5541,"end":5593,"line":143,"end_line":143,"source":"['tests/e2e/daemon-running-work-probe.unit.test.ts']"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":5597,"end":5646,"line":144,"end_line":144,"source":"['config/scripts/zip-extractor-command.test.mjs']"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":5650,"end":5742,"line":145,"end_line":145,"source":"['config/scripts/zip-extractor-command.test.mjs', 'config/scripts/renamed-command.test.mjs']"}]},{"input":{"path":"config/scripts/node-server-change-scope.test.mjs","start":5963,"end":6823,"line":153,"end_line":174,"source":"[\n 'package.json',\n 'pnpm-lock.yaml',\n 'pnpm-workspace.yaml',\n '.npmrc',\n 'tsconfig.json',\n 'config/tsconfig.node.json',\n 'config/scripts/node-server-qualification.mjs',\n 'config/scripts/node-server-native-compat-scope.mjs',\n 'config/patches/node-pty@1.1.0.patch',\n 'native/windows-registry/src/addon.cc',\n '.github/actions/install-node-dependencies/action.yml',\n '.github/actions/restore-pnpm-verification/action.yml',\n '.github/actions/prepare-headless-compiler/action.yml',\n 'config/scripts/headless-detector-compiler-cache.mjs',\n 'config/scripts/workspace-source-exports.mjs',\n 'config/scripts/workspace-source-exports.test.mjs',\n '.github/actions/prepare-native-runtime/action.yml',\n '.github/actions/prepare-orcad-prebuilds/action.yml',\n '.github/workflows/node-server-tests.yml',\n 'src/main/persistence/profile-state/new-worker.ts'\n]"},"rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","start":5967,"end":5981,"line":154,"end_line":154,"source":"'package.json'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":5985,"end":6001,"line":155,"end_line":155,"source":"'pnpm-lock.yaml'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":6005,"end":6026,"line":156,"end_line":156,"source":"'pnpm-workspace.yaml'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":6030,"end":6038,"line":157,"end_line":157,"source":"'.npmrc'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":6042,"end":6057,"line":158,"end_line":158,"source":"'tsconfig.json'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":6061,"end":6088,"line":159,"end_line":159,"source":"'config/tsconfig.node.json'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":6092,"end":6138,"line":160,"end_line":160,"source":"'config/scripts/node-server-qualification.mjs'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":6142,"end":6194,"line":161,"end_line":161,"source":"'config/scripts/node-server-native-compat-scope.mjs'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":6198,"end":6235,"line":162,"end_line":162,"source":"'config/patches/node-pty@1.1.0.patch'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":6239,"end":6277,"line":163,"end_line":163,"source":"'native/windows-registry/src/addon.cc'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":6281,"end":6335,"line":164,"end_line":164,"source":"'.github/actions/install-node-dependencies/action.yml'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":6339,"end":6393,"line":165,"end_line":165,"source":"'.github/actions/restore-pnpm-verification/action.yml'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":6397,"end":6451,"line":166,"end_line":166,"source":"'.github/actions/prepare-headless-compiler/action.yml'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":6455,"end":6508,"line":167,"end_line":167,"source":"'config/scripts/headless-detector-compiler-cache.mjs'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":6512,"end":6557,"line":168,"end_line":168,"source":"'config/scripts/workspace-source-exports.mjs'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":6561,"end":6611,"line":169,"end_line":169,"source":"'config/scripts/workspace-source-exports.test.mjs'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":6615,"end":6666,"line":170,"end_line":170,"source":"'.github/actions/prepare-native-runtime/action.yml'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":6670,"end":6722,"line":171,"end_line":171,"source":"'.github/actions/prepare-orcad-prebuilds/action.yml'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":6726,"end":6767,"line":172,"end_line":172,"source":"'.github/workflows/node-server-tests.yml'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":6771,"end":6821,"line":173,"end_line":173,"source":"'src/main/persistence/profile-state/new-worker.ts'"}]},{"input":{"path":"config/scripts/node-server-change-scope.test.mjs","start":8993,"end":9306,"line":219,"end_line":226,"source":"[\n 'src/main/persistence/profile-state/removed.test.ts',\n 'src/main/sqlite/removed.test.ts',\n 'src/main/orcad/orcad-entry.test.ts',\n 'src/main/daemon/pty-subprocess/removed.test.ts',\n 'src/main/providers/agent-foreground-process-git-bash.win32.test.ts',\n 'config/scripts/node-server-change-scope.test.mjs'\n]"},"rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","start":8997,"end":9049,"line":220,"end_line":220,"source":"'src/main/persistence/profile-state/removed.test.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":9053,"end":9086,"line":221,"end_line":221,"source":"'src/main/sqlite/removed.test.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":9090,"end":9126,"line":222,"end_line":222,"source":"'src/main/orcad/orcad-entry.test.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":9130,"end":9178,"line":223,"end_line":223,"source":"'src/main/daemon/pty-subprocess/removed.test.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":9182,"end":9250,"line":224,"end_line":224,"source":"'src/main/providers/agent-foreground-process-git-bash.win32.test.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":9254,"end":9304,"line":225,"end_line":225,"source":"'config/scripts/node-server-change-scope.test.mjs'"}]},{"input":{"path":"config/scripts/node-server-change-scope.test.mjs","start":9715,"end":10075,"line":235,"end_line":243,"source":"[\n 'src/main/persistence/example/worker.ts',\n 'src/main/persistence/example/state.fixture.ts',\n 'src/main/persistence/example/state.test.ts.fixture',\n 'src/main/persistence/example/state.spec.ts',\n 'src/main/persistence/example/../state.test.ts',\n 'src/main/persistence/example/./state.test.ts',\n '.github/actions/prepare-native-runtime/cache.test.ts'\n]"},"rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","start":9719,"end":9759,"line":236,"end_line":236,"source":"'src/main/persistence/example/worker.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":9763,"end":9810,"line":237,"end_line":237,"source":"'src/main/persistence/example/state.fixture.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":9814,"end":9866,"line":238,"end_line":238,"source":"'src/main/persistence/example/state.test.ts.fixture'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":9870,"end":9914,"line":239,"end_line":239,"source":"'src/main/persistence/example/state.spec.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":9918,"end":9965,"line":240,"end_line":240,"source":"'src/main/persistence/example/../state.test.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":9969,"end":10015,"line":241,"end_line":241,"source":"'src/main/persistence/example/./state.test.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":10019,"end":10073,"line":242,"end_line":242,"source":"'.github/actions/prepare-native-runtime/cache.test.ts'"}]},{"input":{"path":"config/scripts/node-server-change-scope.test.mjs","start":11431,"end":12535,"line":279,"end_line":311,"source":"[\n { files: [], deferred: true, expected: 'should_run=true' },\n { files: ['package.json'], deferred: true, expected: 'should_run=true' },\n {\n files: ['src/main/persistence/profile-state/profile-state-windows.ts'],\n deferred: true,\n fullQualification: false,\n qualification: false,\n runners: ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n expected: 'should_run=true'\n },\n {\n files: ['src/main/persistence/profile-state/profile-state-windows.ts'],\n deferred: true,\n expected: 'should_run=true'\n },\n {\n files: ['src/main/providers/provider-windows.ts'],\n deferred: true,\n fullQualification: false,\n expected: 'should_run=true'\n },\n {\n files: ['src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts'],\n deferred: true,\n fullQualification: false,\n pullRequest: true,\n nativeGraph: true,\n expected: 'should_run=true'\n },\n { files: ['src/renderer/src/example.ts'], deferred: true, expected: 'graph_required=true' },\n { files: ['src/renderer/src/example.ts'], deferred: false, expected: 'should_run=true' }\n]"},"rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","start":11435,"end":11493,"line":280,"end_line":280,"source":"{ files: [], deferred: true, expected: 'should_run=true' }"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":11497,"end":11569,"line":281,"end_line":281,"source":"{ files: ['package.json'], deferred: true, expected: 'should_run=true' }"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":11573,"end":11827,"line":282,"end_line":289,"source":"{\n files: ['src/main/persistence/profile-state/profile-state-windows.ts'],\n deferred: true,\n fullQualification: false,\n qualification: false,\n runners: ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n expected: 'should_run=true'\n }"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":11831,"end":11964,"line":290,"end_line":294,"source":"{\n files: ['src/main/persistence/profile-state/profile-state-windows.ts'],\n deferred: true,\n expected: 'should_run=true'\n }"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":11968,"end":12110,"line":295,"end_line":300,"source":"{\n files: ['src/main/providers/provider-windows.ts'],\n deferred: true,\n fullQualification: false,\n expected: 'should_run=true'\n }"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":12114,"end":12346,"line":301,"end_line":308,"source":"{\n files: ['src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts'],\n deferred: true,\n fullQualification: false,\n pullRequest: true,\n nativeGraph: true,\n expected: 'should_run=true'\n }"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":12350,"end":12441,"line":309,"end_line":309,"source":"{ files: ['src/renderer/src/example.ts'], deferred: true, expected: 'graph_required=true' }"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":12445,"end":12533,"line":310,"end_line":310,"source":"{ files: ['src/renderer/src/example.ts'], deferred: false, expected: 'should_run=true' }"}]},{"input":{"path":"config/scripts/node-server-change-scope.test.mjs","start":15671,"end":15898,"line":396,"end_line":403,"source":"[\n ['src/main/daemon/daemon-authenticated-client-activity.test.ts', NODE_SERVER_RUNNERS, true],\n [\n 'src/main/daemon/daemon-endpoint-windows.test.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ]\n]"},"rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","start":15675,"end":15766,"line":397,"end_line":397,"source":"['src/main/daemon/daemon-authenticated-client-activity.test.ts', NODE_SERVER_RUNNERS, true]"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":15770,"end":15896,"line":398,"end_line":402,"source":"[\n 'src/main/daemon/daemon-endpoint-windows.test.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ]"}]},{"input":{"path":"config/scripts/node-server-change-scope.test.mjs","start":17282,"end":17348,"line":434,"end_line":434,"source":"['added', 'deleted', 'renamed', 'unknown', 'duplicate', 'foreign']"},"rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","start":17283,"end":17290,"line":434,"end_line":434,"source":"'added'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":17292,"end":17301,"line":434,"end_line":434,"source":"'deleted'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":17303,"end":17312,"line":434,"end_line":434,"source":"'renamed'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":17314,"end":17323,"line":434,"end_line":434,"source":"'unknown'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":17325,"end":17336,"line":434,"end_line":434,"source":"'duplicate'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":17338,"end":17347,"line":434,"end_line":434,"source":"'foreign'"}]},{"input":{"path":"config/scripts/node-server-change-scope.test.mjs","start":20243,"end":20692,"line":505,"end_line":513,"source":"[\n 'config/scripts/ci-shard-timings.json',\n 'config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs',\n 'src/renderer/src/components/terminal/pty-running-work-probe.ts',\n 'src/renderer/src/runtime/runtime-terminal-inspection.ts',\n 'src/main/ssh/ssh-relay-upload-stage-commands.test.ts',\n 'src/main/persistence/terminal-topology/terminal-topology-boundary-ratchet.test.ts',\n 'src/main/menu/register-app-menu.ts'\n ]"},"rows":[{"path":"config/scripts/node-server-change-scope.test.mjs","start":20249,"end":20287,"line":506,"end_line":506,"source":"'config/scripts/ci-shard-timings.json'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":20293,"end":20364,"line":507,"end_line":507,"source":"'config/scripts/mobile-web-app/mobile-web-app-terminal-render.test.mjs'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":20370,"end":20434,"line":508,"end_line":508,"source":"'src/renderer/src/components/terminal/pty-running-work-probe.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":20440,"end":20497,"line":509,"end_line":509,"source":"'src/renderer/src/runtime/runtime-terminal-inspection.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":20503,"end":20557,"line":510,"end_line":510,"source":"'src/main/ssh/ssh-relay-upload-stage-commands.test.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":20563,"end":20646,"line":511,"end_line":511,"source":"'src/main/persistence/terminal-topology/terminal-topology-boundary-ratchet.test.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":20652,"end":20688,"line":512,"end_line":512,"source":"'src/main/menu/register-app-menu.ts'"}]},{"input":{"path":"config/scripts/node-server-change-scope.test.mjs","start":20852,"end":21564,"line":517,"end_line":532,"source":"[\n ...Object.values(ORCAD_CHILD_ENTRY_POINTS),\n 'src/shared/keybindings/definitions-core-1.ts',\n 'src/shared/pty-running-work-probe.ts',\n 'src/shared/pty-running-work-probe.test.ts',\n 'src/main/runtime/orca-runtime.ts',\n 'src/main/windows/windows-process-table.ts',\n 'src/main/worker-thread-entry-path.ts',\n 'config/scripts/zip-extractor-command.mjs',\n 'config/scripts/windows-process-tree-gyp-rebuild.mjs',\n 'config/scripts/windows-process-tree-prepared-addon.mjs',\n 'config/scripts/orcad-windows-prebuild-cache.mjs',\n 'config/scripts/profile-state-worker-smoke.mjs',\n 'config/scripts/vitest-host-ports-setup.ts',\n 'tests/e2e/daemon-running-work-probe.unit.test.ts'\n ]"},"rows":[{"path":"config/scripts/orcad-entry-build.mjs","start":637,"end":692,"line":14,"end_line":14,"source":"watcher: 'src/main/ipc/parcel-watcher-process-entry.ts'"},{"path":"config/scripts/orcad-entry-build.mjs","start":696,"end":737,"line":15,"end_line":15,"source":"daemon: 'src/main/daemon/daemon-entry.ts'"},{"path":"config/scripts/orcad-entry-build.mjs","start":741,"end":822,"line":16,"end_line":16,"source":"writer: 'src/main/persistence/profile-state/profile-state-writer-worker-entry.ts'"},{"path":"config/scripts/orcad-entry-build.mjs","start":826,"end":907,"line":17,"end_line":17,"source":"backup: 'src/main/persistence/profile-state/profile-state-backup-worker-entry.ts'"},{"path":"config/scripts/orcad-entry-build.mjs","start":911,"end":996,"line":18,"end_line":18,"source":"foreignSqliteReader: 'src/main/foreign-sqlite-readers/foreign-sqlite-reader-entry.ts'"},{"path":"config/scripts/orcad-entry-build.mjs","start":1000,"end":1073,"line":19,"end_line":19,"source":"portScanCommandWorker: 'src/main/ports/port-scan-command-worker-entry.ts'"},{"path":"config/scripts/orcad-entry-build.mjs","start":1077,"end":1145,"line":20,"end_line":20,"source":"sessionScanner: 'src/main/ai-vault/session-scanner-service-entry.ts'"},{"path":"config/scripts/orcad-entry-build.mjs","start":1149,"end":1254,"line":21,"end_line":22,"source":"workerThreadChildProcess:\n 'src/main/worker-thread-child-process/worker-thread-child-process-entry.ts'"},{"path":"config/scripts/orcad-entry-build.mjs","start":1258,"end":1341,"line":23,"end_line":23,"source":"claudeProfileSetup: 'src/main/claude-accounts/claude-profile-setup-worker-entry.ts'"},{"path":"config/scripts/orcad-entry-build.mjs","start":1345,"end":1387,"line":24,"end_line":24,"source":"sttWorker: 'src/main/speech/stt-worker.ts'"},{"path":"config/scripts/orcad-entry-build.mjs","start":1391,"end":1447,"line":25,"end_line":25,"source":"computerSidecar: 'src/main/computer/computer-sidecar.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":20906,"end":20952,"line":519,"end_line":519,"source":"'src/shared/keybindings/definitions-core-1.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":20958,"end":20996,"line":520,"end_line":520,"source":"'src/shared/pty-running-work-probe.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":21002,"end":21045,"line":521,"end_line":521,"source":"'src/shared/pty-running-work-probe.test.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":21051,"end":21085,"line":522,"end_line":522,"source":"'src/main/runtime/orca-runtime.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":21091,"end":21134,"line":523,"end_line":523,"source":"'src/main/windows/windows-process-table.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":21140,"end":21178,"line":524,"end_line":524,"source":"'src/main/worker-thread-entry-path.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":21184,"end":21226,"line":525,"end_line":525,"source":"'config/scripts/zip-extractor-command.mjs'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":21232,"end":21285,"line":526,"end_line":526,"source":"'config/scripts/windows-process-tree-gyp-rebuild.mjs'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":21291,"end":21347,"line":527,"end_line":527,"source":"'config/scripts/windows-process-tree-prepared-addon.mjs'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":21353,"end":21402,"line":528,"end_line":528,"source":"'config/scripts/orcad-windows-prebuild-cache.mjs'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":21408,"end":21455,"line":529,"end_line":529,"source":"'config/scripts/profile-state-worker-smoke.mjs'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":21461,"end":21504,"line":530,"end_line":530,"source":"'config/scripts/vitest-host-ports-setup.ts'"},{"path":"config/scripts/node-server-change-scope.test.mjs","start":21510,"end":21560,"line":531,"end_line":531,"source":"'tests/e2e/daemon-running-work-probe.unit.test.ts'"}]}],"for_of":[{"path":"config/scripts/node-server-change-scope.test.mjs","start":812,"end":835,"line":19,"end_line":19,"source":"temporaryDirs.splice(0)","binding":"const root","changed":false},{"path":"config/scripts/node-server-change-scope.test.mjs","start":1050,"end":1071,"line":27,"end_line":27,"source":"Object.entries(files)","binding":"const [file, source]","changed":false},{"path":"config/scripts/node-server-change-scope.test.mjs","start":4135,"end":4284,"line":101,"end_line":105,"source":"[\n 'src/packages/process-host/package.json',\n 'src/packages/process-host/src/private.ts',\n 'src/packages/byte-buffer/src/byte-buffer.ts'\n ]","binding":"const file","changed":false},{"path":"config/scripts/node-server-change-scope.test.mjs","start":23807,"end":23842,"line":572,"end_line":572,"source":"['linux_glibc_floor', 'linux_musl']","binding":"const jobName","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[{"original_line":537,"title":"retains all selected tests and the selectors the Bun runner uses","decision":"fix","change":"Remove >80 selected-test inventory count; retain nonempty discovery and actual graph membership for every selected test/selector."}],"manual_implementation_notes":[],"evidence":[".github/workflows/node-server-tests.yml","config/scripts/node-server-change-scope.mjs","config/scripts/node-server-qualification.mjs","config/scripts/node-server-test-paths.mjs","config/scripts/orcad-entry-build.mjs","src/shared/node-runtime-pin.ts"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/node-server-concurrency.test.mjs","sha256":"6c2e77b12d24ca0a01881aeb2161809d87a003a069648ebe56dfb2906147b6b6","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":41,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"6c2e77b12d24ca0a01881aeb2161809d87a003a069648ebe56dfb2906147b6b6","cases":[{"line":32,"title":"skips draft detection and rechecks the same draft once it is ready","decision":"keep","reason":"Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","explicit_input_controls":[{"control_id":"41:33:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":33,"source":"context('pull_request', 1)","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":33,"end_line":33,"start":957,"end":971,"source":"'pull_request'","value":{"kind":"string","value":"pull_request"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'pull_request'. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":33,"end_line":33,"start":973,"end":974,"source":"1","value":{"kind":"number","value":1},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 1. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"41:39:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":39,"source":"context('push', 2)","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":39,"end_line":39,"start":1342,"end":1348,"source":"'push'","value":{"kind":"string","value":"push"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'push'. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":39,"end_line":39,"start":1350,"end":1351,"source":"2","value":{"kind":"number","value":2},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 2. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"41:40:for-of:4","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":40,"source":"['schedule', 'workflow_dispatch', 'workflow_call']","rows":[{"path":"config/scripts/node-server-concurrency.test.mjs","line":40,"end_line":40,"start":1389,"end":1399,"source":"'schedule'","value":{"kind":"string","value":"schedule"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'schedule'. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-concurrency.test.mjs","line":40,"end_line":40,"start":1401,"end":1420,"source":"'workflow_dispatch'","value":{"kind":"string","value":"workflow_dispatch"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'workflow_dispatch'. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-concurrency.test.mjs","line":40,"end_line":40,"start":1422,"end":1437,"source":"'workflow_call'","value":{"kind":"string","value":"workflow_call"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'workflow_call'. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"41:41:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":41,"source":"context(event, 2)","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":41,"end_line":41,"start":1503,"end":1508,"source":"event","value":{"kind":"source-expression","source":"event"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: event. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":41,"end_line":41,"start":1510,"end":1511,"source":"2","value":{"kind":"number","value":2},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 2. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":33,"title":"skips draft detection and rechecks the same draft once it is ready","start":929,"end":1610},"implementation_status":"retained"},{"line":45,"title":"lets main pushes finish detection without cancelling another push","decision":"keep","reason":"Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: lets main pushes finish detection without cancelling another push.","explicit_input_controls":[{"control_id":"41:46:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":46,"source":"context('push', 1)","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":46,"end_line":46,"start":1639,"end":1645,"source":"'push'","value":{"kind":"string","value":"push"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'push'. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: lets main pushes finish detection without cancelling another push.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":46,"end_line":46,"start":1647,"end":1648,"source":"1","value":{"kind":"number","value":1},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 1. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: lets main pushes finish detection without cancelling another push.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: lets main pushes finish detection without cancelling another push.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"41:47:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":47,"source":"context('push', 2)","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":47,"end_line":47,"start":1675,"end":1681,"source":"'push'","value":{"kind":"string","value":"push"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'push'. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: lets main pushes finish detection without cancelling another push.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":47,"end_line":47,"start":1683,"end":1684,"source":"2","value":{"kind":"number","value":2},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 2. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: lets main pushes finish detection without cancelling another push.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: lets main pushes finish detection without cancelling another push.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":46,"title":"lets main pushes finish detection without cancelling another push","start":1612,"end":1940},"implementation_status":"retained"},{"line":52,"title":"still replaces superseded pull requests at workflow level","decision":"keep","reason":"Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: still replaces superseded pull requests at workflow level.","explicit_input_controls":[{"control_id":"41:53:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":53,"source":"context('pull_request', 1)","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":53,"end_line":53,"start":1961,"end":1975,"source":"'pull_request'","value":{"kind":"string","value":"pull_request"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'pull_request'. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: still replaces superseded pull requests at workflow level.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":53,"end_line":53,"start":1977,"end":1978,"source":"1","value":{"kind":"number","value":1},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 1. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: still replaces superseded pull requests at workflow level.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: still replaces superseded pull requests at workflow level.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"41:54:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":54,"source":"context('pull_request', 2)","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":54,"end_line":54,"start":2005,"end":2019,"source":"'pull_request'","value":{"kind":"string","value":"pull_request"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'pull_request'. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: still replaces superseded pull requests at workflow level.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":54,"end_line":54,"start":2021,"end":2022,"source":"2","value":{"kind":"number","value":2},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 2. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: still replaces superseded pull requests at workflow level.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: still replaces superseded pull requests at workflow level.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":53,"title":"still replaces superseded pull requests at workflow level","start":1942,"end":2273},"implementation_status":"retained"},{"line":59,"title":"%s only supersedes eligible main qualification, isolating releases and nightly runs","decision":"fix","reason":"Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","explicit_input_controls":[{"control_id":"41:59:parameter-table:10","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":59,"source":"['persistence', 'linux_glibc_floor', 'linux_glibc217_compat', 'linux_musl']","rows":[{"path":"config/scripts/node-server-concurrency.test.mjs","line":59,"end_line":59,"start":2207,"end":2220,"source":"'persistence'","value":{"kind":"string","value":"persistence"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'persistence'. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-concurrency.test.mjs","line":59,"end_line":59,"start":2222,"end":2241,"source":"'linux_glibc_floor'","value":{"kind":"string","value":"linux_glibc_floor"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'linux_glibc_floor'. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-concurrency.test.mjs","line":59,"end_line":59,"start":2243,"end":2266,"source":"'linux_glibc217_compat'","value":{"kind":"string","value":"linux_glibc217_compat"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'linux_glibc217_compat'. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-concurrency.test.mjs","line":59,"end_line":59,"start":2268,"end":2280,"source":"'linux_musl'","value":{"kind":"string","value":"linux_musl"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'linux_musl'. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"41:65:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":65,"source":"context('push', 1)","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":65,"end_line":65,"start":2560,"end":2566,"source":"'push'","value":{"kind":"string","value":"push"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'push'. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":65,"end_line":65,"start":2568,"end":2569,"source":"1","value":{"kind":"number","value":1},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 1. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"41:66:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":66,"source":"context('push', 2)","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":66,"end_line":66,"start":2598,"end":2604,"source":"'push'","value":{"kind":"string","value":"push"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'push'. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":66,"end_line":66,"start":2606,"end":2607,"source":"2","value":{"kind":"number","value":2},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 2. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"41:69:for-of:13","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":69,"source":"[\n ['schedule', {}],\n ['workflow_dispatch', {}],\n ['push', { build_template: true }],\n ['push', { ref: 'refs/tags/v1' }]\n ]","rows":[{"path":"config/scripts/node-server-concurrency.test.mjs","line":70,"end_line":70,"start":2783,"end":2799,"source":"['schedule', {}]","value":{"kind":"array","value":[{"kind":"string","value":"schedule"},{"kind":"object","value":[]}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['schedule', {}]. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-concurrency.test.mjs","line":71,"end_line":71,"start":2807,"end":2832,"source":"['workflow_dispatch', {}]","value":{"kind":"array","value":[{"kind":"string","value":"workflow_dispatch"},{"kind":"object","value":[]}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['workflow_dispatch', {}]. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-concurrency.test.mjs","line":72,"end_line":72,"start":2840,"end":2874,"source":"['push', { build_template: true }]","value":{"kind":"array","value":[{"kind":"string","value":"push"},{"kind":"object","value":[{"key":"build_template","value":{"kind":"boolean","value":true}}]}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['push', { build_template: true }]. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-concurrency.test.mjs","line":73,"end_line":73,"start":2882,"end":2915,"source":"['push', { ref: 'refs/tags/v1' }]","value":{"kind":"array","value":[{"kind":"string","value":"push"},{"kind":"object","value":[{"key":"ref","value":{"kind":"string","value":"refs/tags/v1"}}]}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['push', { ref: 'refs/tags/v1' }]. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"41:75:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":75,"source":"context(event, 2, inputs)","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":75,"end_line":75,"start":2956,"end":2961,"source":"event","value":{"kind":"source-expression","source":"event"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: event. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":75,"end_line":75,"start":2963,"end":2964,"source":"2","value":{"kind":"number","value":2},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 2. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-concurrency.test.mjs","line":75,"end_line":75,"start":2966,"end":2972,"source":"inputs","value":{"kind":"source-expression","source":"inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: inputs. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"41:78:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":78,"source":"context(event, 3, inputs)","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":78,"end_line":78,"start":3189,"end":3194,"source":"event","value":{"kind":"source-expression","source":"event"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: event. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":78,"end_line":78,"start":3196,"end":3197,"source":"3","value":{"kind":"number","value":3},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 3. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-concurrency.test.mjs","line":78,"end_line":78,"start":3199,"end":3205,"source":"inputs","value":{"kind":"source-expression","source":"inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: inputs. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":60,"title":"%s only supersedes eligible main qualification, isolating releases and nightly runs","start":2275,"end":3840},"implementation_status":"implemented"}],"lines":86,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed.","planned_changes":[{"original_line":59,"title":"%s only supersedes eligible main qualification, isolating releases and nightly runs","decision":"fix","change":"Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls."}],"production_evidence":[".github/workflows/node-server-tests.yml"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"41:6:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":6,"end_line":6,"start":164,"end":234,"source":"parse(readFileSync('.github/workflows/node-server-tests.yml', 'utf8'))","input_position":{"path":"config/scripts/node-server-concurrency.test.mjs","line":6,"end_line":6,"start":164,"end":234},"binding":"parse","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed.","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":6,"end_line":6,"start":170,"end":233,"source":"readFileSync('.github/workflows/node-server-tests.yml', 'utf8')","value":{"kind":"call-source","callee":"readFileSync","arguments":[{"kind":"string","value":".github/workflows/node-server-tests.yml"},{"kind":"string","value":"utf8"}],"source":"readFileSync('.github/workflows/node-server-tests.yml', 'utf8')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: readFileSync('.github/workflows/node-server-tests.yml', 'utf8'). Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"842ff62c954744c7974f5f6aaf78200774f7177322ccf13c40c02d9c38ea879d"}},{"id":"41:33:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":33,"end_line":33,"start":949,"end":975,"source":"context('pull_request', 1)","input_position":{"path":"config/scripts/node-server-concurrency.test.mjs","line":33,"end_line":33,"start":949,"end":975},"binding":"context","resolution":[],"enclosing_case":{"line":32,"title":"skips draft detection and rechecks the same draft once it is ready"},"affected_case_lines":[],"decision":"keep","reason":"Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":33,"end_line":33,"start":957,"end":971,"source":"'pull_request'","value":{"kind":"string","value":"pull_request"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'pull_request'. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":33,"end_line":33,"start":973,"end":974,"source":"1","value":{"kind":"number","value":1},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 1. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"842ff62c954744c7974f5f6aaf78200774f7177322ccf13c40c02d9c38ea879d"}},{"id":"41:39:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":39,"end_line":39,"start":1334,"end":1352,"source":"context('push', 2)","input_position":{"path":"config/scripts/node-server-concurrency.test.mjs","line":39,"end_line":39,"start":1334,"end":1352},"binding":"context","resolution":[],"enclosing_case":{"line":32,"title":"skips draft detection and rechecks the same draft once it is ready"},"affected_case_lines":[],"decision":"keep","reason":"Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":39,"end_line":39,"start":1342,"end":1348,"source":"'push'","value":{"kind":"string","value":"push"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'push'. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":39,"end_line":39,"start":1350,"end":1351,"source":"2","value":{"kind":"number","value":2},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 2. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"842ff62c954744c7974f5f6aaf78200774f7177322ccf13c40c02d9c38ea879d"}},{"id":"41:40:for-of:4","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":40,"end_line":42,"start":1368,"end":1530,"source":"['schedule', 'workflow_dispatch', 'workflow_call']","input_position":{"path":"config/scripts/node-server-concurrency.test.mjs","line":40,"end_line":40,"start":1388,"end":1438},"binding":"const event","resolution":[],"enclosing_case":{"line":32,"title":"skips draft detection and rechecks the same draft once it is ready"},"affected_case_lines":[],"decision":"keep","reason":"Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","rows":[{"path":"config/scripts/node-server-concurrency.test.mjs","line":40,"end_line":40,"start":1389,"end":1399,"source":"'schedule'","value":{"kind":"string","value":"schedule"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'schedule'. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-concurrency.test.mjs","line":40,"end_line":40,"start":1401,"end":1420,"source":"'workflow_dispatch'","value":{"kind":"string","value":"workflow_dispatch"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'workflow_dispatch'. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-concurrency.test.mjs","line":40,"end_line":40,"start":1422,"end":1437,"source":"'workflow_call'","value":{"kind":"string","value":"workflow_call"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'workflow_call'. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"842ff62c954744c7974f5f6aaf78200774f7177322ccf13c40c02d9c38ea879d"}},{"id":"41:41:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":41,"end_line":41,"start":1495,"end":1512,"source":"context(event, 2)","input_position":{"path":"config/scripts/node-server-concurrency.test.mjs","line":41,"end_line":41,"start":1495,"end":1512},"binding":"context","resolution":[],"enclosing_case":{"line":32,"title":"skips draft detection and rechecks the same draft once it is ready"},"affected_case_lines":[],"decision":"keep","reason":"Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":41,"end_line":41,"start":1503,"end":1508,"source":"event","value":{"kind":"source-expression","source":"event"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: event. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":41,"end_line":41,"start":1510,"end":1511,"source":"2","value":{"kind":"number","value":2},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 2. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: skips draft detection and rechecks the same draft once it is ready.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"842ff62c954744c7974f5f6aaf78200774f7177322ccf13c40c02d9c38ea879d"}},{"id":"41:46:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":46,"end_line":46,"start":1631,"end":1649,"source":"context('push', 1)","input_position":{"path":"config/scripts/node-server-concurrency.test.mjs","line":46,"end_line":46,"start":1631,"end":1649},"binding":"context","resolution":[],"enclosing_case":{"line":45,"title":"lets main pushes finish detection without cancelling another push"},"affected_case_lines":[],"decision":"keep","reason":"Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: lets main pushes finish detection without cancelling another push.","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":46,"end_line":46,"start":1639,"end":1645,"source":"'push'","value":{"kind":"string","value":"push"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'push'. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: lets main pushes finish detection without cancelling another push.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":46,"end_line":46,"start":1647,"end":1648,"source":"1","value":{"kind":"number","value":1},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 1. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: lets main pushes finish detection without cancelling another push.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"842ff62c954744c7974f5f6aaf78200774f7177322ccf13c40c02d9c38ea879d"}},{"id":"41:47:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":47,"end_line":47,"start":1667,"end":1685,"source":"context('push', 2)","input_position":{"path":"config/scripts/node-server-concurrency.test.mjs","line":47,"end_line":47,"start":1667,"end":1685},"binding":"context","resolution":[],"enclosing_case":{"line":45,"title":"lets main pushes finish detection without cancelling another push"},"affected_case_lines":[],"decision":"keep","reason":"Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: lets main pushes finish detection without cancelling another push.","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":47,"end_line":47,"start":1675,"end":1681,"source":"'push'","value":{"kind":"string","value":"push"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'push'. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: lets main pushes finish detection without cancelling another push.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":47,"end_line":47,"start":1683,"end":1684,"source":"2","value":{"kind":"number","value":2},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 2. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: lets main pushes finish detection without cancelling another push.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"842ff62c954744c7974f5f6aaf78200774f7177322ccf13c40c02d9c38ea879d"}},{"id":"41:53:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":53,"end_line":53,"start":1953,"end":1979,"source":"context('pull_request', 1)","input_position":{"path":"config/scripts/node-server-concurrency.test.mjs","line":53,"end_line":53,"start":1953,"end":1979},"binding":"context","resolution":[],"enclosing_case":{"line":52,"title":"still replaces superseded pull requests at workflow level"},"affected_case_lines":[],"decision":"keep","reason":"Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: still replaces superseded pull requests at workflow level.","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":53,"end_line":53,"start":1961,"end":1975,"source":"'pull_request'","value":{"kind":"string","value":"pull_request"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'pull_request'. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: still replaces superseded pull requests at workflow level.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":53,"end_line":53,"start":1977,"end":1978,"source":"1","value":{"kind":"number","value":1},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 1. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: still replaces superseded pull requests at workflow level.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"842ff62c954744c7974f5f6aaf78200774f7177322ccf13c40c02d9c38ea879d"}},{"id":"41:54:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":54,"end_line":54,"start":1997,"end":2023,"source":"context('pull_request', 2)","input_position":{"path":"config/scripts/node-server-concurrency.test.mjs","line":54,"end_line":54,"start":1997,"end":2023},"binding":"context","resolution":[],"enclosing_case":{"line":52,"title":"still replaces superseded pull requests at workflow level"},"affected_case_lines":[],"decision":"keep","reason":"Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: still replaces superseded pull requests at workflow level.","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":54,"end_line":54,"start":2005,"end":2019,"source":"'pull_request'","value":{"kind":"string","value":"pull_request"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'pull_request'. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: still replaces superseded pull requests at workflow level.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":54,"end_line":54,"start":2021,"end":2022,"source":"2","value":{"kind":"number","value":2},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 2. Actual workflow conditions/concurrency expressions are evaluated against independent push/PR/release/nightly contexts; group equality/inequality and cancellation decisions are observed. Scenario: still replaces superseded pull requests at workflow level.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"842ff62c954744c7974f5f6aaf78200774f7177322ccf13c40c02d9c38ea879d"}},{"id":"41:59:parameter-table:10","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":59,"end_line":85,"start":2198,"end":3367,"source":"['persistence', 'linux_glibc_floor', 'linux_glibc217_compat', 'linux_musl']","input_position":{"path":"config/scripts/node-server-concurrency.test.mjs","line":59,"end_line":59,"start":2206,"end":2281},"binding":"it.each","resolution":[],"enclosing_case":{"line":59,"title":"%s only supersedes eligible main qualification, isolating releases and nightly runs"},"affected_case_lines":[59],"decision":"keep","reason":"Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","rows":[{"path":"config/scripts/node-server-concurrency.test.mjs","line":59,"end_line":59,"start":2207,"end":2220,"source":"'persistence'","value":{"kind":"string","value":"persistence"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'persistence'. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-concurrency.test.mjs","line":59,"end_line":59,"start":2222,"end":2241,"source":"'linux_glibc_floor'","value":{"kind":"string","value":"linux_glibc_floor"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'linux_glibc_floor'. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-concurrency.test.mjs","line":59,"end_line":59,"start":2243,"end":2266,"source":"'linux_glibc217_compat'","value":{"kind":"string","value":"linux_glibc217_compat"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'linux_glibc217_compat'. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-concurrency.test.mjs","line":59,"end_line":59,"start":2268,"end":2280,"source":"'linux_musl'","value":{"kind":"string","value":"linux_musl"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'linux_musl'. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"842ff62c954744c7974f5f6aaf78200774f7177322ccf13c40c02d9c38ea879d"}},{"id":"41:65:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":65,"end_line":65,"start":2552,"end":2570,"source":"context('push', 1)","input_position":{"path":"config/scripts/node-server-concurrency.test.mjs","line":65,"end_line":65,"start":2552,"end":2570},"binding":"context","resolution":[],"enclosing_case":{"line":59,"title":"%s only supersedes eligible main qualification, isolating releases and nightly runs"},"affected_case_lines":[],"decision":"keep","reason":"Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":65,"end_line":65,"start":2560,"end":2566,"source":"'push'","value":{"kind":"string","value":"push"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'push'. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":65,"end_line":65,"start":2568,"end":2569,"source":"1","value":{"kind":"number","value":1},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 1. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"842ff62c954744c7974f5f6aaf78200774f7177322ccf13c40c02d9c38ea879d"}},{"id":"41:66:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":66,"end_line":66,"start":2590,"end":2608,"source":"context('push', 2)","input_position":{"path":"config/scripts/node-server-concurrency.test.mjs","line":66,"end_line":66,"start":2590,"end":2608},"binding":"context","resolution":[],"enclosing_case":{"line":59,"title":"%s only supersedes eligible main qualification, isolating releases and nightly runs"},"affected_case_lines":[],"decision":"keep","reason":"Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":66,"end_line":66,"start":2598,"end":2604,"source":"'push'","value":{"kind":"string","value":"push"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'push'. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":66,"end_line":66,"start":2606,"end":2607,"source":"2","value":{"kind":"number","value":2},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 2. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"842ff62c954744c7974f5f6aaf78200774f7177322ccf13c40c02d9c38ea879d"}},{"id":"41:69:for-of:13","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":69,"end_line":79,"start":2745,"end":3214,"source":"[\n ['schedule', {}],\n ['workflow_dispatch', {}],\n ['push', { build_template: true }],\n ['push', { ref: 'refs/tags/v1' }]\n ]","input_position":{"path":"config/scripts/node-server-concurrency.test.mjs","line":69,"end_line":74,"start":2775,"end":2921},"binding":"const [event, inputs]","resolution":[],"enclosing_case":{"line":59,"title":"%s only supersedes eligible main qualification, isolating releases and nightly runs"},"affected_case_lines":[],"decision":"keep","reason":"Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","rows":[{"path":"config/scripts/node-server-concurrency.test.mjs","line":70,"end_line":70,"start":2783,"end":2799,"source":"['schedule', {}]","value":{"kind":"array","value":[{"kind":"string","value":"schedule"},{"kind":"object","value":[]}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['schedule', {}]. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-concurrency.test.mjs","line":71,"end_line":71,"start":2807,"end":2832,"source":"['workflow_dispatch', {}]","value":{"kind":"array","value":[{"kind":"string","value":"workflow_dispatch"},{"kind":"object","value":[]}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['workflow_dispatch', {}]. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-concurrency.test.mjs","line":72,"end_line":72,"start":2840,"end":2874,"source":"['push', { build_template: true }]","value":{"kind":"array","value":[{"kind":"string","value":"push"},{"kind":"object","value":[{"key":"build_template","value":{"kind":"boolean","value":true}}]}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['push', { build_template: true }]. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-concurrency.test.mjs","line":73,"end_line":73,"start":2882,"end":2915,"source":"['push', { ref: 'refs/tags/v1' }]","value":{"kind":"array","value":[{"kind":"string","value":"push"},{"kind":"object","value":[{"key":"ref","value":{"kind":"string","value":"refs/tags/v1"}}]}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ['push', { ref: 'refs/tags/v1' }]. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"842ff62c954744c7974f5f6aaf78200774f7177322ccf13c40c02d9c38ea879d"}},{"id":"41:75:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":75,"end_line":75,"start":2948,"end":2973,"source":"context(event, 2, inputs)","input_position":{"path":"config/scripts/node-server-concurrency.test.mjs","line":75,"end_line":75,"start":2948,"end":2973},"binding":"context","resolution":[],"enclosing_case":{"line":59,"title":"%s only supersedes eligible main qualification, isolating releases and nightly runs"},"affected_case_lines":[],"decision":"keep","reason":"Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":75,"end_line":75,"start":2956,"end":2961,"source":"event","value":{"kind":"source-expression","source":"event"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: event. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":75,"end_line":75,"start":2963,"end":2964,"source":"2","value":{"kind":"number","value":2},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 2. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-concurrency.test.mjs","line":75,"end_line":75,"start":2966,"end":2972,"source":"inputs","value":{"kind":"source-expression","source":"inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: inputs. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"842ff62c954744c7974f5f6aaf78200774f7177322ccf13c40c02d9c38ea879d"}},{"id":"41:78:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-concurrency.test.mjs","line":78,"end_line":78,"start":3181,"end":3206,"source":"context(event, 3, inputs)","input_position":{"path":"config/scripts/node-server-concurrency.test.mjs","line":78,"end_line":78,"start":3181,"end":3206},"binding":"context","resolution":[],"enclosing_case":{"line":59,"title":"%s only supersedes eligible main qualification, isolating releases and nightly runs"},"affected_case_lines":[],"decision":"keep","reason":"Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","rows":[{"index":1,"path":"config/scripts/node-server-concurrency.test.mjs","line":78,"end_line":78,"start":3189,"end":3194,"source":"event","value":{"kind":"source-expression","source":"event"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: event. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-concurrency.test.mjs","line":78,"end_line":78,"start":3196,"end":3197,"source":"3","value":{"kind":"number","value":3},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 3. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-concurrency.test.mjs","line":78,"end_line":78,"start":3199,"end":3205,"source":"inputs","value":{"kind":"source-expression","source":"inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: inputs. Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"842ff62c954744c7974f5f6aaf78200774f7177322ccf13c40c02d9c38ea879d"}}],"original_review_sha256":"bd0260d435ffe9bd953b86a59637cddc8967e0292471587ed98a9991a4ae2d01","reviewer":"audit_config","reviewed_sha256":"842ff62c954744c7974f5f6aaf78200774f7177322ccf13c40c02d9c38ea879d","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/node-server-concurrency.test.mjs","final_declarations":4,"current_controls":{"path":"config/scripts/node-server-concurrency.test.mjs","each":[{"input":{"path":"config/scripts/node-server-concurrency.test.mjs","start":2283,"end":2358,"line":60,"end_line":60,"source":"['persistence', 'linux_glibc_floor', 'linux_glibc217_compat', 'linux_musl']"},"rows":[{"path":"config/scripts/node-server-concurrency.test.mjs","start":2284,"end":2297,"line":60,"end_line":60,"source":"'persistence'"},{"path":"config/scripts/node-server-concurrency.test.mjs","start":2299,"end":2318,"line":60,"end_line":60,"source":"'linux_glibc_floor'"},{"path":"config/scripts/node-server-concurrency.test.mjs","start":2320,"end":2343,"line":60,"end_line":60,"source":"'linux_glibc217_compat'"},{"path":"config/scripts/node-server-concurrency.test.mjs","start":2345,"end":2357,"line":60,"end_line":60,"source":"'linux_musl'"}]}],"for_of":[{"path":"config/scripts/node-server-concurrency.test.mjs","start":1465,"end":1515,"line":41,"end_line":41,"source":"['schedule', 'workflow_dispatch', 'workflow_call']","binding":"const event","changed":false},{"path":"config/scripts/node-server-concurrency.test.mjs","start":2615,"end":2632,"line":65,"end_line":65,"source":"['true', 'false']","binding":"const shouldRun","changed":true},{"path":"config/scripts/node-server-concurrency.test.mjs","start":3248,"end":3394,"line":82,"end_line":87,"source":"[\n ['schedule', {}],\n ['workflow_dispatch', {}],\n ['push', { build_template: true }],\n ['push', { ref: 'refs/tags/v1' }]\n ]","binding":"const [event, inputs]","changed":false}],"literal_nodes_without_original_source_match":[{"path":"config/scripts/node-server-concurrency.test.mjs","start":2556,"end":2585,"line":64,"end_line":64,"source":"['needs', 'github', 'inputs']","kind":"array"},{"path":"config/scripts/node-server-concurrency.test.mjs","start":2615,"end":2632,"line":65,"end_line":65,"source":"['true', 'false']","kind":"array"},{"path":"config/scripts/node-server-concurrency.test.mjs","start":2654,"end":2906,"line":66,"end_line":74,"source":"{\n ...context('push', 1),\n needs: {\n changes: {\n outputs: { should_run: shouldRun, qualification: 'true', native_compatibility: 'true' }\n },\n mobile_web_bundle: { result: 'success' }\n }\n }","kind":"object"},{"path":"config/scripts/node-server-concurrency.test.mjs","start":2702,"end":2898,"line":68,"end_line":73,"source":"{\n changes: {\n outputs: { should_run: shouldRun, qualification: 'true', native_compatibility: 'true' }\n },\n mobile_web_bundle: { result: 'success' }\n }","kind":"object"},{"path":"config/scripts/node-server-concurrency.test.mjs","start":2723,"end":2836,"line":69,"end_line":71,"source":"{\n outputs: { should_run: shouldRun, qualification: 'true', native_compatibility: 'true' }\n }","kind":"object"},{"path":"config/scripts/node-server-concurrency.test.mjs","start":2746,"end":2824,"line":70,"end_line":70,"source":"{ should_run: shouldRun, qualification: 'true', native_compatibility: 'true' }","kind":"object"},{"path":"config/scripts/node-server-concurrency.test.mjs","start":2867,"end":2888,"line":72,"end_line":72,"source":"{ result: 'success' }","kind":"object"}]},"mutations":[{"name":"eligibility-ignores-should-run","reason":"Inert should_run token must fail should_run=false contexts.","baseline_hashes":{".github/workflows/node-server-tests.yml":"ce215d47f979273576716afb04f06a82975d34ff7c2617a48ecebebfb47256e4"},"test":"config/scripts/node-server-concurrency.test.mjs","pattern":"only supersedes eligible","log":"/tmp/orca-config-0007-mutation-eligibility-ignores-should-run.log","command":["pnpm","test","config/scripts/node-server-concurrency.test.mjs","-t","only supersedes eligible","--maxWorkers=1"],"seconds":2.22,"exit_code":1,"assertion_failure_seen":true,"expected_failure_seen":true,"failed_tests":["4 failed | 3 skipped (7)"],"restored_hashes":{".github/workflows/node-server-tests.yml":"ce215d47f979273576716afb04f06a82975d34ff7c2617a48ecebebfb47256e4"},"restored":true,"log_sha256":"e1da2f1550adbb17d79fc1b917758819a0cc3d28de2898fa2b39bfea0e838857"}]},"implemented_changes":[{"original_line":59,"title":"%s only supersedes eligible main qualification, isolating releases and nightly runs","decision":"fix","change":"Replace the should_run condition substring check with evaluating actual job eligibility for should_run true/false using the existing aggregate-expression compiler; keep all job/concurrency table controls."}],"manual_implementation_notes":[],"evidence":[".github/workflows/node-server-tests.yml"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/node-server-fast-runners.test.mjs","sha256":"4a7fd67a8157d693efe6599252705d2b4914201b17a3066d3a586dca193c4353","declarations":5,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":42,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"4a7fd67a8157d693efe6599252705d2b4914201b17a3066d3a586dca193c4353","cases":[{"line":16,"title":"keeps faster runners opt-in for both reusable and manual qualification","decision":"keep","reason":"Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: keeps faster runners opt-in for both reusable and manual qualification.","explicit_input_controls":[{"control_id":"42:17:for-of:2","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-fast-runners.test.mjs","line":17,"source":"['workflow_call', 'workflow_dispatch']","rows":[{"path":"config/scripts/node-server-fast-runners.test.mjs","line":17,"end_line":17,"start":527,"end":542,"source":"'workflow_call'","value":{"kind":"string","value":"workflow_call"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'workflow_call'. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: keeps faster runners opt-in for both reusable and manual qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":17,"end_line":17,"start":544,"end":563,"source":"'workflow_dispatch'","value":{"kind":"string","value":"workflow_dispatch"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'workflow_dispatch'. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: keeps faster runners opt-in for both reusable and manual qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: keeps faster runners opt-in for both reusable and manual qualification.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":16,"title":"keeps faster runners opt-in for both reusable and manual qualification","start":417,"end":694},"implementation_status":"retained"},{"line":25,"title":"preserves the qualification architecture for %s","decision":"keep","reason":"Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: preserves the qualification architecture for %s.","explicit_input_controls":[{"control_id":"42:25:parameter-table:3","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-fast-runners.test.mjs","line":25,"source":"[\n ['ubuntu-22.04', 'blacksmith-8vcpu-ubuntu-2204'],\n ['ubuntu-24.04-arm', 'blacksmith-8vcpu-ubuntu-2404-arm'],\n ['macos-15', 'blacksmith-6vcpu-macos-15'],\n ['macos-15-intel', 'macos-15-large'],\n ['windows-2022', 'blacksmith-8vcpu-windows-2025'],\n ['windows-11-arm', 'orca-windows-11-arm64-8core']\n]","rows":[{"path":"config/scripts/node-server-fast-runners.test.mjs","line":26,"end_line":26,"start":708,"end":756,"source":"['ubuntu-22.04', 'blacksmith-8vcpu-ubuntu-2204']","value":{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"blacksmith-8vcpu-ubuntu-2204"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['ubuntu-22.04', 'blacksmith-8vcpu-ubuntu-2204']. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: preserves the qualification architecture for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":27,"end_line":27,"start":760,"end":816,"source":"['ubuntu-24.04-arm', 'blacksmith-8vcpu-ubuntu-2404-arm']","value":{"kind":"array","value":[{"kind":"string","value":"ubuntu-24.04-arm"},{"kind":"string","value":"blacksmith-8vcpu-ubuntu-2404-arm"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['ubuntu-24.04-arm', 'blacksmith-8vcpu-ubuntu-2404-arm']. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: preserves the qualification architecture for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":28,"end_line":28,"start":820,"end":861,"source":"['macos-15', 'blacksmith-6vcpu-macos-15']","value":{"kind":"array","value":[{"kind":"string","value":"macos-15"},{"kind":"string","value":"blacksmith-6vcpu-macos-15"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['macos-15', 'blacksmith-6vcpu-macos-15']. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: preserves the qualification architecture for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":29,"end_line":29,"start":865,"end":901,"source":"['macos-15-intel', 'macos-15-large']","value":{"kind":"array","value":[{"kind":"string","value":"macos-15-intel"},{"kind":"string","value":"macos-15-large"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['macos-15-intel', 'macos-15-large']. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: preserves the qualification architecture for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":30,"end_line":30,"start":905,"end":954,"source":"['windows-2022', 'blacksmith-8vcpu-windows-2025']","value":{"kind":"array","value":[{"kind":"string","value":"windows-2022"},{"kind":"string","value":"blacksmith-8vcpu-windows-2025"}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['windows-2022', 'blacksmith-8vcpu-windows-2025']. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: preserves the qualification architecture for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":31,"end_line":31,"start":958,"end":1007,"source":"['windows-11-arm', 'orca-windows-11-arm64-8core']","value":{"kind":"array","value":[{"kind":"string","value":"windows-11-arm"},{"kind":"string","value":"orca-windows-11-arm64-8core"}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['windows-11-arm', 'orca-windows-11-arm64-8core']. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: preserves the qualification architecture for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: preserves the qualification architecture for %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":25,"title":"preserves the qualification architecture for %s","start":696,"end":1298},"implementation_status":"retained"},{"line":38,"title":"retains both Linux architectures and the pinned libc qualification containers","decision":"keep","reason":"Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: retains both Linux architectures and the pinned libc qualification containers.","explicit_input_controls":[{"control_id":"42:39:for-of:4","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-fast-runners.test.mjs","line":39,"source":"['linux_glibc_floor', 'linux_musl']","rows":[{"path":"config/scripts/node-server-fast-runners.test.mjs","line":39,"end_line":39,"start":1414,"end":1433,"source":"'linux_glibc_floor'","value":{"kind":"string","value":"linux_glibc_floor"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'linux_glibc_floor'. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: retains both Linux architectures and the pinned libc qualification containers.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":39,"end_line":39,"start":1435,"end":1447,"source":"'linux_musl'","value":{"kind":"string","value":"linux_musl"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'linux_musl'. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: retains both Linux architectures and the pinned libc qualification containers.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: retains both Linux architectures and the pinned libc qualification containers.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"42:42:for-of:5","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-fast-runners.test.mjs","line":42,"source":"job.strategy.matrix.os","rows":[],"decision":"keep","reason":"Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: retains both Linux architectures and the pinned libc qualification containers.","implementation_rows":[]},{"control_id":"42:51:for-of:6","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-fast-runners.test.mjs","line":51,"source":"floor.strategy.matrix.include","rows":[],"decision":"keep","reason":"Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: retains both Linux architectures and the pinned libc qualification containers.","implementation_rows":[]}],"current_declaration":{"line":38,"title":"retains both Linux architectures and the pinned libc qualification containers","start":1300,"end":2198},"implementation_status":"retained"},{"line":59,"title":"sizes %s for its work without changing default callers","decision":"keep","reason":"Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: sizes %s for its work without changing default callers.","explicit_input_controls":[{"control_id":"42:59:parameter-table:7","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-fast-runners.test.mjs","line":59,"source":"[\n ['changes', 'ubuntu-latest', 'blacksmith-2vcpu-ubuntu-2404'],\n ['mobile_web_bundle', 'ubuntu-latest', 'blacksmith-8vcpu-ubuntu-2404'],\n ['desktop_template', 'ubuntu-latest', 'blacksmith-4vcpu-ubuntu-2404'],\n ['linux_glibc217_compat', 'ubuntu-22.04', 'blacksmith-8vcpu-ubuntu-2204']\n]","rows":[{"path":"config/scripts/node-server-fast-runners.test.mjs","line":60,"end_line":60,"start":2212,"end":2272,"source":"['changes', 'ubuntu-latest', 'blacksmith-2vcpu-ubuntu-2404']","value":{"kind":"array","value":[{"kind":"string","value":"changes"},{"kind":"string","value":"ubuntu-latest"},{"kind":"string","value":"blacksmith-2vcpu-ubuntu-2404"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['changes', 'ubuntu-latest', 'blacksmith-2vcpu-ubuntu-2404']. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: sizes %s for its work without changing default callers.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":61,"end_line":61,"start":2276,"end":2346,"source":"['mobile_web_bundle', 'ubuntu-latest', 'blacksmith-8vcpu-ubuntu-2404']","value":{"kind":"array","value":[{"kind":"string","value":"mobile_web_bundle"},{"kind":"string","value":"ubuntu-latest"},{"kind":"string","value":"blacksmith-8vcpu-ubuntu-2404"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['mobile_web_bundle', 'ubuntu-latest', 'blacksmith-8vcpu-ubuntu-2404']. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: sizes %s for its work without changing default callers.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":62,"end_line":62,"start":2350,"end":2419,"source":"['desktop_template', 'ubuntu-latest', 'blacksmith-4vcpu-ubuntu-2404']","value":{"kind":"array","value":[{"kind":"string","value":"desktop_template"},{"kind":"string","value":"ubuntu-latest"},{"kind":"string","value":"blacksmith-4vcpu-ubuntu-2404"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['desktop_template', 'ubuntu-latest', 'blacksmith-4vcpu-ubuntu-2404']. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: sizes %s for its work without changing default callers.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":63,"end_line":63,"start":2423,"end":2496,"source":"['linux_glibc217_compat', 'ubuntu-22.04', 'blacksmith-8vcpu-ubuntu-2204']","value":{"kind":"array","value":[{"kind":"string","value":"linux_glibc217_compat"},{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"blacksmith-8vcpu-ubuntu-2204"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['linux_glibc217_compat', 'ubuntu-22.04', 'blacksmith-8vcpu-ubuntu-2204']. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: sizes %s for its work without changing default callers.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: sizes %s for its work without changing default callers.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":59,"title":"sizes %s for its work without changing default callers","start":2200,"end":2751},"implementation_status":"retained"},{"line":69,"title":"still builds and uploads cross-compiled Windows template addons on the x64 lane","decision":"fix","reason":"Evaluate each actual upload condition and launcher arches expression for template/non-template x64/arm64 contexts instead of checking that the strings merely contain x64 lane tokens.","explicit_input_controls":[{"control_id":"42:71:for-of:8","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-fast-runners.test.mjs","line":71,"source":"['process-table addons', 'CLI launchers', 'security addons']","rows":[{"path":"config/scripts/node-server-fast-runners.test.mjs","line":71,"end_line":71,"start":2921,"end":2943,"source":"'process-table addons'","value":{"kind":"string","value":"process-table addons"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'process-table addons'. Evaluate each actual upload condition and launcher arches expression for template/non-template x64/arm64 contexts instead of checking that the strings merely contain x64 lane tokens.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":71,"end_line":71,"start":2945,"end":2960,"source":"'CLI launchers'","value":{"kind":"string","value":"CLI launchers"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'CLI launchers'. Evaluate each actual upload condition and launcher arches expression for template/non-template x64/arm64 contexts instead of checking that the strings merely contain x64 lane tokens.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":71,"end_line":71,"start":2962,"end":2979,"source":"'security addons'","value":{"kind":"string","value":"security addons"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'security addons'. Evaluate each actual upload condition and launcher arches expression for template/non-template x64/arm64 contexts instead of checking that the strings merely contain x64 lane tokens.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Evaluate each actual upload condition and launcher arches expression for template/non-template x64/arm64 contexts instead of checking that the strings merely contain x64 lane tokens.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":69,"title":"still builds and uploads cross-compiled Windows template addons on the x64 lane","start":2753,"end":4013},"implementation_status":"implemented"}],"lines":79,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage.","planned_changes":[{"original_line":69,"title":"still builds and uploads cross-compiled Windows template addons on the x64 lane","decision":"fix","change":"Evaluate each actual upload condition and launcher arches expression for template/non-template x64/arm64 contexts instead of checking that the strings merely contain x64 lane tokens."}],"production_evidence":[".github/workflows/node-server-tests.yml"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"42:6:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-fast-runners.test.mjs","line":6,"end_line":6,"start":164,"end":234,"source":"parse(readFileSync('.github/workflows/node-server-tests.yml', 'utf8'))","input_position":{"path":"config/scripts/node-server-fast-runners.test.mjs","line":6,"end_line":6,"start":164,"end":234},"binding":"parse","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage.","rows":[{"index":1,"path":"config/scripts/node-server-fast-runners.test.mjs","line":6,"end_line":6,"start":170,"end":233,"source":"readFileSync('.github/workflows/node-server-tests.yml', 'utf8')","value":{"kind":"call-source","callee":"readFileSync","arguments":[{"kind":"string","value":".github/workflows/node-server-tests.yml"},{"kind":"string","value":"utf8"}],"source":"readFileSync('.github/workflows/node-server-tests.yml', 'utf8')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: readFileSync('.github/workflows/node-server-tests.yml', 'utf8'). Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"a36b60660c42714e03266f22680af13f81bdbfcff1f14a24da62be8df1759047"}},{"id":"42:17:for-of:2","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-fast-runners.test.mjs","line":17,"end_line":22,"start":504,"end":691,"source":"['workflow_call', 'workflow_dispatch']","input_position":{"path":"config/scripts/node-server-fast-runners.test.mjs","line":17,"end_line":17,"start":526,"end":564},"binding":"const trigger","resolution":[],"enclosing_case":{"line":16,"title":"keeps faster runners opt-in for both reusable and manual qualification"},"affected_case_lines":[],"decision":"keep","reason":"Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: keeps faster runners opt-in for both reusable and manual qualification.","rows":[{"path":"config/scripts/node-server-fast-runners.test.mjs","line":17,"end_line":17,"start":527,"end":542,"source":"'workflow_call'","value":{"kind":"string","value":"workflow_call"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'workflow_call'. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: keeps faster runners opt-in for both reusable and manual qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":17,"end_line":17,"start":544,"end":563,"source":"'workflow_dispatch'","value":{"kind":"string","value":"workflow_dispatch"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'workflow_dispatch'. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: keeps faster runners opt-in for both reusable and manual qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"a36b60660c42714e03266f22680af13f81bdbfcff1f14a24da62be8df1759047"}},{"id":"42:25:parameter-table:3","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-fast-runners.test.mjs","line":25,"end_line":36,"start":696,"end":1298,"source":"[\n ['ubuntu-22.04', 'blacksmith-8vcpu-ubuntu-2204'],\n ['ubuntu-24.04-arm', 'blacksmith-8vcpu-ubuntu-2404-arm'],\n ['macos-15', 'blacksmith-6vcpu-macos-15'],\n ['macos-15-intel', 'macos-15-large'],\n ['windows-2022', 'blacksmith-8vcpu-windows-2025'],\n ['windows-11-arm', 'orca-windows-11-arm64-8core']\n]","input_position":{"path":"config/scripts/node-server-fast-runners.test.mjs","line":25,"end_line":32,"start":704,"end":1009},"binding":"it.each","resolution":[],"enclosing_case":{"line":25,"title":"preserves the qualification architecture for %s"},"affected_case_lines":[25],"decision":"keep","reason":"Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: preserves the qualification architecture for %s.","rows":[{"path":"config/scripts/node-server-fast-runners.test.mjs","line":26,"end_line":26,"start":708,"end":756,"source":"['ubuntu-22.04', 'blacksmith-8vcpu-ubuntu-2204']","value":{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"blacksmith-8vcpu-ubuntu-2204"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['ubuntu-22.04', 'blacksmith-8vcpu-ubuntu-2204']. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: preserves the qualification architecture for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":27,"end_line":27,"start":760,"end":816,"source":"['ubuntu-24.04-arm', 'blacksmith-8vcpu-ubuntu-2404-arm']","value":{"kind":"array","value":[{"kind":"string","value":"ubuntu-24.04-arm"},{"kind":"string","value":"blacksmith-8vcpu-ubuntu-2404-arm"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['ubuntu-24.04-arm', 'blacksmith-8vcpu-ubuntu-2404-arm']. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: preserves the qualification architecture for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":28,"end_line":28,"start":820,"end":861,"source":"['macos-15', 'blacksmith-6vcpu-macos-15']","value":{"kind":"array","value":[{"kind":"string","value":"macos-15"},{"kind":"string","value":"blacksmith-6vcpu-macos-15"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['macos-15', 'blacksmith-6vcpu-macos-15']. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: preserves the qualification architecture for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":29,"end_line":29,"start":865,"end":901,"source":"['macos-15-intel', 'macos-15-large']","value":{"kind":"array","value":[{"kind":"string","value":"macos-15-intel"},{"kind":"string","value":"macos-15-large"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['macos-15-intel', 'macos-15-large']. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: preserves the qualification architecture for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":30,"end_line":30,"start":905,"end":954,"source":"['windows-2022', 'blacksmith-8vcpu-windows-2025']","value":{"kind":"array","value":[{"kind":"string","value":"windows-2022"},{"kind":"string","value":"blacksmith-8vcpu-windows-2025"}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['windows-2022', 'blacksmith-8vcpu-windows-2025']. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: preserves the qualification architecture for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":31,"end_line":31,"start":958,"end":1007,"source":"['windows-11-arm', 'orca-windows-11-arm64-8core']","value":{"kind":"array","value":[{"kind":"string","value":"windows-11-arm"},{"kind":"string","value":"orca-windows-11-arm64-8core"}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['windows-11-arm', 'orca-windows-11-arm64-8core']. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: preserves the qualification architecture for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"a36b60660c42714e03266f22680af13f81bdbfcff1f14a24da62be8df1759047"}},{"id":"42:39:for-of:4","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-fast-runners.test.mjs","line":39,"end_line":48,"start":1394,"end":1808,"source":"['linux_glibc_floor', 'linux_musl']","input_position":{"path":"config/scripts/node-server-fast-runners.test.mjs","line":39,"end_line":39,"start":1413,"end":1448},"binding":"const name","resolution":[],"enclosing_case":{"line":38,"title":"retains both Linux architectures and the pinned libc qualification containers"},"affected_case_lines":[],"decision":"keep","reason":"Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: retains both Linux architectures and the pinned libc qualification containers.","rows":[{"path":"config/scripts/node-server-fast-runners.test.mjs","line":39,"end_line":39,"start":1414,"end":1433,"source":"'linux_glibc_floor'","value":{"kind":"string","value":"linux_glibc_floor"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'linux_glibc_floor'. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: retains both Linux architectures and the pinned libc qualification containers.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":39,"end_line":39,"start":1435,"end":1447,"source":"'linux_musl'","value":{"kind":"string","value":"linux_musl"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'linux_musl'. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: retains both Linux architectures and the pinned libc qualification containers.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"a36b60660c42714e03266f22680af13f81bdbfcff1f14a24da62be8df1759047"}},{"id":"42:42:for-of:5","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-fast-runners.test.mjs","line":42,"end_line":47,"start":1573,"end":1804,"source":"job.strategy.matrix.os","input_position":{"path":"config/scripts/node-server-fast-runners.test.mjs","line":42,"end_line":42,"start":1590,"end":1612},"binding":"const os","resolution":[],"dynamic_source":"job.strategy.matrix.os","enclosing_case":{"line":38,"title":"retains both Linux architectures and the pinned libc qualification containers"},"affected_case_lines":[],"decision":"keep","reason":"Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: retains both Linux architectures and the pinned libc qualification containers.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"a36b60660c42714e03266f22680af13f81bdbfcff1f14a24da62be8df1759047"}},{"id":"42:51:for-of:6","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-fast-runners.test.mjs","line":51,"end_line":53,"start":1913,"end":2045,"source":"floor.strategy.matrix.include","input_position":{"path":"config/scripts/node-server-fast-runners.test.mjs","line":51,"end_line":51,"start":1937,"end":1966},"binding":"const { image }","resolution":[],"dynamic_source":"floor.strategy.matrix.include","enclosing_case":{"line":38,"title":"retains both Linux architectures and the pinned libc qualification containers"},"affected_case_lines":[],"decision":"keep","reason":"Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: retains both Linux architectures and the pinned libc qualification containers.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"a36b60660c42714e03266f22680af13f81bdbfcff1f14a24da62be8df1759047"}},{"id":"42:59:parameter-table:7","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-fast-runners.test.mjs","line":59,"end_line":67,"start":2200,"end":2751,"source":"[\n ['changes', 'ubuntu-latest', 'blacksmith-2vcpu-ubuntu-2404'],\n ['mobile_web_bundle', 'ubuntu-latest', 'blacksmith-8vcpu-ubuntu-2404'],\n ['desktop_template', 'ubuntu-latest', 'blacksmith-4vcpu-ubuntu-2404'],\n ['linux_glibc217_compat', 'ubuntu-22.04', 'blacksmith-8vcpu-ubuntu-2204']\n]","input_position":{"path":"config/scripts/node-server-fast-runners.test.mjs","line":59,"end_line":64,"start":2208,"end":2498},"binding":"it.each","resolution":[],"enclosing_case":{"line":59,"title":"sizes %s for its work without changing default callers"},"affected_case_lines":[59],"decision":"keep","reason":"Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: sizes %s for its work without changing default callers.","rows":[{"path":"config/scripts/node-server-fast-runners.test.mjs","line":60,"end_line":60,"start":2212,"end":2272,"source":"['changes', 'ubuntu-latest', 'blacksmith-2vcpu-ubuntu-2404']","value":{"kind":"array","value":[{"kind":"string","value":"changes"},{"kind":"string","value":"ubuntu-latest"},{"kind":"string","value":"blacksmith-2vcpu-ubuntu-2404"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['changes', 'ubuntu-latest', 'blacksmith-2vcpu-ubuntu-2404']. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: sizes %s for its work without changing default callers.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":61,"end_line":61,"start":2276,"end":2346,"source":"['mobile_web_bundle', 'ubuntu-latest', 'blacksmith-8vcpu-ubuntu-2404']","value":{"kind":"array","value":[{"kind":"string","value":"mobile_web_bundle"},{"kind":"string","value":"ubuntu-latest"},{"kind":"string","value":"blacksmith-8vcpu-ubuntu-2404"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['mobile_web_bundle', 'ubuntu-latest', 'blacksmith-8vcpu-ubuntu-2404']. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: sizes %s for its work without changing default callers.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":62,"end_line":62,"start":2350,"end":2419,"source":"['desktop_template', 'ubuntu-latest', 'blacksmith-4vcpu-ubuntu-2404']","value":{"kind":"array","value":[{"kind":"string","value":"desktop_template"},{"kind":"string","value":"ubuntu-latest"},{"kind":"string","value":"blacksmith-4vcpu-ubuntu-2404"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['desktop_template', 'ubuntu-latest', 'blacksmith-4vcpu-ubuntu-2404']. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: sizes %s for its work without changing default callers.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":63,"end_line":63,"start":2423,"end":2496,"source":"['linux_glibc217_compat', 'ubuntu-22.04', 'blacksmith-8vcpu-ubuntu-2204']","value":{"kind":"array","value":[{"kind":"string","value":"linux_glibc217_compat"},{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"blacksmith-8vcpu-ubuntu-2204"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['linux_glibc217_compat', 'ubuntu-22.04', 'blacksmith-8vcpu-ubuntu-2204']. Actual parsed workflow runner expressions are evaluated for explicit OS, architecture and opt-in contexts; independently expected hosted/fast runner choices preserve platform coverage. Scenario: sizes %s for its work without changing default callers.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"a36b60660c42714e03266f22680af13f81bdbfcff1f14a24da62be8df1759047"}},{"id":"42:71:for-of:8","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-fast-runners.test.mjs","line":71,"end_line":74,"start":2897,"end":3143,"source":"['process-table addons', 'CLI launchers', 'security addons']","input_position":{"path":"config/scripts/node-server-fast-runners.test.mjs","line":71,"end_line":71,"start":2920,"end":2980},"binding":"const fragment","resolution":[],"enclosing_case":{"line":69,"title":"still builds and uploads cross-compiled Windows template addons on the x64 lane"},"affected_case_lines":[],"decision":"keep","reason":"Evaluate each actual upload condition and launcher arches expression for template/non-template x64/arm64 contexts instead of checking that the strings merely contain x64 lane tokens.","rows":[{"path":"config/scripts/node-server-fast-runners.test.mjs","line":71,"end_line":71,"start":2921,"end":2943,"source":"'process-table addons'","value":{"kind":"string","value":"process-table addons"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'process-table addons'. Evaluate each actual upload condition and launcher arches expression for template/non-template x64/arm64 contexts instead of checking that the strings merely contain x64 lane tokens.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":71,"end_line":71,"start":2945,"end":2960,"source":"'CLI launchers'","value":{"kind":"string","value":"CLI launchers"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'CLI launchers'. Evaluate each actual upload condition and launcher arches expression for template/non-template x64/arm64 contexts instead of checking that the strings merely contain x64 lane tokens.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-fast-runners.test.mjs","line":71,"end_line":71,"start":2962,"end":2979,"source":"'security addons'","value":{"kind":"string","value":"security addons"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'security addons'. Evaluate each actual upload condition and launcher arches expression for template/non-template x64/arm64 contexts instead of checking that the strings merely contain x64 lane tokens.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"a36b60660c42714e03266f22680af13f81bdbfcff1f14a24da62be8df1759047"}}],"original_review_sha256":"36e55045c19ca7785601ae1c8d272b245bde5e63a9a975579267b2143a380e37","reviewer":"audit_config","reviewed_sha256":"a36b60660c42714e03266f22680af13f81bdbfcff1f14a24da62be8df1759047","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/node-server-fast-runners.test.mjs","final_declarations":5,"current_controls":{"path":"config/scripts/node-server-fast-runners.test.mjs","each":[{"input":{"path":"config/scripts/node-server-fast-runners.test.mjs","start":704,"end":1009,"line":25,"end_line":32,"source":"[\n ['ubuntu-22.04', 'blacksmith-8vcpu-ubuntu-2204'],\n ['ubuntu-24.04-arm', 'blacksmith-8vcpu-ubuntu-2404-arm'],\n ['macos-15', 'blacksmith-6vcpu-macos-15'],\n ['macos-15-intel', 'macos-15-large'],\n ['windows-2022', 'blacksmith-8vcpu-windows-2025'],\n ['windows-11-arm', 'orca-windows-11-arm64-8core']\n]"},"rows":[{"path":"config/scripts/node-server-fast-runners.test.mjs","start":708,"end":756,"line":26,"end_line":26,"source":"['ubuntu-22.04', 'blacksmith-8vcpu-ubuntu-2204']"},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":760,"end":816,"line":27,"end_line":27,"source":"['ubuntu-24.04-arm', 'blacksmith-8vcpu-ubuntu-2404-arm']"},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":820,"end":861,"line":28,"end_line":28,"source":"['macos-15', 'blacksmith-6vcpu-macos-15']"},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":865,"end":901,"line":29,"end_line":29,"source":"['macos-15-intel', 'macos-15-large']"},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":905,"end":954,"line":30,"end_line":30,"source":"['windows-2022', 'blacksmith-8vcpu-windows-2025']"},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":958,"end":1007,"line":31,"end_line":31,"source":"['windows-11-arm', 'orca-windows-11-arm64-8core']"}]},{"input":{"path":"config/scripts/node-server-fast-runners.test.mjs","start":2208,"end":2498,"line":59,"end_line":64,"source":"[\n ['changes', 'ubuntu-latest', 'blacksmith-2vcpu-ubuntu-2404'],\n ['mobile_web_bundle', 'ubuntu-latest', 'blacksmith-8vcpu-ubuntu-2404'],\n ['desktop_template', 'ubuntu-latest', 'blacksmith-4vcpu-ubuntu-2404'],\n ['linux_glibc217_compat', 'ubuntu-22.04', 'blacksmith-8vcpu-ubuntu-2204']\n]"},"rows":[{"path":"config/scripts/node-server-fast-runners.test.mjs","start":2212,"end":2272,"line":60,"end_line":60,"source":"['changes', 'ubuntu-latest', 'blacksmith-2vcpu-ubuntu-2404']"},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":2276,"end":2346,"line":61,"end_line":61,"source":"['mobile_web_bundle', 'ubuntu-latest', 'blacksmith-8vcpu-ubuntu-2404']"},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":2350,"end":2419,"line":62,"end_line":62,"source":"['desktop_template', 'ubuntu-latest', 'blacksmith-4vcpu-ubuntu-2404']"},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":2423,"end":2496,"line":63,"end_line":63,"source":"['linux_glibc217_compat', 'ubuntu-22.04', 'blacksmith-8vcpu-ubuntu-2204']"}]}],"for_of":[{"path":"config/scripts/node-server-fast-runners.test.mjs","start":526,"end":564,"line":17,"end_line":17,"source":"['workflow_call', 'workflow_dispatch']","binding":"const trigger","changed":false},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":1413,"end":1448,"line":39,"end_line":39,"source":"['linux_glibc_floor', 'linux_musl']","binding":"const name","changed":false},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":1590,"end":1612,"line":42,"end_line":42,"source":"job.strategy.matrix.os","binding":"const os","changed":false},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":1937,"end":1966,"line":51,"end_line":51,"source":"floor.strategy.matrix.include","binding":"const { image }","changed":false},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":3062,"end":3281,"line":72,"end_line":77,"source":"[\n ['windows-2022', 'X64', true, 'x64 arm64', true],\n ['windows-2022', 'X64', false, 'x64', false],\n ['windows-11-arm', 'ARM64', true, 'arm64', false],\n ['windows-11-arm', 'ARM64', false, 'arm64', false]\n ]","binding":"const [os, arch, buildTemplate, expectedArches, expectedUpload]","changed":true},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":3322,"end":3335,"line":78,"end_line":78,"source":"[true, false]","binding":"const hasSecurityBuilder","changed":true},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":3573,"end":3633,"line":85,"end_line":85,"source":"['process-table addons', 'CLI launchers', 'security addons']","binding":"const fragment","changed":false}],"literal_nodes_without_original_source_match":[{"path":"config/scripts/node-server-fast-runners.test.mjs","start":3062,"end":3281,"line":72,"end_line":77,"source":"[\n ['windows-2022', 'X64', true, 'x64 arm64', true],\n ['windows-2022', 'X64', false, 'x64', false],\n ['windows-11-arm', 'ARM64', true, 'arm64', false],\n ['windows-11-arm', 'ARM64', false, 'arm64', false]\n ]","kind":"array"},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":3068,"end":3116,"line":73,"end_line":73,"source":"['windows-2022', 'X64', true, 'x64 arm64', true]","kind":"array"},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":3122,"end":3166,"line":74,"end_line":74,"source":"['windows-2022', 'X64', false, 'x64', false]","kind":"array"},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":3172,"end":3221,"line":75,"end_line":75,"source":"['windows-11-arm', 'ARM64', true, 'arm64', false]","kind":"array"},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":3227,"end":3277,"line":76,"end_line":76,"source":"['windows-11-arm', 'ARM64', false, 'arm64', false]","kind":"array"},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":3322,"end":3335,"line":78,"end_line":78,"source":"[true, false]","kind":"array"},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":3357,"end":3543,"line":79,"end_line":84,"source":"{\n inputs: { build_template: buildTemplate },\n matrix: { os },\n runner: { arch },\n hashFiles: () => (hasSecurityBuilder ? 'fixture-builder-hash' : '')\n }","kind":"object"},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":3375,"end":3408,"line":80,"end_line":80,"source":"{ build_template: buildTemplate }","kind":"object"},{"path":"config/scripts/node-server-fast-runners.test.mjs","start":3450,"end":3458,"line":82,"end_line":82,"source":"{ arch }","kind":"object"}]},"mutations":[{"name":"upload-token-in-inert-condition","reason":"An inert Windows lane token must fail the template upload positive context.","baseline_hashes":{".github/workflows/node-server-tests.yml":"ce215d47f979273576716afb04f06a82975d34ff7c2617a48ecebebfb47256e4"},"test":"config/scripts/node-server-fast-runners.test.mjs","pattern":"still builds and uploads","log":"/tmp/orca-config-0007-mutation-upload-token-in-inert-condition.log","command":["pnpm","test","config/scripts/node-server-fast-runners.test.mjs","-t","still builds and uploads","--maxWorkers=1"],"seconds":2.47,"exit_code":1,"assertion_failure_seen":true,"expected_failure_seen":true,"failed_tests":["1 failed | 12 skipped (13)"],"restored_hashes":{".github/workflows/node-server-tests.yml":"ce215d47f979273576716afb04f06a82975d34ff7c2617a48ecebebfb47256e4"},"restored":true,"log_sha256":"121eaf44ae0a251b41eea14771169f4ac666c10351cb120faad11577963c9040"},{"name":"security-upload-without-builder","reason":"Missing builder context must reject an upload without hashFiles gate.","baseline_hashes":{".github/workflows/node-server-tests.yml":"ce215d47f979273576716afb04f06a82975d34ff7c2617a48ecebebfb47256e4"},"test":"config/scripts/node-server-fast-runners.test.mjs","pattern":"still builds and uploads","log":"/tmp/orca-config-0007-mutation-security-upload-without-builder.log","command":["pnpm","test","config/scripts/node-server-fast-runners.test.mjs","-t","still builds and uploads","--maxWorkers=1"],"seconds":2.67,"exit_code":1,"assertion_failure_seen":true,"expected_failure_seen":true,"failed_tests":["1 failed | 12 skipped (13)"],"restored_hashes":{".github/workflows/node-server-tests.yml":"ce215d47f979273576716afb04f06a82975d34ff7c2617a48ecebebfb47256e4"},"restored":true,"log_sha256":"4720d229d6c08e61e0252053d689ddb78fa11d4aa43269c741bb75b30a495054"}]},"implemented_changes":[{"original_line":69,"title":"still builds and uploads cross-compiled Windows template addons on the x64 lane","decision":"fix","change":"Evaluate each actual upload condition and launcher arches expression for template/non-template x64/arm64 contexts instead of checking that the strings merely contain x64 lane tokens."}],"manual_implementation_notes":[],"evidence":[".github/workflows/node-server-tests.yml"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/node-server-native-compat-scope.test.mjs","sha256":"c886f3c8a89a335b8f6d4a5afe46c3093d92c739ce6b040002c0a466687491a3","declarations":17,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":43,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"c886f3c8a89a335b8f6d4a5afe46c3093d92c739ce6b040002c0a466687491a3","cases":[{"line":39,"title":"reconciles complete no-rename status evidence including additions and deletions","decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: reconciles complete no-rename status evidence including additions and deletions.","explicit_input_controls":[{"control_id":"43:40:fixture-or-oracle-declaration:3","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":40,"source":"[\n ['M', root],\n ['A', 'src/shared/new.spec.ts'],\n ['D', 'src/shared/old.test.ts']\n ]","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":41,"end_line":41,"start":1756,"end":1767,"source":"['M', root]","value":{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['M', root]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: reconciles complete no-rename status evidence including additions and deletions.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":42,"end_line":42,"start":1773,"end":1804,"source":"['A', 'src/shared/new.spec.ts']","value":{"kind":"array","value":[{"kind":"string","value":"A"},{"kind":"string","value":"src/shared/new.spec.ts"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['A', 'src/shared/new.spec.ts']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: reconciles complete no-rename status evidence including additions and deletions.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":43,"end_line":43,"start":1810,"end":1841,"source":"['D', 'src/shared/old.test.ts']","value":{"kind":"array","value":[{"kind":"string","value":"D"},{"kind":"string","value":"src/shared/old.test.ts"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['D', 'src/shared/old.test.ts']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: reconciles complete no-rename status evidence including additions and deletions.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: reconciles complete no-rename status evidence including additions and deletions.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:45:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":45,"source":"readNativeCompatDiff(filesOf(entries), rawDiff(entries))","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":45,"end_line":45,"start":1876,"end":1892,"source":"filesOf(entries)","value":{"kind":"call-source","callee":"filesOf","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":40,"end_line":44,"start":1750,"end":1845},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"A"},{"kind":"string","value":"src/shared/new.spec.ts"}]},{"kind":"array","value":[{"kind":"string","value":"D"},{"kind":"string","value":"src/shared/old.test.ts"}]}]}}],"source":"filesOf(entries)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: filesOf(entries). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: reconciles complete no-rename status evidence including additions and deletions.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":45,"end_line":45,"start":1894,"end":1910,"source":"rawDiff(entries)","value":{"kind":"call-source","callee":"rawDiff","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":40,"end_line":44,"start":1750,"end":1845},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"A"},{"kind":"string","value":"src/shared/new.spec.ts"}]},{"kind":"array","value":[{"kind":"string","value":"D"},{"kind":"string","value":"src/shared/old.test.ts"}]}]}}],"source":"rawDiff(entries)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: rawDiff(entries). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: reconciles complete no-rename status evidence including additions and deletions.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: reconciles complete no-rename status evidence including additions and deletions.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:45:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":45,"source":"rawDiff(entries)","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":45,"end_line":45,"start":1902,"end":1909,"source":"entries","value":{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":40,"end_line":44,"start":1750,"end":1845},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"A"},{"kind":"string","value":"src/shared/new.spec.ts"}]},{"kind":"array","value":[{"kind":"string","value":"D"},{"kind":"string","value":"src/shared/old.test.ts"}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: entries. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: reconciles complete no-rename status evidence including additions and deletions.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: reconciles complete no-rename status evidence including additions and deletions.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":39,"title":"reconciles complete no-rename status evidence including additions and deletions","start":1638,"end":1984},"implementation_status":"retained"},{"line":50,"title":"requires native qualification for incomplete or malformed diff evidence: %j","decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","explicit_input_controls":[{"control_id":"43:50:parameter-table:6","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":50,"source":"[\n [[], ''],\n [[root], undefined],\n [[root], rawDiff([['M', root]]).slice(0, -1)],\n [[root], `${rawDiff([['M', root]])}trailing\\0`],\n [\n [root],\n rawDiff([\n ['M', root],\n ['M', root]\n ])\n ],\n [\n [root, root],\n rawDiff([\n ['M', root],\n ['M', root]\n ])\n ],\n [\n [root, 'src/shared/other.test.ts'],\n rawDiff([\n ['M', root],\n ['M', root]\n ])\n ],\n [[root], rawDiff([['M', 'src/shared/foreign.test.ts']])],\n [[root], rawDiff([['R100', root]])],\n [[root], rawDiff([['T', root]])],\n ...[\n 'src/../outside.test.ts',\n 'src/./outside.test.ts',\n 'src//outside.test.ts',\n '/src/outside.test.ts',\n 'src\\\\outside.test.ts',\n 'src/C:/outside.test.ts'\n ].map((file) => [[file], rawDiff([['M', file]])])\n]","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":51,"end_line":51,"start":1998,"end":2006,"source":"[[], '']","value":{"kind":"array","value":[{"kind":"array","value":[]},{"kind":"string","value":""}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [[], '']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":52,"end_line":52,"start":2010,"end":2029,"source":"[[root], undefined]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"source-expression","source":"undefined"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [[root], undefined]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":53,"end_line":53,"start":2033,"end":2078,"source":"[[root], rawDiff([['M', root]]).slice(0, -1)]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"call-source","callee":"rawDiff([['M', root]]).slice","arguments":[{"kind":"number","value":0},{"kind":"source-expression","source":"-1"}],"source":"rawDiff([['M', root]]).slice(0, -1)"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [[root], rawDiff([['M', root]]).slice(0, -1)]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":54,"end_line":54,"start":2082,"end":2129,"source":"[[root], `${rawDiff([['M', root]])}trailing\\0`]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"source-expression","source":"`${rawDiff([['M', root]])}trailing\\0`"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [[root], `${rawDiff([['M', root]])}trailing\\0`]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":55,"end_line":61,"start":2133,"end":2208,"source":"[\n [root],\n rawDiff([\n ['M', root],\n ['M', root]\n ])\n ]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"call-source","callee":"rawDiff","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]}],"source":"rawDiff([\n ['M', root],\n ['M', root]\n ])"}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ [root], rawDiff([ ['M', root], ['M', root] ]) ]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":62,"end_line":68,"start":2212,"end":2293,"source":"[\n [root, root],\n rawDiff([\n ['M', root],\n ['M', root]\n ])\n ]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"call-source","callee":"rawDiff","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]}],"source":"rawDiff([\n ['M', root],\n ['M', root]\n ])"}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ [root, root], rawDiff([ ['M', root], ['M', root] ]) ]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":69,"end_line":75,"start":2297,"end":2400,"source":"[\n [root, 'src/shared/other.test.ts'],\n rawDiff([\n ['M', root],\n ['M', root]\n ])\n ]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}},{"kind":"string","value":"src/shared/other.test.ts"}]},{"kind":"call-source","callee":"rawDiff","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]}],"source":"rawDiff([\n ['M', root],\n ['M', root]\n ])"}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ [root, 'src/shared/other.test.ts'], rawDiff([ ['M', root], ['M', root] ]) ]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":76,"end_line":76,"start":2404,"end":2460,"source":"[[root], rawDiff([['M', 'src/shared/foreign.test.ts']])]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"call-source","callee":"rawDiff","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"string","value":"src/shared/foreign.test.ts"}]}]}],"source":"rawDiff([['M', 'src/shared/foreign.test.ts']])"}]},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [[root], rawDiff([['M', 'src/shared/foreign.test.ts']])]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":77,"end_line":77,"start":2464,"end":2499,"source":"[[root], rawDiff([['R100', root]])]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"call-source","callee":"rawDiff","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"R100"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]}],"source":"rawDiff([['R100', root]])"}]},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [[root], rawDiff([['R100', root]])]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":78,"end_line":78,"start":2503,"end":2535,"source":"[[root], rawDiff([['T', root]])]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"call-source","callee":"rawDiff","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"T"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]}],"source":"rawDiff([['T', root]])"}]},"index":10,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [[root], rawDiff([['T', root]])]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":80,"end_line":80,"start":2548,"end":2572,"source":"'src/../outside.test.ts'","value":{"kind":"string","value":"src/../outside.test.ts"},"index":11,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/../outside.test.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":81,"end_line":81,"start":2578,"end":2601,"source":"'src/./outside.test.ts'","value":{"kind":"string","value":"src/./outside.test.ts"},"index":12,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/./outside.test.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":82,"end_line":82,"start":2607,"end":2629,"source":"'src//outside.test.ts'","value":{"kind":"string","value":"src//outside.test.ts"},"index":13,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src//outside.test.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":83,"end_line":83,"start":2635,"end":2657,"source":"'/src/outside.test.ts'","value":{"kind":"string","value":"/src/outside.test.ts"},"index":14,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '/src/outside.test.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":84,"end_line":84,"start":2663,"end":2685,"source":"'src\\\\outside.test.ts'","value":{"kind":"string","value":"src\\outside.test.ts"},"index":15,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src\\\\outside.test.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":85,"end_line":85,"start":2691,"end":2715,"source":"'src/C:/outside.test.ts'","value":{"kind":"string","value":"src/C:/outside.test.ts"},"index":16,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/C:/outside.test.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":11,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":12,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":13,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":14,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":15,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":16,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:53:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":53,"source":"rawDiff([['M', root]])","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":53,"end_line":53,"start":2050,"end":2063,"source":"[['M', root]]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [['M', root]]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:54:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":54,"source":"rawDiff([['M', root]])","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":54,"end_line":54,"start":2102,"end":2115,"source":"[['M', root]]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [['M', root]]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:57:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":57,"source":"rawDiff([\n ['M', root],\n ['M', root]\n ])","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":57,"end_line":60,"start":2159,"end":2203,"source":"[\n ['M', root],\n ['M', root]\n ]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ ['M', root], ['M', root] ]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:64:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":64,"source":"rawDiff([\n ['M', root],\n ['M', root]\n ])","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":64,"end_line":67,"start":2244,"end":2288,"source":"[\n ['M', root],\n ['M', root]\n ]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ ['M', root], ['M', root] ]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:71:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":71,"source":"rawDiff([\n ['M', root],\n ['M', root]\n ])","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":71,"end_line":74,"start":2351,"end":2395,"source":"[\n ['M', root],\n ['M', root]\n ]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ ['M', root], ['M', root] ]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:76:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":76,"source":"rawDiff([['M', 'src/shared/foreign.test.ts']])","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":76,"end_line":76,"start":2421,"end":2458,"source":"[['M', 'src/shared/foreign.test.ts']]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"string","value":"src/shared/foreign.test.ts"}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [['M', 'src/shared/foreign.test.ts']]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:77:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":77,"source":"rawDiff([['R100', root]])","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":77,"end_line":77,"start":2481,"end":2497,"source":"[['R100', root]]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"R100"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [['R100', root]]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:78:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":78,"source":"rawDiff([['T', root]])","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":78,"end_line":78,"start":2520,"end":2533,"source":"[['T', root]]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"T"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [['T', root]]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:86:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":86,"source":"rawDiff([['M', file]])","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":86,"end_line":86,"start":2751,"end":2764,"source":"[['M', file]]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [['M', file]]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:91:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":91,"source":"classifyNativeCompatChanges(files, collect, {\n pullRequest: true,\n rawDiff: raw\n })","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":91,"end_line":91,"start":2972,"end":2977,"source":"files","value":{"kind":"reference","source":"files","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":256,"end_line":256,"start":8741,"end":8757},"resolved":{"kind":"call-source","callee":"filesOf","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":254,"end_line":254,"start":8675,"end":8688},"resolved":{"kind":"source-expression","source":"cleanup.paths"}}],"source":"filesOf(entries)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: files. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":91,"end_line":91,"start":2979,"end":2986,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":90,"end_line":90,"start":2899,"end":2918},"resolved":{"kind":"call-source","callee":"vi.fn","arguments":[{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}}],"source":"vi.fn(nativeInputs)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":91,"end_line":94,"start":2988,"end":3039,"source":"{\n pullRequest: true,\n rawDiff: raw\n }","value":{"kind":"object","value":[{"key":"pullRequest","value":{"kind":"boolean","value":true}},{"key":"rawDiff","value":{"kind":"reference","source":"raw","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":110,"end_line":110,"start":3497,"end":3553},"resolved":{"kind":"source-expression","source":"`${rawHeader(status, beforeMode, afterMode)}\\0${root}\\0`"}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { pullRequest: true, rawDiff: raw }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":50,"title":"requires native qualification for incomplete or malformed diff evidence: %j","start":1986,"end":3139},"implementation_status":"retained"},{"line":100,"title":"rejects nonordinary or inconsistent modes: %s %s %s","decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","explicit_input_controls":[{"control_id":"43:100:parameter-table:17","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":100,"source":"[\n ['120000', '120000', 'M'],\n ['000000', '120000', 'A'],\n ['120000', '000000', 'D'],\n ['160000', '160000', 'M'],\n ['100644', '120000', 'T'],\n ['100644', '100644', 'A'],\n ['000000', '000000', 'D'],\n ['100644', '000000', 'M']\n]","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":101,"end_line":101,"start":3153,"end":3178,"source":"['120000', '120000', 'M']","value":{"kind":"array","value":[{"kind":"string","value":"120000"},{"kind":"string","value":"120000"},{"kind":"string","value":"M"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['120000', '120000', 'M']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":102,"end_line":102,"start":3182,"end":3207,"source":"['000000', '120000', 'A']","value":{"kind":"array","value":[{"kind":"string","value":"000000"},{"kind":"string","value":"120000"},{"kind":"string","value":"A"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['000000', '120000', 'A']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":103,"end_line":103,"start":3211,"end":3236,"source":"['120000', '000000', 'D']","value":{"kind":"array","value":[{"kind":"string","value":"120000"},{"kind":"string","value":"000000"},{"kind":"string","value":"D"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['120000', '000000', 'D']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":104,"end_line":104,"start":3240,"end":3265,"source":"['160000', '160000', 'M']","value":{"kind":"array","value":[{"kind":"string","value":"160000"},{"kind":"string","value":"160000"},{"kind":"string","value":"M"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['160000', '160000', 'M']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":105,"end_line":105,"start":3269,"end":3294,"source":"['100644', '120000', 'T']","value":{"kind":"array","value":[{"kind":"string","value":"100644"},{"kind":"string","value":"120000"},{"kind":"string","value":"T"}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['100644', '120000', 'T']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":106,"end_line":106,"start":3298,"end":3323,"source":"['100644', '100644', 'A']","value":{"kind":"array","value":[{"kind":"string","value":"100644"},{"kind":"string","value":"100644"},{"kind":"string","value":"A"}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['100644', '100644', 'A']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":107,"end_line":107,"start":3327,"end":3352,"source":"['000000', '000000', 'D']","value":{"kind":"array","value":[{"kind":"string","value":"000000"},{"kind":"string","value":"000000"},{"kind":"string","value":"D"}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['000000', '000000', 'D']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":108,"end_line":108,"start":3356,"end":3381,"source":"['100644', '000000', 'M']","value":{"kind":"array","value":[{"kind":"string","value":"100644"},{"kind":"string","value":"000000"},{"kind":"string","value":"M"}]},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['100644', '000000', 'M']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:112:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":112,"source":"classifyNativeCompatChanges([root], collect, {\n pullRequest: true,\n rawDiff: raw\n })","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":112,"end_line":112,"start":3643,"end":3649,"source":"[root]","value":{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [root]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":112,"end_line":112,"start":3651,"end":3658,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":111,"end_line":111,"start":3572,"end":3591},"resolved":{"kind":"call-source","callee":"vi.fn","arguments":[{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}}],"source":"vi.fn(nativeInputs)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":112,"end_line":115,"start":3660,"end":3705,"source":"{\n pullRequest: true,\n rawDiff: raw\n }","value":{"kind":"object","value":[{"key":"pullRequest","value":{"kind":"boolean","value":true}},{"key":"rawDiff","value":{"kind":"reference","source":"raw","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":110,"end_line":110,"start":3497,"end":3553},"resolved":{"kind":"source-expression","source":"`${rawHeader(status, beforeMode, afterMode)}\\0${root}\\0`"}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { pullRequest: true, rawDiff: raw }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":100,"title":"rejects nonordinary or inconsistent modes: %s %s %s","start":3141,"end":3798},"implementation_status":"retained"},{"line":120,"title":"checks the native closure before skipping a selected server test","decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","explicit_input_controls":[{"control_id":"43:121:fixture-or-oracle-declaration:19","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":121,"source":"[['M', root]]","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":121,"end_line":121,"start":3904,"end":3915,"source":"['M', root]","value":{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['M', root]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:123:inline-api-or-fixture-input:20","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":123,"source":"optionsFor(entries)","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":123,"end_line":123,"start":3984,"end":3991,"source":"entries","value":{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":121,"end_line":121,"start":3903,"end":3916},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: entries. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:124:inline-api-or-fixture-input:21","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":124,"source":"classifyNativeCompatChanges([root], collect, {\n ...options,\n deferGraph: true\n })","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":124,"end_line":124,"start":4046,"end":4052,"source":"[root]","value":{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [root]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":124,"end_line":124,"start":4054,"end":4061,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":122,"end_line":122,"start":3935,"end":3954},"resolved":{"kind":"call-source","callee":"vi.fn","arguments":[{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}}],"source":"vi.fn(nativeInputs)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":124,"end_line":127,"start":4063,"end":4105,"source":"{\n ...options,\n deferGraph: true\n }","value":{"kind":"object","value":[{"source":"...options"},{"key":"deferGraph","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { ...options, deferGraph: true }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:131:inline-api-or-fixture-input:22","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":131,"source":"classifyNativeCompatChanges([root], collect, options)","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":131,"end_line":131,"start":4290,"end":4296,"source":"[root]","value":{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [root]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":131,"end_line":131,"start":4298,"end":4305,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":122,"end_line":122,"start":3935,"end":3954},"resolved":{"kind":"call-source","callee":"vi.fn","arguments":[{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}}],"source":"vi.fn(nativeInputs)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":131,"end_line":131,"start":4307,"end":4314,"source":"options","value":{"kind":"reference","source":"options","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":123,"end_line":123,"start":3973,"end":3992},"resolved":{"kind":"call-source","callee":"optionsFor","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":121,"end_line":121,"start":3903,"end":3916},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]}}],"source":"optionsFor(entries)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: options. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":120,"title":"checks the native closure before skipping a selected server test","start":3800,"end":4455},"implementation_status":"retained"},{"line":137,"title":"retains native qualification when a recognized test is consumed by its builder or smoke","decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when a recognized test is consumed by its builder or smoke.","explicit_input_controls":[{"control_id":"43:138:inline-api-or-fixture-input:23","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":138,"source":"classifyNativeCompatChanges(\n [root],\n async () => new Set([...NATIVE_COMPAT_ENTRY_POINTS, root]),\n optionsFor([['M', root]])\n )","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":139,"end_line":139,"start":4621,"end":4627,"source":"[root]","value":{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [root]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when a recognized test is consumed by its builder or smoke.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":140,"end_line":140,"start":4633,"end":4691,"source":"async () => new Set([...NATIVE_COMPAT_ENTRY_POINTS, root])","value":{"kind":"source-expression","source":"async () => new Set([...NATIVE_COMPAT_ENTRY_POINTS, root])"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => new Set([...NATIVE_COMPAT_ENTRY_POINTS, root]). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when a recognized test is consumed by its builder or smoke.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":141,"end_line":141,"start":4697,"end":4722,"source":"optionsFor([['M', root]])","value":{"kind":"call-source","callee":"optionsFor","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]}],"source":"optionsFor([['M', root]])"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: optionsFor([['M', root]]). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when a recognized test is consumed by its builder or smoke.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when a recognized test is consumed by its builder or smoke.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:141:inline-api-or-fixture-input:24","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":141,"source":"optionsFor([['M', root]])","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":141,"end_line":141,"start":4708,"end":4721,"source":"[['M', root]]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [['M', root]]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when a recognized test is consumed by its builder or smoke.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when a recognized test is consumed by its builder or smoke.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":137,"title":"retains native qualification when a recognized test is consumed by its builder or smoke","start":4457,"end":4777},"implementation_status":"retained"},{"line":146,"title":"retains native qualification when closure evidence is %s","decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when closure evidence is %s.","explicit_input_controls":[{"control_id":"43:146:parameter-table:25","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":146,"source":"['missing-root', 'malformed-input', 'unavailable']","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":146,"end_line":146,"start":4788,"end":4802,"source":"'missing-root'","value":{"kind":"string","value":"missing-root"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'missing-root'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when closure evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":146,"end_line":146,"start":4804,"end":4821,"source":"'malformed-input'","value":{"kind":"string","value":"malformed-input"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'malformed-input'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when closure evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":146,"end_line":146,"start":4823,"end":4836,"source":"'unavailable'","value":{"kind":"string","value":"unavailable"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'unavailable'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when closure evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when closure evidence is %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:157:inline-api-or-fixture-input:26","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":157,"source":"classifyNativeCompatChanges([root], collect, optionsFor([['M', root]]))","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":157,"end_line":157,"start":5246,"end":5252,"source":"[root]","value":{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [root]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when closure evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":157,"end_line":157,"start":5254,"end":5261,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":149,"end_line":156,"start":4946,"end":5192},"resolved":{"kind":"source-expression","source":"async () => {\n if (evidence === 'unavailable') {\n throw new Error('missing imported native input')\n }\n return evidence === 'missing-root'\n ? new Set()\n : new Set([...NATIVE_COMPAT_ENTRY_POINTS, '../bad'])\n }"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when closure evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":157,"end_line":157,"start":5263,"end":5288,"source":"optionsFor([['M', root]])","value":{"kind":"call-source","callee":"optionsFor","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]}],"source":"optionsFor([['M', root]])"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: optionsFor([['M', root]]). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when closure evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when closure evidence is %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:157:inline-api-or-fixture-input:27","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":157,"source":"optionsFor([['M', root]])","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":157,"end_line":157,"start":5274,"end":5287,"source":"[['M', root]]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [['M', root]]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when closure evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when closure evidence is %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":146,"title":"retains native qualification when closure evidence is %s","start":4779,"end":5345},"implementation_status":"retained"},{"line":162,"title":"keeps an unknown or protected input even when a test changes too: %s","decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","explicit_input_controls":[{"control_id":"43:162:parameter-table:28","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":162,"source":"[\n 'package.json',\n 'pnpm-lock.yaml',\n '.npmrc',\n 'src/shared/node-runtime-pin.ts',\n 'src/shared/product-source.ts',\n 'src/packages/process-host/src/run-process.test.ts',\n 'native/example/fixture.test.ts',\n 'config/patches/node-pty@1.1.0.patch',\n 'config/scripts/build-orcad-prebuilds.mjs',\n 'config/scripts/orcad-prebuild-smoke.test.mjs',\n 'config/scripts/node-server-native-compat-scope.mjs',\n 'config/scripts/node-server-native-compat-scope.test.mjs',\n 'config/scripts/node-server-native-compat-cleanup.test-fixture.json',\n 'config/scripts/node-server-change-scope.mjs',\n 'config/scripts/verify-linux-glibc-floor.cjs',\n '.github/actions/prepare-native-runtime/action.yml',\n '.github/actions/prepare-headless-compiler/action.yml',\n '.github/workflows/node-server-tests.yml',\n 'src/main/persistence/worker.test-fixture.ts',\n 'src/main/native-chat/new-test-support.ts',\n 'docs/ci.md'\n]","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":163,"end_line":163,"start":5359,"end":5373,"source":"'package.json'","value":{"kind":"string","value":"package.json"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'package.json'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":164,"end_line":164,"start":5377,"end":5393,"source":"'pnpm-lock.yaml'","value":{"kind":"string","value":"pnpm-lock.yaml"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'pnpm-lock.yaml'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":165,"end_line":165,"start":5397,"end":5405,"source":"'.npmrc'","value":{"kind":"string","value":".npmrc"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.npmrc'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":166,"end_line":166,"start":5409,"end":5441,"source":"'src/shared/node-runtime-pin.ts'","value":{"kind":"string","value":"src/shared/node-runtime-pin.ts"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/shared/node-runtime-pin.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":167,"end_line":167,"start":5445,"end":5475,"source":"'src/shared/product-source.ts'","value":{"kind":"string","value":"src/shared/product-source.ts"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/shared/product-source.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":168,"end_line":168,"start":5479,"end":5530,"source":"'src/packages/process-host/src/run-process.test.ts'","value":{"kind":"string","value":"src/packages/process-host/src/run-process.test.ts"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/packages/process-host/src/run-process.test.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":169,"end_line":169,"start":5534,"end":5566,"source":"'native/example/fixture.test.ts'","value":{"kind":"string","value":"native/example/fixture.test.ts"},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'native/example/fixture.test.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":170,"end_line":170,"start":5570,"end":5607,"source":"'config/patches/node-pty@1.1.0.patch'","value":{"kind":"string","value":"config/patches/node-pty@1.1.0.patch"},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/patches/node-pty@1.1.0.patch'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":171,"end_line":171,"start":5611,"end":5653,"source":"'config/scripts/build-orcad-prebuilds.mjs'","value":{"kind":"string","value":"config/scripts/build-orcad-prebuilds.mjs"},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/build-orcad-prebuilds.mjs'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":172,"end_line":172,"start":5657,"end":5703,"source":"'config/scripts/orcad-prebuild-smoke.test.mjs'","value":{"kind":"string","value":"config/scripts/orcad-prebuild-smoke.test.mjs"},"index":10,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/orcad-prebuild-smoke.test.mjs'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":173,"end_line":173,"start":5707,"end":5759,"source":"'config/scripts/node-server-native-compat-scope.mjs'","value":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"},"index":11,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-native-compat-scope.mjs'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":174,"end_line":174,"start":5763,"end":5820,"source":"'config/scripts/node-server-native-compat-scope.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.test.mjs"},"index":12,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-native-compat-scope.test.mjs'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":175,"end_line":175,"start":5824,"end":5892,"source":"'config/scripts/node-server-native-compat-cleanup.test-fixture.json'","value":{"kind":"string","value":"config/scripts/node-server-native-compat-cleanup.test-fixture.json"},"index":13,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-native-compat-cleanup.test-fixture.json'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":176,"end_line":176,"start":5896,"end":5941,"source":"'config/scripts/node-server-change-scope.mjs'","value":{"kind":"string","value":"config/scripts/node-server-change-scope.mjs"},"index":14,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-change-scope.mjs'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":177,"end_line":177,"start":5945,"end":5990,"source":"'config/scripts/verify-linux-glibc-floor.cjs'","value":{"kind":"string","value":"config/scripts/verify-linux-glibc-floor.cjs"},"index":15,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/verify-linux-glibc-floor.cjs'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":178,"end_line":178,"start":5994,"end":6045,"source":"'.github/actions/prepare-native-runtime/action.yml'","value":{"kind":"string","value":".github/actions/prepare-native-runtime/action.yml"},"index":16,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/prepare-native-runtime/action.yml'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":179,"end_line":179,"start":6049,"end":6103,"source":"'.github/actions/prepare-headless-compiler/action.yml'","value":{"kind":"string","value":".github/actions/prepare-headless-compiler/action.yml"},"index":17,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/prepare-headless-compiler/action.yml'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":180,"end_line":180,"start":6107,"end":6148,"source":"'.github/workflows/node-server-tests.yml'","value":{"kind":"string","value":".github/workflows/node-server-tests.yml"},"index":18,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/workflows/node-server-tests.yml'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":181,"end_line":181,"start":6152,"end":6197,"source":"'src/main/persistence/worker.test-fixture.ts'","value":{"kind":"string","value":"src/main/persistence/worker.test-fixture.ts"},"index":19,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/worker.test-fixture.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":182,"end_line":182,"start":6201,"end":6243,"source":"'src/main/native-chat/new-test-support.ts'","value":{"kind":"string","value":"src/main/native-chat/new-test-support.ts"},"index":20,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/native-chat/new-test-support.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":183,"end_line":183,"start":6247,"end":6259,"source":"'docs/ci.md'","value":{"kind":"string","value":"docs/ci.md"},"index":21,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'docs/ci.md'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":11,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":12,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":13,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":14,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":15,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":16,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":17,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":18,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":19,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":20,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":21,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:185:fixture-or-oracle-declaration:29","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":185,"source":"[\n ['M', root],\n ['M', file]\n ]","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":186,"end_line":186,"start":6377,"end":6388,"source":"['M', root]","value":{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['M', root]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":187,"end_line":187,"start":6394,"end":6405,"source":"['M', file]","value":{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['M', file]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:190:inline-api-or-fixture-input:30","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":190,"source":"classifyNativeCompatChanges(filesOf(entries), collect, optionsFor(entries))","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":190,"end_line":190,"start":6499,"end":6515,"source":"filesOf(entries)","value":{"kind":"call-source","callee":"filesOf","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":185,"end_line":188,"start":6371,"end":6409},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]}]}}],"source":"filesOf(entries)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: filesOf(entries). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":190,"end_line":190,"start":6517,"end":6524,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":189,"end_line":189,"start":6428,"end":6447},"resolved":{"kind":"call-source","callee":"vi.fn","arguments":[{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}}],"source":"vi.fn(nativeInputs)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":190,"end_line":190,"start":6526,"end":6545,"source":"optionsFor(entries)","value":{"kind":"call-source","callee":"optionsFor","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":185,"end_line":188,"start":6371,"end":6409},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]}]}}],"source":"optionsFor(entries)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: optionsFor(entries). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:190:inline-api-or-fixture-input:31","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":190,"source":"optionsFor(entries)","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":190,"end_line":190,"start":6537,"end":6544,"source":"entries","value":{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":185,"end_line":188,"start":6371,"end":6409},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: entries. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":162,"title":"keeps an unknown or protected input even when a test changes too: %s","start":5347,"end":6638},"implementation_status":"retained"},{"line":195,"title":"retains qualification for %s of a named test-support input","decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","explicit_input_controls":[{"control_id":"43:195:parameter-table:32","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":195,"source":"['A', 'D']","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":195,"end_line":195,"start":6649,"end":6652,"source":"'A'","value":{"kind":"string","value":"A"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'A'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":195,"end_line":195,"start":6654,"end":6657,"source":"'D'","value":{"kind":"string","value":"D"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'D'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:198:fixture-or-oracle-declaration:33","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":198,"source":"[[status, support]]","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":198,"end_line":198,"start":6768,"end":6785,"source":"[status, support]","value":{"kind":"array","value":[{"kind":"source-expression","source":"status"},{"kind":"reference","source":"support","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":15,"end_line":15,"start":677,"end":759},"resolved":{"kind":"string","value":"src/main/native-chat/agent-session-journal/journal-host-database-test-support.ts"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: [status, support]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:199:inline-api-or-fixture-input:34","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":199,"source":"classifyNativeCompatChanges([support], nativeInputs, optionsFor(entries))","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":199,"end_line":199,"start":6840,"end":6849,"source":"[support]","value":{"kind":"array","value":[{"kind":"reference","source":"support","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":15,"end_line":15,"start":677,"end":759},"resolved":{"kind":"string","value":"src/main/native-chat/agent-session-journal/journal-host-database-test-support.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [support]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":199,"end_line":199,"start":6851,"end":6863,"source":"nativeInputs","value":{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: nativeInputs. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":199,"end_line":199,"start":6865,"end":6884,"source":"optionsFor(entries)","value":{"kind":"call-source","callee":"optionsFor","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":198,"end_line":198,"start":6767,"end":6786},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"source-expression","source":"status"},{"kind":"reference","source":"support","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":15,"end_line":15,"start":677,"end":759},"resolved":{"kind":"string","value":"src/main/native-chat/agent-session-journal/journal-host-database-test-support.ts"}}]}]}}],"source":"optionsFor(entries)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: optionsFor(entries). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:199:inline-api-or-fixture-input:35","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":199,"source":"optionsFor(entries)","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":199,"end_line":199,"start":6876,"end":6883,"source":"entries","value":{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":198,"end_line":198,"start":6767,"end":6786},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"source-expression","source":"status"},{"kind":"reference","source":"support","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":15,"end_line":15,"start":677,"end":759},"resolved":{"kind":"string","value":"src/main/native-chat/agent-session-journal/journal-host-database-test-support.ts"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: entries. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":195,"title":"retains qualification for %s of a named test-support input","start":6640,"end":6941},"implementation_status":"retained"},{"line":204,"title":"retains qualification for a rename crossing production and test paths: %j","decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for a rename crossing production and test paths: %j.","explicit_input_controls":[{"control_id":"43:204:parameter-table:36","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":204,"source":"[\n [\n ['D', 'src/shared/source.ts'],\n ['A', 'src/shared/source.test.ts']\n ],\n [\n ['D', 'src/shared/source.test.ts'],\n ['A', 'src/shared/source.ts']\n ]\n]","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":205,"end_line":208,"start":6955,"end":7034,"source":"[\n ['D', 'src/shared/source.ts'],\n ['A', 'src/shared/source.test.ts']\n ]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"D"},{"kind":"string","value":"src/shared/source.ts"}]},{"kind":"array","value":[{"kind":"string","value":"A"},{"kind":"string","value":"src/shared/source.test.ts"}]}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ ['D', 'src/shared/source.ts'], ['A', 'src/shared/source.test.ts'] ]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for a rename crossing production and test paths: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":209,"end_line":212,"start":7038,"end":7117,"source":"[\n ['D', 'src/shared/source.test.ts'],\n ['A', 'src/shared/source.ts']\n ]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"D"},{"kind":"string","value":"src/shared/source.test.ts"}]},{"kind":"array","value":[{"kind":"string","value":"A"},{"kind":"string","value":"src/shared/source.ts"}]}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ ['D', 'src/shared/source.test.ts'], ['A', 'src/shared/source.ts'] ]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for a rename crossing production and test paths: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for a rename crossing production and test paths: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:216:inline-api-or-fixture-input:37","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":216,"source":"classifyNativeCompatChanges(\n filesOf(entries),\n nativeInputs,\n optionsFor(entries)\n )","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":217,"end_line":217,"start":7287,"end":7303,"source":"filesOf(entries)","value":{"kind":"call-source","callee":"filesOf","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":198,"end_line":198,"start":6767,"end":6786},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"source-expression","source":"status"},{"kind":"reference","source":"support","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":15,"end_line":15,"start":677,"end":759},"resolved":{"kind":"string","value":"src/main/native-chat/agent-session-journal/journal-host-database-test-support.ts"}}]}]}}],"source":"filesOf(entries)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: filesOf(entries). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for a rename crossing production and test paths: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":218,"end_line":218,"start":7311,"end":7323,"source":"nativeInputs","value":{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: nativeInputs. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for a rename crossing production and test paths: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":219,"end_line":219,"start":7331,"end":7350,"source":"optionsFor(entries)","value":{"kind":"call-source","callee":"optionsFor","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":198,"end_line":198,"start":6767,"end":6786},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"source-expression","source":"status"},{"kind":"reference","source":"support","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":15,"end_line":15,"start":677,"end":759},"resolved":{"kind":"string","value":"src/main/native-chat/agent-session-journal/journal-host-database-test-support.ts"}}]}]}}],"source":"optionsFor(entries)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: optionsFor(entries). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for a rename crossing production and test paths: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for a rename crossing production and test paths: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:219:inline-api-or-fixture-input:38","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":219,"source":"optionsFor(entries)","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":219,"end_line":219,"start":7342,"end":7349,"source":"entries","value":{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":198,"end_line":198,"start":6767,"end":6786},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"source-expression","source":"status"},{"kind":"reference","source":"support","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":15,"end_line":15,"start":677,"end":759},"resolved":{"kind":"string","value":"src/main/native-chat/agent-session-journal/journal-host-database-test-support.ts"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: entries. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for a rename crossing production and test paths: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for a rename crossing production and test paths: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":204,"title":"retains qualification for a rename crossing production and test paths: %j","start":6943,"end":7412},"implementation_status":"retained"},{"line":225,"title":"keeps native qualification without ordinary PR authorization: %j","decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps native qualification without ordinary PR authorization: %j.","explicit_input_controls":[{"control_id":"43:225:parameter-table:39","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":225,"source":"[{}, { pullRequest: false }, { pullRequest: true, fullQualification: true }]","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":225,"end_line":225,"start":7423,"end":7425,"source":"{}","value":{"kind":"object","value":[]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: {}. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps native qualification without ordinary PR authorization: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":225,"end_line":225,"start":7427,"end":7449,"source":"{ pullRequest: false }","value":{"kind":"object","value":[{"key":"pullRequest","value":{"kind":"boolean","value":false}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { pullRequest: false }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps native qualification without ordinary PR authorization: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":225,"end_line":225,"start":7451,"end":7497,"source":"{ pullRequest: true, fullQualification: true }","value":{"kind":"object","value":[{"key":"pullRequest","value":{"kind":"boolean","value":true}},{"key":"fullQualification","value":{"kind":"boolean","value":true}}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { pullRequest: true, fullQualification: true }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps native qualification without ordinary PR authorization: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps native qualification without ordinary PR authorization: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:229:inline-api-or-fixture-input:40","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":229,"source":"classifyNativeCompatChanges([root], collect, {\n rawDiff: rawDiff([['M', root]]),\n ...options\n })","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":229,"end_line":229,"start":7687,"end":7693,"source":"[root]","value":{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [root]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps native qualification without ordinary PR authorization: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":229,"end_line":229,"start":7695,"end":7702,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":228,"end_line":228,"start":7614,"end":7633},"resolved":{"kind":"call-source","callee":"vi.fn","arguments":[{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}}],"source":"vi.fn(nativeInputs)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps native qualification without ordinary PR authorization: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":229,"end_line":232,"start":7704,"end":7767,"source":"{\n rawDiff: rawDiff([['M', root]]),\n ...options\n }","value":{"kind":"object","value":[{"key":"rawDiff","value":{"kind":"call-source","callee":"rawDiff","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]}],"source":"rawDiff([['M', root]])"}},{"source":"...options"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { rawDiff: rawDiff([['M', root]]), ...options }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps native qualification without ordinary PR authorization: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps native qualification without ordinary PR authorization: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:230:inline-api-or-fixture-input:41","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":230,"source":"rawDiff([['M', root]])","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":230,"end_line":230,"start":7729,"end":7742,"source":"[['M', root]]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [['M', root]]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps native qualification without ordinary PR authorization: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps native qualification without ordinary PR authorization: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":225,"title":"keeps native qualification without ordinary PR authorization: %j","start":7414,"end":7867},"implementation_status":"retained"},{"line":238,"title":"qualifies a standalone change to the executable native routing policy","decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","explicit_input_controls":[{"control_id":"43:241:inline-api-or-fixture-input:42","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":241,"source":"classifyNodeServerChanges([file], collect, { modifiedFiles: [file] })","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":241,"end_line":241,"start":8113,"end":8119,"source":"[file]","value":{"kind":"array","value":[{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":241,"end_line":241,"start":8121,"end":8128,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":240,"end_line":240,"start":8045,"end":8064},"resolved":{"kind":"call-source","callee":"vi.fn","arguments":[{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}}],"source":"vi.fn(nativeInputs)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":241,"end_line":241,"start":8130,"end":8155,"source":"{ modifiedFiles: [file] }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"array","value":[{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: [file] }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:244:inline-api-or-fixture-input:43","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":244,"source":"nodeServerQualification([file], scope)","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":244,"end_line":244,"start":8268,"end":8274,"source":"[file]","value":{"kind":"array","value":[{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":244,"end_line":244,"start":8276,"end":8281,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":241,"end_line":241,"start":8081,"end":8156},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges([file], collect, { modifiedFiles: [file] })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:248:inline-api-or-fixture-input:44","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":248,"source":"classifyNativeCompatChanges([file], collect, optionsFor([['M', file]]))","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":248,"end_line":248,"start":8408,"end":8414,"source":"[file]","value":{"kind":"array","value":[{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":248,"end_line":248,"start":8416,"end":8423,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":240,"end_line":240,"start":8045,"end":8064},"resolved":{"kind":"call-source","callee":"vi.fn","arguments":[{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}}],"source":"vi.fn(nativeInputs)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":248,"end_line":248,"start":8425,"end":8450,"source":"optionsFor([['M', file]])","value":{"kind":"call-source","callee":"optionsFor","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]}]}],"source":"optionsFor([['M', file]])"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: optionsFor([['M', file]]). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:248:inline-api-or-fixture-input:45","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":248,"source":"optionsFor([['M', file]])","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":248,"end_line":248,"start":8436,"end":8449,"source":"[['M', file]]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [['M', file]]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":238,"title":"qualifies a standalone change to the executable native routing policy","start":7869,"end":8543},"implementation_status":"retained"},{"line":253,"title":"recognizes the complete 119-path cleanup while retaining all runtime platform qualification","decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: recognizes the complete 119-path cleanup while retaining all runtime platform qualification.","explicit_input_controls":[{"control_id":"43:257:inline-api-or-fixture-input:46","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":257,"source":"classifyNativeCompatChanges(files, nativeInputs, {\n pullRequest: true,\n rawDiff: cleanup.rawDiff\n })","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":257,"end_line":257,"start":8809,"end":8814,"source":"files","value":{"kind":"reference","source":"files","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":256,"end_line":256,"start":8741,"end":8757},"resolved":{"kind":"call-source","callee":"filesOf","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":254,"end_line":254,"start":8675,"end":8688},"resolved":{"kind":"source-expression","source":"cleanup.paths"}}],"source":"filesOf(entries)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: files. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: recognizes the complete 119-path cleanup while retaining all runtime platform qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":257,"end_line":257,"start":8816,"end":8828,"source":"nativeInputs","value":{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: nativeInputs. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: recognizes the complete 119-path cleanup while retaining all runtime platform qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":257,"end_line":260,"start":8830,"end":8887,"source":"{\n pullRequest: true,\n rawDiff: cleanup.rawDiff\n }","value":{"kind":"object","value":[{"key":"pullRequest","value":{"kind":"boolean","value":true}},{"key":"rawDiff","value":{"kind":"source-expression","source":"cleanup.rawDiff"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { pullRequest: true, rawDiff: cleanup.rawDiff }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: recognizes the complete 119-path cleanup while retaining all runtime platform qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: recognizes the complete 119-path cleanup while retaining all runtime platform qualification.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:262:inline-api-or-fixture-input:47","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":262,"source":"classifyNodeServerChanges(files, async () => {\n throw new Error('the selected profile-state test forces runtime qualification')\n })","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":262,"end_line":262,"start":8986,"end":8991,"source":"files","value":{"kind":"reference","source":"files","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":256,"end_line":256,"start":8741,"end":8757},"resolved":{"kind":"call-source","callee":"filesOf","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":254,"end_line":254,"start":8675,"end":8688},"resolved":{"kind":"source-expression","source":"cleanup.paths"}}],"source":"filesOf(entries)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: files. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: recognizes the complete 119-path cleanup while retaining all runtime platform qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":262,"end_line":264,"start":8993,"end":9094,"source":"async () => {\n throw new Error('the selected profile-state test forces runtime qualification')\n }","value":{"kind":"source-expression","source":"async () => {\n throw new Error('the selected profile-state test forces runtime qualification')\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => { throw new Error('the selected profile-state test forces runtime qualification') }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: recognizes the complete 119-path cleanup while retaining all runtime platform qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: recognizes the complete 119-path cleanup while retaining all runtime platform qualification.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:267:inline-api-or-fixture-input:48","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":267,"source":"nodeServerQualification(files, scope)","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":267,"end_line":267,"start":9215,"end":9220,"source":"files","value":{"kind":"reference","source":"files","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":256,"end_line":256,"start":8741,"end":8757},"resolved":{"kind":"call-source","callee":"filesOf","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":254,"end_line":254,"start":8675,"end":8688},"resolved":{"kind":"source-expression","source":"cleanup.paths"}}],"source":"filesOf(entries)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: files. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: recognizes the complete 119-path cleanup while retaining all runtime platform qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":267,"end_line":267,"start":9222,"end":9227,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":262,"end_line":264,"start":8954,"end":9095},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(files, async () => {\n throw new Error('the selected profile-state test forces runtime qualification')\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: recognizes the complete 119-path cleanup while retaining all runtime platform qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: recognizes the complete 119-path cleanup while retaining all runtime platform qualification.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":253,"title":"recognizes the complete 119-path cleanup while retaining all runtime platform qualification","start":8545,"end":9305},"implementation_status":"retained"},{"line":273,"title":"checks the cleanup against the actual native build and smoke closure","decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the cleanup against the actual native build and smoke closure.","explicit_input_controls":[{"control_id":"43:275:inline-api-or-fixture-input:49","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":275,"source":"classifyNativeCompatChanges(files, collectNodeServerInputs, {\n pullRequest: true,\n rawDiff: cleanup.rawDiff\n })","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":275,"end_line":275,"start":9486,"end":9491,"source":"files","value":{"kind":"reference","source":"files","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":274,"end_line":274,"start":9412,"end":9434},"resolved":{"kind":"call-source","callee":"filesOf","arguments":[{"kind":"source-expression","source":"cleanup.paths"}],"source":"filesOf(cleanup.paths)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: files. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the cleanup against the actual native build and smoke closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":275,"end_line":275,"start":9493,"end":9516,"source":"collectNodeServerInputs","value":{"kind":"source-expression","source":"collectNodeServerInputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collectNodeServerInputs. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the cleanup against the actual native build and smoke closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":275,"end_line":278,"start":9518,"end":9575,"source":"{\n pullRequest: true,\n rawDiff: cleanup.rawDiff\n }","value":{"kind":"object","value":[{"key":"pullRequest","value":{"kind":"boolean","value":true}},{"key":"rawDiff","value":{"kind":"source-expression","source":"cleanup.rawDiff"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { pullRequest: true, rawDiff: cleanup.rawDiff }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the cleanup against the actual native build and smoke closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the cleanup against the actual native build and smoke closure.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":273,"title":"checks the cleanup against the actual native build and smoke closure","start":9307,"end":9636},"implementation_status":"retained"},{"line":282,"title":"limits the extra job guard to glibc 2.17 and preserves unconditional callers","decision":"fix","reason":"Drop repeated native-job guard substrings already exercised by the compiled16-scenario table. Evaluate scope/graph ALLOW_TEST_ONLY_NATIVE_SKIP expressions for ordinary PR, push, schedule, template and explicit-ref callers; keep actual CLI diff-argument wiring evidence.","explicit_input_controls":[{"control_id":"43:283:inline-api-or-fixture-input:50","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":283,"source":"parse(\n readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')\n )","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":284,"end_line":284,"start":9759,"end":9854,"source":"readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')","value":{"kind":"call-source","callee":"readFileSync","arguments":[{"kind":"source-expression","source":"new URL('../../.github/workflows/node-server-tests.yml', import.meta.url)"},{"kind":"string","value":"utf8"}],"source":"readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8'). Drop repeated native-job guard substrings already exercised by the compiled16-scenario table. Evaluate scope/graph ALLOW_TEST_ONLY_NATIVE_SKIP expressions for ordinary PR, push, schedule, template and explicit-ref callers; keep actual CLI diff-argument wiring evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Drop repeated native-job guard substrings already exercised by the compiled16-scenario table. Evaluate scope/graph ALLOW_TEST_ONLY_NATIVE_SKIP expressions for ordinary PR, push, schedule, template and explicit-ref callers; keep actual CLI diff-argument wiring evidence.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:291:for-of:51","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":291,"source":"[\n workflow.jobs.persistence,\n workflow.jobs.linux_glibc_floor,\n workflow.jobs.linux_musl\n ]","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":292,"end_line":292,"start":10147,"end":10172,"source":"workflow.jobs.persistence","value":{"kind":"source-expression","source":"workflow.jobs.persistence"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: workflow.jobs.persistence. Drop repeated native-job guard substrings already exercised by the compiled16-scenario table. Evaluate scope/graph ALLOW_TEST_ONLY_NATIVE_SKIP expressions for ordinary PR, push, schedule, template and explicit-ref callers; keep actual CLI diff-argument wiring evidence.","implementation":{"disposition":"strengthened","reason":"The same persistence/linux_glibc_floor/linux_musl jobs are selected by name and their actual compiled eligibility is evaluated for ordinary PRs with native_compatibility true and false, replacing guard substring checks."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":293,"end_line":293,"start":10178,"end":10209,"source":"workflow.jobs.linux_glibc_floor","value":{"kind":"source-expression","source":"workflow.jobs.linux_glibc_floor"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: workflow.jobs.linux_glibc_floor. Drop repeated native-job guard substrings already exercised by the compiled16-scenario table. Evaluate scope/graph ALLOW_TEST_ONLY_NATIVE_SKIP expressions for ordinary PR, push, schedule, template and explicit-ref callers; keep actual CLI diff-argument wiring evidence.","implementation":{"disposition":"strengthened","reason":"The same persistence/linux_glibc_floor/linux_musl jobs are selected by name and their actual compiled eligibility is evaluated for ordinary PRs with native_compatibility true and false, replacing guard substring checks."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":294,"end_line":294,"start":10215,"end":10239,"source":"workflow.jobs.linux_musl","value":{"kind":"source-expression","source":"workflow.jobs.linux_musl"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: workflow.jobs.linux_musl. Drop repeated native-job guard substrings already exercised by the compiled16-scenario table. Evaluate scope/graph ALLOW_TEST_ONLY_NATIVE_SKIP expressions for ordinary PR, push, schedule, template and explicit-ref callers; keep actual CLI diff-argument wiring evidence.","implementation":{"disposition":"strengthened","reason":"The same persistence/linux_glibc_floor/linux_musl jobs are selected by name and their actual compiled eligibility is evaluated for ordinary PRs with native_compatibility true and false, replacing guard substring checks."}}],"decision":"fix","reason":"Drop repeated native-job guard substrings already exercised by the compiled16-scenario table. Evaluate scope/graph ALLOW_TEST_ONLY_NATIVE_SKIP expressions for ordinary PR, push, schedule, template and explicit-ref callers; keep actual CLI diff-argument wiring evidence.","implementation_rows":[{"index":1,"disposition":"strengthened","reason":"The same persistence/linux_glibc_floor/linux_musl jobs are selected by name and their actual compiled eligibility is evaluated for ordinary PRs with native_compatibility true and false, replacing guard substring checks."},{"index":2,"disposition":"strengthened","reason":"The same persistence/linux_glibc_floor/linux_musl jobs are selected by name and their actual compiled eligibility is evaluated for ordinary PRs with native_compatibility true and false, replacing guard substring checks."},{"index":3,"disposition":"strengthened","reason":"The same persistence/linux_glibc_floor/linux_musl jobs are selected by name and their actual compiled eligibility is evaluated for ordinary PRs with native_compatibility true and false, replacing guard substring checks."}]},{"control_id":"43:301:for-of:52","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":301,"source":"[scope, graph]","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":301,"end_line":301,"start":10578,"end":10583,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":298,"end_line":298,"start":10324,"end":10387},"resolved":{"kind":"call-source","callee":"workflow.jobs.changes.steps.find","arguments":[{"kind":"source-expression","source":"(step) => step.id === 'scope'"}],"source":"workflow.jobs.changes.steps.find((step) => step.id === 'scope')"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: scope. Drop repeated native-job guard substrings already exercised by the compiled16-scenario table. Evaluate scope/graph ALLOW_TEST_ONLY_NATIVE_SKIP expressions for ordinary PR, push, schedule, template and explicit-ref callers; keep actual CLI diff-argument wiring evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":301,"end_line":301,"start":10585,"end":10590,"source":"graph","value":{"kind":"reference","source":"graph","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":299,"end_line":299,"start":10404,"end":10467},"resolved":{"kind":"call-source","callee":"workflow.jobs.changes.steps.find","arguments":[{"kind":"source-expression","source":"(step) => step.id === 'graph'"}],"source":"workflow.jobs.changes.steps.find((step) => step.id === 'graph')"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: graph. Drop repeated native-job guard substrings already exercised by the compiled16-scenario table. Evaluate scope/graph ALLOW_TEST_ONLY_NATIVE_SKIP expressions for ordinary PR, push, schedule, template and explicit-ref callers; keep actual CLI diff-argument wiring evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Drop repeated native-job guard substrings already exercised by the compiled16-scenario table. Evaluate scope/graph ALLOW_TEST_ONLY_NATIVE_SKIP expressions for ordinary PR, push, schedule, template and explicit-ref callers; keep actual CLI diff-argument wiring evidence.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":282,"title":"limits test-only native skip evidence to ordinary pull requests","start":9638,"end":11781},"implementation_status":"implemented"},{"line":312,"title":"builds server glibc slots on glibc 2.28 and the compat slot on glibc 2.17 (design D6)","decision":"fix","reason":"Remove repeated if-expression substring comparisons already proved by the compiled native-job table; retain platform/image/slot/runner configuration checks and describe them as configured slots.","explicit_input_controls":[{"control_id":"43:313:inline-api-or-fixture-input:53","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":313,"source":"parse(\n readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')\n )","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":314,"end_line":314,"start":11151,"end":11246,"source":"readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')","value":{"kind":"call-source","callee":"readFileSync","arguments":[{"kind":"source-expression","source":"new URL('../../.github/workflows/node-server-tests.yml', import.meta.url)"},{"kind":"string","value":"utf8"}],"source":"readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8'). Remove repeated if-expression substring comparisons already proved by the compiled native-job table; retain platform/image/slot/runner configuration checks and describe them as configured slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Remove repeated if-expression substring comparisons already proved by the compiled native-job table; retain platform/image/slot/runner configuration checks and describe them as configured slots.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":338,"title":"configures server glibc 2.28 slots and the glibc 2.17 compatibility lane","start":11783,"end":13216},"implementation_status":"implemented"},{"line":361,"title":"evaluates the hosted native job guard with %j","decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","explicit_input_controls":[{"control_id":"43:361:parameter-table:56","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":361,"source":"[\n { expected: false, native: 'false' },\n { expected: true, native: 'true' },\n { expected: true, native: '' },\n { expected: true },\n { expected: true, native: 'false', event: 'push' },\n { expected: true, native: 'false', event: 'schedule' },\n { expected: true, native: 'false', event: 'workflow_dispatch' },\n { expected: true, native: 'false', template: true },\n { expected: true, native: 'false', ref: 'other-commit' },\n { expected: true, native: 'true', persistence: 'failure' },\n { expected: true, native: 'true', persistence: 'cancelled' },\n { expected: true, native: 'true', persistence: 'skipped' },\n { expected: false, native: 'true', draft: true },\n { expected: false, native: 'true', qualification: 'false' },\n { expected: false, native: 'true', shouldRun: 'false' },\n { expected: false, native: 'true', cancelled: true }\n]","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":362,"end_line":362,"start":13075,"end":13111,"source":"{ expected: false, native: 'false' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":false}},{"key":"native","value":{"kind":"string","value":"false"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: false, native: 'false' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":363,"end_line":363,"start":13115,"end":13149,"source":"{ expected: true, native: 'true' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}},{"key":"native","value":{"kind":"string","value":"true"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true, native: 'true' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":364,"end_line":364,"start":13153,"end":13183,"source":"{ expected: true, native: '' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}},{"key":"native","value":{"kind":"string","value":""}}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true, native: '' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":365,"end_line":365,"start":13187,"end":13205,"source":"{ expected: true }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":366,"end_line":366,"start":13209,"end":13259,"source":"{ expected: true, native: 'false', event: 'push' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}},{"key":"native","value":{"kind":"string","value":"false"}},{"key":"event","value":{"kind":"string","value":"push"}}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true, native: 'false', event: 'push' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":367,"end_line":367,"start":13263,"end":13317,"source":"{ expected: true, native: 'false', event: 'schedule' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}},{"key":"native","value":{"kind":"string","value":"false"}},{"key":"event","value":{"kind":"string","value":"schedule"}}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true, native: 'false', event: 'schedule' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":368,"end_line":368,"start":13321,"end":13384,"source":"{ expected: true, native: 'false', event: 'workflow_dispatch' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}},{"key":"native","value":{"kind":"string","value":"false"}},{"key":"event","value":{"kind":"string","value":"workflow_dispatch"}}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true, native: 'false', event: 'workflow_dispatch' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":369,"end_line":369,"start":13388,"end":13439,"source":"{ expected: true, native: 'false', template: true }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}},{"key":"native","value":{"kind":"string","value":"false"}},{"key":"template","value":{"kind":"boolean","value":true}}]},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true, native: 'false', template: true }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":370,"end_line":370,"start":13443,"end":13499,"source":"{ expected: true, native: 'false', ref: 'other-commit' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}},{"key":"native","value":{"kind":"string","value":"false"}},{"key":"ref","value":{"kind":"string","value":"other-commit"}}]},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true, native: 'false', ref: 'other-commit' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":371,"end_line":371,"start":13503,"end":13561,"source":"{ expected: true, native: 'true', persistence: 'failure' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}},{"key":"native","value":{"kind":"string","value":"true"}},{"key":"persistence","value":{"kind":"string","value":"failure"}}]},"index":10,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true, native: 'true', persistence: 'failure' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":372,"end_line":372,"start":13565,"end":13625,"source":"{ expected: true, native: 'true', persistence: 'cancelled' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}},{"key":"native","value":{"kind":"string","value":"true"}},{"key":"persistence","value":{"kind":"string","value":"cancelled"}}]},"index":11,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true, native: 'true', persistence: 'cancelled' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":373,"end_line":373,"start":13629,"end":13687,"source":"{ expected: true, native: 'true', persistence: 'skipped' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}},{"key":"native","value":{"kind":"string","value":"true"}},{"key":"persistence","value":{"kind":"string","value":"skipped"}}]},"index":12,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true, native: 'true', persistence: 'skipped' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":374,"end_line":374,"start":13691,"end":13739,"source":"{ expected: false, native: 'true', draft: true }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":false}},{"key":"native","value":{"kind":"string","value":"true"}},{"key":"draft","value":{"kind":"boolean","value":true}}]},"index":13,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: false, native: 'true', draft: true }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":375,"end_line":375,"start":13743,"end":13802,"source":"{ expected: false, native: 'true', qualification: 'false' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":false}},{"key":"native","value":{"kind":"string","value":"true"}},{"key":"qualification","value":{"kind":"string","value":"false"}}]},"index":14,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: false, native: 'true', qualification: 'false' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":376,"end_line":376,"start":13806,"end":13861,"source":"{ expected: false, native: 'true', shouldRun: 'false' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":false}},{"key":"native","value":{"kind":"string","value":"true"}},{"key":"shouldRun","value":{"kind":"string","value":"false"}}]},"index":15,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: false, native: 'true', shouldRun: 'false' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":377,"end_line":377,"start":13865,"end":13917,"source":"{ expected: false, native: 'true', cancelled: true }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":false}},{"key":"native","value":{"kind":"string","value":"true"}},{"key":"cancelled","value":{"kind":"boolean","value":true}}]},"index":16,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: false, native: 'true', cancelled: true }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":11,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":12,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":13,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":14,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":15,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":16,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:379:fixture-or-oracle-declaration:57","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":379,"source":"{\n github: {\n event_name: scenario.event ?? 'pull_request',\n event: { pull_request: { draft: scenario.draft ?? false } }\n },\n inputs: { build_template: scenario.template ?? false, ref: scenario.ref ?? '' },\n needs: {\n persistence: { result: scenario.persistence ?? 'success' },\n changes: {\n outputs: {\n should_run: scenario.shouldRun ?? 'true',\n qualification: scenario.qualification ?? 'true',\n ...(scenario.native === undefined ? {} : { native_compatibility: scenario.native })\n }\n }\n }\n }","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":380,"end_line":383,"start":14010,"end":14143,"source":"github: {\n event_name: scenario.event ?? 'pull_request',\n event: { pull_request: { draft: scenario.draft ?? false } }\n }","value":{"kind":"property","key":"github","value":{"kind":"object","value":[{"key":"event_name","value":{"kind":"source-expression","source":"scenario.event ?? 'pull_request'"}},{"key":"event","value":{"kind":"object","value":[{"key":"pull_request","value":{"kind":"object","value":[{"key":"draft","value":{"kind":"source-expression","source":"scenario.draft ?? false"}}]}}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: github: { event_name: scenario.event ?? 'pull_request', event: { pull_request: { draft: scenario.draft ?? false } } }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":384,"end_line":384,"start":14149,"end":14228,"source":"inputs: { build_template: scenario.template ?? false, ref: scenario.ref ?? '' }","value":{"kind":"property","key":"inputs","value":{"kind":"object","value":[{"key":"build_template","value":{"kind":"source-expression","source":"scenario.template ?? false"}},{"key":"ref","value":{"kind":"source-expression","source":"scenario.ref ?? ''"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: inputs: { build_template: scenario.template ?? false, ref: scenario.ref ?? '' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":385,"end_line":394,"start":14234,"end":14573,"source":"needs: {\n persistence: { result: scenario.persistence ?? 'success' },\n changes: {\n outputs: {\n should_run: scenario.shouldRun ?? 'true',\n qualification: scenario.qualification ?? 'true',\n ...(scenario.native === undefined ? {} : { native_compatibility: scenario.native })\n }\n }\n }","value":{"kind":"property","key":"needs","value":{"kind":"object","value":[{"key":"persistence","value":{"kind":"object","value":[{"key":"result","value":{"kind":"source-expression","source":"scenario.persistence ?? 'success'"}}]}},{"key":"changes","value":{"kind":"object","value":[{"key":"outputs","value":{"kind":"object","value":[{"key":"should_run","value":{"kind":"source-expression","source":"scenario.shouldRun ?? 'true'"}},{"key":"qualification","value":{"kind":"source-expression","source":"scenario.qualification ?? 'true'"}},{"source":"...(scenario.native === undefined ? {} : { native_compatibility: scenario.native })"}]}}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: needs: { persistence: { result: scenario.persistence ?? 'success' }, changes: { outputs: { should_run: scenari. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":380,"title":"evaluates the hosted native job guard with %j","start":13479,"end":15109},"implementation_status":"retained"},{"line":401,"title":"checks %s of the existing serializer test diagnostics against the native closure","decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks %s of the existing serializer test diagnostics against the native closure.","explicit_input_controls":[{"control_id":"43:401:parameter-table:58","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":401,"source":"['M', 'A', 'D']","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":401,"end_line":401,"start":14704,"end":14707,"source":"'M'","value":{"kind":"string","value":"M"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'M'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks %s of the existing serializer test diagnostics against the native closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":401,"end_line":401,"start":14709,"end":14712,"source":"'A'","value":{"kind":"string","value":"A"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'A'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks %s of the existing serializer test diagnostics against the native closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":401,"end_line":401,"start":14714,"end":14717,"source":"'D'","value":{"kind":"string","value":"D"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'D'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks %s of the existing serializer test diagnostics against the native closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks %s of the existing serializer test diagnostics against the native closure.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:405:inline-api-or-fixture-input:59","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":405,"source":"classifyNativeCompatChanges(\n [file],\n collectNodeServerInputs,\n optionsFor([[status, file]])\n )","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":406,"end_line":406,"start":14956,"end":14962,"source":"[file]","value":{"kind":"array","value":[{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":404,"end_line":404,"start":14846,"end":14895},"resolved":{"kind":"string","value":"src/main/daemon/serialize-grid-variant-scope.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks %s of the existing serializer test diagnostics against the native closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":407,"end_line":407,"start":14970,"end":14993,"source":"collectNodeServerInputs","value":{"kind":"source-expression","source":"collectNodeServerInputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collectNodeServerInputs. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks %s of the existing serializer test diagnostics against the native closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":408,"end_line":408,"start":15001,"end":15029,"source":"optionsFor([[status, file]])","value":{"kind":"call-source","callee":"optionsFor","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"source-expression","source":"status"},{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":404,"end_line":404,"start":14846,"end":14895},"resolved":{"kind":"string","value":"src/main/daemon/serialize-grid-variant-scope.ts"}}]}]}],"source":"optionsFor([[status, file]])"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: optionsFor([[status, file]]). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks %s of the existing serializer test diagnostics against the native closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks %s of the existing serializer test diagnostics against the native closure.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"43:408:inline-api-or-fixture-input:60","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":408,"source":"optionsFor([[status, file]])","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":408,"end_line":408,"start":15012,"end":15028,"source":"[[status, file]]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"source-expression","source":"status"},{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":404,"end_line":404,"start":14846,"end":14895},"resolved":{"kind":"string","value":"src/main/daemon/serialize-grid-variant-scope.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [[status, file]]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks %s of the existing serializer test diagnostics against the native closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks %s of the existing serializer test diagnostics against the native closure.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":420,"title":"checks %s of the existing serializer test diagnostics against the native closure","start":15111,"end":15527},"implementation_status":"retained"}],"lines":414,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted.","planned_changes":[{"original_line":282,"title":"limits the extra job guard to glibc 2.17 and preserves unconditional callers","decision":"fix","change":"Drop repeated native-job guard substrings already exercised by the compiled16-scenario table. Evaluate scope/graph ALLOW_TEST_ONLY_NATIVE_SKIP expressions for ordinary PR, push, schedule, template and explicit-ref callers; keep actual CLI diff-argument wiring evidence."},{"original_line":312,"title":"builds server glibc slots on glibc 2.28 and the compat slot on glibc 2.17 (design D6)","decision":"fix","change":"Remove repeated if-expression substring comparisons already proved by the compiled native-job table; retain platform/image/slot/runner configuration checks and describe them as configured slots."}],"production_evidence":[".github/workflows/node-server-tests.yml","config/scripts/node-server-change-scope.mjs","config/scripts/node-server-native-compat-scope.mjs","config/scripts/node-server-qualification.mjs","config/scripts/pr-aggregate-gate-context.mjs"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"43:16:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":16,"end_line":21,"start":776,"end":907,"source":"JSON.parse(\n readFileSync(\n new URL('./node-server-native-compat-cleanup.test-fixture.json', import.meta.url),\n 'utf8'\n )\n)","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":16,"end_line":21,"start":776,"end":907},"binding":"JSON.parse","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":17,"end_line":20,"start":790,"end":905,"source":"readFileSync(\n new URL('./node-server-native-compat-cleanup.test-fixture.json', import.meta.url),\n 'utf8'\n )","value":{"kind":"call-source","callee":"readFileSync","arguments":[{"kind":"source-expression","source":"new URL('./node-server-native-compat-cleanup.test-fixture.json', import.meta.url)"},{"kind":"string","value":"utf8"}],"source":"readFileSync(\n new URL('./node-server-native-compat-cleanup.test-fixture.json', import.meta.url),\n 'utf8'\n )"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: readFileSync( new URL('./node-server-native-compat-cleanup.test-fixture.json', import.meta.url), 'utf8' ). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:37:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":37,"end_line":37,"start":1617,"end":1633,"source":"rawDiff(entries)","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":37,"end_line":37,"start":1617,"end":1633},"binding":"rawDiff","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":37,"end_line":37,"start":1625,"end":1632,"source":"entries","value":{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":40,"end_line":44,"start":1750,"end":1845},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"A"},{"kind":"string","value":"src/shared/new.spec.ts"}]},{"kind":"array","value":[{"kind":"string","value":"D"},{"kind":"string","value":"src/shared/old.test.ts"}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: entries. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:40:fixture-or-oracle-declaration:3","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":40,"end_line":44,"start":1740,"end":1845,"source":"[\n ['M', root],\n ['A', 'src/shared/new.spec.ts'],\n ['D', 'src/shared/old.test.ts']\n ]","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":40,"end_line":44,"start":1750,"end":1845},"binding":"entries","resolution":[],"enclosing_case":{"line":39,"title":"reconciles complete no-rename status evidence including additions and deletions"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: reconciles complete no-rename status evidence including additions and deletions.","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":41,"end_line":41,"start":1756,"end":1767,"source":"['M', root]","value":{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['M', root]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: reconciles complete no-rename status evidence including additions and deletions.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":42,"end_line":42,"start":1773,"end":1804,"source":"['A', 'src/shared/new.spec.ts']","value":{"kind":"array","value":[{"kind":"string","value":"A"},{"kind":"string","value":"src/shared/new.spec.ts"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['A', 'src/shared/new.spec.ts']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: reconciles complete no-rename status evidence including additions and deletions.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":43,"end_line":43,"start":1810,"end":1841,"source":"['D', 'src/shared/old.test.ts']","value":{"kind":"array","value":[{"kind":"string","value":"D"},{"kind":"string","value":"src/shared/old.test.ts"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['D', 'src/shared/old.test.ts']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: reconciles complete no-rename status evidence including additions and deletions.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:45:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":45,"end_line":45,"start":1855,"end":1911,"source":"readNativeCompatDiff(filesOf(entries), rawDiff(entries))","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":45,"end_line":45,"start":1855,"end":1911},"binding":"readNativeCompatDiff","resolution":[],"enclosing_case":{"line":39,"title":"reconciles complete no-rename status evidence including additions and deletions"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: reconciles complete no-rename status evidence including additions and deletions.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":45,"end_line":45,"start":1876,"end":1892,"source":"filesOf(entries)","value":{"kind":"call-source","callee":"filesOf","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":40,"end_line":44,"start":1750,"end":1845},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"A"},{"kind":"string","value":"src/shared/new.spec.ts"}]},{"kind":"array","value":[{"kind":"string","value":"D"},{"kind":"string","value":"src/shared/old.test.ts"}]}]}}],"source":"filesOf(entries)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: filesOf(entries). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: reconciles complete no-rename status evidence including additions and deletions.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":45,"end_line":45,"start":1894,"end":1910,"source":"rawDiff(entries)","value":{"kind":"call-source","callee":"rawDiff","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":40,"end_line":44,"start":1750,"end":1845},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"A"},{"kind":"string","value":"src/shared/new.spec.ts"}]},{"kind":"array","value":[{"kind":"string","value":"D"},{"kind":"string","value":"src/shared/old.test.ts"}]}]}}],"source":"rawDiff(entries)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: rawDiff(entries). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: reconciles complete no-rename status evidence including additions and deletions.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:45:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":45,"end_line":45,"start":1894,"end":1910,"source":"rawDiff(entries)","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":45,"end_line":45,"start":1894,"end":1910},"binding":"rawDiff","resolution":[],"enclosing_case":{"line":39,"title":"reconciles complete no-rename status evidence including additions and deletions"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: reconciles complete no-rename status evidence including additions and deletions.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":45,"end_line":45,"start":1902,"end":1909,"source":"entries","value":{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":40,"end_line":44,"start":1750,"end":1845},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"A"},{"kind":"string","value":"src/shared/new.spec.ts"}]},{"kind":"array","value":[{"kind":"string","value":"D"},{"kind":"string","value":"src/shared/old.test.ts"}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: entries. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: reconciles complete no-rename status evidence including additions and deletions.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:50:parameter-table:6","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":50,"end_line":98,"start":1986,"end":3139,"source":"[\n [[], ''],\n [[root], undefined],\n [[root], rawDiff([['M', root]]).slice(0, -1)],\n [[root], `${rawDiff([['M', root]])}trailing\\0`],\n [\n [root],\n rawDiff([\n ['M', root],\n ['M', root]\n ])\n ],\n [\n [root, root],\n rawDiff([\n ['M', root],\n ['M', root]\n ])\n ],\n [\n [root, 'src/shared/other.test.ts'],\n rawDiff([\n ['M', root],\n ['M', root]\n ])\n ],\n [[root], rawDiff([['M', 'src/shared/foreign.test.ts']])],\n [[root], rawDiff([['R100', root]])],\n [[root], rawDiff([['T', root]])],\n ...[\n 'src/../outside.test.ts',\n 'src/./outside.test.ts',\n 'src//outside.test.ts',\n '/src/outside.test.ts',\n 'src\\\\outside.test.ts',\n 'src/C:/outside.test.ts'\n ].map((file) => [[file], rawDiff([['M', file]])])\n]","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":50,"end_line":87,"start":1994,"end":2769},"binding":"it.each","resolution":[],"enclosing_case":{"line":50,"title":"requires native qualification for incomplete or malformed diff evidence: %j"},"affected_case_lines":[50],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":51,"end_line":51,"start":1998,"end":2006,"source":"[[], '']","value":{"kind":"array","value":[{"kind":"array","value":[]},{"kind":"string","value":""}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [[], '']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":52,"end_line":52,"start":2010,"end":2029,"source":"[[root], undefined]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"source-expression","source":"undefined"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [[root], undefined]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":53,"end_line":53,"start":2033,"end":2078,"source":"[[root], rawDiff([['M', root]]).slice(0, -1)]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"call-source","callee":"rawDiff([['M', root]]).slice","arguments":[{"kind":"number","value":0},{"kind":"source-expression","source":"-1"}],"source":"rawDiff([['M', root]]).slice(0, -1)"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [[root], rawDiff([['M', root]]).slice(0, -1)]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":54,"end_line":54,"start":2082,"end":2129,"source":"[[root], `${rawDiff([['M', root]])}trailing\\0`]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"source-expression","source":"`${rawDiff([['M', root]])}trailing\\0`"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [[root], `${rawDiff([['M', root]])}trailing\\0`]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":55,"end_line":61,"start":2133,"end":2208,"source":"[\n [root],\n rawDiff([\n ['M', root],\n ['M', root]\n ])\n ]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"call-source","callee":"rawDiff","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]}],"source":"rawDiff([\n ['M', root],\n ['M', root]\n ])"}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ [root], rawDiff([ ['M', root], ['M', root] ]) ]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":62,"end_line":68,"start":2212,"end":2293,"source":"[\n [root, root],\n rawDiff([\n ['M', root],\n ['M', root]\n ])\n ]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"call-source","callee":"rawDiff","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]}],"source":"rawDiff([\n ['M', root],\n ['M', root]\n ])"}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ [root, root], rawDiff([ ['M', root], ['M', root] ]) ]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":69,"end_line":75,"start":2297,"end":2400,"source":"[\n [root, 'src/shared/other.test.ts'],\n rawDiff([\n ['M', root],\n ['M', root]\n ])\n ]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}},{"kind":"string","value":"src/shared/other.test.ts"}]},{"kind":"call-source","callee":"rawDiff","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]}],"source":"rawDiff([\n ['M', root],\n ['M', root]\n ])"}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ [root, 'src/shared/other.test.ts'], rawDiff([ ['M', root], ['M', root] ]) ]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":76,"end_line":76,"start":2404,"end":2460,"source":"[[root], rawDiff([['M', 'src/shared/foreign.test.ts']])]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"call-source","callee":"rawDiff","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"string","value":"src/shared/foreign.test.ts"}]}]}],"source":"rawDiff([['M', 'src/shared/foreign.test.ts']])"}]},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [[root], rawDiff([['M', 'src/shared/foreign.test.ts']])]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":77,"end_line":77,"start":2464,"end":2499,"source":"[[root], rawDiff([['R100', root]])]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"call-source","callee":"rawDiff","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"R100"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]}],"source":"rawDiff([['R100', root]])"}]},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [[root], rawDiff([['R100', root]])]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":78,"end_line":78,"start":2503,"end":2535,"source":"[[root], rawDiff([['T', root]])]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"call-source","callee":"rawDiff","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"T"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]}],"source":"rawDiff([['T', root]])"}]},"index":10,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [[root], rawDiff([['T', root]])]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":80,"end_line":80,"start":2548,"end":2572,"source":"'src/../outside.test.ts'","value":{"kind":"string","value":"src/../outside.test.ts"},"index":11,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/../outside.test.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":81,"end_line":81,"start":2578,"end":2601,"source":"'src/./outside.test.ts'","value":{"kind":"string","value":"src/./outside.test.ts"},"index":12,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/./outside.test.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":82,"end_line":82,"start":2607,"end":2629,"source":"'src//outside.test.ts'","value":{"kind":"string","value":"src//outside.test.ts"},"index":13,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src//outside.test.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":83,"end_line":83,"start":2635,"end":2657,"source":"'/src/outside.test.ts'","value":{"kind":"string","value":"/src/outside.test.ts"},"index":14,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '/src/outside.test.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":84,"end_line":84,"start":2663,"end":2685,"source":"'src\\\\outside.test.ts'","value":{"kind":"string","value":"src\\outside.test.ts"},"index":15,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src\\\\outside.test.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":85,"end_line":85,"start":2691,"end":2715,"source":"'src/C:/outside.test.ts'","value":{"kind":"string","value":"src/C:/outside.test.ts"},"index":16,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/C:/outside.test.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":11,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":12,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":13,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":14,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":15,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":16,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:53:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":53,"end_line":53,"start":2042,"end":2064,"source":"rawDiff([['M', root]])","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":53,"end_line":53,"start":2042,"end":2064},"binding":"rawDiff","resolution":[],"enclosing_case":{"line":50,"title":"requires native qualification for incomplete or malformed diff evidence: %j"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":53,"end_line":53,"start":2050,"end":2063,"source":"[['M', root]]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [['M', root]]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:54:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":54,"end_line":54,"start":2094,"end":2116,"source":"rawDiff([['M', root]])","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":54,"end_line":54,"start":2094,"end":2116},"binding":"rawDiff","resolution":[],"enclosing_case":{"line":50,"title":"requires native qualification for incomplete or malformed diff evidence: %j"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":54,"end_line":54,"start":2102,"end":2115,"source":"[['M', root]]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [['M', root]]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:57:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":57,"end_line":60,"start":2151,"end":2204,"source":"rawDiff([\n ['M', root],\n ['M', root]\n ])","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":57,"end_line":60,"start":2151,"end":2204},"binding":"rawDiff","resolution":[],"enclosing_case":{"line":50,"title":"requires native qualification for incomplete or malformed diff evidence: %j"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":57,"end_line":60,"start":2159,"end":2203,"source":"[\n ['M', root],\n ['M', root]\n ]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ ['M', root], ['M', root] ]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:64:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":64,"end_line":67,"start":2236,"end":2289,"source":"rawDiff([\n ['M', root],\n ['M', root]\n ])","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":64,"end_line":67,"start":2236,"end":2289},"binding":"rawDiff","resolution":[],"enclosing_case":{"line":50,"title":"requires native qualification for incomplete or malformed diff evidence: %j"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":64,"end_line":67,"start":2244,"end":2288,"source":"[\n ['M', root],\n ['M', root]\n ]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ ['M', root], ['M', root] ]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:71:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":71,"end_line":74,"start":2343,"end":2396,"source":"rawDiff([\n ['M', root],\n ['M', root]\n ])","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":71,"end_line":74,"start":2343,"end":2396},"binding":"rawDiff","resolution":[],"enclosing_case":{"line":50,"title":"requires native qualification for incomplete or malformed diff evidence: %j"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":71,"end_line":74,"start":2351,"end":2395,"source":"[\n ['M', root],\n ['M', root]\n ]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ ['M', root], ['M', root] ]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:76:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":76,"end_line":76,"start":2413,"end":2459,"source":"rawDiff([['M', 'src/shared/foreign.test.ts']])","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":76,"end_line":76,"start":2413,"end":2459},"binding":"rawDiff","resolution":[],"enclosing_case":{"line":50,"title":"requires native qualification for incomplete or malformed diff evidence: %j"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":76,"end_line":76,"start":2421,"end":2458,"source":"[['M', 'src/shared/foreign.test.ts']]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"string","value":"src/shared/foreign.test.ts"}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [['M', 'src/shared/foreign.test.ts']]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:77:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":77,"end_line":77,"start":2473,"end":2498,"source":"rawDiff([['R100', root]])","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":77,"end_line":77,"start":2473,"end":2498},"binding":"rawDiff","resolution":[],"enclosing_case":{"line":50,"title":"requires native qualification for incomplete or malformed diff evidence: %j"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":77,"end_line":77,"start":2481,"end":2497,"source":"[['R100', root]]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"R100"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [['R100', root]]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:78:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":78,"end_line":78,"start":2512,"end":2534,"source":"rawDiff([['T', root]])","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":78,"end_line":78,"start":2512,"end":2534},"binding":"rawDiff","resolution":[],"enclosing_case":{"line":50,"title":"requires native qualification for incomplete or malformed diff evidence: %j"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":78,"end_line":78,"start":2520,"end":2533,"source":"[['T', root]]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"T"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [['T', root]]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:86:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":86,"end_line":86,"start":2743,"end":2765,"source":"rawDiff([['M', file]])","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":86,"end_line":86,"start":2743,"end":2765},"binding":"rawDiff","resolution":[],"enclosing_case":{"line":50,"title":"requires native qualification for incomplete or malformed diff evidence: %j"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":86,"end_line":86,"start":2751,"end":2764,"source":"[['M', file]]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [['M', file]]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:91:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":91,"end_line":94,"start":2944,"end":3040,"source":"classifyNativeCompatChanges(files, collect, {\n pullRequest: true,\n rawDiff: raw\n })","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":91,"end_line":94,"start":2944,"end":3040},"binding":"classifyNativeCompatChanges","resolution":[],"enclosing_case":{"line":50,"title":"requires native qualification for incomplete or malformed diff evidence: %j"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":91,"end_line":91,"start":2972,"end":2977,"source":"files","value":{"kind":"reference","source":"files","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":256,"end_line":256,"start":8741,"end":8757},"resolved":{"kind":"call-source","callee":"filesOf","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":254,"end_line":254,"start":8675,"end":8688},"resolved":{"kind":"source-expression","source":"cleanup.paths"}}],"source":"filesOf(entries)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: files. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":91,"end_line":91,"start":2979,"end":2986,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":90,"end_line":90,"start":2899,"end":2918},"resolved":{"kind":"call-source","callee":"vi.fn","arguments":[{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}}],"source":"vi.fn(nativeInputs)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":91,"end_line":94,"start":2988,"end":3039,"source":"{\n pullRequest: true,\n rawDiff: raw\n }","value":{"kind":"object","value":[{"key":"pullRequest","value":{"kind":"boolean","value":true}},{"key":"rawDiff","value":{"kind":"reference","source":"raw","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":110,"end_line":110,"start":3497,"end":3553},"resolved":{"kind":"source-expression","source":"`${rawHeader(status, beforeMode, afterMode)}\\0${root}\\0`"}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { pullRequest: true, rawDiff: raw }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: requires native qualification for incomplete or malformed diff evidence: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:100:parameter-table:17","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":100,"end_line":118,"start":3141,"end":3798,"source":"[\n ['120000', '120000', 'M'],\n ['000000', '120000', 'A'],\n ['120000', '000000', 'D'],\n ['160000', '160000', 'M'],\n ['100644', '120000', 'T'],\n ['100644', '100644', 'A'],\n ['000000', '000000', 'D'],\n ['100644', '000000', 'M']\n]","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":100,"end_line":109,"start":3149,"end":3383},"binding":"it.each","resolution":[],"enclosing_case":{"line":100,"title":"rejects nonordinary or inconsistent modes: %s %s %s"},"affected_case_lines":[100],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":101,"end_line":101,"start":3153,"end":3178,"source":"['120000', '120000', 'M']","value":{"kind":"array","value":[{"kind":"string","value":"120000"},{"kind":"string","value":"120000"},{"kind":"string","value":"M"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['120000', '120000', 'M']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":102,"end_line":102,"start":3182,"end":3207,"source":"['000000', '120000', 'A']","value":{"kind":"array","value":[{"kind":"string","value":"000000"},{"kind":"string","value":"120000"},{"kind":"string","value":"A"}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['000000', '120000', 'A']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":103,"end_line":103,"start":3211,"end":3236,"source":"['120000', '000000', 'D']","value":{"kind":"array","value":[{"kind":"string","value":"120000"},{"kind":"string","value":"000000"},{"kind":"string","value":"D"}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['120000', '000000', 'D']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":104,"end_line":104,"start":3240,"end":3265,"source":"['160000', '160000', 'M']","value":{"kind":"array","value":[{"kind":"string","value":"160000"},{"kind":"string","value":"160000"},{"kind":"string","value":"M"}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['160000', '160000', 'M']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":105,"end_line":105,"start":3269,"end":3294,"source":"['100644', '120000', 'T']","value":{"kind":"array","value":[{"kind":"string","value":"100644"},{"kind":"string","value":"120000"},{"kind":"string","value":"T"}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['100644', '120000', 'T']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":106,"end_line":106,"start":3298,"end":3323,"source":"['100644', '100644', 'A']","value":{"kind":"array","value":[{"kind":"string","value":"100644"},{"kind":"string","value":"100644"},{"kind":"string","value":"A"}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['100644', '100644', 'A']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":107,"end_line":107,"start":3327,"end":3352,"source":"['000000', '000000', 'D']","value":{"kind":"array","value":[{"kind":"string","value":"000000"},{"kind":"string","value":"000000"},{"kind":"string","value":"D"}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['000000', '000000', 'D']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":108,"end_line":108,"start":3356,"end":3381,"source":"['100644', '000000', 'M']","value":{"kind":"array","value":[{"kind":"string","value":"100644"},{"kind":"string","value":"000000"},{"kind":"string","value":"M"}]},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['100644', '000000', 'M']. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:112:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":112,"end_line":115,"start":3615,"end":3706,"source":"classifyNativeCompatChanges([root], collect, {\n pullRequest: true,\n rawDiff: raw\n })","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":112,"end_line":115,"start":3615,"end":3706},"binding":"classifyNativeCompatChanges","resolution":[],"enclosing_case":{"line":100,"title":"rejects nonordinary or inconsistent modes: %s %s %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":112,"end_line":112,"start":3643,"end":3649,"source":"[root]","value":{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [root]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":112,"end_line":112,"start":3651,"end":3658,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":111,"end_line":111,"start":3572,"end":3591},"resolved":{"kind":"call-source","callee":"vi.fn","arguments":[{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}}],"source":"vi.fn(nativeInputs)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":112,"end_line":115,"start":3660,"end":3705,"source":"{\n pullRequest: true,\n rawDiff: raw\n }","value":{"kind":"object","value":[{"key":"pullRequest","value":{"kind":"boolean","value":true}},{"key":"rawDiff","value":{"kind":"reference","source":"raw","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":110,"end_line":110,"start":3497,"end":3553},"resolved":{"kind":"source-expression","source":"`${rawHeader(status, beforeMode, afterMode)}\\0${root}\\0`"}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { pullRequest: true, rawDiff: raw }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: rejects nonordinary or inconsistent modes: %s %s %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:121:fixture-or-oracle-declaration:19","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":121,"end_line":121,"start":3893,"end":3916,"source":"[['M', root]]","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":121,"end_line":121,"start":3903,"end":3916},"binding":"entries","resolution":[],"enclosing_case":{"line":120,"title":"checks the native closure before skipping a selected server test"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":121,"end_line":121,"start":3904,"end":3915,"source":"['M', root]","value":{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['M', root]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:123:inline-api-or-fixture-input:20","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":123,"end_line":123,"start":3973,"end":3992,"source":"optionsFor(entries)","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":123,"end_line":123,"start":3973,"end":3992},"binding":"optionsFor","resolution":[],"enclosing_case":{"line":120,"title":"checks the native closure before skipping a selected server test"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":123,"end_line":123,"start":3984,"end":3991,"source":"entries","value":{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":121,"end_line":121,"start":3903,"end":3916},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: entries. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:124:inline-api-or-fixture-input:21","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":124,"end_line":127,"start":4018,"end":4106,"source":"classifyNativeCompatChanges([root], collect, {\n ...options,\n deferGraph: true\n })","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":124,"end_line":127,"start":4018,"end":4106},"binding":"classifyNativeCompatChanges","resolution":[],"enclosing_case":{"line":120,"title":"checks the native closure before skipping a selected server test"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":124,"end_line":124,"start":4046,"end":4052,"source":"[root]","value":{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [root]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":124,"end_line":124,"start":4054,"end":4061,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":122,"end_line":122,"start":3935,"end":3954},"resolved":{"kind":"call-source","callee":"vi.fn","arguments":[{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}}],"source":"vi.fn(nativeInputs)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":124,"end_line":127,"start":4063,"end":4105,"source":"{\n ...options,\n deferGraph: true\n }","value":{"kind":"object","value":[{"source":"...options"},{"key":"deferGraph","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { ...options, deferGraph: true }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:131:inline-api-or-fixture-input:22","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":131,"end_line":131,"start":4262,"end":4315,"source":"classifyNativeCompatChanges([root], collect, options)","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":131,"end_line":131,"start":4262,"end":4315},"binding":"classifyNativeCompatChanges","resolution":[],"enclosing_case":{"line":120,"title":"checks the native closure before skipping a selected server test"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":131,"end_line":131,"start":4290,"end":4296,"source":"[root]","value":{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [root]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":131,"end_line":131,"start":4298,"end":4305,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":122,"end_line":122,"start":3935,"end":3954},"resolved":{"kind":"call-source","callee":"vi.fn","arguments":[{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}}],"source":"vi.fn(nativeInputs)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":131,"end_line":131,"start":4307,"end":4314,"source":"options","value":{"kind":"reference","source":"options","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":123,"end_line":123,"start":3973,"end":3992},"resolved":{"kind":"call-source","callee":"optionsFor","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":121,"end_line":121,"start":3903,"end":3916},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]}}],"source":"optionsFor(entries)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: options. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the native closure before skipping a selected server test.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:138:inline-api-or-fixture-input:23","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":138,"end_line":142,"start":4588,"end":4726,"source":"classifyNativeCompatChanges(\n [root],\n async () => new Set([...NATIVE_COMPAT_ENTRY_POINTS, root]),\n optionsFor([['M', root]])\n )","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":138,"end_line":142,"start":4588,"end":4726},"binding":"classifyNativeCompatChanges","resolution":[],"enclosing_case":{"line":137,"title":"retains native qualification when a recognized test is consumed by its builder or smoke"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when a recognized test is consumed by its builder or smoke.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":139,"end_line":139,"start":4621,"end":4627,"source":"[root]","value":{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [root]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when a recognized test is consumed by its builder or smoke.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":140,"end_line":140,"start":4633,"end":4691,"source":"async () => new Set([...NATIVE_COMPAT_ENTRY_POINTS, root])","value":{"kind":"source-expression","source":"async () => new Set([...NATIVE_COMPAT_ENTRY_POINTS, root])"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => new Set([...NATIVE_COMPAT_ENTRY_POINTS, root]). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when a recognized test is consumed by its builder or smoke.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":141,"end_line":141,"start":4697,"end":4722,"source":"optionsFor([['M', root]])","value":{"kind":"call-source","callee":"optionsFor","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]}],"source":"optionsFor([['M', root]])"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: optionsFor([['M', root]]). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when a recognized test is consumed by its builder or smoke.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:141:inline-api-or-fixture-input:24","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":141,"end_line":141,"start":4697,"end":4722,"source":"optionsFor([['M', root]])","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":141,"end_line":141,"start":4697,"end":4722},"binding":"optionsFor","resolution":[],"enclosing_case":{"line":137,"title":"retains native qualification when a recognized test is consumed by its builder or smoke"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when a recognized test is consumed by its builder or smoke.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":141,"end_line":141,"start":4708,"end":4721,"source":"[['M', root]]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [['M', root]]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when a recognized test is consumed by its builder or smoke.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:146:parameter-table:25","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":146,"end_line":160,"start":4779,"end":5345,"source":"['missing-root', 'malformed-input', 'unavailable']","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":146,"end_line":146,"start":4787,"end":4837},"binding":"it.each","resolution":[],"enclosing_case":{"line":146,"title":"retains native qualification when closure evidence is %s"},"affected_case_lines":[146],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when closure evidence is %s.","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":146,"end_line":146,"start":4788,"end":4802,"source":"'missing-root'","value":{"kind":"string","value":"missing-root"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'missing-root'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when closure evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":146,"end_line":146,"start":4804,"end":4821,"source":"'malformed-input'","value":{"kind":"string","value":"malformed-input"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'malformed-input'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when closure evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":146,"end_line":146,"start":4823,"end":4836,"source":"'unavailable'","value":{"kind":"string","value":"unavailable"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'unavailable'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when closure evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:157:inline-api-or-fixture-input:26","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":157,"end_line":157,"start":5218,"end":5289,"source":"classifyNativeCompatChanges([root], collect, optionsFor([['M', root]]))","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":157,"end_line":157,"start":5218,"end":5289},"binding":"classifyNativeCompatChanges","resolution":[],"enclosing_case":{"line":146,"title":"retains native qualification when closure evidence is %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when closure evidence is %s.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":157,"end_line":157,"start":5246,"end":5252,"source":"[root]","value":{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [root]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when closure evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":157,"end_line":157,"start":5254,"end":5261,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":149,"end_line":156,"start":4946,"end":5192},"resolved":{"kind":"source-expression","source":"async () => {\n if (evidence === 'unavailable') {\n throw new Error('missing imported native input')\n }\n return evidence === 'missing-root'\n ? new Set()\n : new Set([...NATIVE_COMPAT_ENTRY_POINTS, '../bad'])\n }"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when closure evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":157,"end_line":157,"start":5263,"end":5288,"source":"optionsFor([['M', root]])","value":{"kind":"call-source","callee":"optionsFor","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]}],"source":"optionsFor([['M', root]])"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: optionsFor([['M', root]]). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when closure evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:157:inline-api-or-fixture-input:27","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":157,"end_line":157,"start":5263,"end":5288,"source":"optionsFor([['M', root]])","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":157,"end_line":157,"start":5263,"end":5288},"binding":"optionsFor","resolution":[],"enclosing_case":{"line":146,"title":"retains native qualification when closure evidence is %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when closure evidence is %s.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":157,"end_line":157,"start":5274,"end":5287,"source":"[['M', root]]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [['M', root]]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains native qualification when closure evidence is %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:162:parameter-table:28","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":162,"end_line":193,"start":5347,"end":6638,"source":"[\n 'package.json',\n 'pnpm-lock.yaml',\n '.npmrc',\n 'src/shared/node-runtime-pin.ts',\n 'src/shared/product-source.ts',\n 'src/packages/process-host/src/run-process.test.ts',\n 'native/example/fixture.test.ts',\n 'config/patches/node-pty@1.1.0.patch',\n 'config/scripts/build-orcad-prebuilds.mjs',\n 'config/scripts/orcad-prebuild-smoke.test.mjs',\n 'config/scripts/node-server-native-compat-scope.mjs',\n 'config/scripts/node-server-native-compat-scope.test.mjs',\n 'config/scripts/node-server-native-compat-cleanup.test-fixture.json',\n 'config/scripts/node-server-change-scope.mjs',\n 'config/scripts/verify-linux-glibc-floor.cjs',\n '.github/actions/prepare-native-runtime/action.yml',\n '.github/actions/prepare-headless-compiler/action.yml',\n '.github/workflows/node-server-tests.yml',\n 'src/main/persistence/worker.test-fixture.ts',\n 'src/main/native-chat/new-test-support.ts',\n 'docs/ci.md'\n]","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":162,"end_line":184,"start":5355,"end":6261},"binding":"it.each","resolution":[],"enclosing_case":{"line":162,"title":"keeps an unknown or protected input even when a test changes too: %s"},"affected_case_lines":[162],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":163,"end_line":163,"start":5359,"end":5373,"source":"'package.json'","value":{"kind":"string","value":"package.json"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'package.json'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":164,"end_line":164,"start":5377,"end":5393,"source":"'pnpm-lock.yaml'","value":{"kind":"string","value":"pnpm-lock.yaml"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'pnpm-lock.yaml'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":165,"end_line":165,"start":5397,"end":5405,"source":"'.npmrc'","value":{"kind":"string","value":".npmrc"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.npmrc'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":166,"end_line":166,"start":5409,"end":5441,"source":"'src/shared/node-runtime-pin.ts'","value":{"kind":"string","value":"src/shared/node-runtime-pin.ts"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/shared/node-runtime-pin.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":167,"end_line":167,"start":5445,"end":5475,"source":"'src/shared/product-source.ts'","value":{"kind":"string","value":"src/shared/product-source.ts"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/shared/product-source.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":168,"end_line":168,"start":5479,"end":5530,"source":"'src/packages/process-host/src/run-process.test.ts'","value":{"kind":"string","value":"src/packages/process-host/src/run-process.test.ts"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/packages/process-host/src/run-process.test.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":169,"end_line":169,"start":5534,"end":5566,"source":"'native/example/fixture.test.ts'","value":{"kind":"string","value":"native/example/fixture.test.ts"},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'native/example/fixture.test.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":170,"end_line":170,"start":5570,"end":5607,"source":"'config/patches/node-pty@1.1.0.patch'","value":{"kind":"string","value":"config/patches/node-pty@1.1.0.patch"},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/patches/node-pty@1.1.0.patch'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":171,"end_line":171,"start":5611,"end":5653,"source":"'config/scripts/build-orcad-prebuilds.mjs'","value":{"kind":"string","value":"config/scripts/build-orcad-prebuilds.mjs"},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/build-orcad-prebuilds.mjs'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":172,"end_line":172,"start":5657,"end":5703,"source":"'config/scripts/orcad-prebuild-smoke.test.mjs'","value":{"kind":"string","value":"config/scripts/orcad-prebuild-smoke.test.mjs"},"index":10,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/orcad-prebuild-smoke.test.mjs'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":173,"end_line":173,"start":5707,"end":5759,"source":"'config/scripts/node-server-native-compat-scope.mjs'","value":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"},"index":11,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-native-compat-scope.mjs'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":174,"end_line":174,"start":5763,"end":5820,"source":"'config/scripts/node-server-native-compat-scope.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.test.mjs"},"index":12,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-native-compat-scope.test.mjs'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":175,"end_line":175,"start":5824,"end":5892,"source":"'config/scripts/node-server-native-compat-cleanup.test-fixture.json'","value":{"kind":"string","value":"config/scripts/node-server-native-compat-cleanup.test-fixture.json"},"index":13,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-native-compat-cleanup.test-fixture.json'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":176,"end_line":176,"start":5896,"end":5941,"source":"'config/scripts/node-server-change-scope.mjs'","value":{"kind":"string","value":"config/scripts/node-server-change-scope.mjs"},"index":14,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-change-scope.mjs'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":177,"end_line":177,"start":5945,"end":5990,"source":"'config/scripts/verify-linux-glibc-floor.cjs'","value":{"kind":"string","value":"config/scripts/verify-linux-glibc-floor.cjs"},"index":15,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/verify-linux-glibc-floor.cjs'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":178,"end_line":178,"start":5994,"end":6045,"source":"'.github/actions/prepare-native-runtime/action.yml'","value":{"kind":"string","value":".github/actions/prepare-native-runtime/action.yml"},"index":16,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/prepare-native-runtime/action.yml'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":179,"end_line":179,"start":6049,"end":6103,"source":"'.github/actions/prepare-headless-compiler/action.yml'","value":{"kind":"string","value":".github/actions/prepare-headless-compiler/action.yml"},"index":17,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/prepare-headless-compiler/action.yml'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":180,"end_line":180,"start":6107,"end":6148,"source":"'.github/workflows/node-server-tests.yml'","value":{"kind":"string","value":".github/workflows/node-server-tests.yml"},"index":18,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/workflows/node-server-tests.yml'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":181,"end_line":181,"start":6152,"end":6197,"source":"'src/main/persistence/worker.test-fixture.ts'","value":{"kind":"string","value":"src/main/persistence/worker.test-fixture.ts"},"index":19,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/worker.test-fixture.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":182,"end_line":182,"start":6201,"end":6243,"source":"'src/main/native-chat/new-test-support.ts'","value":{"kind":"string","value":"src/main/native-chat/new-test-support.ts"},"index":20,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/native-chat/new-test-support.ts'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":183,"end_line":183,"start":6247,"end":6259,"source":"'docs/ci.md'","value":{"kind":"string","value":"docs/ci.md"},"index":21,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'docs/ci.md'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":11,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":12,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":13,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":14,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":15,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":16,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":17,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":18,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":19,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":20,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":21,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:185:fixture-or-oracle-declaration:29","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":185,"end_line":188,"start":6361,"end":6409,"source":"[\n ['M', root],\n ['M', file]\n ]","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":185,"end_line":188,"start":6371,"end":6409},"binding":"entries","resolution":[],"enclosing_case":{"line":162,"title":"keeps an unknown or protected input even when a test changes too: %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":186,"end_line":186,"start":6377,"end":6388,"source":"['M', root]","value":{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['M', root]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":187,"end_line":187,"start":6394,"end":6405,"source":"['M', file]","value":{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ['M', file]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:190:inline-api-or-fixture-input:30","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":190,"end_line":190,"start":6471,"end":6546,"source":"classifyNativeCompatChanges(filesOf(entries), collect, optionsFor(entries))","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":190,"end_line":190,"start":6471,"end":6546},"binding":"classifyNativeCompatChanges","resolution":[],"enclosing_case":{"line":162,"title":"keeps an unknown or protected input even when a test changes too: %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":190,"end_line":190,"start":6499,"end":6515,"source":"filesOf(entries)","value":{"kind":"call-source","callee":"filesOf","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":185,"end_line":188,"start":6371,"end":6409},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]}]}}],"source":"filesOf(entries)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: filesOf(entries). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":190,"end_line":190,"start":6517,"end":6524,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":189,"end_line":189,"start":6428,"end":6447},"resolved":{"kind":"call-source","callee":"vi.fn","arguments":[{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}}],"source":"vi.fn(nativeInputs)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":190,"end_line":190,"start":6526,"end":6545,"source":"optionsFor(entries)","value":{"kind":"call-source","callee":"optionsFor","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":185,"end_line":188,"start":6371,"end":6409},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]}]}}],"source":"optionsFor(entries)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: optionsFor(entries). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:190:inline-api-or-fixture-input:31","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":190,"end_line":190,"start":6526,"end":6545,"source":"optionsFor(entries)","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":190,"end_line":190,"start":6526,"end":6545},"binding":"optionsFor","resolution":[],"enclosing_case":{"line":162,"title":"keeps an unknown or protected input even when a test changes too: %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":190,"end_line":190,"start":6537,"end":6544,"source":"entries","value":{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":185,"end_line":188,"start":6371,"end":6409},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: entries. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps an unknown or protected input even when a test changes too: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:195:parameter-table:32","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":195,"end_line":202,"start":6640,"end":6941,"source":"['A', 'D']","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":195,"end_line":195,"start":6648,"end":6658},"binding":"it.each","resolution":[],"enclosing_case":{"line":195,"title":"retains qualification for %s of a named test-support input"},"affected_case_lines":[195],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":195,"end_line":195,"start":6649,"end":6652,"source":"'A'","value":{"kind":"string","value":"A"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'A'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":195,"end_line":195,"start":6654,"end":6657,"source":"'D'","value":{"kind":"string","value":"D"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'D'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:198:fixture-or-oracle-declaration:33","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":198,"end_line":198,"start":6757,"end":6786,"source":"[[status, support]]","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":198,"end_line":198,"start":6767,"end":6786},"binding":"entries","resolution":[],"enclosing_case":{"line":195,"title":"retains qualification for %s of a named test-support input"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":198,"end_line":198,"start":6768,"end":6785,"source":"[status, support]","value":{"kind":"array","value":[{"kind":"source-expression","source":"status"},{"kind":"reference","source":"support","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":15,"end_line":15,"start":677,"end":759},"resolved":{"kind":"string","value":"src/main/native-chat/agent-session-journal/journal-host-database-test-support.ts"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: [status, support]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:199:inline-api-or-fixture-input:34","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":199,"end_line":199,"start":6812,"end":6885,"source":"classifyNativeCompatChanges([support], nativeInputs, optionsFor(entries))","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":199,"end_line":199,"start":6812,"end":6885},"binding":"classifyNativeCompatChanges","resolution":[],"enclosing_case":{"line":195,"title":"retains qualification for %s of a named test-support input"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":199,"end_line":199,"start":6840,"end":6849,"source":"[support]","value":{"kind":"array","value":[{"kind":"reference","source":"support","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":15,"end_line":15,"start":677,"end":759},"resolved":{"kind":"string","value":"src/main/native-chat/agent-session-journal/journal-host-database-test-support.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [support]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":199,"end_line":199,"start":6851,"end":6863,"source":"nativeInputs","value":{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: nativeInputs. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":199,"end_line":199,"start":6865,"end":6884,"source":"optionsFor(entries)","value":{"kind":"call-source","callee":"optionsFor","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":198,"end_line":198,"start":6767,"end":6786},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"source-expression","source":"status"},{"kind":"reference","source":"support","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":15,"end_line":15,"start":677,"end":759},"resolved":{"kind":"string","value":"src/main/native-chat/agent-session-journal/journal-host-database-test-support.ts"}}]}]}}],"source":"optionsFor(entries)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: optionsFor(entries). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:199:inline-api-or-fixture-input:35","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":199,"end_line":199,"start":6865,"end":6884,"source":"optionsFor(entries)","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":199,"end_line":199,"start":6865,"end":6884},"binding":"optionsFor","resolution":[],"enclosing_case":{"line":195,"title":"retains qualification for %s of a named test-support input"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":199,"end_line":199,"start":6876,"end":6883,"source":"entries","value":{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":198,"end_line":198,"start":6767,"end":6786},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"source-expression","source":"status"},{"kind":"reference","source":"support","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":15,"end_line":15,"start":677,"end":759},"resolved":{"kind":"string","value":"src/main/native-chat/agent-session-journal/journal-host-database-test-support.ts"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: entries. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for %s of a named test-support input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:204:parameter-table:36","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":204,"end_line":223,"start":6943,"end":7412,"source":"[\n [\n ['D', 'src/shared/source.ts'],\n ['A', 'src/shared/source.test.ts']\n ],\n [\n ['D', 'src/shared/source.test.ts'],\n ['A', 'src/shared/source.ts']\n ]\n]","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":204,"end_line":213,"start":6951,"end":7119},"binding":"it.each","resolution":[],"enclosing_case":{"line":204,"title":"retains qualification for a rename crossing production and test paths: %j"},"affected_case_lines":[204],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for a rename crossing production and test paths: %j.","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":205,"end_line":208,"start":6955,"end":7034,"source":"[\n ['D', 'src/shared/source.ts'],\n ['A', 'src/shared/source.test.ts']\n ]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"D"},{"kind":"string","value":"src/shared/source.ts"}]},{"kind":"array","value":[{"kind":"string","value":"A"},{"kind":"string","value":"src/shared/source.test.ts"}]}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ ['D', 'src/shared/source.ts'], ['A', 'src/shared/source.test.ts'] ]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for a rename crossing production and test paths: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":209,"end_line":212,"start":7038,"end":7117,"source":"[\n ['D', 'src/shared/source.test.ts'],\n ['A', 'src/shared/source.ts']\n ]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"D"},{"kind":"string","value":"src/shared/source.test.ts"}]},{"kind":"array","value":[{"kind":"string","value":"A"},{"kind":"string","value":"src/shared/source.ts"}]}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ ['D', 'src/shared/source.test.ts'], ['A', 'src/shared/source.ts'] ]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for a rename crossing production and test paths: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:216:inline-api-or-fixture-input:37","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":216,"end_line":220,"start":7252,"end":7356,"source":"classifyNativeCompatChanges(\n filesOf(entries),\n nativeInputs,\n optionsFor(entries)\n )","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":216,"end_line":220,"start":7252,"end":7356},"binding":"classifyNativeCompatChanges","resolution":[],"enclosing_case":{"line":204,"title":"retains qualification for a rename crossing production and test paths: %j"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for a rename crossing production and test paths: %j.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":217,"end_line":217,"start":7287,"end":7303,"source":"filesOf(entries)","value":{"kind":"call-source","callee":"filesOf","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":198,"end_line":198,"start":6767,"end":6786},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"source-expression","source":"status"},{"kind":"reference","source":"support","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":15,"end_line":15,"start":677,"end":759},"resolved":{"kind":"string","value":"src/main/native-chat/agent-session-journal/journal-host-database-test-support.ts"}}]}]}}],"source":"filesOf(entries)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: filesOf(entries). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for a rename crossing production and test paths: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":218,"end_line":218,"start":7311,"end":7323,"source":"nativeInputs","value":{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: nativeInputs. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for a rename crossing production and test paths: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":219,"end_line":219,"start":7331,"end":7350,"source":"optionsFor(entries)","value":{"kind":"call-source","callee":"optionsFor","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":198,"end_line":198,"start":6767,"end":6786},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"source-expression","source":"status"},{"kind":"reference","source":"support","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":15,"end_line":15,"start":677,"end":759},"resolved":{"kind":"string","value":"src/main/native-chat/agent-session-journal/journal-host-database-test-support.ts"}}]}]}}],"source":"optionsFor(entries)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: optionsFor(entries). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for a rename crossing production and test paths: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:219:inline-api-or-fixture-input:38","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":219,"end_line":219,"start":7331,"end":7350,"source":"optionsFor(entries)","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":219,"end_line":219,"start":7331,"end":7350},"binding":"optionsFor","resolution":[],"enclosing_case":{"line":204,"title":"retains qualification for a rename crossing production and test paths: %j"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for a rename crossing production and test paths: %j.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":219,"end_line":219,"start":7342,"end":7349,"source":"entries","value":{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":198,"end_line":198,"start":6767,"end":6786},"resolved":{"kind":"array","value":[{"kind":"array","value":[{"kind":"source-expression","source":"status"},{"kind":"reference","source":"support","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":15,"end_line":15,"start":677,"end":759},"resolved":{"kind":"string","value":"src/main/native-chat/agent-session-journal/journal-host-database-test-support.ts"}}]}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: entries. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: retains qualification for a rename crossing production and test paths: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:225:parameter-table:39","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":225,"end_line":236,"start":7414,"end":7867,"source":"[{}, { pullRequest: false }, { pullRequest: true, fullQualification: true }]","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":225,"end_line":225,"start":7422,"end":7498},"binding":"it.each","resolution":[],"enclosing_case":{"line":225,"title":"keeps native qualification without ordinary PR authorization: %j"},"affected_case_lines":[225],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps native qualification without ordinary PR authorization: %j.","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":225,"end_line":225,"start":7423,"end":7425,"source":"{}","value":{"kind":"object","value":[]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: {}. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps native qualification without ordinary PR authorization: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":225,"end_line":225,"start":7427,"end":7449,"source":"{ pullRequest: false }","value":{"kind":"object","value":[{"key":"pullRequest","value":{"kind":"boolean","value":false}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { pullRequest: false }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps native qualification without ordinary PR authorization: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":225,"end_line":225,"start":7451,"end":7497,"source":"{ pullRequest: true, fullQualification: true }","value":{"kind":"object","value":[{"key":"pullRequest","value":{"kind":"boolean","value":true}},{"key":"fullQualification","value":{"kind":"boolean","value":true}}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { pullRequest: true, fullQualification: true }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps native qualification without ordinary PR authorization: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:229:inline-api-or-fixture-input:40","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":229,"end_line":232,"start":7659,"end":7768,"source":"classifyNativeCompatChanges([root], collect, {\n rawDiff: rawDiff([['M', root]]),\n ...options\n })","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":229,"end_line":232,"start":7659,"end":7768},"binding":"classifyNativeCompatChanges","resolution":[],"enclosing_case":{"line":225,"title":"keeps native qualification without ordinary PR authorization: %j"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps native qualification without ordinary PR authorization: %j.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":229,"end_line":229,"start":7687,"end":7693,"source":"[root]","value":{"kind":"array","value":[{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [root]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps native qualification without ordinary PR authorization: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":229,"end_line":229,"start":7695,"end":7702,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":228,"end_line":228,"start":7614,"end":7633},"resolved":{"kind":"call-source","callee":"vi.fn","arguments":[{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}}],"source":"vi.fn(nativeInputs)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps native qualification without ordinary PR authorization: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":229,"end_line":232,"start":7704,"end":7767,"source":"{\n rawDiff: rawDiff([['M', root]]),\n ...options\n }","value":{"kind":"object","value":[{"key":"rawDiff","value":{"kind":"call-source","callee":"rawDiff","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]}],"source":"rawDiff([['M', root]])"}},{"source":"...options"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { rawDiff: rawDiff([['M', root]]), ...options }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps native qualification without ordinary PR authorization: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:230:inline-api-or-fixture-input:41","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":230,"end_line":230,"start":7721,"end":7743,"source":"rawDiff([['M', root]])","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":230,"end_line":230,"start":7721,"end":7743},"binding":"rawDiff","resolution":[],"enclosing_case":{"line":225,"title":"keeps native qualification without ordinary PR authorization: %j"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps native qualification without ordinary PR authorization: %j.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":230,"end_line":230,"start":7729,"end":7742,"source":"[['M', root]]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"root","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":14,"end_line":14,"start":576,"end":660},"resolved":{"kind":"string","value":"src/main/persistence/profile-state/profile-state-recovery-crash-boundaries.test.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [['M', root]]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: keeps native qualification without ordinary PR authorization: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:241:inline-api-or-fixture-input:42","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":241,"end_line":241,"start":8087,"end":8156,"source":"classifyNodeServerChanges([file], collect, { modifiedFiles: [file] })","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":241,"end_line":241,"start":8087,"end":8156},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":238,"title":"qualifies a standalone change to the executable native routing policy"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":241,"end_line":241,"start":8113,"end":8119,"source":"[file]","value":{"kind":"array","value":[{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":241,"end_line":241,"start":8121,"end":8128,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":240,"end_line":240,"start":8045,"end":8064},"resolved":{"kind":"call-source","callee":"vi.fn","arguments":[{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}}],"source":"vi.fn(nativeInputs)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":241,"end_line":241,"start":8130,"end":8155,"source":"{ modifiedFiles: [file] }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"array","value":[{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: [file] }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:244:inline-api-or-fixture-input:43","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":244,"end_line":244,"start":8244,"end":8282,"source":"nodeServerQualification([file], scope)","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":244,"end_line":244,"start":8244,"end":8282},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":238,"title":"qualifies a standalone change to the executable native routing policy"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":244,"end_line":244,"start":8268,"end":8274,"source":"[file]","value":{"kind":"array","value":[{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":244,"end_line":244,"start":8276,"end":8281,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":241,"end_line":241,"start":8081,"end":8156},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges([file], collect, { modifiedFiles: [file] })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:248:inline-api-or-fixture-input:44","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":248,"end_line":248,"start":8380,"end":8451,"source":"classifyNativeCompatChanges([file], collect, optionsFor([['M', file]]))","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":248,"end_line":248,"start":8380,"end":8451},"binding":"classifyNativeCompatChanges","resolution":[],"enclosing_case":{"line":238,"title":"qualifies a standalone change to the executable native routing policy"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":248,"end_line":248,"start":8408,"end":8414,"source":"[file]","value":{"kind":"array","value":[{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":248,"end_line":248,"start":8416,"end":8423,"source":"collect","value":{"kind":"reference","source":"collect","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":240,"end_line":240,"start":8045,"end":8064},"resolved":{"kind":"call-source","callee":"vi.fn","arguments":[{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}}],"source":"vi.fn(nativeInputs)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collect. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":248,"end_line":248,"start":8425,"end":8450,"source":"optionsFor([['M', file]])","value":{"kind":"call-source","callee":"optionsFor","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]}]}],"source":"optionsFor([['M', file]])"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: optionsFor([['M', file]]). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:248:inline-api-or-fixture-input:45","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":248,"end_line":248,"start":8425,"end":8450,"source":"optionsFor([['M', file]])","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":248,"end_line":248,"start":8425,"end":8450},"binding":"optionsFor","resolution":[],"enclosing_case":{"line":238,"title":"qualifies a standalone change to the executable native routing policy"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":248,"end_line":248,"start":8436,"end":8449,"source":"[['M', file]]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"string","value":"M"},{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":239,"end_line":239,"start":7974,"end":8026},"resolved":{"kind":"string","value":"config/scripts/node-server-native-compat-scope.mjs"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [['M', file]]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: qualifies a standalone change to the executable native routing policy.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:257:inline-api-or-fixture-input:46","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":257,"end_line":260,"start":8781,"end":8888,"source":"classifyNativeCompatChanges(files, nativeInputs, {\n pullRequest: true,\n rawDiff: cleanup.rawDiff\n })","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":257,"end_line":260,"start":8781,"end":8888},"binding":"classifyNativeCompatChanges","resolution":[],"enclosing_case":{"line":253,"title":"recognizes the complete 119-path cleanup while retaining all runtime platform qualification"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: recognizes the complete 119-path cleanup while retaining all runtime platform qualification.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":257,"end_line":257,"start":8809,"end":8814,"source":"files","value":{"kind":"reference","source":"files","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":256,"end_line":256,"start":8741,"end":8757},"resolved":{"kind":"call-source","callee":"filesOf","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":254,"end_line":254,"start":8675,"end":8688},"resolved":{"kind":"source-expression","source":"cleanup.paths"}}],"source":"filesOf(entries)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: files. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: recognizes the complete 119-path cleanup while retaining all runtime platform qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":257,"end_line":257,"start":8816,"end":8828,"source":"nativeInputs","value":{"kind":"reference","source":"nativeInputs","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":36,"end_line":36,"start":1512,"end":1553},"resolved":{"kind":"source-expression","source":"() => new Set(NATIVE_COMPAT_ENTRY_POINTS)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: nativeInputs. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: recognizes the complete 119-path cleanup while retaining all runtime platform qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":257,"end_line":260,"start":8830,"end":8887,"source":"{\n pullRequest: true,\n rawDiff: cleanup.rawDiff\n }","value":{"kind":"object","value":[{"key":"pullRequest","value":{"kind":"boolean","value":true}},{"key":"rawDiff","value":{"kind":"source-expression","source":"cleanup.rawDiff"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { pullRequest: true, rawDiff: cleanup.rawDiff }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: recognizes the complete 119-path cleanup while retaining all runtime platform qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:262:inline-api-or-fixture-input:47","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":262,"end_line":264,"start":8960,"end":9095,"source":"classifyNodeServerChanges(files, async () => {\n throw new Error('the selected profile-state test forces runtime qualification')\n })","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":262,"end_line":264,"start":8960,"end":9095},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":253,"title":"recognizes the complete 119-path cleanup while retaining all runtime platform qualification"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: recognizes the complete 119-path cleanup while retaining all runtime platform qualification.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":262,"end_line":262,"start":8986,"end":8991,"source":"files","value":{"kind":"reference","source":"files","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":256,"end_line":256,"start":8741,"end":8757},"resolved":{"kind":"call-source","callee":"filesOf","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":254,"end_line":254,"start":8675,"end":8688},"resolved":{"kind":"source-expression","source":"cleanup.paths"}}],"source":"filesOf(entries)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: files. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: recognizes the complete 119-path cleanup while retaining all runtime platform qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":262,"end_line":264,"start":8993,"end":9094,"source":"async () => {\n throw new Error('the selected profile-state test forces runtime qualification')\n }","value":{"kind":"source-expression","source":"async () => {\n throw new Error('the selected profile-state test forces runtime qualification')\n }"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => { throw new Error('the selected profile-state test forces runtime qualification') }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: recognizes the complete 119-path cleanup while retaining all runtime platform qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:267:inline-api-or-fixture-input:48","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":267,"end_line":267,"start":9191,"end":9228,"source":"nodeServerQualification(files, scope)","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":267,"end_line":267,"start":9191,"end":9228},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":253,"title":"recognizes the complete 119-path cleanup while retaining all runtime platform qualification"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: recognizes the complete 119-path cleanup while retaining all runtime platform qualification.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":267,"end_line":267,"start":9215,"end":9220,"source":"files","value":{"kind":"reference","source":"files","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":256,"end_line":256,"start":8741,"end":8757},"resolved":{"kind":"call-source","callee":"filesOf","arguments":[{"kind":"reference","source":"entries","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":254,"end_line":254,"start":8675,"end":8688},"resolved":{"kind":"source-expression","source":"cleanup.paths"}}],"source":"filesOf(entries)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: files. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: recognizes the complete 119-path cleanup while retaining all runtime platform qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":267,"end_line":267,"start":9222,"end":9227,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":262,"end_line":264,"start":8954,"end":9095},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(files, async () => {\n throw new Error('the selected profile-state test forces runtime qualification')\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: recognizes the complete 119-path cleanup while retaining all runtime platform qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:275:inline-api-or-fixture-input:49","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":275,"end_line":278,"start":9458,"end":9576,"source":"classifyNativeCompatChanges(files, collectNodeServerInputs, {\n pullRequest: true,\n rawDiff: cleanup.rawDiff\n })","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":275,"end_line":278,"start":9458,"end":9576},"binding":"classifyNativeCompatChanges","resolution":[],"enclosing_case":{"line":273,"title":"checks the cleanup against the actual native build and smoke closure"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the cleanup against the actual native build and smoke closure.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":275,"end_line":275,"start":9486,"end":9491,"source":"files","value":{"kind":"reference","source":"files","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":274,"end_line":274,"start":9412,"end":9434},"resolved":{"kind":"call-source","callee":"filesOf","arguments":[{"kind":"source-expression","source":"cleanup.paths"}],"source":"filesOf(cleanup.paths)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: files. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the cleanup against the actual native build and smoke closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":275,"end_line":275,"start":9493,"end":9516,"source":"collectNodeServerInputs","value":{"kind":"source-expression","source":"collectNodeServerInputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collectNodeServerInputs. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the cleanup against the actual native build and smoke closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":275,"end_line":278,"start":9518,"end":9575,"source":"{\n pullRequest: true,\n rawDiff: cleanup.rawDiff\n }","value":{"kind":"object","value":[{"key":"pullRequest","value":{"kind":"boolean","value":true}},{"key":"rawDiff","value":{"kind":"source-expression","source":"cleanup.rawDiff"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { pullRequest: true, rawDiff: cleanup.rawDiff }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks the cleanup against the actual native build and smoke closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:283:inline-api-or-fixture-input:50","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":283,"end_line":285,"start":9748,"end":9858,"source":"parse(\n readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')\n )","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":283,"end_line":285,"start":9748,"end":9858},"binding":"parse","resolution":[],"enclosing_case":{"line":282,"title":"limits the extra job guard to glibc 2.17 and preserves unconditional callers"},"affected_case_lines":[],"decision":"keep","reason":"Drop repeated native-job guard substrings already exercised by the compiled16-scenario table. Evaluate scope/graph ALLOW_TEST_ONLY_NATIVE_SKIP expressions for ordinary PR, push, schedule, template and explicit-ref callers; keep actual CLI diff-argument wiring evidence.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":284,"end_line":284,"start":9759,"end":9854,"source":"readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')","value":{"kind":"call-source","callee":"readFileSync","arguments":[{"kind":"source-expression","source":"new URL('../../.github/workflows/node-server-tests.yml', import.meta.url)"},{"kind":"string","value":"utf8"}],"source":"readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8'). Drop repeated native-job guard substrings already exercised by the compiled16-scenario table. Evaluate scope/graph ALLOW_TEST_ONLY_NATIVE_SKIP expressions for ordinary PR, push, schedule, template and explicit-ref callers; keep actual CLI diff-argument wiring evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:291:for-of:51","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":291,"end_line":297,"start":10123,"end":10307,"source":"[\n workflow.jobs.persistence,\n workflow.jobs.linux_glibc_floor,\n workflow.jobs.linux_musl\n ]","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":291,"end_line":295,"start":10141,"end":10243},"binding":"const job","resolution":[],"enclosing_case":{"line":282,"title":"limits the extra job guard to glibc 2.17 and preserves unconditional callers"},"affected_case_lines":[],"decision":"keep","reason":"Drop repeated native-job guard substrings already exercised by the compiled16-scenario table. Evaluate scope/graph ALLOW_TEST_ONLY_NATIVE_SKIP expressions for ordinary PR, push, schedule, template and explicit-ref callers; keep actual CLI diff-argument wiring evidence.","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":292,"end_line":292,"start":10147,"end":10172,"source":"workflow.jobs.persistence","value":{"kind":"source-expression","source":"workflow.jobs.persistence"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: workflow.jobs.persistence. Drop repeated native-job guard substrings already exercised by the compiled16-scenario table. Evaluate scope/graph ALLOW_TEST_ONLY_NATIVE_SKIP expressions for ordinary PR, push, schedule, template and explicit-ref callers; keep actual CLI diff-argument wiring evidence.","implementation":{"disposition":"strengthened","reason":"The same persistence/linux_glibc_floor/linux_musl jobs are selected by name and their actual compiled eligibility is evaluated for ordinary PRs with native_compatibility true and false, replacing guard substring checks."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":293,"end_line":293,"start":10178,"end":10209,"source":"workflow.jobs.linux_glibc_floor","value":{"kind":"source-expression","source":"workflow.jobs.linux_glibc_floor"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: workflow.jobs.linux_glibc_floor. Drop repeated native-job guard substrings already exercised by the compiled16-scenario table. Evaluate scope/graph ALLOW_TEST_ONLY_NATIVE_SKIP expressions for ordinary PR, push, schedule, template and explicit-ref callers; keep actual CLI diff-argument wiring evidence.","implementation":{"disposition":"strengthened","reason":"The same persistence/linux_glibc_floor/linux_musl jobs are selected by name and their actual compiled eligibility is evaluated for ordinary PRs with native_compatibility true and false, replacing guard substring checks."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":294,"end_line":294,"start":10215,"end":10239,"source":"workflow.jobs.linux_musl","value":{"kind":"source-expression","source":"workflow.jobs.linux_musl"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: workflow.jobs.linux_musl. Drop repeated native-job guard substrings already exercised by the compiled16-scenario table. Evaluate scope/graph ALLOW_TEST_ONLY_NATIVE_SKIP expressions for ordinary PR, push, schedule, template and explicit-ref callers; keep actual CLI diff-argument wiring evidence.","implementation":{"disposition":"strengthened","reason":"The same persistence/linux_glibc_floor/linux_musl jobs are selected by name and their actual compiled eligibility is evaluated for ordinary PRs with native_compatibility true and false, replacing guard substring checks."}}],"implementation_rows":[{"index":1,"disposition":"strengthened","reason":"The same persistence/linux_glibc_floor/linux_musl jobs are selected by name and their actual compiled eligibility is evaluated for ordinary PRs with native_compatibility true and false, replacing guard substring checks."},{"index":2,"disposition":"strengthened","reason":"The same persistence/linux_glibc_floor/linux_musl jobs are selected by name and their actual compiled eligibility is evaluated for ordinary PRs with native_compatibility true and false, replacing guard substring checks."},{"index":3,"disposition":"strengthened","reason":"The same persistence/linux_glibc_floor/linux_musl jobs are selected by name and their actual compiled eligibility is evaluated for ordinary PRs with native_compatibility true and false, replacing guard substring checks."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:301:for-of:52","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":301,"end_line":306,"start":10558,"end":10857,"source":"[scope, graph]","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":301,"end_line":301,"start":10577,"end":10591},"binding":"const step","resolution":[],"enclosing_case":{"line":282,"title":"limits the extra job guard to glibc 2.17 and preserves unconditional callers"},"affected_case_lines":[],"decision":"keep","reason":"Drop repeated native-job guard substrings already exercised by the compiled16-scenario table. Evaluate scope/graph ALLOW_TEST_ONLY_NATIVE_SKIP expressions for ordinary PR, push, schedule, template and explicit-ref callers; keep actual CLI diff-argument wiring evidence.","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":301,"end_line":301,"start":10578,"end":10583,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":298,"end_line":298,"start":10324,"end":10387},"resolved":{"kind":"call-source","callee":"workflow.jobs.changes.steps.find","arguments":[{"kind":"source-expression","source":"(step) => step.id === 'scope'"}],"source":"workflow.jobs.changes.steps.find((step) => step.id === 'scope')"}},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: scope. Drop repeated native-job guard substrings already exercised by the compiled16-scenario table. Evaluate scope/graph ALLOW_TEST_ONLY_NATIVE_SKIP expressions for ordinary PR, push, schedule, template and explicit-ref callers; keep actual CLI diff-argument wiring evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":301,"end_line":301,"start":10585,"end":10590,"source":"graph","value":{"kind":"reference","source":"graph","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":299,"end_line":299,"start":10404,"end":10467},"resolved":{"kind":"call-source","callee":"workflow.jobs.changes.steps.find","arguments":[{"kind":"source-expression","source":"(step) => step.id === 'graph'"}],"source":"workflow.jobs.changes.steps.find((step) => step.id === 'graph')"}},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: graph. Drop repeated native-job guard substrings already exercised by the compiled16-scenario table. Evaluate scope/graph ALLOW_TEST_ONLY_NATIVE_SKIP expressions for ordinary PR, push, schedule, template and explicit-ref callers; keep actual CLI diff-argument wiring evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:313:inline-api-or-fixture-input:53","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":313,"end_line":315,"start":11140,"end":11250,"source":"parse(\n readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')\n )","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":313,"end_line":315,"start":11140,"end":11250},"binding":"parse","resolution":[],"enclosing_case":{"line":312,"title":"builds server glibc slots on glibc 2.28 and the compat slot on glibc 2.17 (design D6)"},"affected_case_lines":[],"decision":"keep","reason":"Remove repeated if-expression substring comparisons already proved by the compiled native-job table; retain platform/image/slot/runner configuration checks and describe them as configured slots.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":314,"end_line":314,"start":11151,"end":11246,"source":"readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')","value":{"kind":"call-source","callee":"readFileSync","arguments":[{"kind":"source-expression","source":"new URL('../../.github/workflows/node-server-tests.yml', import.meta.url)"},{"kind":"string","value":"utf8"}],"source":"readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8'). Remove repeated if-expression substring comparisons already proved by the compiled native-job table; retain platform/image/slot/runner configuration checks and describe them as configured slots.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:352:inline-api-or-fixture-input:54","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":352,"end_line":354,"start":12825,"end":12931,"source":"parse(\n readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')\n)","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":352,"end_line":354,"start":12825,"end":12931},"binding":"parse","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":353,"end_line":353,"start":12834,"end":12929,"source":"readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')","value":{"kind":"call-source","callee":"readFileSync","arguments":[{"kind":"source-expression","source":"new URL('../../.github/workflows/node-server-tests.yml', import.meta.url)"},{"kind":"string","value":"utf8"}],"source":"readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: readFileSync(new URL('../../.github/workflows/node-server-tests.yml', import.meta.url), 'utf8'). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:355:inline-api-or-fixture-input:55","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":355,"end_line":359,"start":12950,"end":13061,"source":"compileAggregateExpression(nativeWorkflow.jobs.linux_glibc217_compat.if, [\n 'needs',\n 'github',\n 'inputs'\n])","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":355,"end_line":359,"start":12950,"end":13061},"binding":"compileAggregateExpression","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":355,"end_line":355,"start":12977,"end":13021,"source":"nativeWorkflow.jobs.linux_glibc217_compat.if","value":{"kind":"source-expression","source":"nativeWorkflow.jobs.linux_glibc217_compat.if"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: nativeWorkflow.jobs.linux_glibc217_compat.if. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":355,"end_line":359,"start":13023,"end":13060,"source":"[\n 'needs',\n 'github',\n 'inputs'\n]","value":{"kind":"array","value":[{"kind":"string","value":"needs"},{"kind":"string","value":"github"},{"kind":"string","value":"inputs"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [ 'needs', 'github', 'inputs' ]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:361:parameter-table:56","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":361,"end_line":399,"start":13063,"end":14693,"source":"[\n { expected: false, native: 'false' },\n { expected: true, native: 'true' },\n { expected: true, native: '' },\n { expected: true },\n { expected: true, native: 'false', event: 'push' },\n { expected: true, native: 'false', event: 'schedule' },\n { expected: true, native: 'false', event: 'workflow_dispatch' },\n { expected: true, native: 'false', template: true },\n { expected: true, native: 'false', ref: 'other-commit' },\n { expected: true, native: 'true', persistence: 'failure' },\n { expected: true, native: 'true', persistence: 'cancelled' },\n { expected: true, native: 'true', persistence: 'skipped' },\n { expected: false, native: 'true', draft: true },\n { expected: false, native: 'true', qualification: 'false' },\n { expected: false, native: 'true', shouldRun: 'false' },\n { expected: false, native: 'true', cancelled: true }\n]","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":361,"end_line":378,"start":13071,"end":13919},"binding":"it.each","resolution":[],"enclosing_case":{"line":361,"title":"evaluates the hosted native job guard with %j"},"affected_case_lines":[361],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":362,"end_line":362,"start":13075,"end":13111,"source":"{ expected: false, native: 'false' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":false}},{"key":"native","value":{"kind":"string","value":"false"}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: false, native: 'false' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":363,"end_line":363,"start":13115,"end":13149,"source":"{ expected: true, native: 'true' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}},{"key":"native","value":{"kind":"string","value":"true"}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true, native: 'true' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":364,"end_line":364,"start":13153,"end":13183,"source":"{ expected: true, native: '' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}},{"key":"native","value":{"kind":"string","value":""}}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true, native: '' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":365,"end_line":365,"start":13187,"end":13205,"source":"{ expected: true }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":366,"end_line":366,"start":13209,"end":13259,"source":"{ expected: true, native: 'false', event: 'push' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}},{"key":"native","value":{"kind":"string","value":"false"}},{"key":"event","value":{"kind":"string","value":"push"}}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true, native: 'false', event: 'push' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":367,"end_line":367,"start":13263,"end":13317,"source":"{ expected: true, native: 'false', event: 'schedule' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}},{"key":"native","value":{"kind":"string","value":"false"}},{"key":"event","value":{"kind":"string","value":"schedule"}}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true, native: 'false', event: 'schedule' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":368,"end_line":368,"start":13321,"end":13384,"source":"{ expected: true, native: 'false', event: 'workflow_dispatch' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}},{"key":"native","value":{"kind":"string","value":"false"}},{"key":"event","value":{"kind":"string","value":"workflow_dispatch"}}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true, native: 'false', event: 'workflow_dispatch' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":369,"end_line":369,"start":13388,"end":13439,"source":"{ expected: true, native: 'false', template: true }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}},{"key":"native","value":{"kind":"string","value":"false"}},{"key":"template","value":{"kind":"boolean","value":true}}]},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true, native: 'false', template: true }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":370,"end_line":370,"start":13443,"end":13499,"source":"{ expected: true, native: 'false', ref: 'other-commit' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}},{"key":"native","value":{"kind":"string","value":"false"}},{"key":"ref","value":{"kind":"string","value":"other-commit"}}]},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true, native: 'false', ref: 'other-commit' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":371,"end_line":371,"start":13503,"end":13561,"source":"{ expected: true, native: 'true', persistence: 'failure' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}},{"key":"native","value":{"kind":"string","value":"true"}},{"key":"persistence","value":{"kind":"string","value":"failure"}}]},"index":10,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true, native: 'true', persistence: 'failure' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":372,"end_line":372,"start":13565,"end":13625,"source":"{ expected: true, native: 'true', persistence: 'cancelled' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}},{"key":"native","value":{"kind":"string","value":"true"}},{"key":"persistence","value":{"kind":"string","value":"cancelled"}}]},"index":11,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true, native: 'true', persistence: 'cancelled' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":373,"end_line":373,"start":13629,"end":13687,"source":"{ expected: true, native: 'true', persistence: 'skipped' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":true}},{"key":"native","value":{"kind":"string","value":"true"}},{"key":"persistence","value":{"kind":"string","value":"skipped"}}]},"index":12,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: true, native: 'true', persistence: 'skipped' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":374,"end_line":374,"start":13691,"end":13739,"source":"{ expected: false, native: 'true', draft: true }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":false}},{"key":"native","value":{"kind":"string","value":"true"}},{"key":"draft","value":{"kind":"boolean","value":true}}]},"index":13,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: false, native: 'true', draft: true }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":375,"end_line":375,"start":13743,"end":13802,"source":"{ expected: false, native: 'true', qualification: 'false' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":false}},{"key":"native","value":{"kind":"string","value":"true"}},{"key":"qualification","value":{"kind":"string","value":"false"}}]},"index":14,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: false, native: 'true', qualification: 'false' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":376,"end_line":376,"start":13806,"end":13861,"source":"{ expected: false, native: 'true', shouldRun: 'false' }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":false}},{"key":"native","value":{"kind":"string","value":"true"}},{"key":"shouldRun","value":{"kind":"string","value":"false"}}]},"index":15,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: false, native: 'true', shouldRun: 'false' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":377,"end_line":377,"start":13865,"end":13917,"source":"{ expected: false, native: 'true', cancelled: true }","value":{"kind":"object","value":[{"key":"expected","value":{"kind":"boolean","value":false}},{"key":"native","value":{"kind":"string","value":"true"}},{"key":"cancelled","value":{"kind":"boolean","value":true}}]},"index":16,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { expected: false, native: 'true', cancelled: true }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":11,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":12,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":13,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":14,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":15,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":16,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:379:fixture-or-oracle-declaration:57","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":379,"end_line":395,"start":13994,"end":14577,"source":"{\n github: {\n event_name: scenario.event ?? 'pull_request',\n event: { pull_request: { draft: scenario.draft ?? false } }\n },\n inputs: { build_template: scenario.template ?? false, ref: scenario.ref ?? '' },\n needs: {\n persistence: { result: scenario.persistence ?? 'success' },\n changes: {\n outputs: {\n should_run: scenario.shouldRun ?? 'true',\n qualification: scenario.qualification ?? 'true',\n ...(scenario.native === undefined ? {} : { native_compatibility: scenario.native })\n }\n }\n }\n }","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":379,"end_line":395,"start":14004,"end":14577},"binding":"context","resolution":[],"enclosing_case":{"line":361,"title":"evaluates the hosted native job guard with %j"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":380,"end_line":383,"start":14010,"end":14143,"source":"github: {\n event_name: scenario.event ?? 'pull_request',\n event: { pull_request: { draft: scenario.draft ?? false } }\n }","value":{"kind":"property","key":"github","value":{"kind":"object","value":[{"key":"event_name","value":{"kind":"source-expression","source":"scenario.event ?? 'pull_request'"}},{"key":"event","value":{"kind":"object","value":[{"key":"pull_request","value":{"kind":"object","value":[{"key":"draft","value":{"kind":"source-expression","source":"scenario.draft ?? false"}}]}}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: github: { event_name: scenario.event ?? 'pull_request', event: { pull_request: { draft: scenario.draft ?? false } } }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":384,"end_line":384,"start":14149,"end":14228,"source":"inputs: { build_template: scenario.template ?? false, ref: scenario.ref ?? '' }","value":{"kind":"property","key":"inputs","value":{"kind":"object","value":[{"key":"build_template","value":{"kind":"source-expression","source":"scenario.template ?? false"}},{"key":"ref","value":{"kind":"source-expression","source":"scenario.ref ?? ''"}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: inputs: { build_template: scenario.template ?? false, ref: scenario.ref ?? '' }. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":385,"end_line":394,"start":14234,"end":14573,"source":"needs: {\n persistence: { result: scenario.persistence ?? 'success' },\n changes: {\n outputs: {\n should_run: scenario.shouldRun ?? 'true',\n qualification: scenario.qualification ?? 'true',\n ...(scenario.native === undefined ? {} : { native_compatibility: scenario.native })\n }\n }\n }","value":{"kind":"property","key":"needs","value":{"kind":"object","value":[{"key":"persistence","value":{"kind":"object","value":[{"key":"result","value":{"kind":"source-expression","source":"scenario.persistence ?? 'success'"}}]}},{"key":"changes","value":{"kind":"object","value":[{"key":"outputs","value":{"kind":"object","value":[{"key":"should_run","value":{"kind":"source-expression","source":"scenario.shouldRun ?? 'true'"}},{"key":"qualification","value":{"kind":"source-expression","source":"scenario.qualification ?? 'true'"}},{"source":"...(scenario.native === undefined ? {} : { native_compatibility: scenario.native })"}]}}]}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: needs: { persistence: { result: scenario.persistence ?? 'success' }, changes: { outputs: { should_run: scenari. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: evaluates the hosted native job guard with %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:401:parameter-table:58","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":401,"end_line":413,"start":14695,"end":15111,"source":"['M', 'A', 'D']","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":401,"end_line":401,"start":14703,"end":14718},"binding":"it.each","resolution":[],"enclosing_case":{"line":401,"title":"checks %s of the existing serializer test diagnostics against the native closure"},"affected_case_lines":[401],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks %s of the existing serializer test diagnostics against the native closure.","rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":401,"end_line":401,"start":14704,"end":14707,"source":"'M'","value":{"kind":"string","value":"M"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'M'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks %s of the existing serializer test diagnostics against the native closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":401,"end_line":401,"start":14709,"end":14712,"source":"'A'","value":{"kind":"string","value":"A"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'A'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks %s of the existing serializer test diagnostics against the native closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":401,"end_line":401,"start":14714,"end":14717,"source":"'D'","value":{"kind":"string","value":"D"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'D'. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks %s of the existing serializer test diagnostics against the native closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:405:inline-api-or-fixture-input:59","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":405,"end_line":409,"start":14921,"end":15035,"source":"classifyNativeCompatChanges(\n [file],\n collectNodeServerInputs,\n optionsFor([[status, file]])\n )","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":405,"end_line":409,"start":14921,"end":15035},"binding":"classifyNativeCompatChanges","resolution":[],"enclosing_case":{"line":401,"title":"checks %s of the existing serializer test diagnostics against the native closure"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks %s of the existing serializer test diagnostics against the native closure.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":406,"end_line":406,"start":14956,"end":14962,"source":"[file]","value":{"kind":"array","value":[{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":404,"end_line":404,"start":14846,"end":14895},"resolved":{"kind":"string","value":"src/main/daemon/serialize-grid-variant-scope.ts"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks %s of the existing serializer test diagnostics against the native closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":407,"end_line":407,"start":14970,"end":14993,"source":"collectNodeServerInputs","value":{"kind":"source-expression","source":"collectNodeServerInputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: collectNodeServerInputs. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks %s of the existing serializer test diagnostics against the native closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":408,"end_line":408,"start":15001,"end":15029,"source":"optionsFor([[status, file]])","value":{"kind":"call-source","callee":"optionsFor","arguments":[{"kind":"array","value":[{"kind":"array","value":[{"kind":"source-expression","source":"status"},{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":404,"end_line":404,"start":14846,"end":14895},"resolved":{"kind":"string","value":"src/main/daemon/serialize-grid-variant-scope.ts"}}]}]}],"source":"optionsFor([[status, file]])"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: optionsFor([[status, file]]). Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks %s of the existing serializer test diagnostics against the native closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}},{"id":"43:408:inline-api-or-fixture-input:60","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-native-compat-scope.test.mjs","line":408,"end_line":408,"start":15001,"end":15029,"source":"optionsFor([[status, file]])","input_position":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":408,"end_line":408,"start":15001,"end":15029},"binding":"optionsFor","resolution":[],"enclosing_case":{"line":401,"title":"checks %s of the existing serializer test diagnostics against the native closure"},"affected_case_lines":[],"decision":"keep","reason":"Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks %s of the existing serializer test diagnostics against the native closure.","rows":[{"index":1,"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":408,"end_line":408,"start":15012,"end":15028,"source":"[[status, file]]","value":{"kind":"array","value":[{"kind":"array","value":[{"kind":"source-expression","source":"status"},{"kind":"reference","source":"file","resolved_at":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","line":404,"end_line":404,"start":14846,"end":14895},"resolved":{"kind":"string","value":"src/main/daemon/serialize-grid-variant-scope.ts"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [[status, file]]. Actual raw diff parser/native-compat classifier and compiled workflow guard receive independent malformed/status/path/caller controls or the actual native closure; conservative outcomes are directly asserted. Scenario: checks %s of the existing serializer test diagnostics against the native closure.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342"}}],"original_review_sha256":"d04d22c678a8b103c5885484d59b8ab31873e921e9aedbcfbef0cb90d2bb6b7e","reviewer":"audit_config","reviewed_sha256":"dea59afc2a729cccefb462268c0d7c7d4672fe76394c74ebb983f8ef47adf342","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/node-server-native-compat-scope.test.mjs","final_declarations":17,"current_controls":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","each":[{"input":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":1994,"end":2769,"line":50,"end_line":87,"source":"[\n [[], ''],\n [[root], undefined],\n [[root], rawDiff([['M', root]]).slice(0, -1)],\n [[root], `${rawDiff([['M', root]])}trailing\\0`],\n [\n [root],\n rawDiff([\n ['M', root],\n ['M', root]\n ])\n ],\n [\n [root, root],\n rawDiff([\n ['M', root],\n ['M', root]\n ])\n ],\n [\n [root, 'src/shared/other.test.ts'],\n rawDiff([\n ['M', root],\n ['M', root]\n ])\n ],\n [[root], rawDiff([['M', 'src/shared/foreign.test.ts']])],\n [[root], rawDiff([['R100', root]])],\n [[root], rawDiff([['T', root]])],\n ...[\n 'src/../outside.test.ts',\n 'src/./outside.test.ts',\n 'src//outside.test.ts',\n '/src/outside.test.ts',\n 'src\\\\outside.test.ts',\n 'src/C:/outside.test.ts'\n ].map((file) => [[file], rawDiff([['M', file]])])\n]"},"rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":1998,"end":2006,"line":51,"end_line":51,"source":"[[], '']"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":2010,"end":2029,"line":52,"end_line":52,"source":"[[root], undefined]"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":2033,"end":2078,"line":53,"end_line":53,"source":"[[root], rawDiff([['M', root]]).slice(0, -1)]"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":2082,"end":2129,"line":54,"end_line":54,"source":"[[root], `${rawDiff([['M', root]])}trailing\\0`]"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":2133,"end":2208,"line":55,"end_line":61,"source":"[\n [root],\n rawDiff([\n ['M', root],\n ['M', root]\n ])\n ]"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":2212,"end":2293,"line":62,"end_line":68,"source":"[\n [root, root],\n rawDiff([\n ['M', root],\n ['M', root]\n ])\n ]"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":2297,"end":2400,"line":69,"end_line":75,"source":"[\n [root, 'src/shared/other.test.ts'],\n rawDiff([\n ['M', root],\n ['M', root]\n ])\n ]"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":2404,"end":2460,"line":76,"end_line":76,"source":"[[root], rawDiff([['M', 'src/shared/foreign.test.ts']])]"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":2464,"end":2499,"line":77,"end_line":77,"source":"[[root], rawDiff([['R100', root]])]"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":2503,"end":2535,"line":78,"end_line":78,"source":"[[root], rawDiff([['T', root]])]"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":2548,"end":2572,"line":80,"end_line":80,"source":"'src/../outside.test.ts'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":2578,"end":2601,"line":81,"end_line":81,"source":"'src/./outside.test.ts'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":2607,"end":2629,"line":82,"end_line":82,"source":"'src//outside.test.ts'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":2635,"end":2657,"line":83,"end_line":83,"source":"'/src/outside.test.ts'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":2663,"end":2685,"line":84,"end_line":84,"source":"'src\\\\outside.test.ts'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":2691,"end":2715,"line":85,"end_line":85,"source":"'src/C:/outside.test.ts'"}]},{"input":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":3149,"end":3383,"line":100,"end_line":109,"source":"[\n ['120000', '120000', 'M'],\n ['000000', '120000', 'A'],\n ['120000', '000000', 'D'],\n ['160000', '160000', 'M'],\n ['100644', '120000', 'T'],\n ['100644', '100644', 'A'],\n ['000000', '000000', 'D'],\n ['100644', '000000', 'M']\n]"},"rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":3153,"end":3178,"line":101,"end_line":101,"source":"['120000', '120000', 'M']"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":3182,"end":3207,"line":102,"end_line":102,"source":"['000000', '120000', 'A']"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":3211,"end":3236,"line":103,"end_line":103,"source":"['120000', '000000', 'D']"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":3240,"end":3265,"line":104,"end_line":104,"source":"['160000', '160000', 'M']"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":3269,"end":3294,"line":105,"end_line":105,"source":"['100644', '120000', 'T']"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":3298,"end":3323,"line":106,"end_line":106,"source":"['100644', '100644', 'A']"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":3327,"end":3352,"line":107,"end_line":107,"source":"['000000', '000000', 'D']"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":3356,"end":3381,"line":108,"end_line":108,"source":"['100644', '000000', 'M']"}]},{"input":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":4787,"end":4837,"line":146,"end_line":146,"source":"['missing-root', 'malformed-input', 'unavailable']"},"rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":4788,"end":4802,"line":146,"end_line":146,"source":"'missing-root'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":4804,"end":4821,"line":146,"end_line":146,"source":"'malformed-input'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":4823,"end":4836,"line":146,"end_line":146,"source":"'unavailable'"}]},{"input":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":5355,"end":6261,"line":162,"end_line":184,"source":"[\n 'package.json',\n 'pnpm-lock.yaml',\n '.npmrc',\n 'src/shared/node-runtime-pin.ts',\n 'src/shared/product-source.ts',\n 'src/packages/process-host/src/run-process.test.ts',\n 'native/example/fixture.test.ts',\n 'config/patches/node-pty@1.1.0.patch',\n 'config/scripts/build-orcad-prebuilds.mjs',\n 'config/scripts/orcad-prebuild-smoke.test.mjs',\n 'config/scripts/node-server-native-compat-scope.mjs',\n 'config/scripts/node-server-native-compat-scope.test.mjs',\n 'config/scripts/node-server-native-compat-cleanup.test-fixture.json',\n 'config/scripts/node-server-change-scope.mjs',\n 'config/scripts/verify-linux-glibc-floor.cjs',\n '.github/actions/prepare-native-runtime/action.yml',\n '.github/actions/prepare-headless-compiler/action.yml',\n '.github/workflows/node-server-tests.yml',\n 'src/main/persistence/worker.test-fixture.ts',\n 'src/main/native-chat/new-test-support.ts',\n 'docs/ci.md'\n]"},"rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":5359,"end":5373,"line":163,"end_line":163,"source":"'package.json'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":5377,"end":5393,"line":164,"end_line":164,"source":"'pnpm-lock.yaml'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":5397,"end":5405,"line":165,"end_line":165,"source":"'.npmrc'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":5409,"end":5441,"line":166,"end_line":166,"source":"'src/shared/node-runtime-pin.ts'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":5445,"end":5475,"line":167,"end_line":167,"source":"'src/shared/product-source.ts'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":5479,"end":5530,"line":168,"end_line":168,"source":"'src/packages/process-host/src/run-process.test.ts'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":5534,"end":5566,"line":169,"end_line":169,"source":"'native/example/fixture.test.ts'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":5570,"end":5607,"line":170,"end_line":170,"source":"'config/patches/node-pty@1.1.0.patch'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":5611,"end":5653,"line":171,"end_line":171,"source":"'config/scripts/build-orcad-prebuilds.mjs'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":5657,"end":5703,"line":172,"end_line":172,"source":"'config/scripts/orcad-prebuild-smoke.test.mjs'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":5707,"end":5759,"line":173,"end_line":173,"source":"'config/scripts/node-server-native-compat-scope.mjs'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":5763,"end":5820,"line":174,"end_line":174,"source":"'config/scripts/node-server-native-compat-scope.test.mjs'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":5824,"end":5892,"line":175,"end_line":175,"source":"'config/scripts/node-server-native-compat-cleanup.test-fixture.json'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":5896,"end":5941,"line":176,"end_line":176,"source":"'config/scripts/node-server-change-scope.mjs'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":5945,"end":5990,"line":177,"end_line":177,"source":"'config/scripts/verify-linux-glibc-floor.cjs'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":5994,"end":6045,"line":178,"end_line":178,"source":"'.github/actions/prepare-native-runtime/action.yml'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":6049,"end":6103,"line":179,"end_line":179,"source":"'.github/actions/prepare-headless-compiler/action.yml'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":6107,"end":6148,"line":180,"end_line":180,"source":"'.github/workflows/node-server-tests.yml'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":6152,"end":6197,"line":181,"end_line":181,"source":"'src/main/persistence/worker.test-fixture.ts'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":6201,"end":6243,"line":182,"end_line":182,"source":"'src/main/native-chat/new-test-support.ts'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":6247,"end":6259,"line":183,"end_line":183,"source":"'docs/ci.md'"}]},{"input":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":6648,"end":6658,"line":195,"end_line":195,"source":"['A', 'D']"},"rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":6649,"end":6652,"line":195,"end_line":195,"source":"'A'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":6654,"end":6657,"line":195,"end_line":195,"source":"'D'"}]},{"input":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":6951,"end":7119,"line":204,"end_line":213,"source":"[\n [\n ['D', 'src/shared/source.ts'],\n ['A', 'src/shared/source.test.ts']\n ],\n [\n ['D', 'src/shared/source.test.ts'],\n ['A', 'src/shared/source.ts']\n ]\n]"},"rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":6955,"end":7034,"line":205,"end_line":208,"source":"[\n ['D', 'src/shared/source.ts'],\n ['A', 'src/shared/source.test.ts']\n ]"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":7038,"end":7117,"line":209,"end_line":212,"source":"[\n ['D', 'src/shared/source.test.ts'],\n ['A', 'src/shared/source.ts']\n ]"}]},{"input":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":7422,"end":7498,"line":225,"end_line":225,"source":"[{}, { pullRequest: false }, { pullRequest: true, fullQualification: true }]"},"rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":7423,"end":7425,"line":225,"end_line":225,"source":"{}"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":7427,"end":7449,"line":225,"end_line":225,"source":"{ pullRequest: false }"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":7451,"end":7497,"line":225,"end_line":225,"source":"{ pullRequest: true, fullQualification: true }"}]},{"input":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":13487,"end":14335,"line":380,"end_line":397,"source":"[\n { expected: false, native: 'false' },\n { expected: true, native: 'true' },\n { expected: true, native: '' },\n { expected: true },\n { expected: true, native: 'false', event: 'push' },\n { expected: true, native: 'false', event: 'schedule' },\n { expected: true, native: 'false', event: 'workflow_dispatch' },\n { expected: true, native: 'false', template: true },\n { expected: true, native: 'false', ref: 'other-commit' },\n { expected: true, native: 'true', persistence: 'failure' },\n { expected: true, native: 'true', persistence: 'cancelled' },\n { expected: true, native: 'true', persistence: 'skipped' },\n { expected: false, native: 'true', draft: true },\n { expected: false, native: 'true', qualification: 'false' },\n { expected: false, native: 'true', shouldRun: 'false' },\n { expected: false, native: 'true', cancelled: true }\n]"},"rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":13491,"end":13527,"line":381,"end_line":381,"source":"{ expected: false, native: 'false' }"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":13531,"end":13565,"line":382,"end_line":382,"source":"{ expected: true, native: 'true' }"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":13569,"end":13599,"line":383,"end_line":383,"source":"{ expected: true, native: '' }"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":13603,"end":13621,"line":384,"end_line":384,"source":"{ expected: true }"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":13625,"end":13675,"line":385,"end_line":385,"source":"{ expected: true, native: 'false', event: 'push' }"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":13679,"end":13733,"line":386,"end_line":386,"source":"{ expected: true, native: 'false', event: 'schedule' }"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":13737,"end":13800,"line":387,"end_line":387,"source":"{ expected: true, native: 'false', event: 'workflow_dispatch' }"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":13804,"end":13855,"line":388,"end_line":388,"source":"{ expected: true, native: 'false', template: true }"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":13859,"end":13915,"line":389,"end_line":389,"source":"{ expected: true, native: 'false', ref: 'other-commit' }"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":13919,"end":13977,"line":390,"end_line":390,"source":"{ expected: true, native: 'true', persistence: 'failure' }"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":13981,"end":14041,"line":391,"end_line":391,"source":"{ expected: true, native: 'true', persistence: 'cancelled' }"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":14045,"end":14103,"line":392,"end_line":392,"source":"{ expected: true, native: 'true', persistence: 'skipped' }"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":14107,"end":14155,"line":393,"end_line":393,"source":"{ expected: false, native: 'true', draft: true }"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":14159,"end":14218,"line":394,"end_line":394,"source":"{ expected: false, native: 'true', qualification: 'false' }"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":14222,"end":14277,"line":395,"end_line":395,"source":"{ expected: false, native: 'true', shouldRun: 'false' }"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":14281,"end":14333,"line":396,"end_line":396,"source":"{ expected: false, native: 'true', cancelled: true }"}]},{"input":{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":15119,"end":15134,"line":420,"end_line":420,"source":"['M', 'A', 'D']"},"rows":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":15120,"end":15123,"line":420,"end_line":420,"source":"'M'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":15125,"end":15128,"line":420,"end_line":420,"source":"'A'"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":15130,"end":15133,"line":420,"end_line":420,"source":"'D'"}]}],"for_of":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":10115,"end":10129,"line":289,"end_line":289,"source":"[scope, graph]","binding":"const step","changed":false},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":10311,"end":10615,"line":294,"end_line":302,"source":"[\n ['pull_request', false, '', true],\n ['push', false, '', false],\n ['schedule', false, '', false],\n ['workflow_dispatch', false, '', false],\n ['workflow_call', false, '', false],\n ['pull_request', true, '', false],\n ['pull_request', false, 'refs/tags/v1', false]\n ]","binding":"const [event, template, ref, expected]","changed":true},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":10935,"end":10985,"line":312,"end_line":312,"source":"['persistence', 'linux_glibc_floor', 'linux_musl']","binding":"const name","changed":true},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":11141,"end":11158,"line":318,"end_line":318,"source":"['true', 'false']","binding":"const native","changed":true}],"literal_nodes_without_original_source_match":[{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":10220,"end":10258,"line":290,"end_line":293,"source":"[\n 'github',\n 'inputs'\n ]","kind":"array"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":10311,"end":10615,"line":294,"end_line":302,"source":"[\n ['pull_request', false, '', true],\n ['push', false, '', false],\n ['schedule', false, '', false],\n ['workflow_dispatch', false, '', false],\n ['workflow_call', false, '', false],\n ['pull_request', true, '', false],\n ['pull_request', false, 'refs/tags/v1', false]\n ]","kind":"array"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":10319,"end":10352,"line":295,"end_line":295,"source":"['pull_request', false, '', true]","kind":"array"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":10360,"end":10386,"line":296,"end_line":296,"source":"['push', false, '', false]","kind":"array"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":10394,"end":10424,"line":297,"end_line":297,"source":"['schedule', false, '', false]","kind":"array"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":10432,"end":10471,"line":298,"end_line":298,"source":"['workflow_dispatch', false, '', false]","kind":"array"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":10479,"end":10514,"line":299,"end_line":299,"source":"['workflow_call', false, '', false]","kind":"array"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":10522,"end":10555,"line":300,"end_line":300,"source":"['pull_request', true, '', false]","kind":"array"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":10563,"end":10609,"line":301,"end_line":301,"source":"['pull_request', false, 'refs/tags/v1', false]","kind":"array"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":10651,"end":10755,"line":304,"end_line":307,"source":"{\n github: { event_name: event },\n inputs: { build_template: template, ref }\n }","kind":"object"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":10671,"end":10692,"line":305,"end_line":305,"source":"{ event_name: event }","kind":"object"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":10712,"end":10745,"line":306,"end_line":306,"source":"{ build_template: template, ref }","kind":"object"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":10935,"end":10985,"line":312,"end_line":312,"source":"['persistence', 'linux_glibc_floor', 'linux_musl']","kind":"array"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":11141,"end":11158,"line":318,"end_line":318,"source":"['true', 'false']","kind":"array"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":11193,"end":11572,"line":320,"end_line":329,"source":"{\n github: { event_name: 'pull_request', event: { pull_request: { draft: false } } },\n inputs: { build_template: false, ref: '' },\n needs: {\n changes: {\n outputs: { should_run: 'true', qualification: 'true', native_compatibility: native }\n },\n mobile_web_bundle: { result: 'success' }\n }\n }","kind":"object"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":11213,"end":11286,"line":321,"end_line":321,"source":"{ event_name: 'pull_request', event: { pull_request: { draft: false } } }","kind":"object"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":11250,"end":11284,"line":321,"end_line":321,"source":"{ pull_request: { draft: false } }","kind":"object"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":11266,"end":11282,"line":321,"end_line":321,"source":"{ draft: false }","kind":"object"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":11306,"end":11340,"line":322,"end_line":322,"source":"{ build_template: false, ref: '' }","kind":"object"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":11359,"end":11562,"line":323,"end_line":328,"source":"{\n changes: {\n outputs: { should_run: 'true', qualification: 'true', native_compatibility: native }\n },\n mobile_web_bundle: { result: 'success' }\n }","kind":"object"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":11382,"end":11496,"line":324,"end_line":326,"source":"{\n outputs: { should_run: 'true', qualification: 'true', native_compatibility: native }\n }","kind":"object"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":11407,"end":11482,"line":325,"end_line":325,"source":"{ should_run: 'true', qualification: 'true', native_compatibility: native }","kind":"object"},{"path":"config/scripts/node-server-native-compat-scope.test.mjs","start":11529,"end":11550,"line":327,"end_line":327,"source":"{ result: 'success' }","kind":"object"}]},"mutations":[{"name":"native-skip-admitted-for-all-callers","reason":"An inert PR-only token must fail push/template/explicit-ref caller contexts.","baseline_hashes":{".github/workflows/node-server-tests.yml":"ce215d47f979273576716afb04f06a82975d34ff7c2617a48ecebebfb47256e4"},"test":"config/scripts/node-server-native-compat-scope.test.mjs","pattern":"limits test-only native skip","log":"/tmp/orca-config-0007-mutation-native-skip-admitted-for-all-callers.log","command":["pnpm","test","config/scripts/node-server-native-compat-scope.test.mjs","-t","limits test-only native skip","--maxWorkers=1"],"seconds":2.37,"exit_code":1,"assertion_failure_seen":true,"expected_failure_seen":true,"failed_tests":["1 failed | 81 skipped (82)"],"restored_hashes":{".github/workflows/node-server-tests.yml":"ce215d47f979273576716afb04f06a82975d34ff7c2617a48ecebebfb47256e4"},"restored":true,"log_sha256":"b97bc234318a941eeb12f4d642ae23b1bd478b2f36dba8285a02941c75635bcb"}]},"implemented_changes":[{"original_line":282,"title":"limits the extra job guard to glibc 2.17 and preserves unconditional callers","decision":"fix","change":"Drop repeated native-job guard substrings already exercised by the compiled16-scenario table. Evaluate scope/graph ALLOW_TEST_ONLY_NATIVE_SKIP expressions for ordinary PR, push, schedule, template and explicit-ref callers; keep actual CLI diff-argument wiring evidence."},{"original_line":312,"title":"builds server glibc slots on glibc 2.28 and the compat slot on glibc 2.17 (design D6)","decision":"fix","change":"Remove repeated if-expression substring comparisons already proved by the compiled native-job table; retain platform/image/slot/runner configuration checks and describe them as configured slots."}],"manual_implementation_notes":[],"evidence":[".github/workflows/node-server-tests.yml","config/scripts/node-server-change-scope.mjs","config/scripts/node-server-native-compat-scope.mjs","config/scripts/node-server-qualification.mjs","config/scripts/pr-aggregate-gate-context.mjs"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","sha256":"10abf8de958de12f7fa4893aa6b1b93c93eb1d9cb4d9d7c23ad54672f230bef6","declarations":2,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":44,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"10abf8de958de12f7fa4893aa6b1b93c93eb1d9cb4d9d7c23ad54672f230bef6","cases":[{"line":7,"title":"runs the packaged structured chat when its inputs change: %s","decision":"keep","reason":"Actual change classifier retains the five explicit packaged-chat inputs; parsed workflow ordering and required template/chat command configuration protect the CI integration wiring. Scenario: runs the packaged structured chat when its inputs change: %s.","explicit_input_controls":[{"control_id":"44:7:parameter-table:1","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":7,"source":"[\n 'src/main/orcad/orcad-packaged-structured-chat.integration.test.ts',\n 'src/main/runtime/new-launch-path.ts',\n 'src/main/claude/__fixtures__/claude-agent-sdk-scripted-cli.mjs',\n 'config/scripts/orcad-entry-build.mjs',\n 'config/scripts/future-orcad-package.mjs'\n]","rows":[{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":8,"end_line":8,"start":259,"end":326,"source":"'src/main/orcad/orcad-packaged-structured-chat.integration.test.ts'","value":{"kind":"string","value":"src/main/orcad/orcad-packaged-structured-chat.integration.test.ts"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/orcad/orcad-packaged-structured-chat.integration.test.ts'. Actual change classifier retains the five explicit packaged-chat inputs; parsed workflow ordering and required template/chat command configuration protect the CI integration wiring. Scenario: runs the packaged structured chat when its inputs change: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":9,"end_line":9,"start":330,"end":367,"source":"'src/main/runtime/new-launch-path.ts'","value":{"kind":"string","value":"src/main/runtime/new-launch-path.ts"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/runtime/new-launch-path.ts'. Actual change classifier retains the five explicit packaged-chat inputs; parsed workflow ordering and required template/chat command configuration protect the CI integration wiring. Scenario: runs the packaged structured chat when its inputs change: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":10,"end_line":10,"start":371,"end":435,"source":"'src/main/claude/__fixtures__/claude-agent-sdk-scripted-cli.mjs'","value":{"kind":"string","value":"src/main/claude/__fixtures__/claude-agent-sdk-scripted-cli.mjs"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/claude/__fixtures__/claude-agent-sdk-scripted-cli.mjs'. Actual change classifier retains the five explicit packaged-chat inputs; parsed workflow ordering and required template/chat command configuration protect the CI integration wiring. Scenario: runs the packaged structured chat when its inputs change: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":11,"end_line":11,"start":439,"end":477,"source":"'config/scripts/orcad-entry-build.mjs'","value":{"kind":"string","value":"config/scripts/orcad-entry-build.mjs"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/orcad-entry-build.mjs'. Actual change classifier retains the five explicit packaged-chat inputs; parsed workflow ordering and required template/chat command configuration protect the CI integration wiring. Scenario: runs the packaged structured chat when its inputs change: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":12,"end_line":12,"start":481,"end":522,"source":"'config/scripts/future-orcad-package.mjs'","value":{"kind":"string","value":"config/scripts/future-orcad-package.mjs"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/future-orcad-package.mjs'. Actual change classifier retains the five explicit packaged-chat inputs; parsed workflow ordering and required template/chat command configuration protect the CI integration wiring. Scenario: runs the packaged structured chat when its inputs change: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual change classifier retains the five explicit packaged-chat inputs; parsed workflow ordering and required template/chat command configuration protect the CI integration wiring. Scenario: runs the packaged structured chat when its inputs change: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"44:14:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":14,"source":"classifyNodeServerChanges([file], async () => new Set())","rows":[{"index":1,"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":14,"end_line":14,"start":650,"end":656,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual change classifier retains the five explicit packaged-chat inputs; parsed workflow ordering and required template/chat command configuration protect the CI integration wiring. Scenario: runs the packaged structured chat when its inputs change: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":14,"end_line":14,"start":658,"end":679,"source":"async () => new Set()","value":{"kind":"source-expression","source":"async () => new Set()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => new Set(). Actual change classifier retains the five explicit packaged-chat inputs; parsed workflow ordering and required template/chat command configuration protect the CI integration wiring. Scenario: runs the packaged structured chat when its inputs change: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual change classifier retains the five explicit packaged-chat inputs; parsed workflow ordering and required template/chat command configuration protect the CI integration wiring. Scenario: runs the packaged structured chat when its inputs change: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":7,"title":"runs the packaged structured chat when its inputs change: %s","start":247,"end":706},"implementation_status":"retained"},{"line":17,"title":"runs a real structured chat on Linux from the built desktop template","decision":"fix","reason":"Rename to describe Linux packaged-chat/template workflow configuration. The case parses workflow source and checks ordering/required inputs; it does not itself run a real structured chat.","explicit_input_controls":[{"control_id":"44:18:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":18,"source":"parse(readFileSync('.github/workflows/node-server-tests.yml', 'utf8'))","rows":[{"index":1,"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":18,"end_line":18,"start":816,"end":879,"source":"readFileSync('.github/workflows/node-server-tests.yml', 'utf8')","value":{"kind":"call-source","callee":"readFileSync","arguments":[{"kind":"string","value":".github/workflows/node-server-tests.yml"},{"kind":"string","value":"utf8"}],"source":"readFileSync('.github/workflows/node-server-tests.yml', 'utf8')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: readFileSync('.github/workflows/node-server-tests.yml', 'utf8'). Rename to describe Linux packaged-chat/template workflow configuration. The case parses workflow source and checks ordering/required inputs; it does not itself run a real structured chat.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Rename to describe Linux packaged-chat/template workflow configuration. The case parses workflow source and checks ordering/required inputs; it does not itself run a real structured chat.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"44:39:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":39,"source":"nodeServerTestPaths({ artifact: true, crossRuntime: true })","rows":[{"index":1,"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":39,"end_line":39,"start":1962,"end":2000,"source":"{ artifact: true, crossRuntime: true }","value":{"kind":"object","value":[{"key":"artifact","value":{"kind":"boolean","value":true}},{"key":"crossRuntime","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { artifact: true, crossRuntime: true }. Rename to describe Linux packaged-chat/template workflow configuration. The case parses workflow source and checks ordering/required inputs; it does not itself run a real structured chat.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Rename to describe Linux packaged-chat/template workflow configuration. The case parses workflow source and checks ordering/required inputs; it does not itself run a real structured chat.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":17,"title":"configures Linux packaged-chat verification after building the desktop template","start":708,"end":2107},"implementation_status":"implemented"}],"lines":43,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"Actual change classifier retains the five explicit packaged-chat inputs; parsed workflow ordering and required template/chat command configuration protect the CI integration wiring.","planned_changes":[{"original_line":17,"title":"runs a real structured chat on Linux from the built desktop template","decision":"fix","change":"Rename to describe Linux packaged-chat/template workflow configuration. The case parses workflow source and checks ordering/required inputs; it does not itself run a real structured chat."}],"production_evidence":[".github/workflows/node-server-tests.yml","config/scripts/node-server-change-scope.mjs","config/scripts/node-server-test-paths.mjs"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"44:7:parameter-table:1","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":7,"end_line":15,"start":247,"end":706,"source":"[\n 'src/main/orcad/orcad-packaged-structured-chat.integration.test.ts',\n 'src/main/runtime/new-launch-path.ts',\n 'src/main/claude/__fixtures__/claude-agent-sdk-scripted-cli.mjs',\n 'config/scripts/orcad-entry-build.mjs',\n 'config/scripts/future-orcad-package.mjs'\n]","input_position":{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":7,"end_line":13,"start":255,"end":524},"binding":"it.each","resolution":[],"enclosing_case":{"line":7,"title":"runs the packaged structured chat when its inputs change: %s"},"affected_case_lines":[7],"decision":"keep","reason":"Actual change classifier retains the five explicit packaged-chat inputs; parsed workflow ordering and required template/chat command configuration protect the CI integration wiring. Scenario: runs the packaged structured chat when its inputs change: %s.","rows":[{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":8,"end_line":8,"start":259,"end":326,"source":"'src/main/orcad/orcad-packaged-structured-chat.integration.test.ts'","value":{"kind":"string","value":"src/main/orcad/orcad-packaged-structured-chat.integration.test.ts"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/orcad/orcad-packaged-structured-chat.integration.test.ts'. Actual change classifier retains the five explicit packaged-chat inputs; parsed workflow ordering and required template/chat command configuration protect the CI integration wiring. Scenario: runs the packaged structured chat when its inputs change: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":9,"end_line":9,"start":330,"end":367,"source":"'src/main/runtime/new-launch-path.ts'","value":{"kind":"string","value":"src/main/runtime/new-launch-path.ts"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/runtime/new-launch-path.ts'. Actual change classifier retains the five explicit packaged-chat inputs; parsed workflow ordering and required template/chat command configuration protect the CI integration wiring. Scenario: runs the packaged structured chat when its inputs change: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":10,"end_line":10,"start":371,"end":435,"source":"'src/main/claude/__fixtures__/claude-agent-sdk-scripted-cli.mjs'","value":{"kind":"string","value":"src/main/claude/__fixtures__/claude-agent-sdk-scripted-cli.mjs"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/claude/__fixtures__/claude-agent-sdk-scripted-cli.mjs'. Actual change classifier retains the five explicit packaged-chat inputs; parsed workflow ordering and required template/chat command configuration protect the CI integration wiring. Scenario: runs the packaged structured chat when its inputs change: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":11,"end_line":11,"start":439,"end":477,"source":"'config/scripts/orcad-entry-build.mjs'","value":{"kind":"string","value":"config/scripts/orcad-entry-build.mjs"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/orcad-entry-build.mjs'. Actual change classifier retains the five explicit packaged-chat inputs; parsed workflow ordering and required template/chat command configuration protect the CI integration wiring. Scenario: runs the packaged structured chat when its inputs change: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":12,"end_line":12,"start":481,"end":522,"source":"'config/scripts/future-orcad-package.mjs'","value":{"kind":"string","value":"config/scripts/future-orcad-package.mjs"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/future-orcad-package.mjs'. Actual change classifier retains the five explicit packaged-chat inputs; parsed workflow ordering and required template/chat command configuration protect the CI integration wiring. Scenario: runs the packaged structured chat when its inputs change: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"d6024bc84409421a72958cd77d9a29ca1e6bb0aee943eb9506ba01913c30c076"}},{"id":"44:14:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":14,"end_line":14,"start":624,"end":680,"source":"classifyNodeServerChanges([file], async () => new Set())","input_position":{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":14,"end_line":14,"start":624,"end":680},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":7,"title":"runs the packaged structured chat when its inputs change: %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual change classifier retains the five explicit packaged-chat inputs; parsed workflow ordering and required template/chat command configuration protect the CI integration wiring. Scenario: runs the packaged structured chat when its inputs change: %s.","rows":[{"index":1,"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":14,"end_line":14,"start":650,"end":656,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual change classifier retains the five explicit packaged-chat inputs; parsed workflow ordering and required template/chat command configuration protect the CI integration wiring. Scenario: runs the packaged structured chat when its inputs change: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":14,"end_line":14,"start":658,"end":679,"source":"async () => new Set()","value":{"kind":"source-expression","source":"async () => new Set()"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => new Set(). Actual change classifier retains the five explicit packaged-chat inputs; parsed workflow ordering and required template/chat command configuration protect the CI integration wiring. Scenario: runs the packaged structured chat when its inputs change: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"d6024bc84409421a72958cd77d9a29ca1e6bb0aee943eb9506ba01913c30c076"}},{"id":"44:18:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":18,"end_line":18,"start":810,"end":880,"source":"parse(readFileSync('.github/workflows/node-server-tests.yml', 'utf8'))","input_position":{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":18,"end_line":18,"start":810,"end":880},"binding":"parse","resolution":[],"enclosing_case":{"line":17,"title":"runs a real structured chat on Linux from the built desktop template"},"affected_case_lines":[],"decision":"keep","reason":"Rename to describe Linux packaged-chat/template workflow configuration. The case parses workflow source and checks ordering/required inputs; it does not itself run a real structured chat.","rows":[{"index":1,"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":18,"end_line":18,"start":816,"end":879,"source":"readFileSync('.github/workflows/node-server-tests.yml', 'utf8')","value":{"kind":"call-source","callee":"readFileSync","arguments":[{"kind":"string","value":".github/workflows/node-server-tests.yml"},{"kind":"string","value":"utf8"}],"source":"readFileSync('.github/workflows/node-server-tests.yml', 'utf8')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: readFileSync('.github/workflows/node-server-tests.yml', 'utf8'). Rename to describe Linux packaged-chat/template workflow configuration. The case parses workflow source and checks ordering/required inputs; it does not itself run a real structured chat.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"d6024bc84409421a72958cd77d9a29ca1e6bb0aee943eb9506ba01913c30c076"}},{"id":"44:39:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":39,"end_line":39,"start":1942,"end":2001,"source":"nodeServerTestPaths({ artifact: true, crossRuntime: true })","input_position":{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":39,"end_line":39,"start":1942,"end":2001},"binding":"nodeServerTestPaths","resolution":[],"enclosing_case":{"line":17,"title":"runs a real structured chat on Linux from the built desktop template"},"affected_case_lines":[],"decision":"keep","reason":"Rename to describe Linux packaged-chat/template workflow configuration. The case parses workflow source and checks ordering/required inputs; it does not itself run a real structured chat.","rows":[{"index":1,"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","line":39,"end_line":39,"start":1962,"end":2000,"source":"{ artifact: true, crossRuntime: true }","value":{"kind":"object","value":[{"key":"artifact","value":{"kind":"boolean","value":true}},{"key":"crossRuntime","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { artifact: true, crossRuntime: true }. Rename to describe Linux packaged-chat/template workflow configuration. The case parses workflow source and checks ordering/required inputs; it does not itself run a real structured chat.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"d6024bc84409421a72958cd77d9a29ca1e6bb0aee943eb9506ba01913c30c076"}}],"original_review_sha256":"e53550c74abcf31264c803a04a17c5fc6277720ef7968775c2303dd3d96f906b","reviewer":"audit_config","reviewed_sha256":"d6024bc84409421a72958cd77d9a29ca1e6bb0aee943eb9506ba01913c30c076","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/node-server-packaged-chat-selection.test.mjs","final_declarations":2,"current_controls":{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","each":[{"input":{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","start":255,"end":524,"line":7,"end_line":13,"source":"[\n 'src/main/orcad/orcad-packaged-structured-chat.integration.test.ts',\n 'src/main/runtime/new-launch-path.ts',\n 'src/main/claude/__fixtures__/claude-agent-sdk-scripted-cli.mjs',\n 'config/scripts/orcad-entry-build.mjs',\n 'config/scripts/future-orcad-package.mjs'\n]"},"rows":[{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","start":259,"end":326,"line":8,"end_line":8,"source":"'src/main/orcad/orcad-packaged-structured-chat.integration.test.ts'"},{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","start":330,"end":367,"line":9,"end_line":9,"source":"'src/main/runtime/new-launch-path.ts'"},{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","start":371,"end":435,"line":10,"end_line":10,"source":"'src/main/claude/__fixtures__/claude-agent-sdk-scripted-cli.mjs'"},{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","start":439,"end":477,"line":11,"end_line":11,"source":"'config/scripts/orcad-entry-build.mjs'"},{"path":"config/scripts/node-server-packaged-chat-selection.test.mjs","start":481,"end":522,"line":12,"end_line":12,"source":"'config/scripts/future-orcad-package.mjs'"}]}],"for_of":[],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[{"original_line":17,"title":"runs a real structured chat on Linux from the built desktop template","decision":"fix","change":"Rename to describe Linux packaged-chat/template workflow configuration. The case parses workflow source and checks ordering/required inputs; it does not itself run a real structured chat."}],"manual_implementation_notes":[],"evidence":[".github/workflows/node-server-tests.yml","config/scripts/node-server-change-scope.mjs","config/scripts/node-server-test-paths.mjs"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/node-server-policy-self-tests.test.mjs","sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566","declarations":10,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":45,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566","cases":[{"line":25,"title":"keeps %s in required root units without native qualification","decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","explicit_input_controls":[{"control_id":"45:25:parameter-table:2","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":25,"source":"policyTests","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":9,"end_line":9,"start":453,"end":503,"source":"'config/scripts/node-server-change-scope.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-change-scope.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":10,"end_line":10,"start":507,"end":558,"source":"'config/scripts/node-server-qualification.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-qualification.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"45:28:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":28,"source":"classifyPrJobs([file], { allowMobileCiTools: true })","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":28,"end_line":28,"start":994,"end":1000,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":28,"end_line":28,"start":1002,"end":1030,"source":"{ allowMobileCiTools: true }","value":{"kind":"object","value":[{"key":"allowMobileCiTools","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { allowMobileCiTools: true }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"45:35:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":35,"source":"classifyNodeServerChanges([file], async () => inputs, {\n modifiedFiles: [file]\n })","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":35,"end_line":35,"start":1260,"end":1266,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":35,"end_line":35,"start":1268,"end":1286,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":35,"end_line":37,"start":1288,"end":1327,"source":"{\n modifiedFiles: [file]\n }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: [file] }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"45:39:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":39,"source":"planUnitSelection({\n files: unitFiles,\n changed: [file],\n graph: () => {\n throw new Error('config edits must select the full unit inventory')\n },\n timings: {},\n event: { pull_request: { draft: true } },\n mode: 'selected'\n })","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":39,"end_line":48,"start":1461,"end":1729,"source":"{\n files: unitFiles,\n changed: [file],\n graph: () => {\n throw new Error('config edits must select the full unit inventory')\n },\n timings: {},\n event: { pull_request: { draft: true } },\n mode: 'selected'\n }","value":{"kind":"object","value":[{"key":"files","value":{"kind":"source-expression","source":"unitFiles"}},{"key":"changed","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]}},{"key":"graph","value":{"kind":"source-expression","source":"() => {\n throw new Error('config edits must select the full unit inventory')\n }"}},{"key":"timings","value":{"kind":"object","value":[]}},{"key":"event","value":{"kind":"object","value":[{"key":"pull_request","value":{"kind":"object","value":[{"key":"draft","value":{"kind":"boolean","value":true}}]}}]}},{"key":"mode","value":{"kind":"string","value":"selected"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { files: unitFiles, changed: [file], graph: () => { throw new Error('config edits must select the full uni. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":25,"title":"keeps %s in required root units without native qualification","start":854,"end":1882},"implementation_status":"retained"},{"line":55,"title":"keeps both modified policy self-tests in root units","decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps both modified policy self-tests in root units.","explicit_input_controls":[{"control_id":"45:56:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":56,"source":"classifyNodeServerChanges(policyTests, async () => inputs, {\n modifiedFiles: policyTests\n })","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":56,"end_line":56,"start":2008,"end":2019,"source":"policyTests","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: policyTests. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps both modified policy self-tests in root units.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":56,"end_line":56,"start":2021,"end":2039,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps both modified policy self-tests in root units.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":56,"end_line":58,"start":2041,"end":2081,"source":"{\n modifiedFiles: policyTests\n }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: policyTests }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps both modified policy self-tests in root units.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps both modified policy self-tests in root units.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":55,"title":"keeps both modified policy self-tests in root units","start":1886,"end":2194},"implementation_status":"retained"},{"line":63,"title":"requests the real graph before excluding %s","decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: requests the real graph before excluding %s.","explicit_input_controls":[{"control_id":"45:63:parameter-table:7","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":63,"source":"policyTests","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":9,"end_line":9,"start":453,"end":503,"source":"'config/scripts/node-server-change-scope.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-change-scope.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: requests the real graph before excluding %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":10,"end_line":10,"start":507,"end":558,"source":"'config/scripts/node-server-qualification.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-qualification.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: requests the real graph before excluding %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: requests the real graph before excluding %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"45:64:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":64,"source":"classifyNodeServerChanges([file], unavailableGraph, {\n deferGraph: true,\n modifiedFiles: [file]\n })","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":64,"end_line":64,"start":2334,"end":2340,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: requests the real graph before excluding %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":64,"end_line":64,"start":2342,"end":2358,"source":"unavailableGraph","value":{"kind":"reference","source":"unavailableGraph","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":13,"end_line":15,"start":587,"end":641},"resolved":{"kind":"source-expression","source":"async () => {\n throw new Error('graph unavailable')\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: unavailableGraph. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: requests the real graph before excluding %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":64,"end_line":67,"start":2360,"end":2419,"source":"{\n deferGraph: true,\n modifiedFiles: [file]\n }","value":{"kind":"object","value":[{"key":"deferGraph","value":{"kind":"boolean","value":true}},{"key":"modifiedFiles","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { deferGraph: true, modifiedFiles: [file] }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: requests the real graph before excluding %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: requests the real graph before excluding %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":63,"title":"requests the real graph before excluding %s","start":2198,"end":2512},"implementation_status":"retained"},{"line":72,"title":"retains full qualification with $evidence","decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","explicit_input_controls":[{"control_id":"45:72:parameter-table:9","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":72,"source":"[\n { evidence: 'incomplete modified paths', changed: policyTests, modified: [policyTests[0]] },\n { evidence: 'missing modified paths', changed: policyTests },\n {\n evidence: 'duplicate modified paths',\n changed: policyTests,\n modified: [policyTests[0], policyTests[0]]\n },\n {\n evidence: 'foreign modified path',\n changed: policyTests,\n modified: [policyTests[0], 'config/scripts/foreign.test.mjs']\n },\n {\n evidence: 'unproven rename side',\n changed: [...policyTests, 'config/scripts/node-server-renamed.test.mjs'],\n modified: policyTests\n },\n {\n evidence: 'duplicate changed paths',\n changed: [policyTests[0], policyTests[0]],\n modified: policyTests\n }\n ]","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":73,"end_line":73,"start":2530,"end":2621,"source":"{ evidence: 'incomplete modified paths', changed: policyTests, modified: [policyTests[0]] }","value":{"kind":"object","value":[{"key":"evidence","value":{"kind":"string","value":"incomplete modified paths"}},{"key":"changed","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}}},{"key":"modified","value":{"kind":"array","value":[{"kind":"source-expression","source":"policyTests[0]"}]}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { evidence: 'incomplete modified paths', changed: policyTests, modified: [policyTests[0]] }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":74,"end_line":74,"start":2627,"end":2687,"source":"{ evidence: 'missing modified paths', changed: policyTests }","value":{"kind":"object","value":[{"key":"evidence","value":{"kind":"string","value":"missing modified paths"}},{"key":"changed","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { evidence: 'missing modified paths', changed: policyTests }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":75,"end_line":79,"start":2693,"end":2821,"source":"{\n evidence: 'duplicate modified paths',\n changed: policyTests,\n modified: [policyTests[0], policyTests[0]]\n }","value":{"kind":"object","value":[{"key":"evidence","value":{"kind":"string","value":"duplicate modified paths"}},{"key":"changed","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}}},{"key":"modified","value":{"kind":"array","value":[{"kind":"source-expression","source":"policyTests[0]"},{"kind":"source-expression","source":"policyTests[0]"}]}}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { evidence: 'duplicate modified paths', changed: policyTests, modified: [policyTests[0], policyTests[0]] }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":80,"end_line":84,"start":2827,"end":2971,"source":"{\n evidence: 'foreign modified path',\n changed: policyTests,\n modified: [policyTests[0], 'config/scripts/foreign.test.mjs']\n }","value":{"kind":"object","value":[{"key":"evidence","value":{"kind":"string","value":"foreign modified path"}},{"key":"changed","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}}},{"key":"modified","value":{"kind":"array","value":[{"kind":"source-expression","source":"policyTests[0]"},{"kind":"string","value":"config/scripts/foreign.test.mjs"}]}}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { evidence: 'foreign modified path', changed: policyTests, modified: [policyTests[0], 'config/scripts/foreign.test.mjs'] . Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":85,"end_line":89,"start":2977,"end":3132,"source":"{\n evidence: 'unproven rename side',\n changed: [...policyTests, 'config/scripts/node-server-renamed.test.mjs'],\n modified: policyTests\n }","value":{"kind":"object","value":[{"key":"evidence","value":{"kind":"string","value":"unproven rename side"}},{"key":"changed","value":{"kind":"array","value":[{"kind":"source-expression","source":"...policyTests"},{"kind":"string","value":"config/scripts/node-server-renamed.test.mjs"}]}},{"key":"modified","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}}}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { evidence: 'unproven rename side', changed: [...policyTests, 'config/scripts/node-server-renamed.test.mjs'], modified: po. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":90,"end_line":94,"start":3138,"end":3265,"source":"{\n evidence: 'duplicate changed paths',\n changed: [policyTests[0], policyTests[0]],\n modified: policyTests\n }","value":{"kind":"object","value":[{"key":"evidence","value":{"kind":"string","value":"duplicate changed paths"}},{"key":"changed","value":{"kind":"array","value":[{"kind":"source-expression","source":"policyTests[0]"},{"kind":"source-expression","source":"policyTests[0]"}]}},{"key":"modified","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}}}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { evidence: 'duplicate changed paths', changed: [policyTests[0], policyTests[0]], modified: policyTests }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"45:96:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":96,"source":"classifyNodeServerChanges(changed, unavailableGraph, {\n modifiedFiles: modified\n })","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":96,"end_line":96,"start":3401,"end":3408,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":115,"end_line":115,"start":4090,"end":4112},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"...policyTests"},{"kind":"source-expression","source":"file"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":96,"end_line":96,"start":3410,"end":3426,"source":"unavailableGraph","value":{"kind":"reference","source":"unavailableGraph","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":13,"end_line":15,"start":587,"end":641},"resolved":{"kind":"source-expression","source":"async () => {\n throw new Error('graph unavailable')\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: unavailableGraph. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":96,"end_line":98,"start":3428,"end":3465,"source":"{\n modifiedFiles: modified\n }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"source-expression","source":"modified"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: modified }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"45:101:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":101,"source":"nodeServerQualification(changed, scope)","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":101,"end_line":101,"start":3592,"end":3599,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":115,"end_line":115,"start":4090,"end":4112},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"...policyTests"},{"kind":"source-expression","source":"file"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":101,"end_line":101,"start":3601,"end":3606,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":96,"end_line":98,"start":3369,"end":3466},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(changed, unavailableGraph, {\n modifiedFiles: modified\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":72,"title":"retains full qualification with $evidence","start":2516,"end":3692},"implementation_status":"retained"},{"line":107,"title":"keeps full qualification for mixed edits including %s","decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","explicit_input_controls":[{"control_id":"45:107:parameter-table:12","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":107,"source":"[\n 'config/scripts/node-server-change-scope.mjs',\n 'config/scripts/node-server-qualification.mjs',\n 'config/scripts/workspace-source-exports.test.mjs',\n '.github/workflows/node-server-tests.yml',\n '.github/actions/prepare-native-runtime/action.yml',\n 'pnpm-lock.yaml'\n ]","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":108,"end_line":108,"start":3710,"end":3755,"source":"'config/scripts/node-server-change-scope.mjs'","value":{"kind":"string","value":"config/scripts/node-server-change-scope.mjs"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-change-scope.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":109,"end_line":109,"start":3761,"end":3807,"source":"'config/scripts/node-server-qualification.mjs'","value":{"kind":"string","value":"config/scripts/node-server-qualification.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-qualification.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":110,"end_line":110,"start":3813,"end":3863,"source":"'config/scripts/workspace-source-exports.test.mjs'","value":{"kind":"string","value":"config/scripts/workspace-source-exports.test.mjs"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/workspace-source-exports.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":111,"end_line":111,"start":3869,"end":3910,"source":"'.github/workflows/node-server-tests.yml'","value":{"kind":"string","value":".github/workflows/node-server-tests.yml"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/workflows/node-server-tests.yml'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":112,"end_line":112,"start":3916,"end":3967,"source":"'.github/actions/prepare-native-runtime/action.yml'","value":{"kind":"string","value":".github/actions/prepare-native-runtime/action.yml"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/prepare-native-runtime/action.yml'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":113,"end_line":113,"start":3973,"end":3989,"source":"'pnpm-lock.yaml'","value":{"kind":"string","value":"pnpm-lock.yaml"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'pnpm-lock.yaml'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"45:115:fixture-or-oracle-declaration:13","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":115,"source":"[...policyTests, file]","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":9,"end_line":9,"start":453,"end":503,"source":"'config/scripts/node-server-change-scope.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'config/scripts/node-server-change-scope.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":10,"end_line":10,"start":507,"end":558,"source":"'config/scripts/node-server-qualification.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'config/scripts/node-server-qualification.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":115,"end_line":115,"start":4107,"end":4111,"source":"file","value":{"kind":"source-expression","source":"file"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: file. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"45:116:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":116,"source":"classifyNodeServerChanges(changed, unavailableGraph, {\n modifiedFiles: changed\n })","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":116,"end_line":116,"start":4163,"end":4170,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":115,"end_line":115,"start":4090,"end":4112},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"...policyTests"},{"kind":"source-expression","source":"file"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":116,"end_line":116,"start":4172,"end":4188,"source":"unavailableGraph","value":{"kind":"reference","source":"unavailableGraph","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":13,"end_line":15,"start":587,"end":641},"resolved":{"kind":"source-expression","source":"async () => {\n throw new Error('graph unavailable')\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: unavailableGraph. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":116,"end_line":118,"start":4190,"end":4226,"source":"{\n modifiedFiles: changed\n }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":115,"end_line":115,"start":4090,"end":4112},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"...policyTests"},{"kind":"source-expression","source":"file"}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: changed }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"45:121:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":121,"source":"nodeServerQualification(changed, scope)","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":121,"end_line":121,"start":4353,"end":4360,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":115,"end_line":115,"start":4090,"end":4112},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"...policyTests"},{"kind":"source-expression","source":"file"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":121,"end_line":121,"start":4362,"end":4367,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":116,"end_line":118,"start":4131,"end":4227},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(changed, unavailableGraph, {\n modifiedFiles: changed\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":107,"title":"keeps full qualification for mixed edits including %s","start":3696,"end":4453},"implementation_status":"retained"},{"line":127,"title":"preserves unrelated %s routing with complete, absent, or non-modification evidence","decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","explicit_input_controls":[{"control_id":"45:127:parameter-table:16","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":127,"source":"[\n 'config/scripts/node-server-concurrency.test.mjs',\n 'config/scripts/node-server-packaged-chat-selection.test.mjs'\n ]","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":128,"end_line":128,"start":4471,"end":4520,"source":"'config/scripts/node-server-concurrency.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-concurrency.test.mjs"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-concurrency.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":129,"end_line":129,"start":4526,"end":4587,"source":"'config/scripts/node-server-packaged-chat-selection.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-packaged-chat-selection.test.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-packaged-chat-selection.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"45:134:for-of:17","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":134,"source":"[[file], undefined, []]","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":134,"end_line":134,"start":4784,"end":4790,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: [file]. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":134,"end_line":134,"start":4792,"end":4801,"source":"undefined","value":{"kind":"source-expression","source":"undefined"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: undefined. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":134,"end_line":134,"start":4803,"end":4805,"source":"[]","value":{"kind":"array","value":[]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: []. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"45:135:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":135,"source":"classifyNodeServerChanges([file], async () => inputs, { modifiedFiles })","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":135,"end_line":135,"start":4864,"end":4870,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":135,"end_line":135,"start":4872,"end":4890,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":135,"end_line":135,"start":4892,"end":4909,"source":"{ modifiedFiles }","value":{"kind":"object","value":[{"source":"modifiedFiles"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":127,"title":"preserves unrelated %s routing with complete, absent, or non-modification evidence","start":4457,"end":5027},"implementation_status":"retained"},{"line":142,"title":"preserves both unmodified rename sides for unrelated %s","decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves both unmodified rename sides for unrelated %s.","explicit_input_controls":[{"control_id":"45:142:parameter-table:19","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":142,"source":"[\n 'config/scripts/node-server-concurrency.test.mjs',\n 'config/scripts/node-server-packaged-chat-selection.test.mjs'\n ]","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":143,"end_line":143,"start":5045,"end":5094,"source":"'config/scripts/node-server-concurrency.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-concurrency.test.mjs"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-concurrency.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves both unmodified rename sides for unrelated %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":144,"end_line":144,"start":5100,"end":5161,"source":"'config/scripts/node-server-packaged-chat-selection.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-packaged-chat-selection.test.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-packaged-chat-selection.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves both unmodified rename sides for unrelated %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves both unmodified rename sides for unrelated %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"45:146:fixture-or-oracle-declaration:20","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":146,"source":"[file, file.replace('.test.mjs', '-renamed.test.mjs')]","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":146,"end_line":146,"start":5265,"end":5269,"source":"file","value":{"kind":"source-expression","source":"file"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: file. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves both unmodified rename sides for unrelated %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":146,"end_line":146,"start":5271,"end":5317,"source":"file.replace('.test.mjs', '-renamed.test.mjs')","value":{"kind":"call-source","callee":"file.replace","arguments":[{"kind":"string","value":".test.mjs"},{"kind":"string","value":"-renamed.test.mjs"}],"source":"file.replace('.test.mjs', '-renamed.test.mjs')"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: file.replace('.test.mjs', '-renamed.test.mjs'). Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves both unmodified rename sides for unrelated %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves both unmodified rename sides for unrelated %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"45:147:inline-api-or-fixture-input:21","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":147,"source":"classifyNodeServerChanges(changed, async () => inputs, {\n modifiedFiles: []\n })","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":147,"end_line":147,"start":5369,"end":5376,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":146,"end_line":146,"start":5264,"end":5318},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"file"},{"kind":"call-source","callee":"file.replace","arguments":[{"kind":"string","value":".test.mjs"},{"kind":"string","value":"-renamed.test.mjs"}],"source":"file.replace('.test.mjs', '-renamed.test.mjs')"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves both unmodified rename sides for unrelated %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":147,"end_line":147,"start":5378,"end":5396,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves both unmodified rename sides for unrelated %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":147,"end_line":149,"start":5398,"end":5429,"source":"{\n modifiedFiles: []\n }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"array","value":[]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: [] }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves both unmodified rename sides for unrelated %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves both unmodified rename sides for unrelated %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":142,"title":"preserves both unmodified rename sides for unrelated %s","start":5031,"end":5526},"implementation_status":"retained"},{"line":154,"title":"preserves unrelated tests when only part of their changed vector is modified","decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated tests when only part of their changed vector is modified.","explicit_input_controls":[{"control_id":"45:155:fixture-or-oracle-declaration:22","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":155,"source":"[\n 'config/scripts/node-server-concurrency.test.mjs',\n 'config/scripts/node-server-packaged-chat-selection.test.mjs'\n ]","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":156,"end_line":156,"start":5655,"end":5704,"source":"'config/scripts/node-server-concurrency.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-concurrency.test.mjs"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'config/scripts/node-server-concurrency.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated tests when only part of their changed vector is modified.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":157,"end_line":157,"start":5712,"end":5773,"source":"'config/scripts/node-server-packaged-chat-selection.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-packaged-chat-selection.test.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'config/scripts/node-server-packaged-chat-selection.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated tests when only part of their changed vector is modified.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated tests when only part of their changed vector is modified.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"45:159:inline-api-or-fixture-input:23","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":159,"source":"classifyNodeServerChanges(changed, async () => inputs, {\n modifiedFiles: [changed[0]]\n })","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":159,"end_line":159,"start":5830,"end":5837,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":155,"end_line":158,"start":5647,"end":5779},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-concurrency.test.mjs"},{"kind":"string","value":"config/scripts/node-server-packaged-chat-selection.test.mjs"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated tests when only part of their changed vector is modified.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":159,"end_line":159,"start":5839,"end":5857,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated tests when only part of their changed vector is modified.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":159,"end_line":161,"start":5859,"end":5900,"source":"{\n modifiedFiles: [changed[0]]\n }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"array","value":[{"kind":"source-expression","source":"changed[0]"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: [changed[0]] }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated tests when only part of their changed vector is modified.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated tests when only part of their changed vector is modified.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":154,"title":"preserves unrelated tests when only part of their changed vector is modified","start":5530,"end":5997},"implementation_status":"retained"},{"line":166,"title":"retains native qualification when %s becomes a real graph input","decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","explicit_input_controls":[{"control_id":"45:166:parameter-table:24","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":166,"source":"policyTests","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":9,"end_line":9,"start":453,"end":503,"source":"'config/scripts/node-server-change-scope.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-change-scope.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":10,"end_line":10,"start":507,"end":558,"source":"'config/scripts/node-server-qualification.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-qualification.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"45:169:inline-api-or-fixture-input:25","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":169,"source":"collectNodeServerInputs({ entryPoints: [file] })","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":169,"end_line":169,"start":6170,"end":6193,"source":"{ entryPoints: [file] }","value":{"kind":"object","value":[{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { entryPoints: [file] }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"45:171:inline-api-or-fixture-input:26","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":171,"source":"classifyNodeServerChanges([file], async () => reachable, {\n modifiedFiles: [file]\n })","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":171,"end_line":171,"start":6292,"end":6298,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":171,"end_line":171,"start":6300,"end":6321,"source":"async () => reachable","value":{"kind":"source-expression","source":"async () => reachable"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => reachable. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":171,"end_line":173,"start":6323,"end":6362,"source":"{\n modifiedFiles: [file]\n }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: [file] }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"45:175:inline-api-or-fixture-input:27","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":175,"source":"nodeServerQualification([file], scope)","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":175,"end_line":175,"start":6499,"end":6505,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":175,"end_line":175,"start":6507,"end":6512,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":171,"end_line":173,"start":6260,"end":6363},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges([file], async () => reachable, {\n modifiedFiles: [file]\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":166,"title":"retains native qualification when %s becomes a real graph input","start":6001,"end":6609},"implementation_status":"retained"},{"line":182,"title":"retains full qualification when graph collection fails","decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification when graph collection fails.","explicit_input_controls":[{"control_id":"45:183:inline-api-or-fixture-input:28","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":183,"source":"classifyNodeServerChanges(policyTests, unavailableGraph, {\n modifiedFiles: policyTests\n })","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":183,"end_line":183,"start":6738,"end":6749,"source":"policyTests","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: policyTests. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification when graph collection fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":183,"end_line":183,"start":6751,"end":6767,"source":"unavailableGraph","value":{"kind":"reference","source":"unavailableGraph","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":13,"end_line":15,"start":587,"end":641},"resolved":{"kind":"source-expression","source":"async () => {\n throw new Error('graph unavailable')\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: unavailableGraph. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification when graph collection fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":183,"end_line":185,"start":6769,"end":6809,"source":"{\n modifiedFiles: policyTests\n }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: policyTests }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification when graph collection fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification when graph collection fails.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"45:187:inline-api-or-fixture-input:29","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":187,"source":"nodeServerQualification(policyTests, scope)","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":187,"end_line":187,"start":6923,"end":6934,"source":"policyTests","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: policyTests. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification when graph collection fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":187,"end_line":187,"start":6936,"end":6941,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":183,"end_line":185,"start":6706,"end":6810},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(policyTests, unavailableGraph, {\n modifiedFiles: policyTests\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification when graph collection fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification when graph collection fails.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":182,"title":"retains full qualification when graph collection fails","start":6613,"end":7027},"implementation_status":"retained"}],"lines":193,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision.","planned_changes":[],"production_evidence":["config/scripts/ci-unit-files.mjs","config/scripts/ci-unit-selection.mjs","config/scripts/node-server-change-scope.mjs","config/scripts/node-server-native-compat-scope.mjs","config/scripts/node-server-qualification.mjs","config/scripts/pr-code-change-scope.mjs"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"45:8:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":435,"end":560,"source":"[\n 'config/scripts/node-server-change-scope.test.mjs',\n 'config/scripts/node-server-qualification.test.mjs'\n]","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"binding":"policyTests","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision.","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":9,"end_line":9,"start":453,"end":503,"source":"'config/scripts/node-server-change-scope.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'config/scripts/node-server-change-scope.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":10,"end_line":10,"start":507,"end":558,"source":"'config/scripts/node-server-qualification.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'config/scripts/node-server-qualification.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:25:parameter-table:2","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":25,"end_line":53,"start":854,"end":1882,"source":"policyTests","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":25,"end_line":25,"start":862,"end":873},"binding":"it.each","resolution":[{"name":"policyTests","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560,"declaration_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":435,"end":560},"source":"[\n 'config/scripts/node-server-change-scope.test.mjs',\n 'config/scripts/node-server-qualification.test.mjs'\n]"}],"enclosing_case":{"line":25,"title":"keeps %s in required root units without native qualification"},"affected_case_lines":[25],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":9,"end_line":9,"start":453,"end":503,"source":"'config/scripts/node-server-change-scope.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-change-scope.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":10,"end_line":10,"start":507,"end":558,"source":"'config/scripts/node-server-qualification.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-qualification.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:28:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":28,"end_line":28,"start":979,"end":1031,"source":"classifyPrJobs([file], { allowMobileCiTools: true })","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":28,"end_line":28,"start":979,"end":1031},"binding":"classifyPrJobs","resolution":[],"enclosing_case":{"line":25,"title":"keeps %s in required root units without native qualification"},"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":28,"end_line":28,"start":994,"end":1000,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":28,"end_line":28,"start":1002,"end":1030,"source":"{ allowMobileCiTools: true }","value":{"kind":"object","value":[{"key":"allowMobileCiTools","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { allowMobileCiTools: true }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:35:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":35,"end_line":37,"start":1234,"end":1328,"source":"classifyNodeServerChanges([file], async () => inputs, {\n modifiedFiles: [file]\n })","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":35,"end_line":37,"start":1234,"end":1328},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":25,"title":"keeps %s in required root units without native qualification"},"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":35,"end_line":35,"start":1260,"end":1266,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":35,"end_line":35,"start":1268,"end":1286,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":35,"end_line":37,"start":1288,"end":1327,"source":"{\n modifiedFiles: [file]\n }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: [file] }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:39:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":39,"end_line":48,"start":1443,"end":1730,"source":"planUnitSelection({\n files: unitFiles,\n changed: [file],\n graph: () => {\n throw new Error('config edits must select the full unit inventory')\n },\n timings: {},\n event: { pull_request: { draft: true } },\n mode: 'selected'\n })","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":39,"end_line":48,"start":1443,"end":1730},"binding":"planUnitSelection","resolution":[],"enclosing_case":{"line":25,"title":"keeps %s in required root units without native qualification"},"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":39,"end_line":48,"start":1461,"end":1729,"source":"{\n files: unitFiles,\n changed: [file],\n graph: () => {\n throw new Error('config edits must select the full unit inventory')\n },\n timings: {},\n event: { pull_request: { draft: true } },\n mode: 'selected'\n }","value":{"kind":"object","value":[{"key":"files","value":{"kind":"source-expression","source":"unitFiles"}},{"key":"changed","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]}},{"key":"graph","value":{"kind":"source-expression","source":"() => {\n throw new Error('config edits must select the full unit inventory')\n }"}},{"key":"timings","value":{"kind":"object","value":[]}},{"key":"event","value":{"kind":"object","value":[{"key":"pull_request","value":{"kind":"object","value":[{"key":"draft","value":{"kind":"boolean","value":true}}]}}]}},{"key":"mode","value":{"kind":"string","value":"selected"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { files: unitFiles, changed: [file], graph: () => { throw new Error('config edits must select the full uni. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps %s in required root units without native qualification.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:56:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":56,"end_line":58,"start":1982,"end":2082,"source":"classifyNodeServerChanges(policyTests, async () => inputs, {\n modifiedFiles: policyTests\n })","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":56,"end_line":58,"start":1982,"end":2082},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":55,"title":"keeps both modified policy self-tests in root units"},"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps both modified policy self-tests in root units.","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":56,"end_line":56,"start":2008,"end":2019,"source":"policyTests","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: policyTests. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps both modified policy self-tests in root units.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":56,"end_line":56,"start":2021,"end":2039,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps both modified policy self-tests in root units.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":56,"end_line":58,"start":2041,"end":2081,"source":"{\n modifiedFiles: policyTests\n }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: policyTests }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps both modified policy self-tests in root units.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:63:parameter-table:7","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":63,"end_line":70,"start":2198,"end":2512,"source":"policyTests","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":63,"end_line":63,"start":2206,"end":2217},"binding":"it.each","resolution":[{"name":"policyTests","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560,"declaration_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":435,"end":560},"source":"[\n 'config/scripts/node-server-change-scope.test.mjs',\n 'config/scripts/node-server-qualification.test.mjs'\n]"}],"enclosing_case":{"line":63,"title":"requests the real graph before excluding %s"},"affected_case_lines":[63],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: requests the real graph before excluding %s.","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":9,"end_line":9,"start":453,"end":503,"source":"'config/scripts/node-server-change-scope.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-change-scope.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: requests the real graph before excluding %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":10,"end_line":10,"start":507,"end":558,"source":"'config/scripts/node-server-qualification.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-qualification.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: requests the real graph before excluding %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:64:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":64,"end_line":67,"start":2308,"end":2420,"source":"classifyNodeServerChanges([file], unavailableGraph, {\n deferGraph: true,\n modifiedFiles: [file]\n })","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":64,"end_line":67,"start":2308,"end":2420},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":63,"title":"requests the real graph before excluding %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: requests the real graph before excluding %s.","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":64,"end_line":64,"start":2334,"end":2340,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: requests the real graph before excluding %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":64,"end_line":64,"start":2342,"end":2358,"source":"unavailableGraph","value":{"kind":"reference","source":"unavailableGraph","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":13,"end_line":15,"start":587,"end":641},"resolved":{"kind":"source-expression","source":"async () => {\n throw new Error('graph unavailable')\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: unavailableGraph. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: requests the real graph before excluding %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":64,"end_line":67,"start":2360,"end":2419,"source":"{\n deferGraph: true,\n modifiedFiles: [file]\n }","value":{"kind":"object","value":[{"key":"deferGraph","value":{"kind":"boolean","value":true}},{"key":"modifiedFiles","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { deferGraph: true, modifiedFiles: [file] }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: requests the real graph before excluding %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:72:parameter-table:9","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":72,"end_line":105,"start":2516,"end":3692,"source":"[\n { evidence: 'incomplete modified paths', changed: policyTests, modified: [policyTests[0]] },\n { evidence: 'missing modified paths', changed: policyTests },\n {\n evidence: 'duplicate modified paths',\n changed: policyTests,\n modified: [policyTests[0], policyTests[0]]\n },\n {\n evidence: 'foreign modified path',\n changed: policyTests,\n modified: [policyTests[0], 'config/scripts/foreign.test.mjs']\n },\n {\n evidence: 'unproven rename side',\n changed: [...policyTests, 'config/scripts/node-server-renamed.test.mjs'],\n modified: policyTests\n },\n {\n evidence: 'duplicate changed paths',\n changed: [policyTests[0], policyTests[0]],\n modified: policyTests\n }\n ]","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":72,"end_line":95,"start":2524,"end":3269},"binding":"it.each","resolution":[],"enclosing_case":{"line":72,"title":"retains full qualification with $evidence"},"affected_case_lines":[72],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":73,"end_line":73,"start":2530,"end":2621,"source":"{ evidence: 'incomplete modified paths', changed: policyTests, modified: [policyTests[0]] }","value":{"kind":"object","value":[{"key":"evidence","value":{"kind":"string","value":"incomplete modified paths"}},{"key":"changed","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}}},{"key":"modified","value":{"kind":"array","value":[{"kind":"source-expression","source":"policyTests[0]"}]}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { evidence: 'incomplete modified paths', changed: policyTests, modified: [policyTests[0]] }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":74,"end_line":74,"start":2627,"end":2687,"source":"{ evidence: 'missing modified paths', changed: policyTests }","value":{"kind":"object","value":[{"key":"evidence","value":{"kind":"string","value":"missing modified paths"}},{"key":"changed","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { evidence: 'missing modified paths', changed: policyTests }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":75,"end_line":79,"start":2693,"end":2821,"source":"{\n evidence: 'duplicate modified paths',\n changed: policyTests,\n modified: [policyTests[0], policyTests[0]]\n }","value":{"kind":"object","value":[{"key":"evidence","value":{"kind":"string","value":"duplicate modified paths"}},{"key":"changed","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}}},{"key":"modified","value":{"kind":"array","value":[{"kind":"source-expression","source":"policyTests[0]"},{"kind":"source-expression","source":"policyTests[0]"}]}}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { evidence: 'duplicate modified paths', changed: policyTests, modified: [policyTests[0], policyTests[0]] }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":80,"end_line":84,"start":2827,"end":2971,"source":"{\n evidence: 'foreign modified path',\n changed: policyTests,\n modified: [policyTests[0], 'config/scripts/foreign.test.mjs']\n }","value":{"kind":"object","value":[{"key":"evidence","value":{"kind":"string","value":"foreign modified path"}},{"key":"changed","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}}},{"key":"modified","value":{"kind":"array","value":[{"kind":"source-expression","source":"policyTests[0]"},{"kind":"string","value":"config/scripts/foreign.test.mjs"}]}}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { evidence: 'foreign modified path', changed: policyTests, modified: [policyTests[0], 'config/scripts/foreign.test.mjs'] . Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":85,"end_line":89,"start":2977,"end":3132,"source":"{\n evidence: 'unproven rename side',\n changed: [...policyTests, 'config/scripts/node-server-renamed.test.mjs'],\n modified: policyTests\n }","value":{"kind":"object","value":[{"key":"evidence","value":{"kind":"string","value":"unproven rename side"}},{"key":"changed","value":{"kind":"array","value":[{"kind":"source-expression","source":"...policyTests"},{"kind":"string","value":"config/scripts/node-server-renamed.test.mjs"}]}},{"key":"modified","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}}}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { evidence: 'unproven rename side', changed: [...policyTests, 'config/scripts/node-server-renamed.test.mjs'], modified: po. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":90,"end_line":94,"start":3138,"end":3265,"source":"{\n evidence: 'duplicate changed paths',\n changed: [policyTests[0], policyTests[0]],\n modified: policyTests\n }","value":{"kind":"object","value":[{"key":"evidence","value":{"kind":"string","value":"duplicate changed paths"}},{"key":"changed","value":{"kind":"array","value":[{"kind":"source-expression","source":"policyTests[0]"},{"kind":"source-expression","source":"policyTests[0]"}]}},{"key":"modified","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}}}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { evidence: 'duplicate changed paths', changed: [policyTests[0], policyTests[0]], modified: policyTests }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:96:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":96,"end_line":98,"start":3375,"end":3466,"source":"classifyNodeServerChanges(changed, unavailableGraph, {\n modifiedFiles: modified\n })","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":96,"end_line":98,"start":3375,"end":3466},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":72,"title":"retains full qualification with $evidence"},"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":96,"end_line":96,"start":3401,"end":3408,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":115,"end_line":115,"start":4090,"end":4112},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"...policyTests"},{"kind":"source-expression","source":"file"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":96,"end_line":96,"start":3410,"end":3426,"source":"unavailableGraph","value":{"kind":"reference","source":"unavailableGraph","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":13,"end_line":15,"start":587,"end":641},"resolved":{"kind":"source-expression","source":"async () => {\n throw new Error('graph unavailable')\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: unavailableGraph. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":96,"end_line":98,"start":3428,"end":3465,"source":"{\n modifiedFiles: modified\n }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"source-expression","source":"modified"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: modified }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:101:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":101,"end_line":101,"start":3568,"end":3607,"source":"nodeServerQualification(changed, scope)","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":101,"end_line":101,"start":3568,"end":3607},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":72,"title":"retains full qualification with $evidence"},"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":101,"end_line":101,"start":3592,"end":3599,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":115,"end_line":115,"start":4090,"end":4112},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"...policyTests"},{"kind":"source-expression","source":"file"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":101,"end_line":101,"start":3601,"end":3606,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":96,"end_line":98,"start":3369,"end":3466},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(changed, unavailableGraph, {\n modifiedFiles: modified\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification with $evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:107:parameter-table:12","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":107,"end_line":125,"start":3696,"end":4453,"source":"[\n 'config/scripts/node-server-change-scope.mjs',\n 'config/scripts/node-server-qualification.mjs',\n 'config/scripts/workspace-source-exports.test.mjs',\n '.github/workflows/node-server-tests.yml',\n '.github/actions/prepare-native-runtime/action.yml',\n 'pnpm-lock.yaml'\n ]","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":107,"end_line":114,"start":3704,"end":3993},"binding":"it.each","resolution":[],"enclosing_case":{"line":107,"title":"keeps full qualification for mixed edits including %s"},"affected_case_lines":[107],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":108,"end_line":108,"start":3710,"end":3755,"source":"'config/scripts/node-server-change-scope.mjs'","value":{"kind":"string","value":"config/scripts/node-server-change-scope.mjs"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-change-scope.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":109,"end_line":109,"start":3761,"end":3807,"source":"'config/scripts/node-server-qualification.mjs'","value":{"kind":"string","value":"config/scripts/node-server-qualification.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-qualification.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":110,"end_line":110,"start":3813,"end":3863,"source":"'config/scripts/workspace-source-exports.test.mjs'","value":{"kind":"string","value":"config/scripts/workspace-source-exports.test.mjs"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/workspace-source-exports.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":111,"end_line":111,"start":3869,"end":3910,"source":"'.github/workflows/node-server-tests.yml'","value":{"kind":"string","value":".github/workflows/node-server-tests.yml"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/workflows/node-server-tests.yml'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":112,"end_line":112,"start":3916,"end":3967,"source":"'.github/actions/prepare-native-runtime/action.yml'","value":{"kind":"string","value":".github/actions/prepare-native-runtime/action.yml"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/prepare-native-runtime/action.yml'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":113,"end_line":113,"start":3973,"end":3989,"source":"'pnpm-lock.yaml'","value":{"kind":"string","value":"pnpm-lock.yaml"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'pnpm-lock.yaml'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:115:fixture-or-oracle-declaration:13","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":115,"end_line":115,"start":4080,"end":4112,"source":"[...policyTests, file]","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":115,"end_line":115,"start":4090,"end":4112},"binding":"changed","resolution":[],"enclosing_case":{"line":107,"title":"keeps full qualification for mixed edits including %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":9,"end_line":9,"start":453,"end":503,"source":"'config/scripts/node-server-change-scope.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'config/scripts/node-server-change-scope.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":10,"end_line":10,"start":507,"end":558,"source":"'config/scripts/node-server-qualification.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'config/scripts/node-server-qualification.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":115,"end_line":115,"start":4107,"end":4111,"source":"file","value":{"kind":"source-expression","source":"file"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: file. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:116:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":116,"end_line":118,"start":4137,"end":4227,"source":"classifyNodeServerChanges(changed, unavailableGraph, {\n modifiedFiles: changed\n })","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":116,"end_line":118,"start":4137,"end":4227},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":107,"title":"keeps full qualification for mixed edits including %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":116,"end_line":116,"start":4163,"end":4170,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":115,"end_line":115,"start":4090,"end":4112},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"...policyTests"},{"kind":"source-expression","source":"file"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":116,"end_line":116,"start":4172,"end":4188,"source":"unavailableGraph","value":{"kind":"reference","source":"unavailableGraph","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":13,"end_line":15,"start":587,"end":641},"resolved":{"kind":"source-expression","source":"async () => {\n throw new Error('graph unavailable')\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: unavailableGraph. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":116,"end_line":118,"start":4190,"end":4226,"source":"{\n modifiedFiles: changed\n }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":115,"end_line":115,"start":4090,"end":4112},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"...policyTests"},{"kind":"source-expression","source":"file"}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: changed }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:121:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":121,"end_line":121,"start":4329,"end":4368,"source":"nodeServerQualification(changed, scope)","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":121,"end_line":121,"start":4329,"end":4368},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":107,"title":"keeps full qualification for mixed edits including %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":121,"end_line":121,"start":4353,"end":4360,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":115,"end_line":115,"start":4090,"end":4112},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"...policyTests"},{"kind":"source-expression","source":"file"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":121,"end_line":121,"start":4362,"end":4367,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":116,"end_line":118,"start":4131,"end":4227},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(changed, unavailableGraph, {\n modifiedFiles: changed\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: keeps full qualification for mixed edits including %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:127:parameter-table:16","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":127,"end_line":140,"start":4457,"end":5027,"source":"[\n 'config/scripts/node-server-concurrency.test.mjs',\n 'config/scripts/node-server-packaged-chat-selection.test.mjs'\n ]","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":127,"end_line":130,"start":4465,"end":4591},"binding":"it.each","resolution":[],"enclosing_case":{"line":127,"title":"preserves unrelated %s routing with complete, absent, or non-modification evidence"},"affected_case_lines":[127],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":128,"end_line":128,"start":4471,"end":4520,"source":"'config/scripts/node-server-concurrency.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-concurrency.test.mjs"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-concurrency.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":129,"end_line":129,"start":4526,"end":4587,"source":"'config/scripts/node-server-packaged-chat-selection.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-packaged-chat-selection.test.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-packaged-chat-selection.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:134:for-of:17","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":134,"end_line":138,"start":4755,"end":5017,"source":"[[file], undefined, []]","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":134,"end_line":134,"start":4783,"end":4806},"binding":"const modifiedFiles","resolution":[],"enclosing_case":{"line":127,"title":"preserves unrelated %s routing with complete, absent, or non-modification evidence"},"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":134,"end_line":134,"start":4784,"end":4790,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: [file]. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":134,"end_line":134,"start":4792,"end":4801,"source":"undefined","value":{"kind":"source-expression","source":"undefined"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: undefined. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":134,"end_line":134,"start":4803,"end":4805,"source":"[]","value":{"kind":"array","value":[]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: []. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:135:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":135,"end_line":135,"start":4838,"end":4910,"source":"classifyNodeServerChanges([file], async () => inputs, { modifiedFiles })","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":135,"end_line":135,"start":4838,"end":4910},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":127,"title":"preserves unrelated %s routing with complete, absent, or non-modification evidence"},"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":135,"end_line":135,"start":4864,"end":4870,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":135,"end_line":135,"start":4872,"end":4890,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":135,"end_line":135,"start":4892,"end":4909,"source":"{ modifiedFiles }","value":{"kind":"object","value":[{"source":"modifiedFiles"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated %s routing with complete, absent, or non-modification evidence.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:142:parameter-table:19","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":142,"end_line":152,"start":5031,"end":5526,"source":"[\n 'config/scripts/node-server-concurrency.test.mjs',\n 'config/scripts/node-server-packaged-chat-selection.test.mjs'\n ]","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":142,"end_line":145,"start":5039,"end":5165},"binding":"it.each","resolution":[],"enclosing_case":{"line":142,"title":"preserves both unmodified rename sides for unrelated %s"},"affected_case_lines":[142],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves both unmodified rename sides for unrelated %s.","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":143,"end_line":143,"start":5045,"end":5094,"source":"'config/scripts/node-server-concurrency.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-concurrency.test.mjs"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-concurrency.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves both unmodified rename sides for unrelated %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":144,"end_line":144,"start":5100,"end":5161,"source":"'config/scripts/node-server-packaged-chat-selection.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-packaged-chat-selection.test.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-packaged-chat-selection.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves both unmodified rename sides for unrelated %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:146:fixture-or-oracle-declaration:20","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":146,"end_line":146,"start":5254,"end":5318,"source":"[file, file.replace('.test.mjs', '-renamed.test.mjs')]","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":146,"end_line":146,"start":5264,"end":5318},"binding":"changed","resolution":[],"enclosing_case":{"line":142,"title":"preserves both unmodified rename sides for unrelated %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves both unmodified rename sides for unrelated %s.","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":146,"end_line":146,"start":5265,"end":5269,"source":"file","value":{"kind":"source-expression","source":"file"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: file. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves both unmodified rename sides for unrelated %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":146,"end_line":146,"start":5271,"end":5317,"source":"file.replace('.test.mjs', '-renamed.test.mjs')","value":{"kind":"call-source","callee":"file.replace","arguments":[{"kind":"string","value":".test.mjs"},{"kind":"string","value":"-renamed.test.mjs"}],"source":"file.replace('.test.mjs', '-renamed.test.mjs')"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: file.replace('.test.mjs', '-renamed.test.mjs'). Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves both unmodified rename sides for unrelated %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:147:inline-api-or-fixture-input:21","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":147,"end_line":149,"start":5343,"end":5430,"source":"classifyNodeServerChanges(changed, async () => inputs, {\n modifiedFiles: []\n })","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":147,"end_line":149,"start":5343,"end":5430},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":142,"title":"preserves both unmodified rename sides for unrelated %s"},"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves both unmodified rename sides for unrelated %s.","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":147,"end_line":147,"start":5369,"end":5376,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":146,"end_line":146,"start":5264,"end":5318},"resolved":{"kind":"array","value":[{"kind":"source-expression","source":"file"},{"kind":"call-source","callee":"file.replace","arguments":[{"kind":"string","value":".test.mjs"},{"kind":"string","value":"-renamed.test.mjs"}],"source":"file.replace('.test.mjs', '-renamed.test.mjs')"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves both unmodified rename sides for unrelated %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":147,"end_line":147,"start":5378,"end":5396,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves both unmodified rename sides for unrelated %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":147,"end_line":149,"start":5398,"end":5429,"source":"{\n modifiedFiles: []\n }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"array","value":[]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: [] }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves both unmodified rename sides for unrelated %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:155:fixture-or-oracle-declaration:22","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":155,"end_line":158,"start":5637,"end":5779,"source":"[\n 'config/scripts/node-server-concurrency.test.mjs',\n 'config/scripts/node-server-packaged-chat-selection.test.mjs'\n ]","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":155,"end_line":158,"start":5647,"end":5779},"binding":"changed","resolution":[],"enclosing_case":{"line":154,"title":"preserves unrelated tests when only part of their changed vector is modified"},"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated tests when only part of their changed vector is modified.","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":156,"end_line":156,"start":5655,"end":5704,"source":"'config/scripts/node-server-concurrency.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-concurrency.test.mjs"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'config/scripts/node-server-concurrency.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated tests when only part of their changed vector is modified.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":157,"end_line":157,"start":5712,"end":5773,"source":"'config/scripts/node-server-packaged-chat-selection.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-packaged-chat-selection.test.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: 'config/scripts/node-server-packaged-chat-selection.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated tests when only part of their changed vector is modified.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:159:inline-api-or-fixture-input:23","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":159,"end_line":161,"start":5804,"end":5901,"source":"classifyNodeServerChanges(changed, async () => inputs, {\n modifiedFiles: [changed[0]]\n })","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":159,"end_line":161,"start":5804,"end":5901},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":154,"title":"preserves unrelated tests when only part of their changed vector is modified"},"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated tests when only part of their changed vector is modified.","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":159,"end_line":159,"start":5830,"end":5837,"source":"changed","value":{"kind":"reference","source":"changed","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":155,"end_line":158,"start":5647,"end":5779},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-concurrency.test.mjs"},{"kind":"string","value":"config/scripts/node-server-packaged-chat-selection.test.mjs"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: changed. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated tests when only part of their changed vector is modified.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":159,"end_line":159,"start":5839,"end":5857,"source":"async () => inputs","value":{"kind":"source-expression","source":"async () => inputs"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => inputs. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated tests when only part of their changed vector is modified.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":159,"end_line":161,"start":5859,"end":5900,"source":"{\n modifiedFiles: [changed[0]]\n }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"array","value":[{"kind":"source-expression","source":"changed[0]"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: [changed[0]] }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: preserves unrelated tests when only part of their changed vector is modified.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:166:parameter-table:24","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":166,"end_line":180,"start":6001,"end":6609,"source":"policyTests","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":166,"end_line":166,"start":6009,"end":6020},"binding":"it.each","resolution":[{"name":"policyTests","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560,"declaration_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":435,"end":560},"source":"[\n 'config/scripts/node-server-change-scope.test.mjs',\n 'config/scripts/node-server-qualification.test.mjs'\n]"}],"enclosing_case":{"line":166,"title":"retains native qualification when %s becomes a real graph input"},"affected_case_lines":[166],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":9,"end_line":9,"start":453,"end":503,"source":"'config/scripts/node-server-change-scope.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-change-scope.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":10,"end_line":10,"start":507,"end":558,"source":"'config/scripts/node-server-qualification.test.mjs'","value":{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-qualification.test.mjs'. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:169:inline-api-or-fixture-input:25","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":169,"end_line":169,"start":6146,"end":6194,"source":"collectNodeServerInputs({ entryPoints: [file] })","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":169,"end_line":169,"start":6146,"end":6194},"binding":"collectNodeServerInputs","resolution":[],"enclosing_case":{"line":166,"title":"retains native qualification when %s becomes a real graph input"},"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":169,"end_line":169,"start":6170,"end":6193,"source":"{ entryPoints: [file] }","value":{"kind":"object","value":[{"key":"entryPoints","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { entryPoints: [file] }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:171:inline-api-or-fixture-input:26","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":171,"end_line":173,"start":6266,"end":6363,"source":"classifyNodeServerChanges([file], async () => reachable, {\n modifiedFiles: [file]\n })","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":171,"end_line":173,"start":6266,"end":6363},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":166,"title":"retains native qualification when %s becomes a real graph input"},"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":171,"end_line":171,"start":6292,"end":6298,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":171,"end_line":171,"start":6300,"end":6321,"source":"async () => reachable","value":{"kind":"source-expression","source":"async () => reachable"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: async () => reachable. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":171,"end_line":173,"start":6323,"end":6362,"source":"{\n modifiedFiles: [file]\n }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: [file] }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:175:inline-api-or-fixture-input:27","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":175,"end_line":175,"start":6475,"end":6513,"source":"nodeServerQualification([file], scope)","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":175,"end_line":175,"start":6475,"end":6513},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":166,"title":"retains native qualification when %s becomes a real graph input"},"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":175,"end_line":175,"start":6499,"end":6505,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":175,"end_line":175,"start":6507,"end":6512,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":171,"end_line":173,"start":6260,"end":6363},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges([file], async () => reachable, {\n modifiedFiles: [file]\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains native qualification when %s becomes a real graph input.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:183:inline-api-or-fixture-input:28","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":183,"end_line":185,"start":6712,"end":6810,"source":"classifyNodeServerChanges(policyTests, unavailableGraph, {\n modifiedFiles: policyTests\n })","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":183,"end_line":185,"start":6712,"end":6810},"binding":"classifyNodeServerChanges","resolution":[],"enclosing_case":{"line":182,"title":"retains full qualification when graph collection fails"},"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification when graph collection fails.","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":183,"end_line":183,"start":6738,"end":6749,"source":"policyTests","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: policyTests. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification when graph collection fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":183,"end_line":183,"start":6751,"end":6767,"source":"unavailableGraph","value":{"kind":"reference","source":"unavailableGraph","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":13,"end_line":15,"start":587,"end":641},"resolved":{"kind":"source-expression","source":"async () => {\n throw new Error('graph unavailable')\n}"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: unavailableGraph. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification when graph collection fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":183,"end_line":185,"start":6769,"end":6809,"source":"{\n modifiedFiles: policyTests\n }","value":{"kind":"object","value":[{"key":"modifiedFiles","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { modifiedFiles: policyTests }. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification when graph collection fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}},{"id":"45:187:inline-api-or-fixture-input:29","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-policy-self-tests.test.mjs","line":187,"end_line":187,"start":6899,"end":6942,"source":"nodeServerQualification(policyTests, scope)","input_position":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":187,"end_line":187,"start":6899,"end":6942},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":182,"title":"retains full qualification when graph collection fails"},"affected_case_lines":[],"decision":"keep","reason":"Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification when graph collection fails.","rows":[{"index":1,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":187,"end_line":187,"start":6923,"end":6934,"source":"policyTests","value":{"kind":"reference","source":"policyTests","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":8,"end_line":11,"start":449,"end":560},"resolved":{"kind":"array","value":[{"kind":"string","value":"config/scripts/node-server-change-scope.test.mjs"},{"kind":"string","value":"config/scripts/node-server-qualification.test.mjs"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: policyTests. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification when graph collection fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":187,"end_line":187,"start":6936,"end":6941,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","line":183,"end_line":185,"start":6706,"end":6810},"resolved":{"kind":"source-expression","source":"await classifyNodeServerChanges(policyTests, unavailableGraph, {\n modifiedFiles: policyTests\n })"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. Actual policy classifier, dependency collector, PR router and unit planner are composed for complete/incomplete modification evidence, mixed edits and real graph reachability; no collector output is supplied as the classifier decision. Scenario: retains full qualification when graph collection fails.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566"}}],"original_review_sha256":"fe345fc5d75f5aa86c66b1d2b1f73854358a18e4c9c0bb67f966c667cc231002","reviewer":"audit_config","reviewed_sha256":"682780989f1467a38c14976233a1244729bbb4044cde9c13d5fece2bd7685566","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/node-server-policy-self-tests.test.mjs","final_declarations":10,"current_controls":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","each":[{"input":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":862,"end":873,"line":25,"end_line":25,"source":"policyTests"},"rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":453,"end":503,"line":9,"end_line":9,"source":"'config/scripts/node-server-change-scope.test.mjs'"},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":507,"end":558,"line":10,"end_line":10,"source":"'config/scripts/node-server-qualification.test.mjs'"}]},{"input":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":2206,"end":2217,"line":63,"end_line":63,"source":"policyTests"},"rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":453,"end":503,"line":9,"end_line":9,"source":"'config/scripts/node-server-change-scope.test.mjs'"},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":507,"end":558,"line":10,"end_line":10,"source":"'config/scripts/node-server-qualification.test.mjs'"}]},{"input":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":2524,"end":3269,"line":72,"end_line":95,"source":"[\n { evidence: 'incomplete modified paths', changed: policyTests, modified: [policyTests[0]] },\n { evidence: 'missing modified paths', changed: policyTests },\n {\n evidence: 'duplicate modified paths',\n changed: policyTests,\n modified: [policyTests[0], policyTests[0]]\n },\n {\n evidence: 'foreign modified path',\n changed: policyTests,\n modified: [policyTests[0], 'config/scripts/foreign.test.mjs']\n },\n {\n evidence: 'unproven rename side',\n changed: [...policyTests, 'config/scripts/node-server-renamed.test.mjs'],\n modified: policyTests\n },\n {\n evidence: 'duplicate changed paths',\n changed: [policyTests[0], policyTests[0]],\n modified: policyTests\n }\n ]"},"rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":2530,"end":2621,"line":73,"end_line":73,"source":"{ evidence: 'incomplete modified paths', changed: policyTests, modified: [policyTests[0]] }"},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":2627,"end":2687,"line":74,"end_line":74,"source":"{ evidence: 'missing modified paths', changed: policyTests }"},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":2693,"end":2821,"line":75,"end_line":79,"source":"{\n evidence: 'duplicate modified paths',\n changed: policyTests,\n modified: [policyTests[0], policyTests[0]]\n }"},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":2827,"end":2971,"line":80,"end_line":84,"source":"{\n evidence: 'foreign modified path',\n changed: policyTests,\n modified: [policyTests[0], 'config/scripts/foreign.test.mjs']\n }"},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":2977,"end":3132,"line":85,"end_line":89,"source":"{\n evidence: 'unproven rename side',\n changed: [...policyTests, 'config/scripts/node-server-renamed.test.mjs'],\n modified: policyTests\n }"},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":3138,"end":3265,"line":90,"end_line":94,"source":"{\n evidence: 'duplicate changed paths',\n changed: [policyTests[0], policyTests[0]],\n modified: policyTests\n }"}]},{"input":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":3704,"end":3993,"line":107,"end_line":114,"source":"[\n 'config/scripts/node-server-change-scope.mjs',\n 'config/scripts/node-server-qualification.mjs',\n 'config/scripts/workspace-source-exports.test.mjs',\n '.github/workflows/node-server-tests.yml',\n '.github/actions/prepare-native-runtime/action.yml',\n 'pnpm-lock.yaml'\n ]"},"rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":3710,"end":3755,"line":108,"end_line":108,"source":"'config/scripts/node-server-change-scope.mjs'"},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":3761,"end":3807,"line":109,"end_line":109,"source":"'config/scripts/node-server-qualification.mjs'"},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":3813,"end":3863,"line":110,"end_line":110,"source":"'config/scripts/workspace-source-exports.test.mjs'"},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":3869,"end":3910,"line":111,"end_line":111,"source":"'.github/workflows/node-server-tests.yml'"},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":3916,"end":3967,"line":112,"end_line":112,"source":"'.github/actions/prepare-native-runtime/action.yml'"},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":3973,"end":3989,"line":113,"end_line":113,"source":"'pnpm-lock.yaml'"}]},{"input":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":4465,"end":4591,"line":127,"end_line":130,"source":"[\n 'config/scripts/node-server-concurrency.test.mjs',\n 'config/scripts/node-server-packaged-chat-selection.test.mjs'\n ]"},"rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":4471,"end":4520,"line":128,"end_line":128,"source":"'config/scripts/node-server-concurrency.test.mjs'"},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":4526,"end":4587,"line":129,"end_line":129,"source":"'config/scripts/node-server-packaged-chat-selection.test.mjs'"}]},{"input":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":5039,"end":5165,"line":142,"end_line":145,"source":"[\n 'config/scripts/node-server-concurrency.test.mjs',\n 'config/scripts/node-server-packaged-chat-selection.test.mjs'\n ]"},"rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":5045,"end":5094,"line":143,"end_line":143,"source":"'config/scripts/node-server-concurrency.test.mjs'"},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":5100,"end":5161,"line":144,"end_line":144,"source":"'config/scripts/node-server-packaged-chat-selection.test.mjs'"}]},{"input":{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":6009,"end":6020,"line":166,"end_line":166,"source":"policyTests"},"rows":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":453,"end":503,"line":9,"end_line":9,"source":"'config/scripts/node-server-change-scope.test.mjs'"},{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":507,"end":558,"line":10,"end_line":10,"source":"'config/scripts/node-server-qualification.test.mjs'"}]}],"for_of":[{"path":"config/scripts/node-server-policy-self-tests.test.mjs","start":4783,"end":4806,"line":134,"end_line":134,"source":"[[file], undefined, []]","binding":"const modifiedFiles","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/scripts/ci-unit-files.mjs","config/scripts/ci-unit-selection.mjs","config/scripts/node-server-change-scope.mjs","config/scripts/node-server-native-compat-scope.mjs","config/scripts/node-server-qualification.mjs","config/scripts/pr-code-change-scope.mjs"],"runtime_validation":[]}
+{"path":"config/scripts/node-server-qualification.test.mjs","sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb","declarations":10,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":46,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb","cases":[{"line":6,"title":"qualifies one platform for a change no platform can alter","decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies one platform for a change no platform can alter.","explicit_input_controls":[{"control_id":"46:7:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":7,"source":"nodeServerQualification(['src/main/runtime/rpc/methods/example.ts'], scope)","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":7,"end_line":7,"start":272,"end":315,"source":"['src/main/runtime/rpc/methods/example.ts']","value":{"kind":"array","value":[{"kind":"string","value":"src/main/runtime/rpc/methods/example.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/main/runtime/rpc/methods/example.ts']. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies one platform for a change no platform can alter.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":7,"end_line":7,"start":317,"end":322,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":146,"end":165},"resolved":{"kind":"object","value":[{"key":"shouldRun","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies one platform for a change no platform can alter.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies one platform for a change no platform can alter.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":6,"title":"qualifies one platform for a change no platform can alter","start":167,"end":398},"implementation_status":"retained"},{"line":13,"title":"keeps one platform for unflavoured input %s","decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps one platform for unflavoured input %s.","explicit_input_controls":[{"control_id":"46:13:parameter-table:3","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":13,"source":"[\n 'src/renderer/src/components/TabStrip.tsx',\n 'config/vitest.config.ts',\n 'config/scripts/ci-unit-plan.mjs',\n 'resources/icons/tray.png',\n '.github/workflows/pr.yml',\n 'docs/reference/agent-status-store.md'\n]","rows":[{"path":"config/scripts/node-server-qualification.test.mjs","line":14,"end_line":14,"start":412,"end":454,"source":"'src/renderer/src/components/TabStrip.tsx'","value":{"kind":"string","value":"src/renderer/src/components/TabStrip.tsx"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/renderer/src/components/TabStrip.tsx'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps one platform for unflavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":15,"end_line":15,"start":458,"end":483,"source":"'config/vitest.config.ts'","value":{"kind":"string","value":"config/vitest.config.ts"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/vitest.config.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps one platform for unflavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":16,"end_line":16,"start":487,"end":520,"source":"'config/scripts/ci-unit-plan.mjs'","value":{"kind":"string","value":"config/scripts/ci-unit-plan.mjs"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/ci-unit-plan.mjs'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps one platform for unflavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":17,"end_line":17,"start":524,"end":550,"source":"'resources/icons/tray.png'","value":{"kind":"string","value":"resources/icons/tray.png"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'resources/icons/tray.png'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps one platform for unflavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":18,"end_line":18,"start":554,"end":580,"source":"'.github/workflows/pr.yml'","value":{"kind":"string","value":".github/workflows/pr.yml"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/workflows/pr.yml'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps one platform for unflavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":19,"end_line":19,"start":584,"end":622,"source":"'docs/reference/agent-status-store.md'","value":{"kind":"string","value":"docs/reference/agent-status-store.md"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'docs/reference/agent-status-store.md'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps one platform for unflavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps one platform for unflavoured input %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"46:21:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":21,"source":"nodeServerQualification([file], scope)","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":21,"end_line":21,"start":718,"end":724,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps one platform for unflavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":21,"end_line":21,"start":726,"end":731,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":146,"end":165},"resolved":{"kind":"object","value":[{"key":"shouldRun","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps one platform for unflavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps one platform for unflavoured input %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":13,"title":"keeps one platform for unflavoured input %s","start":400,"end":770},"implementation_status":"retained"},{"line":24,"title":"retains all platforms for platform-flavoured input %s","decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","explicit_input_controls":[{"control_id":"46:24:parameter-table:5","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":24,"source":"[\n 'package.json',\n 'pnpm-lock.yaml',\n 'native/windows-registry/src/addon.cc',\n 'config/patches/node-pty.patch',\n '.github/actions/install-node-dependencies/action.yml',\n '.github/actions/restore-pnpm-verification/action.yml',\n '.github/actions/prepare-native-runtime/action.yml',\n '.github/actions/prepare-orcad-prebuilds/action.yml',\n 'src/main/ssh/ssh-provider.ts',\n 'src/main/providers/local-pty-provider.ts',\n 'src/packages/process-host/src/run-process.ts',\n 'src/packages/process-host/src/growing-byte-buffer.ts',\n 'src/packages/process-host/package.json',\n 'src/main/persistence/profile-state/store.ts',\n 'src/main/sqlite/database.ts',\n 'src/main/orcad/entry.ts',\n 'src/main/daemon/entry.ts',\n 'config/scripts/build-orcad-prebuilds.mjs',\n 'config/scripts/orcad-prebuild-slot-contents.mjs',\n 'src/shared/node-runtime-pin.ts'\n]","rows":[{"path":"config/scripts/node-server-qualification.test.mjs","line":25,"end_line":25,"start":784,"end":798,"source":"'package.json'","value":{"kind":"string","value":"package.json"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'package.json'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":26,"end_line":26,"start":802,"end":818,"source":"'pnpm-lock.yaml'","value":{"kind":"string","value":"pnpm-lock.yaml"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'pnpm-lock.yaml'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":27,"end_line":27,"start":822,"end":860,"source":"'native/windows-registry/src/addon.cc'","value":{"kind":"string","value":"native/windows-registry/src/addon.cc"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'native/windows-registry/src/addon.cc'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":28,"end_line":28,"start":864,"end":895,"source":"'config/patches/node-pty.patch'","value":{"kind":"string","value":"config/patches/node-pty.patch"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/patches/node-pty.patch'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":29,"end_line":29,"start":899,"end":953,"source":"'.github/actions/install-node-dependencies/action.yml'","value":{"kind":"string","value":".github/actions/install-node-dependencies/action.yml"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/install-node-dependencies/action.yml'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":30,"end_line":30,"start":957,"end":1011,"source":"'.github/actions/restore-pnpm-verification/action.yml'","value":{"kind":"string","value":".github/actions/restore-pnpm-verification/action.yml"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/restore-pnpm-verification/action.yml'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":31,"end_line":31,"start":1015,"end":1066,"source":"'.github/actions/prepare-native-runtime/action.yml'","value":{"kind":"string","value":".github/actions/prepare-native-runtime/action.yml"},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/prepare-native-runtime/action.yml'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":32,"end_line":32,"start":1070,"end":1122,"source":"'.github/actions/prepare-orcad-prebuilds/action.yml'","value":{"kind":"string","value":".github/actions/prepare-orcad-prebuilds/action.yml"},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/prepare-orcad-prebuilds/action.yml'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":33,"end_line":33,"start":1126,"end":1156,"source":"'src/main/ssh/ssh-provider.ts'","value":{"kind":"string","value":"src/main/ssh/ssh-provider.ts"},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/ssh/ssh-provider.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":34,"end_line":34,"start":1160,"end":1202,"source":"'src/main/providers/local-pty-provider.ts'","value":{"kind":"string","value":"src/main/providers/local-pty-provider.ts"},"index":10,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/providers/local-pty-provider.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":35,"end_line":35,"start":1206,"end":1252,"source":"'src/packages/process-host/src/run-process.ts'","value":{"kind":"string","value":"src/packages/process-host/src/run-process.ts"},"index":11,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/packages/process-host/src/run-process.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":36,"end_line":36,"start":1256,"end":1310,"source":"'src/packages/process-host/src/growing-byte-buffer.ts'","value":{"kind":"string","value":"src/packages/process-host/src/growing-byte-buffer.ts"},"index":12,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/packages/process-host/src/growing-byte-buffer.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":37,"end_line":37,"start":1314,"end":1354,"source":"'src/packages/process-host/package.json'","value":{"kind":"string","value":"src/packages/process-host/package.json"},"index":13,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/packages/process-host/package.json'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":38,"end_line":38,"start":1358,"end":1403,"source":"'src/main/persistence/profile-state/store.ts'","value":{"kind":"string","value":"src/main/persistence/profile-state/store.ts"},"index":14,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/profile-state/store.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":39,"end_line":39,"start":1407,"end":1436,"source":"'src/main/sqlite/database.ts'","value":{"kind":"string","value":"src/main/sqlite/database.ts"},"index":15,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/sqlite/database.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":40,"end_line":40,"start":1440,"end":1465,"source":"'src/main/orcad/entry.ts'","value":{"kind":"string","value":"src/main/orcad/entry.ts"},"index":16,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/orcad/entry.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":41,"end_line":41,"start":1469,"end":1495,"source":"'src/main/daemon/entry.ts'","value":{"kind":"string","value":"src/main/daemon/entry.ts"},"index":17,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/daemon/entry.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":42,"end_line":42,"start":1499,"end":1541,"source":"'config/scripts/build-orcad-prebuilds.mjs'","value":{"kind":"string","value":"config/scripts/build-orcad-prebuilds.mjs"},"index":18,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/build-orcad-prebuilds.mjs'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":43,"end_line":43,"start":1545,"end":1594,"source":"'config/scripts/orcad-prebuild-slot-contents.mjs'","value":{"kind":"string","value":"config/scripts/orcad-prebuild-slot-contents.mjs"},"index":19,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/orcad-prebuild-slot-contents.mjs'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":44,"end_line":44,"start":1598,"end":1630,"source":"'src/shared/node-runtime-pin.ts'","value":{"kind":"string","value":"src/shared/node-runtime-pin.ts"},"index":20,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/shared/node-runtime-pin.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":11,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":12,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":13,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":14,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":15,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":16,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":17,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":18,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":19,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":20,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"46:46:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":46,"source":"nodeServerQualification([file], scope)","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":46,"end_line":46,"start":1736,"end":1742,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":46,"end_line":46,"start":1744,"end":1749,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":146,"end":165},"resolved":{"kind":"object","value":[{"key":"shouldRun","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":24,"title":"retains all platforms for platform-flavoured input %s","start":772,"end":1827},"implementation_status":"retained"},{"line":52,"title":"fails closed to every platform when the evidence is incomplete","decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fails closed to every platform when the evidence is incomplete.","explicit_input_controls":[{"control_id":"46:53:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":53,"source":"nodeServerQualification([], scope)","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":53,"end_line":53,"start":1939,"end":1941,"source":"[]","value":{"kind":"array","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: []. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fails closed to every platform when the evidence is incomplete.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":53,"end_line":53,"start":1943,"end":1948,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":146,"end":165},"resolved":{"kind":"object","value":[{"key":"shouldRun","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fails closed to every platform when the evidence is incomplete.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fails closed to every platform when the evidence is incomplete.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"46:55:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":55,"source":"nodeServerQualification(['src/main/runtime/rpc/methods/example.ts'], {\n ...scope,\n graphUnavailable: true\n })","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":55,"end_line":55,"start":2014,"end":2057,"source":"['src/main/runtime/rpc/methods/example.ts']","value":{"kind":"array","value":[{"kind":"string","value":"src/main/runtime/rpc/methods/example.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/main/runtime/rpc/methods/example.ts']. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fails closed to every platform when the evidence is incomplete.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":55,"end_line":58,"start":2059,"end":2111,"source":"{\n ...scope,\n graphUnavailable: true\n }","value":{"kind":"object","value":[{"source":"...scope"},{"key":"graphUnavailable","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { ...scope, graphUnavailable: true }. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fails closed to every platform when the evidence is incomplete.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fails closed to every platform when the evidence is incomplete.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":52,"title":"fails closed to every platform when the evidence is incomplete","start":1829,"end":2144},"implementation_status":"retained"},{"line":62,"title":"selects both architectures and a Linux smoke for %s","decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","explicit_input_controls":[{"control_id":"46:62:parameter-table:9","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":62,"source":"[\n [\n 'src/main/runtime/windows-terminal.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ],\n [\n 'src/main/windows/windows-process-table.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ],\n ['src/main/wsl/runner.ts', ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'], false],\n [\n 'src/packages/process-host/src/windows-command-line.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ],\n [\n 'src/shared/__tests__/process-host/windows-command-line.win32.test.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ],\n [\n 'src/main/orcad/orcad-launcher.win32.test.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ],\n ['src/main/daemon/darwin-process.ts', ['ubuntu-22.04', 'macos-15', 'macos-15-intel'], false],\n ['src/shared/linux-glibc.ts', ['ubuntu-22.04', 'ubuntu-24.04-arm'], true],\n [\n 'src/main/daemon/posix-process.ts',\n ['ubuntu-22.04', 'ubuntu-24.04-arm', 'macos-15', 'macos-15-intel'],\n true\n ]\n]","rows":[{"path":"config/scripts/node-server-qualification.test.mjs","line":63,"end_line":67,"start":2158,"end":2273,"source":"[\n 'src/main/runtime/windows-terminal.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ]","value":{"kind":"array","value":[{"kind":"string","value":"src/main/runtime/windows-terminal.ts"},{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"windows-2022"},{"kind":"string","value":"windows-11-arm"}]},{"kind":"boolean","value":false}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'src/main/runtime/windows-terminal.ts', ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'], false ]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":68,"end_line":72,"start":2277,"end":2397,"source":"[\n 'src/main/windows/windows-process-table.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ]","value":{"kind":"array","value":[{"kind":"string","value":"src/main/windows/windows-process-table.ts"},{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"windows-2022"},{"kind":"string","value":"windows-11-arm"}]},{"kind":"boolean","value":false}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'src/main/windows/windows-process-table.ts', ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'], false ]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":73,"end_line":73,"start":2401,"end":2486,"source":"['src/main/wsl/runner.ts', ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'], false]","value":{"kind":"array","value":[{"kind":"string","value":"src/main/wsl/runner.ts"},{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"windows-2022"},{"kind":"string","value":"windows-11-arm"}]},{"kind":"boolean","value":false}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['src/main/wsl/runner.ts', ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'], false]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":74,"end_line":78,"start":2490,"end":2622,"source":"[\n 'src/packages/process-host/src/windows-command-line.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ]","value":{"kind":"array","value":[{"kind":"string","value":"src/packages/process-host/src/windows-command-line.ts"},{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"windows-2022"},{"kind":"string","value":"windows-11-arm"}]},{"kind":"boolean","value":false}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'src/packages/process-host/src/windows-command-line.ts', ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'], false ]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":79,"end_line":83,"start":2626,"end":2773,"source":"[\n 'src/shared/__tests__/process-host/windows-command-line.win32.test.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ]","value":{"kind":"array","value":[{"kind":"string","value":"src/shared/__tests__/process-host/windows-command-line.win32.test.ts"},{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"windows-2022"},{"kind":"string","value":"windows-11-arm"}]},{"kind":"boolean","value":false}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'src/shared/__tests__/process-host/windows-command-line.win32.test.ts', ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'], fa. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":84,"end_line":88,"start":2777,"end":2899,"source":"[\n 'src/main/orcad/orcad-launcher.win32.test.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ]","value":{"kind":"array","value":[{"kind":"string","value":"src/main/orcad/orcad-launcher.win32.test.ts"},{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"windows-2022"},{"kind":"string","value":"windows-11-arm"}]},{"kind":"boolean","value":false}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'src/main/orcad/orcad-launcher.win32.test.ts', ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'], false ]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":89,"end_line":89,"start":2903,"end":2995,"source":"['src/main/daemon/darwin-process.ts', ['ubuntu-22.04', 'macos-15', 'macos-15-intel'], false]","value":{"kind":"array","value":[{"kind":"string","value":"src/main/daemon/darwin-process.ts"},{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"macos-15"},{"kind":"string","value":"macos-15-intel"}]},{"kind":"boolean","value":false}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['src/main/daemon/darwin-process.ts', ['ubuntu-22.04', 'macos-15', 'macos-15-intel'], false]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":90,"end_line":90,"start":2999,"end":3072,"source":"['src/shared/linux-glibc.ts', ['ubuntu-22.04', 'ubuntu-24.04-arm'], true]","value":{"kind":"array","value":[{"kind":"string","value":"src/shared/linux-glibc.ts"},{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"ubuntu-24.04-arm"}]},{"kind":"boolean","value":true}]},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['src/shared/linux-glibc.ts', ['ubuntu-22.04', 'ubuntu-24.04-arm'], true]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":91,"end_line":95,"start":3076,"end":3202,"source":"[\n 'src/main/daemon/posix-process.ts',\n ['ubuntu-22.04', 'ubuntu-24.04-arm', 'macos-15', 'macos-15-intel'],\n true\n ]","value":{"kind":"array","value":[{"kind":"string","value":"src/main/daemon/posix-process.ts"},{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"ubuntu-24.04-arm"},{"kind":"string","value":"macos-15"},{"kind":"string","value":"macos-15-intel"}]},{"kind":"boolean","value":true}]},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'src/main/daemon/posix-process.ts', ['ubuntu-22.04', 'ubuntu-24.04-arm', 'macos-15', 'macos-15-intel'], true ]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"46:97:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":97,"source":"nodeServerQualification([file], scope)","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":97,"end_line":97,"start":3330,"end":3336,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":97,"end_line":97,"start":3338,"end":3343,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":146,"end":165},"resolved":{"kind":"object","value":[{"key":"shouldRun","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":62,"title":"selects both architectures and a Linux smoke for %s","start":2146,"end":3384},"implementation_status":"retained"},{"line":100,"title":"combines platform families without adding Linux compatibility work","decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: combines platform families without adding Linux compatibility work.","explicit_input_controls":[{"control_id":"46:102:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":102,"source":"nodeServerQualification(\n ['src/main/windows/windows-process-table.ts', 'src/main/daemon/darwin-process.ts'],\n scope\n )","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":103,"end_line":103,"start":3512,"end":3594,"source":"['src/main/windows/windows-process-table.ts', 'src/main/daemon/darwin-process.ts']","value":{"kind":"array","value":[{"kind":"string","value":"src/main/windows/windows-process-table.ts"},{"kind":"string","value":"src/main/daemon/darwin-process.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/main/windows/windows-process-table.ts', 'src/main/daemon/darwin-process.ts']. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: combines platform families without adding Linux compatibility work.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":104,"end_line":104,"start":3602,"end":3607,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":146,"end":165},"resolved":{"kind":"object","value":[{"key":"shouldRun","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: combines platform families without adding Linux compatibility work.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: combines platform families without adding Linux compatibility work.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":100,"title":"combines platform families without adding Linux compatibility work","start":3386,"end":3755},"implementation_status":"retained"},{"line":112,"title":"keeps all hosts for shared changes alongside a platform-specific change","decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps all hosts for shared changes alongside a platform-specific change.","explicit_input_controls":[{"control_id":"46:114:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":114,"source":"nodeServerQualification(\n ['src/main/windows/windows-process-table.ts', 'src/main/daemon/entry.ts'],\n scope\n )","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":115,"end_line":115,"start":3888,"end":3961,"source":"['src/main/windows/windows-process-table.ts', 'src/main/daemon/entry.ts']","value":{"kind":"array","value":[{"kind":"string","value":"src/main/windows/windows-process-table.ts"},{"kind":"string","value":"src/main/daemon/entry.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/main/windows/windows-process-table.ts', 'src/main/daemon/entry.ts']. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps all hosts for shared changes alongside a platform-specific change.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":116,"end_line":116,"start":3969,"end":3974,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":146,"end":165},"resolved":{"kind":"object","value":[{"key":"shouldRun","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps all hosts for shared changes alongside a platform-specific change.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps all hosts for shared changes alongside a platform-specific change.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":112,"title":"keeps all hosts for shared changes alongside a platform-specific change","start":3757,"end":4050},"implementation_status":"retained"},{"line":121,"title":"qualifies every client platform for a remote execution input: %s","decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies every client platform for a remote execution input: %s.","explicit_input_controls":[{"control_id":"46:121:parameter-table:13","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":121,"source":"[\n 'src/main/managed-server/install/remote-node-runtime-store-windows.ts',\n 'src/main/managed-server/install/orcad-remote-node-runtime-windows.ts',\n 'src/main/ssh/ssh-posix-command-wrapper.test.ts',\n 'src/main/providers/agent-foreground-process-git-bash.win32.test.ts',\n 'src/main/runtime/windows-firewall-remote-scope.ts',\n 'src/shared/remote-windows-path.ts'\n]","rows":[{"path":"config/scripts/node-server-qualification.test.mjs","line":122,"end_line":122,"start":4064,"end":4134,"source":"'src/main/managed-server/install/remote-node-runtime-store-windows.ts'","value":{"kind":"string","value":"src/main/managed-server/install/remote-node-runtime-store-windows.ts"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/managed-server/install/remote-node-runtime-store-windows.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies every client platform for a remote execution input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":123,"end_line":123,"start":4138,"end":4208,"source":"'src/main/managed-server/install/orcad-remote-node-runtime-windows.ts'","value":{"kind":"string","value":"src/main/managed-server/install/orcad-remote-node-runtime-windows.ts"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/managed-server/install/orcad-remote-node-runtime-windows.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies every client platform for a remote execution input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":124,"end_line":124,"start":4212,"end":4260,"source":"'src/main/ssh/ssh-posix-command-wrapper.test.ts'","value":{"kind":"string","value":"src/main/ssh/ssh-posix-command-wrapper.test.ts"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/ssh/ssh-posix-command-wrapper.test.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies every client platform for a remote execution input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":125,"end_line":125,"start":4264,"end":4332,"source":"'src/main/providers/agent-foreground-process-git-bash.win32.test.ts'","value":{"kind":"string","value":"src/main/providers/agent-foreground-process-git-bash.win32.test.ts"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/providers/agent-foreground-process-git-bash.win32.test.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies every client platform for a remote execution input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":126,"end_line":126,"start":4336,"end":4387,"source":"'src/main/runtime/windows-firewall-remote-scope.ts'","value":{"kind":"string","value":"src/main/runtime/windows-firewall-remote-scope.ts"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/runtime/windows-firewall-remote-scope.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies every client platform for a remote execution input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":127,"end_line":127,"start":4391,"end":4426,"source":"'src/shared/remote-windows-path.ts'","value":{"kind":"string","value":"src/shared/remote-windows-path.ts"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/shared/remote-windows-path.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies every client platform for a remote execution input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies every client platform for a remote execution input: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"46:129:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":129,"source":"nodeServerQualification([file], scope)","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":129,"end_line":129,"start":4543,"end":4549,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies every client platform for a remote execution input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":129,"end_line":129,"start":4551,"end":4556,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":146,"end":165},"resolved":{"kind":"object","value":[{"key":"shouldRun","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies every client platform for a remote execution input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies every client platform for a remote execution input: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":121,"title":"qualifies every client platform for a remote execution input: %s","start":4052,"end":4634},"implementation_status":"retained"},{"line":135,"title":"qualifies all hosts when the selection policy changes: %s","decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies all hosts when the selection policy changes: %s.","explicit_input_controls":[{"control_id":"46:135:parameter-table:15","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":135,"source":"[\n '.github/workflows/node-server-tests.yml',\n 'config/scripts/node-server-qualification.mjs'\n]","rows":[{"path":"config/scripts/node-server-qualification.test.mjs","line":136,"end_line":136,"start":4648,"end":4689,"source":"'.github/workflows/node-server-tests.yml'","value":{"kind":"string","value":".github/workflows/node-server-tests.yml"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/workflows/node-server-tests.yml'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies all hosts when the selection policy changes: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":137,"end_line":137,"start":4693,"end":4739,"source":"'config/scripts/node-server-qualification.mjs'","value":{"kind":"string","value":"config/scripts/node-server-qualification.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-qualification.mjs'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies all hosts when the selection policy changes: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies all hosts when the selection policy changes: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"46:139:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":139,"source":"nodeServerQualification([file], scope)","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":139,"end_line":139,"start":4849,"end":4855,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies all hosts when the selection policy changes: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":139,"end_line":139,"start":4857,"end":4862,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":146,"end":165},"resolved":{"kind":"object","value":[{"key":"shouldRun","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies all hosts when the selection policy changes: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies all hosts when the selection policy changes: %s.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":135,"title":"qualifies all hosts when the selection policy changes: %s","start":4636,"end":4940},"implementation_status":"retained"},{"line":145,"title":"fully qualifies relevant main pushes even for an unflavoured change","decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fully qualifies relevant main pushes even for an unflavoured change.","explicit_input_controls":[{"control_id":"46:147:inline-api-or-fixture-input:17","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":147,"source":"nodeServerQualification(['src/main/runtime/rpc/methods/example.ts'], scope, {\n fullQualification: true\n })","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":147,"end_line":147,"start":5062,"end":5105,"source":"['src/main/runtime/rpc/methods/example.ts']","value":{"kind":"array","value":[{"kind":"string","value":"src/main/runtime/rpc/methods/example.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/main/runtime/rpc/methods/example.ts']. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fully qualifies relevant main pushes even for an unflavoured change.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":147,"end_line":147,"start":5107,"end":5112,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":146,"end":165},"resolved":{"kind":"object","value":[{"key":"shouldRun","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fully qualifies relevant main pushes even for an unflavoured change.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-qualification.test.mjs","line":147,"end_line":149,"start":5114,"end":5151,"source":"{\n fullQualification: true\n }","value":{"kind":"object","value":[{"key":"fullQualification","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { fullQualification: true }. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fully qualifies relevant main pushes even for an unflavoured change.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fully qualifies relevant main pushes even for an unflavoured change.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":145,"title":"fully qualifies relevant main pushes even for an unflavoured change","start":4942,"end":5222},"implementation_status":"retained"}],"lines":152,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets.","planned_changes":[],"production_evidence":["config/scripts/node-server-qualification.mjs"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"46:4:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":138,"end":165,"source":"{ shouldRun: true }","input_position":{"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":146,"end":165},"binding":"scope","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets.","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":148,"end":163,"source":"shouldRun: true","value":{"kind":"property","key":"shouldRun","value":{"kind":"boolean","value":true}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: shouldRun: true. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb"}},{"id":"46:7:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":7,"end_line":7,"start":248,"end":323,"source":"nodeServerQualification(['src/main/runtime/rpc/methods/example.ts'], scope)","input_position":{"path":"config/scripts/node-server-qualification.test.mjs","line":7,"end_line":7,"start":248,"end":323},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":6,"title":"qualifies one platform for a change no platform can alter"},"affected_case_lines":[],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies one platform for a change no platform can alter.","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":7,"end_line":7,"start":272,"end":315,"source":"['src/main/runtime/rpc/methods/example.ts']","value":{"kind":"array","value":[{"kind":"string","value":"src/main/runtime/rpc/methods/example.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/main/runtime/rpc/methods/example.ts']. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies one platform for a change no platform can alter.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":7,"end_line":7,"start":317,"end":322,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":146,"end":165},"resolved":{"kind":"object","value":[{"key":"shouldRun","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies one platform for a change no platform can alter.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb"}},{"id":"46:13:parameter-table:3","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":13,"end_line":22,"start":400,"end":770,"source":"[\n 'src/renderer/src/components/TabStrip.tsx',\n 'config/vitest.config.ts',\n 'config/scripts/ci-unit-plan.mjs',\n 'resources/icons/tray.png',\n '.github/workflows/pr.yml',\n 'docs/reference/agent-status-store.md'\n]","input_position":{"path":"config/scripts/node-server-qualification.test.mjs","line":13,"end_line":20,"start":408,"end":624},"binding":"it.each","resolution":[],"enclosing_case":{"line":13,"title":"keeps one platform for unflavoured input %s"},"affected_case_lines":[13],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps one platform for unflavoured input %s.","rows":[{"path":"config/scripts/node-server-qualification.test.mjs","line":14,"end_line":14,"start":412,"end":454,"source":"'src/renderer/src/components/TabStrip.tsx'","value":{"kind":"string","value":"src/renderer/src/components/TabStrip.tsx"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/renderer/src/components/TabStrip.tsx'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps one platform for unflavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":15,"end_line":15,"start":458,"end":483,"source":"'config/vitest.config.ts'","value":{"kind":"string","value":"config/vitest.config.ts"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/vitest.config.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps one platform for unflavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":16,"end_line":16,"start":487,"end":520,"source":"'config/scripts/ci-unit-plan.mjs'","value":{"kind":"string","value":"config/scripts/ci-unit-plan.mjs"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/ci-unit-plan.mjs'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps one platform for unflavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":17,"end_line":17,"start":524,"end":550,"source":"'resources/icons/tray.png'","value":{"kind":"string","value":"resources/icons/tray.png"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'resources/icons/tray.png'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps one platform for unflavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":18,"end_line":18,"start":554,"end":580,"source":"'.github/workflows/pr.yml'","value":{"kind":"string","value":".github/workflows/pr.yml"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/workflows/pr.yml'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps one platform for unflavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":19,"end_line":19,"start":584,"end":622,"source":"'docs/reference/agent-status-store.md'","value":{"kind":"string","value":"docs/reference/agent-status-store.md"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'docs/reference/agent-status-store.md'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps one platform for unflavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb"}},{"id":"46:21:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":21,"end_line":21,"start":694,"end":732,"source":"nodeServerQualification([file], scope)","input_position":{"path":"config/scripts/node-server-qualification.test.mjs","line":21,"end_line":21,"start":694,"end":732},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":13,"title":"keeps one platform for unflavoured input %s"},"affected_case_lines":[],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps one platform for unflavoured input %s.","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":21,"end_line":21,"start":718,"end":724,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps one platform for unflavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":21,"end_line":21,"start":726,"end":731,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":146,"end":165},"resolved":{"kind":"object","value":[{"key":"shouldRun","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps one platform for unflavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb"}},{"id":"46:24:parameter-table:5","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":24,"end_line":50,"start":772,"end":1827,"source":"[\n 'package.json',\n 'pnpm-lock.yaml',\n 'native/windows-registry/src/addon.cc',\n 'config/patches/node-pty.patch',\n '.github/actions/install-node-dependencies/action.yml',\n '.github/actions/restore-pnpm-verification/action.yml',\n '.github/actions/prepare-native-runtime/action.yml',\n '.github/actions/prepare-orcad-prebuilds/action.yml',\n 'src/main/ssh/ssh-provider.ts',\n 'src/main/providers/local-pty-provider.ts',\n 'src/packages/process-host/src/run-process.ts',\n 'src/packages/process-host/src/growing-byte-buffer.ts',\n 'src/packages/process-host/package.json',\n 'src/main/persistence/profile-state/store.ts',\n 'src/main/sqlite/database.ts',\n 'src/main/orcad/entry.ts',\n 'src/main/daemon/entry.ts',\n 'config/scripts/build-orcad-prebuilds.mjs',\n 'config/scripts/orcad-prebuild-slot-contents.mjs',\n 'src/shared/node-runtime-pin.ts'\n]","input_position":{"path":"config/scripts/node-server-qualification.test.mjs","line":24,"end_line":45,"start":780,"end":1632},"binding":"it.each","resolution":[],"enclosing_case":{"line":24,"title":"retains all platforms for platform-flavoured input %s"},"affected_case_lines":[24],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","rows":[{"path":"config/scripts/node-server-qualification.test.mjs","line":25,"end_line":25,"start":784,"end":798,"source":"'package.json'","value":{"kind":"string","value":"package.json"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'package.json'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":26,"end_line":26,"start":802,"end":818,"source":"'pnpm-lock.yaml'","value":{"kind":"string","value":"pnpm-lock.yaml"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'pnpm-lock.yaml'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":27,"end_line":27,"start":822,"end":860,"source":"'native/windows-registry/src/addon.cc'","value":{"kind":"string","value":"native/windows-registry/src/addon.cc"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'native/windows-registry/src/addon.cc'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":28,"end_line":28,"start":864,"end":895,"source":"'config/patches/node-pty.patch'","value":{"kind":"string","value":"config/patches/node-pty.patch"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/patches/node-pty.patch'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":29,"end_line":29,"start":899,"end":953,"source":"'.github/actions/install-node-dependencies/action.yml'","value":{"kind":"string","value":".github/actions/install-node-dependencies/action.yml"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/install-node-dependencies/action.yml'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":30,"end_line":30,"start":957,"end":1011,"source":"'.github/actions/restore-pnpm-verification/action.yml'","value":{"kind":"string","value":".github/actions/restore-pnpm-verification/action.yml"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/restore-pnpm-verification/action.yml'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":31,"end_line":31,"start":1015,"end":1066,"source":"'.github/actions/prepare-native-runtime/action.yml'","value":{"kind":"string","value":".github/actions/prepare-native-runtime/action.yml"},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/prepare-native-runtime/action.yml'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":32,"end_line":32,"start":1070,"end":1122,"source":"'.github/actions/prepare-orcad-prebuilds/action.yml'","value":{"kind":"string","value":".github/actions/prepare-orcad-prebuilds/action.yml"},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/actions/prepare-orcad-prebuilds/action.yml'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":33,"end_line":33,"start":1126,"end":1156,"source":"'src/main/ssh/ssh-provider.ts'","value":{"kind":"string","value":"src/main/ssh/ssh-provider.ts"},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/ssh/ssh-provider.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":34,"end_line":34,"start":1160,"end":1202,"source":"'src/main/providers/local-pty-provider.ts'","value":{"kind":"string","value":"src/main/providers/local-pty-provider.ts"},"index":10,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/providers/local-pty-provider.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":35,"end_line":35,"start":1206,"end":1252,"source":"'src/packages/process-host/src/run-process.ts'","value":{"kind":"string","value":"src/packages/process-host/src/run-process.ts"},"index":11,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/packages/process-host/src/run-process.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":36,"end_line":36,"start":1256,"end":1310,"source":"'src/packages/process-host/src/growing-byte-buffer.ts'","value":{"kind":"string","value":"src/packages/process-host/src/growing-byte-buffer.ts"},"index":12,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/packages/process-host/src/growing-byte-buffer.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":37,"end_line":37,"start":1314,"end":1354,"source":"'src/packages/process-host/package.json'","value":{"kind":"string","value":"src/packages/process-host/package.json"},"index":13,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/packages/process-host/package.json'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":38,"end_line":38,"start":1358,"end":1403,"source":"'src/main/persistence/profile-state/store.ts'","value":{"kind":"string","value":"src/main/persistence/profile-state/store.ts"},"index":14,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/persistence/profile-state/store.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":39,"end_line":39,"start":1407,"end":1436,"source":"'src/main/sqlite/database.ts'","value":{"kind":"string","value":"src/main/sqlite/database.ts"},"index":15,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/sqlite/database.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":40,"end_line":40,"start":1440,"end":1465,"source":"'src/main/orcad/entry.ts'","value":{"kind":"string","value":"src/main/orcad/entry.ts"},"index":16,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/orcad/entry.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":41,"end_line":41,"start":1469,"end":1495,"source":"'src/main/daemon/entry.ts'","value":{"kind":"string","value":"src/main/daemon/entry.ts"},"index":17,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/daemon/entry.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":42,"end_line":42,"start":1499,"end":1541,"source":"'config/scripts/build-orcad-prebuilds.mjs'","value":{"kind":"string","value":"config/scripts/build-orcad-prebuilds.mjs"},"index":18,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/build-orcad-prebuilds.mjs'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":43,"end_line":43,"start":1545,"end":1594,"source":"'config/scripts/orcad-prebuild-slot-contents.mjs'","value":{"kind":"string","value":"config/scripts/orcad-prebuild-slot-contents.mjs"},"index":19,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/orcad-prebuild-slot-contents.mjs'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":44,"end_line":44,"start":1598,"end":1630,"source":"'src/shared/node-runtime-pin.ts'","value":{"kind":"string","value":"src/shared/node-runtime-pin.ts"},"index":20,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/shared/node-runtime-pin.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":11,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":12,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":13,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":14,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":15,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":16,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":17,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":18,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":19,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":20,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb"}},{"id":"46:46:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":46,"end_line":46,"start":1712,"end":1750,"source":"nodeServerQualification([file], scope)","input_position":{"path":"config/scripts/node-server-qualification.test.mjs","line":46,"end_line":46,"start":1712,"end":1750},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":24,"title":"retains all platforms for platform-flavoured input %s"},"affected_case_lines":[],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":46,"end_line":46,"start":1736,"end":1742,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":46,"end_line":46,"start":1744,"end":1749,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":146,"end":165},"resolved":{"kind":"object","value":[{"key":"shouldRun","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: retains all platforms for platform-flavoured input %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb"}},{"id":"46:53:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":53,"end_line":53,"start":1915,"end":1949,"source":"nodeServerQualification([], scope)","input_position":{"path":"config/scripts/node-server-qualification.test.mjs","line":53,"end_line":53,"start":1915,"end":1949},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":52,"title":"fails closed to every platform when the evidence is incomplete"},"affected_case_lines":[],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fails closed to every platform when the evidence is incomplete.","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":53,"end_line":53,"start":1939,"end":1941,"source":"[]","value":{"kind":"array","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: []. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fails closed to every platform when the evidence is incomplete.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":53,"end_line":53,"start":1943,"end":1948,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":146,"end":165},"resolved":{"kind":"object","value":[{"key":"shouldRun","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fails closed to every platform when the evidence is incomplete.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb"}},{"id":"46:55:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":55,"end_line":58,"start":1990,"end":2112,"source":"nodeServerQualification(['src/main/runtime/rpc/methods/example.ts'], {\n ...scope,\n graphUnavailable: true\n })","input_position":{"path":"config/scripts/node-server-qualification.test.mjs","line":55,"end_line":58,"start":1990,"end":2112},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":52,"title":"fails closed to every platform when the evidence is incomplete"},"affected_case_lines":[],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fails closed to every platform when the evidence is incomplete.","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":55,"end_line":55,"start":2014,"end":2057,"source":"['src/main/runtime/rpc/methods/example.ts']","value":{"kind":"array","value":[{"kind":"string","value":"src/main/runtime/rpc/methods/example.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/main/runtime/rpc/methods/example.ts']. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fails closed to every platform when the evidence is incomplete.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":55,"end_line":58,"start":2059,"end":2111,"source":"{\n ...scope,\n graphUnavailable: true\n }","value":{"kind":"object","value":[{"source":"...scope"},{"key":"graphUnavailable","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { ...scope, graphUnavailable: true }. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fails closed to every platform when the evidence is incomplete.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb"}},{"id":"46:62:parameter-table:9","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":62,"end_line":98,"start":2146,"end":3384,"source":"[\n [\n 'src/main/runtime/windows-terminal.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ],\n [\n 'src/main/windows/windows-process-table.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ],\n ['src/main/wsl/runner.ts', ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'], false],\n [\n 'src/packages/process-host/src/windows-command-line.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ],\n [\n 'src/shared/__tests__/process-host/windows-command-line.win32.test.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ],\n [\n 'src/main/orcad/orcad-launcher.win32.test.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ],\n ['src/main/daemon/darwin-process.ts', ['ubuntu-22.04', 'macos-15', 'macos-15-intel'], false],\n ['src/shared/linux-glibc.ts', ['ubuntu-22.04', 'ubuntu-24.04-arm'], true],\n [\n 'src/main/daemon/posix-process.ts',\n ['ubuntu-22.04', 'ubuntu-24.04-arm', 'macos-15', 'macos-15-intel'],\n true\n ]\n]","input_position":{"path":"config/scripts/node-server-qualification.test.mjs","line":62,"end_line":96,"start":2154,"end":3204},"binding":"it.each","resolution":[],"enclosing_case":{"line":62,"title":"selects both architectures and a Linux smoke for %s"},"affected_case_lines":[62],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","rows":[{"path":"config/scripts/node-server-qualification.test.mjs","line":63,"end_line":67,"start":2158,"end":2273,"source":"[\n 'src/main/runtime/windows-terminal.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ]","value":{"kind":"array","value":[{"kind":"string","value":"src/main/runtime/windows-terminal.ts"},{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"windows-2022"},{"kind":"string","value":"windows-11-arm"}]},{"kind":"boolean","value":false}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'src/main/runtime/windows-terminal.ts', ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'], false ]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":68,"end_line":72,"start":2277,"end":2397,"source":"[\n 'src/main/windows/windows-process-table.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ]","value":{"kind":"array","value":[{"kind":"string","value":"src/main/windows/windows-process-table.ts"},{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"windows-2022"},{"kind":"string","value":"windows-11-arm"}]},{"kind":"boolean","value":false}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'src/main/windows/windows-process-table.ts', ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'], false ]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":73,"end_line":73,"start":2401,"end":2486,"source":"['src/main/wsl/runner.ts', ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'], false]","value":{"kind":"array","value":[{"kind":"string","value":"src/main/wsl/runner.ts"},{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"windows-2022"},{"kind":"string","value":"windows-11-arm"}]},{"kind":"boolean","value":false}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['src/main/wsl/runner.ts', ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'], false]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":74,"end_line":78,"start":2490,"end":2622,"source":"[\n 'src/packages/process-host/src/windows-command-line.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ]","value":{"kind":"array","value":[{"kind":"string","value":"src/packages/process-host/src/windows-command-line.ts"},{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"windows-2022"},{"kind":"string","value":"windows-11-arm"}]},{"kind":"boolean","value":false}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'src/packages/process-host/src/windows-command-line.ts', ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'], false ]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":79,"end_line":83,"start":2626,"end":2773,"source":"[\n 'src/shared/__tests__/process-host/windows-command-line.win32.test.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ]","value":{"kind":"array","value":[{"kind":"string","value":"src/shared/__tests__/process-host/windows-command-line.win32.test.ts"},{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"windows-2022"},{"kind":"string","value":"windows-11-arm"}]},{"kind":"boolean","value":false}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'src/shared/__tests__/process-host/windows-command-line.win32.test.ts', ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'], fa. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":84,"end_line":88,"start":2777,"end":2899,"source":"[\n 'src/main/orcad/orcad-launcher.win32.test.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ]","value":{"kind":"array","value":[{"kind":"string","value":"src/main/orcad/orcad-launcher.win32.test.ts"},{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"windows-2022"},{"kind":"string","value":"windows-11-arm"}]},{"kind":"boolean","value":false}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'src/main/orcad/orcad-launcher.win32.test.ts', ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'], false ]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":89,"end_line":89,"start":2903,"end":2995,"source":"['src/main/daemon/darwin-process.ts', ['ubuntu-22.04', 'macos-15', 'macos-15-intel'], false]","value":{"kind":"array","value":[{"kind":"string","value":"src/main/daemon/darwin-process.ts"},{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"macos-15"},{"kind":"string","value":"macos-15-intel"}]},{"kind":"boolean","value":false}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['src/main/daemon/darwin-process.ts', ['ubuntu-22.04', 'macos-15', 'macos-15-intel'], false]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":90,"end_line":90,"start":2999,"end":3072,"source":"['src/shared/linux-glibc.ts', ['ubuntu-22.04', 'ubuntu-24.04-arm'], true]","value":{"kind":"array","value":[{"kind":"string","value":"src/shared/linux-glibc.ts"},{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"ubuntu-24.04-arm"}]},{"kind":"boolean","value":true}]},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: ['src/shared/linux-glibc.ts', ['ubuntu-22.04', 'ubuntu-24.04-arm'], true]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":91,"end_line":95,"start":3076,"end":3202,"source":"[\n 'src/main/daemon/posix-process.ts',\n ['ubuntu-22.04', 'ubuntu-24.04-arm', 'macos-15', 'macos-15-intel'],\n true\n ]","value":{"kind":"array","value":[{"kind":"string","value":"src/main/daemon/posix-process.ts"},{"kind":"array","value":[{"kind":"string","value":"ubuntu-22.04"},{"kind":"string","value":"ubuntu-24.04-arm"},{"kind":"string","value":"macos-15"},{"kind":"string","value":"macos-15-intel"}]},{"kind":"boolean","value":true}]},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: [ 'src/main/daemon/posix-process.ts', ['ubuntu-22.04', 'ubuntu-24.04-arm', 'macos-15', 'macos-15-intel'], true ]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb"}},{"id":"46:97:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":97,"end_line":97,"start":3306,"end":3344,"source":"nodeServerQualification([file], scope)","input_position":{"path":"config/scripts/node-server-qualification.test.mjs","line":97,"end_line":97,"start":3306,"end":3344},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":62,"title":"selects both architectures and a Linux smoke for %s"},"affected_case_lines":[],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":97,"end_line":97,"start":3330,"end":3336,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":97,"end_line":97,"start":3338,"end":3343,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":146,"end":165},"resolved":{"kind":"object","value":[{"key":"shouldRun","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: selects both architectures and a Linux smoke for %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb"}},{"id":"46:102:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":102,"end_line":105,"start":3481,"end":3613,"source":"nodeServerQualification(\n ['src/main/windows/windows-process-table.ts', 'src/main/daemon/darwin-process.ts'],\n scope\n )","input_position":{"path":"config/scripts/node-server-qualification.test.mjs","line":102,"end_line":105,"start":3481,"end":3613},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":100,"title":"combines platform families without adding Linux compatibility work"},"affected_case_lines":[],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: combines platform families without adding Linux compatibility work.","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":103,"end_line":103,"start":3512,"end":3594,"source":"['src/main/windows/windows-process-table.ts', 'src/main/daemon/darwin-process.ts']","value":{"kind":"array","value":[{"kind":"string","value":"src/main/windows/windows-process-table.ts"},{"kind":"string","value":"src/main/daemon/darwin-process.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/main/windows/windows-process-table.ts', 'src/main/daemon/darwin-process.ts']. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: combines platform families without adding Linux compatibility work.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":104,"end_line":104,"start":3602,"end":3607,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":146,"end":165},"resolved":{"kind":"object","value":[{"key":"shouldRun","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: combines platform families without adding Linux compatibility work.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb"}},{"id":"46:114:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":114,"end_line":117,"start":3857,"end":3980,"source":"nodeServerQualification(\n ['src/main/windows/windows-process-table.ts', 'src/main/daemon/entry.ts'],\n scope\n )","input_position":{"path":"config/scripts/node-server-qualification.test.mjs","line":114,"end_line":117,"start":3857,"end":3980},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":112,"title":"keeps all hosts for shared changes alongside a platform-specific change"},"affected_case_lines":[],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps all hosts for shared changes alongside a platform-specific change.","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":115,"end_line":115,"start":3888,"end":3961,"source":"['src/main/windows/windows-process-table.ts', 'src/main/daemon/entry.ts']","value":{"kind":"array","value":[{"kind":"string","value":"src/main/windows/windows-process-table.ts"},{"kind":"string","value":"src/main/daemon/entry.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/main/windows/windows-process-table.ts', 'src/main/daemon/entry.ts']. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps all hosts for shared changes alongside a platform-specific change.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":116,"end_line":116,"start":3969,"end":3974,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":146,"end":165},"resolved":{"kind":"object","value":[{"key":"shouldRun","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: keeps all hosts for shared changes alongside a platform-specific change.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb"}},{"id":"46:121:parameter-table:13","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":121,"end_line":133,"start":4052,"end":4634,"source":"[\n 'src/main/managed-server/install/remote-node-runtime-store-windows.ts',\n 'src/main/managed-server/install/orcad-remote-node-runtime-windows.ts',\n 'src/main/ssh/ssh-posix-command-wrapper.test.ts',\n 'src/main/providers/agent-foreground-process-git-bash.win32.test.ts',\n 'src/main/runtime/windows-firewall-remote-scope.ts',\n 'src/shared/remote-windows-path.ts'\n]","input_position":{"path":"config/scripts/node-server-qualification.test.mjs","line":121,"end_line":128,"start":4060,"end":4428},"binding":"it.each","resolution":[],"enclosing_case":{"line":121,"title":"qualifies every client platform for a remote execution input: %s"},"affected_case_lines":[121],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies every client platform for a remote execution input: %s.","rows":[{"path":"config/scripts/node-server-qualification.test.mjs","line":122,"end_line":122,"start":4064,"end":4134,"source":"'src/main/managed-server/install/remote-node-runtime-store-windows.ts'","value":{"kind":"string","value":"src/main/managed-server/install/remote-node-runtime-store-windows.ts"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/managed-server/install/remote-node-runtime-store-windows.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies every client platform for a remote execution input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":123,"end_line":123,"start":4138,"end":4208,"source":"'src/main/managed-server/install/orcad-remote-node-runtime-windows.ts'","value":{"kind":"string","value":"src/main/managed-server/install/orcad-remote-node-runtime-windows.ts"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/managed-server/install/orcad-remote-node-runtime-windows.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies every client platform for a remote execution input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":124,"end_line":124,"start":4212,"end":4260,"source":"'src/main/ssh/ssh-posix-command-wrapper.test.ts'","value":{"kind":"string","value":"src/main/ssh/ssh-posix-command-wrapper.test.ts"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/ssh/ssh-posix-command-wrapper.test.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies every client platform for a remote execution input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":125,"end_line":125,"start":4264,"end":4332,"source":"'src/main/providers/agent-foreground-process-git-bash.win32.test.ts'","value":{"kind":"string","value":"src/main/providers/agent-foreground-process-git-bash.win32.test.ts"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/providers/agent-foreground-process-git-bash.win32.test.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies every client platform for a remote execution input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":126,"end_line":126,"start":4336,"end":4387,"source":"'src/main/runtime/windows-firewall-remote-scope.ts'","value":{"kind":"string","value":"src/main/runtime/windows-firewall-remote-scope.ts"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/main/runtime/windows-firewall-remote-scope.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies every client platform for a remote execution input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":127,"end_line":127,"start":4391,"end":4426,"source":"'src/shared/remote-windows-path.ts'","value":{"kind":"string","value":"src/shared/remote-windows-path.ts"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'src/shared/remote-windows-path.ts'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies every client platform for a remote execution input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb"}},{"id":"46:129:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":129,"end_line":129,"start":4519,"end":4557,"source":"nodeServerQualification([file], scope)","input_position":{"path":"config/scripts/node-server-qualification.test.mjs","line":129,"end_line":129,"start":4519,"end":4557},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":121,"title":"qualifies every client platform for a remote execution input: %s"},"affected_case_lines":[],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies every client platform for a remote execution input: %s.","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":129,"end_line":129,"start":4543,"end":4549,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies every client platform for a remote execution input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":129,"end_line":129,"start":4551,"end":4556,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":146,"end":165},"resolved":{"kind":"object","value":[{"key":"shouldRun","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies every client platform for a remote execution input: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb"}},{"id":"46:135:parameter-table:15","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":135,"end_line":143,"start":4636,"end":4940,"source":"[\n '.github/workflows/node-server-tests.yml',\n 'config/scripts/node-server-qualification.mjs'\n]","input_position":{"path":"config/scripts/node-server-qualification.test.mjs","line":135,"end_line":138,"start":4644,"end":4741},"binding":"it.each","resolution":[],"enclosing_case":{"line":135,"title":"qualifies all hosts when the selection policy changes: %s"},"affected_case_lines":[135],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies all hosts when the selection policy changes: %s.","rows":[{"path":"config/scripts/node-server-qualification.test.mjs","line":136,"end_line":136,"start":4648,"end":4689,"source":"'.github/workflows/node-server-tests.yml'","value":{"kind":"string","value":".github/workflows/node-server-tests.yml"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: '.github/workflows/node-server-tests.yml'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies all hosts when the selection policy changes: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-qualification.test.mjs","line":137,"end_line":137,"start":4693,"end":4739,"source":"'config/scripts/node-server-qualification.mjs'","value":{"kind":"string","value":"config/scripts/node-server-qualification.mjs"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'config/scripts/node-server-qualification.mjs'. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies all hosts when the selection policy changes: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb"}},{"id":"46:139:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":139,"end_line":139,"start":4825,"end":4863,"source":"nodeServerQualification([file], scope)","input_position":{"path":"config/scripts/node-server-qualification.test.mjs","line":139,"end_line":139,"start":4825,"end":4863},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":135,"title":"qualifies all hosts when the selection policy changes: %s"},"affected_case_lines":[],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies all hosts when the selection policy changes: %s.","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":139,"end_line":139,"start":4849,"end":4855,"source":"[file]","value":{"kind":"array","value":[{"kind":"source-expression","source":"file"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [file]. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies all hosts when the selection policy changes: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":139,"end_line":139,"start":4857,"end":4862,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":146,"end":165},"resolved":{"kind":"object","value":[{"key":"shouldRun","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: qualifies all hosts when the selection policy changes: %s.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb"}},{"id":"46:147:inline-api-or-fixture-input:17","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-qualification.test.mjs","line":147,"end_line":149,"start":5038,"end":5152,"source":"nodeServerQualification(['src/main/runtime/rpc/methods/example.ts'], scope, {\n fullQualification: true\n })","input_position":{"path":"config/scripts/node-server-qualification.test.mjs","line":147,"end_line":149,"start":5038,"end":5152},"binding":"nodeServerQualification","resolution":[],"enclosing_case":{"line":145,"title":"fully qualifies relevant main pushes even for an unflavoured change"},"affected_case_lines":[],"decision":"keep","reason":"The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fully qualifies relevant main pushes even for an unflavoured change.","rows":[{"index":1,"path":"config/scripts/node-server-qualification.test.mjs","line":147,"end_line":147,"start":5062,"end":5105,"source":"['src/main/runtime/rpc/methods/example.ts']","value":{"kind":"array","value":[{"kind":"string","value":"src/main/runtime/rpc/methods/example.ts"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['src/main/runtime/rpc/methods/example.ts']. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fully qualifies relevant main pushes even for an unflavoured change.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-qualification.test.mjs","line":147,"end_line":147,"start":5107,"end":5112,"source":"scope","value":{"kind":"reference","source":"scope","resolved_at":{"path":"config/scripts/node-server-qualification.test.mjs","line":4,"end_line":4,"start":146,"end":165},"resolved":{"kind":"object","value":[{"key":"shouldRun","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scope. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fully qualifies relevant main pushes even for an unflavoured change.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/node-server-qualification.test.mjs","line":147,"end_line":149,"start":5114,"end":5151,"source":"{\n fullQualification: true\n }","value":{"kind":"object","value":[{"key":"fullQualification","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { fullQualification: true }. The real platform qualification function receives independent changed paths and evidence; explicit expected platform families, remote cross-client coverage and conservative fallback protect all supported targets. Scenario: fully qualifies relevant main pushes even for an unflavoured change.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb"}}],"original_review_sha256":"1afc2f8b809204a24a736df5849d29a6912e2c3bd3c77b4fd7c11ce7e22c4880","reviewer":"audit_config","reviewed_sha256":"9185c36167f047f6d0e2d6856eb41cc076542c6e7659411d03f84a77713fc0eb","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/node-server-qualification.test.mjs","final_declarations":10,"current_controls":{"path":"config/scripts/node-server-qualification.test.mjs","each":[{"input":{"path":"config/scripts/node-server-qualification.test.mjs","start":408,"end":624,"line":13,"end_line":20,"source":"[\n 'src/renderer/src/components/TabStrip.tsx',\n 'config/vitest.config.ts',\n 'config/scripts/ci-unit-plan.mjs',\n 'resources/icons/tray.png',\n '.github/workflows/pr.yml',\n 'docs/reference/agent-status-store.md'\n]"},"rows":[{"path":"config/scripts/node-server-qualification.test.mjs","start":412,"end":454,"line":14,"end_line":14,"source":"'src/renderer/src/components/TabStrip.tsx'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":458,"end":483,"line":15,"end_line":15,"source":"'config/vitest.config.ts'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":487,"end":520,"line":16,"end_line":16,"source":"'config/scripts/ci-unit-plan.mjs'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":524,"end":550,"line":17,"end_line":17,"source":"'resources/icons/tray.png'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":554,"end":580,"line":18,"end_line":18,"source":"'.github/workflows/pr.yml'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":584,"end":622,"line":19,"end_line":19,"source":"'docs/reference/agent-status-store.md'"}]},{"input":{"path":"config/scripts/node-server-qualification.test.mjs","start":780,"end":1632,"line":24,"end_line":45,"source":"[\n 'package.json',\n 'pnpm-lock.yaml',\n 'native/windows-registry/src/addon.cc',\n 'config/patches/node-pty.patch',\n '.github/actions/install-node-dependencies/action.yml',\n '.github/actions/restore-pnpm-verification/action.yml',\n '.github/actions/prepare-native-runtime/action.yml',\n '.github/actions/prepare-orcad-prebuilds/action.yml',\n 'src/main/ssh/ssh-provider.ts',\n 'src/main/providers/local-pty-provider.ts',\n 'src/packages/process-host/src/run-process.ts',\n 'src/packages/process-host/src/growing-byte-buffer.ts',\n 'src/packages/process-host/package.json',\n 'src/main/persistence/profile-state/store.ts',\n 'src/main/sqlite/database.ts',\n 'src/main/orcad/entry.ts',\n 'src/main/daemon/entry.ts',\n 'config/scripts/build-orcad-prebuilds.mjs',\n 'config/scripts/orcad-prebuild-slot-contents.mjs',\n 'src/shared/node-runtime-pin.ts'\n]"},"rows":[{"path":"config/scripts/node-server-qualification.test.mjs","start":784,"end":798,"line":25,"end_line":25,"source":"'package.json'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":802,"end":818,"line":26,"end_line":26,"source":"'pnpm-lock.yaml'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":822,"end":860,"line":27,"end_line":27,"source":"'native/windows-registry/src/addon.cc'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":864,"end":895,"line":28,"end_line":28,"source":"'config/patches/node-pty.patch'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":899,"end":953,"line":29,"end_line":29,"source":"'.github/actions/install-node-dependencies/action.yml'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":957,"end":1011,"line":30,"end_line":30,"source":"'.github/actions/restore-pnpm-verification/action.yml'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":1015,"end":1066,"line":31,"end_line":31,"source":"'.github/actions/prepare-native-runtime/action.yml'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":1070,"end":1122,"line":32,"end_line":32,"source":"'.github/actions/prepare-orcad-prebuilds/action.yml'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":1126,"end":1156,"line":33,"end_line":33,"source":"'src/main/ssh/ssh-provider.ts'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":1160,"end":1202,"line":34,"end_line":34,"source":"'src/main/providers/local-pty-provider.ts'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":1206,"end":1252,"line":35,"end_line":35,"source":"'src/packages/process-host/src/run-process.ts'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":1256,"end":1310,"line":36,"end_line":36,"source":"'src/packages/process-host/src/growing-byte-buffer.ts'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":1314,"end":1354,"line":37,"end_line":37,"source":"'src/packages/process-host/package.json'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":1358,"end":1403,"line":38,"end_line":38,"source":"'src/main/persistence/profile-state/store.ts'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":1407,"end":1436,"line":39,"end_line":39,"source":"'src/main/sqlite/database.ts'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":1440,"end":1465,"line":40,"end_line":40,"source":"'src/main/orcad/entry.ts'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":1469,"end":1495,"line":41,"end_line":41,"source":"'src/main/daemon/entry.ts'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":1499,"end":1541,"line":42,"end_line":42,"source":"'config/scripts/build-orcad-prebuilds.mjs'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":1545,"end":1594,"line":43,"end_line":43,"source":"'config/scripts/orcad-prebuild-slot-contents.mjs'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":1598,"end":1630,"line":44,"end_line":44,"source":"'src/shared/node-runtime-pin.ts'"}]},{"input":{"path":"config/scripts/node-server-qualification.test.mjs","start":2154,"end":3204,"line":62,"end_line":96,"source":"[\n [\n 'src/main/runtime/windows-terminal.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ],\n [\n 'src/main/windows/windows-process-table.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ],\n ['src/main/wsl/runner.ts', ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'], false],\n [\n 'src/packages/process-host/src/windows-command-line.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ],\n [\n 'src/shared/__tests__/process-host/windows-command-line.win32.test.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ],\n [\n 'src/main/orcad/orcad-launcher.win32.test.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ],\n ['src/main/daemon/darwin-process.ts', ['ubuntu-22.04', 'macos-15', 'macos-15-intel'], false],\n ['src/shared/linux-glibc.ts', ['ubuntu-22.04', 'ubuntu-24.04-arm'], true],\n [\n 'src/main/daemon/posix-process.ts',\n ['ubuntu-22.04', 'ubuntu-24.04-arm', 'macos-15', 'macos-15-intel'],\n true\n ]\n]"},"rows":[{"path":"config/scripts/node-server-qualification.test.mjs","start":2158,"end":2273,"line":63,"end_line":67,"source":"[\n 'src/main/runtime/windows-terminal.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ]"},{"path":"config/scripts/node-server-qualification.test.mjs","start":2277,"end":2397,"line":68,"end_line":72,"source":"[\n 'src/main/windows/windows-process-table.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ]"},{"path":"config/scripts/node-server-qualification.test.mjs","start":2401,"end":2486,"line":73,"end_line":73,"source":"['src/main/wsl/runner.ts', ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'], false]"},{"path":"config/scripts/node-server-qualification.test.mjs","start":2490,"end":2622,"line":74,"end_line":78,"source":"[\n 'src/packages/process-host/src/windows-command-line.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ]"},{"path":"config/scripts/node-server-qualification.test.mjs","start":2626,"end":2773,"line":79,"end_line":83,"source":"[\n 'src/shared/__tests__/process-host/windows-command-line.win32.test.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ]"},{"path":"config/scripts/node-server-qualification.test.mjs","start":2777,"end":2899,"line":84,"end_line":88,"source":"[\n 'src/main/orcad/orcad-launcher.win32.test.ts',\n ['ubuntu-22.04', 'windows-2022', 'windows-11-arm'],\n false\n ]"},{"path":"config/scripts/node-server-qualification.test.mjs","start":2903,"end":2995,"line":89,"end_line":89,"source":"['src/main/daemon/darwin-process.ts', ['ubuntu-22.04', 'macos-15', 'macos-15-intel'], false]"},{"path":"config/scripts/node-server-qualification.test.mjs","start":2999,"end":3072,"line":90,"end_line":90,"source":"['src/shared/linux-glibc.ts', ['ubuntu-22.04', 'ubuntu-24.04-arm'], true]"},{"path":"config/scripts/node-server-qualification.test.mjs","start":3076,"end":3202,"line":91,"end_line":95,"source":"[\n 'src/main/daemon/posix-process.ts',\n ['ubuntu-22.04', 'ubuntu-24.04-arm', 'macos-15', 'macos-15-intel'],\n true\n ]"}]},{"input":{"path":"config/scripts/node-server-qualification.test.mjs","start":4060,"end":4428,"line":121,"end_line":128,"source":"[\n 'src/main/managed-server/install/remote-node-runtime-store-windows.ts',\n 'src/main/managed-server/install/orcad-remote-node-runtime-windows.ts',\n 'src/main/ssh/ssh-posix-command-wrapper.test.ts',\n 'src/main/providers/agent-foreground-process-git-bash.win32.test.ts',\n 'src/main/runtime/windows-firewall-remote-scope.ts',\n 'src/shared/remote-windows-path.ts'\n]"},"rows":[{"path":"config/scripts/node-server-qualification.test.mjs","start":4064,"end":4134,"line":122,"end_line":122,"source":"'src/main/managed-server/install/remote-node-runtime-store-windows.ts'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":4138,"end":4208,"line":123,"end_line":123,"source":"'src/main/managed-server/install/orcad-remote-node-runtime-windows.ts'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":4212,"end":4260,"line":124,"end_line":124,"source":"'src/main/ssh/ssh-posix-command-wrapper.test.ts'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":4264,"end":4332,"line":125,"end_line":125,"source":"'src/main/providers/agent-foreground-process-git-bash.win32.test.ts'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":4336,"end":4387,"line":126,"end_line":126,"source":"'src/main/runtime/windows-firewall-remote-scope.ts'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":4391,"end":4426,"line":127,"end_line":127,"source":"'src/shared/remote-windows-path.ts'"}]},{"input":{"path":"config/scripts/node-server-qualification.test.mjs","start":4644,"end":4741,"line":135,"end_line":138,"source":"[\n '.github/workflows/node-server-tests.yml',\n 'config/scripts/node-server-qualification.mjs'\n]"},"rows":[{"path":"config/scripts/node-server-qualification.test.mjs","start":4648,"end":4689,"line":136,"end_line":136,"source":"'.github/workflows/node-server-tests.yml'"},{"path":"config/scripts/node-server-qualification.test.mjs","start":4693,"end":4739,"line":137,"end_line":137,"source":"'config/scripts/node-server-qualification.mjs'"}]}],"for_of":[],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/scripts/node-server-qualification.mjs"],"runtime_validation":[]}
+{"path":"config/scripts/node-server-release-parallelism.test.mjs","sha256":"3dd155933c4abc6d48f22adefac52307f8057ebfb622dedc21b979f8324e1e1b","declarations":7,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":47,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"3dd155933c4abc6d48f22adefac52307f8057ebfb622dedc21b979f8324e1e1b","cases":[{"line":21,"title":"gates qualification on the bundle while retaining test-only behavior: %j","decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","explicit_input_controls":[{"control_id":"47:21:parameter-table:3","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":21,"source":"[\n { qualification: 'true', producer: 'success', expected: true },\n { qualification: '', producer: 'success', expected: true },\n { qualification: 'true', producer: 'failure', expected: false },\n { qualification: 'true', producer: 'cancelled', expected: false },\n { qualification: 'true', producer: 'skipped', expected: false },\n { qualification: '', producer: 'skipped', expected: false },\n { qualification: 'false', producer: 'skipped', expected: true },\n { qualification: 'false', producer: 'skipped', draft: true, expected: false },\n { producer: 'success', event: 'workflow_dispatch', expected: true },\n { producer: 'success', event: 'schedule', expected: true }\n]","rows":[{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":22,"end_line":22,"start":757,"end":819,"source":"{ qualification: 'true', producer: 'success', expected: true }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":"true"}},{"key":"producer","value":{"kind":"string","value":"success"}},{"key":"expected","value":{"kind":"boolean","value":true}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { qualification: 'true', producer: 'success', expected: true }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":23,"end_line":23,"start":823,"end":881,"source":"{ qualification: '', producer: 'success', expected: true }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":""}},{"key":"producer","value":{"kind":"string","value":"success"}},{"key":"expected","value":{"kind":"boolean","value":true}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { qualification: '', producer: 'success', expected: true }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":24,"end_line":24,"start":885,"end":948,"source":"{ qualification: 'true', producer: 'failure', expected: false }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":"true"}},{"key":"producer","value":{"kind":"string","value":"failure"}},{"key":"expected","value":{"kind":"boolean","value":false}}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { qualification: 'true', producer: 'failure', expected: false }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":25,"end_line":25,"start":952,"end":1017,"source":"{ qualification: 'true', producer: 'cancelled', expected: false }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":"true"}},{"key":"producer","value":{"kind":"string","value":"cancelled"}},{"key":"expected","value":{"kind":"boolean","value":false}}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { qualification: 'true', producer: 'cancelled', expected: false }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":26,"end_line":26,"start":1021,"end":1084,"source":"{ qualification: 'true', producer: 'skipped', expected: false }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":"true"}},{"key":"producer","value":{"kind":"string","value":"skipped"}},{"key":"expected","value":{"kind":"boolean","value":false}}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { qualification: 'true', producer: 'skipped', expected: false }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":27,"end_line":27,"start":1088,"end":1147,"source":"{ qualification: '', producer: 'skipped', expected: false }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":""}},{"key":"producer","value":{"kind":"string","value":"skipped"}},{"key":"expected","value":{"kind":"boolean","value":false}}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { qualification: '', producer: 'skipped', expected: false }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":28,"end_line":28,"start":1151,"end":1214,"source":"{ qualification: 'false', producer: 'skipped', expected: true }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":"false"}},{"key":"producer","value":{"kind":"string","value":"skipped"}},{"key":"expected","value":{"kind":"boolean","value":true}}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { qualification: 'false', producer: 'skipped', expected: true }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":29,"end_line":29,"start":1218,"end":1295,"source":"{ qualification: 'false', producer: 'skipped', draft: true, expected: false }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":"false"}},{"key":"producer","value":{"kind":"string","value":"skipped"}},{"key":"draft","value":{"kind":"boolean","value":true}},{"key":"expected","value":{"kind":"boolean","value":false}}]},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { qualification: 'false', producer: 'skipped', draft: true, expected: false }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":30,"end_line":30,"start":1299,"end":1366,"source":"{ producer: 'success', event: 'workflow_dispatch', expected: true }","value":{"kind":"object","value":[{"key":"producer","value":{"kind":"string","value":"success"}},{"key":"event","value":{"kind":"string","value":"workflow_dispatch"}},{"key":"expected","value":{"kind":"boolean","value":true}}]},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { producer: 'success', event: 'workflow_dispatch', expected: true }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":31,"end_line":31,"start":1370,"end":1428,"source":"{ producer: 'success', event: 'schedule', expected: true }","value":{"kind":"object","value":[{"key":"producer","value":{"kind":"string","value":"success"}},{"key":"event","value":{"kind":"string","value":"schedule"}},{"key":"expected","value":{"kind":"boolean","value":true}}]},"index":10,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { producer: 'success', event: 'schedule', expected: true }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"47:33:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":33,"source":"context(scenario)","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":33,"end_line":33,"start":1546,"end":1554,"source":"scenario","value":{"kind":"source-expression","source":"scenario"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scenario. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":21,"title":"gates qualification on the bundle while retaining test-only behavior: %j","start":745,"end":1768},"implementation_status":"retained"},{"line":39,"title":"uses the shared page for qualification and builds locally only when its producer is skipped","decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","explicit_input_controls":[{"control_id":"47:47:for-of:5","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":47,"source":"['true', '', undefined, 'false']","rows":[{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":47,"end_line":47,"start":2499,"end":2505,"source":"'true'","value":{"kind":"string","value":"true"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'true'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":47,"end_line":47,"start":2507,"end":2509,"source":"''","value":{"kind":"string","value":""},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ''. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":47,"end_line":47,"start":2511,"end":2520,"source":"undefined","value":{"kind":"source-expression","source":"undefined"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: undefined. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":47,"end_line":47,"start":2522,"end":2529,"source":"'false'","value":{"kind":"string","value":"false"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'false'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"47:48:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":48,"source":"context({ qualification })","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":48,"end_line":48,"start":2558,"end":2575,"source":"{ qualification }","value":{"kind":"object","value":[{"source":"qualification"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { qualification }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"47:49:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":49,"source":"compileAggregateExpression(download.if)","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":49,"end_line":49,"start":2615,"end":2626,"source":"download.if","value":{"kind":"source-expression","source":"download.if"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: download.if. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"47:52:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":52,"source":"compileAggregateExpression(build.if)","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":52,"end_line":52,"start":2739,"end":2747,"source":"build.if","value":{"kind":"source-expression","source":"build.if"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: build.if. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":39,"title":"uses the shared page for qualification and builds locally only when its producer is skipped","start":1770,"end":2887},"implementation_status":"retained"},{"line":59,"title":"starts independent Linux qualification without waiting for another platform","decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","explicit_input_controls":[{"control_id":"47:60:for-of:9","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":60,"source":"['linux_glibc_floor', 'linux_glibc217_compat', 'linux_musl']","rows":[{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":60,"end_line":60,"start":3001,"end":3020,"source":"'linux_glibc_floor'","value":{"kind":"string","value":"linux_glibc_floor"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'linux_glibc_floor'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":60,"end_line":60,"start":3022,"end":3045,"source":"'linux_glibc217_compat'","value":{"kind":"string","value":"linux_glibc217_compat"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'linux_glibc217_compat'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":60,"end_line":60,"start":3047,"end":3059,"source":"'linux_musl'","value":{"kind":"string","value":"linux_musl"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'linux_musl'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"47:64:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":64,"source":"compileAggregateExpression(job.if, ['needs', 'github', 'inputs'])","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":64,"end_line":64,"start":3262,"end":3268,"source":"job.if","value":{"kind":"source-expression","source":"job.if"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: job.if. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":64,"end_line":64,"start":3270,"end":3299,"source":"['needs', 'github', 'inputs']","value":{"kind":"array","value":[{"kind":"string","value":"needs"},{"kind":"string","value":"github"},{"kind":"string","value":"inputs"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['needs', 'github', 'inputs']. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"47:65:fixture-or-oracle-declaration:11","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":65,"source":"{ ...context({ qualification: 'true' }), inputs: { build_template: true } }","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":65,"end_line":65,"start":3319,"end":3356,"source":"...context({ qualification: 'true' })","value":{"kind":"source-expression","source":"...context({ qualification: 'true' })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ...context({ qualification: 'true' }). Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":65,"end_line":65,"start":3358,"end":3390,"source":"inputs: { build_template: true }","value":{"kind":"property","key":"inputs","value":{"kind":"object","value":[{"key":"build_template","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: inputs: { build_template: true }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"47:65:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":65,"source":"context({ qualification: 'true' })","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":65,"end_line":65,"start":3330,"end":3355,"source":"{ qualification: 'true' }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":"true"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { qualification: 'true' }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"47:68:fixture-or-oracle-declaration:13","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":68,"source":"{\n ...context({ qualification: '', draft: true, producer: 'skipped' }),\n inputs: { build_template: false }\n }","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":69,"end_line":69,"start":3534,"end":3601,"source":"...context({ qualification: '', draft: true, producer: 'skipped' })","value":{"kind":"source-expression","source":"...context({ qualification: '', draft: true, producer: 'skipped' })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ...context({ qualification: '', draft: true, producer: 'skipped' }). Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":70,"end_line":70,"start":3609,"end":3642,"source":"inputs: { build_template: false }","value":{"kind":"property","key":"inputs","value":{"kind":"object","value":[{"key":"build_template","value":{"kind":"boolean","value":false}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: inputs: { build_template: false }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"47:69:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":69,"source":"context({ qualification: '', draft: true, producer: 'skipped' })","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":69,"end_line":69,"start":3545,"end":3600,"source":"{ qualification: '', draft: true, producer: 'skipped' }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":""}},{"key":"draft","value":{"kind":"boolean","value":true}},{"key":"producer","value":{"kind":"string","value":"skipped"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { qualification: '', draft: true, producer: 'skipped' }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":59,"title":"starts independent Linux qualification without waiting for another platform","start":2889,"end":3712},"implementation_status":"retained"},{"line":76,"title":"prepares template dependencies before waiting for every qualification lane","decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: prepares template dependencies before waiting for every qualification lane.","explicit_input_controls":[{"control_id":"47:80:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":80,"source":"compileAggregateExpression(template.if, ['inputs'])","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":80,"end_line":80,"start":4018,"end":4029,"source":"template.if","value":{"kind":"source-expression","source":"template.if"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: template.if. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: prepares template dependencies before waiting for every qualification lane.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":80,"end_line":80,"start":4031,"end":4041,"source":"['inputs']","value":{"kind":"array","value":[{"kind":"string","value":"inputs"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['inputs']. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: prepares template dependencies before waiting for every qualification lane.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: prepares template dependencies before waiting for every qualification lane.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":76,"title":"prepares template dependencies before waiting for every qualification lane","start":3714,"end":4667},"implementation_status":"retained"},{"line":95,"title":"avoids template download-cache transfers while retaining native and verification caches","decision":"fix","reason":"Evaluate the native-runtime expression for each Linux/macOS/Windows context already used by the cache policy table, replacing a Windows-token substring check. Preserve all cache policy outcomes.","explicit_input_controls":[{"control_id":"47:101:for-of:16","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":101,"source":"['Linux', 'macOS', 'Windows']","rows":[{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":101,"end_line":101,"start":5149,"end":5156,"source":"'Linux'","value":{"kind":"string","value":"Linux"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Linux'. Evaluate the native-runtime expression for each Linux/macOS/Windows context already used by the cache policy table, replacing a Windows-token substring check. Preserve all cache policy outcomes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":101,"end_line":101,"start":5158,"end":5165,"source":"'macOS'","value":{"kind":"string","value":"macOS"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'macOS'. Evaluate the native-runtime expression for each Linux/macOS/Windows context already used by the cache policy table, replacing a Windows-token substring check. Preserve all cache policy outcomes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":101,"end_line":101,"start":5167,"end":5176,"source":"'Windows'","value":{"kind":"string","value":"Windows"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Windows'. Evaluate the native-runtime expression for each Linux/macOS/Windows context already used by the cache policy table, replacing a Windows-token substring check. Preserve all cache policy outcomes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Evaluate the native-runtime expression for each Linux/macOS/Windows context already used by the cache policy table, replacing a Windows-token substring check. Preserve all cache policy outcomes.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"47:102:for-of:17","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":102,"source":"[true, false]","rows":[{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":102,"end_line":102,"start":5214,"end":5218,"source":"true","value":{"kind":"boolean","value":true},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: true. Evaluate the native-runtime expression for each Linux/macOS/Windows context already used by the cache policy table, replacing a Windows-token substring check. Preserve all cache policy outcomes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":102,"end_line":102,"start":5220,"end":5225,"source":"false","value":{"kind":"boolean","value":false},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: false. Evaluate the native-runtime expression for each Linux/macOS/Windows context already used by the cache policy table, replacing a Windows-token substring check. Preserve all cache policy outcomes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Evaluate the native-runtime expression for each Linux/macOS/Windows context already used by the cache policy table, replacing a Windows-token substring check. Preserve all cache policy outcomes.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":95,"title":"avoids template download-cache transfers while retaining native and verification caches","start":4669,"end":5538},"implementation_status":"implemented"},{"line":114,"title":"%s waits through the dependency graph without polling the Actions API","decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","explicit_input_controls":[{"control_id":"47:114:parameter-table:18","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":114,"source":"['persistence', 'linux_glibc_floor', 'linux_musl']","rows":[{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":114,"end_line":114,"start":5490,"end":5503,"source":"'persistence'","value":{"kind":"string","value":"persistence"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'persistence'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":114,"end_line":114,"start":5505,"end":5524,"source":"'linux_glibc_floor'","value":{"kind":"string","value":"linux_glibc_floor"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'linux_glibc_floor'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":114,"end_line":114,"start":5526,"end":5538,"source":"'linux_musl'","value":{"kind":"string","value":"linux_musl"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'linux_musl'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"47:120:inline-api-or-fixture-input:19","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":120,"source":"compileAggregateExpression(job.if, ['needs', 'github', 'inputs'])","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":120,"end_line":120,"start":5866,"end":5872,"source":"job.if","value":{"kind":"source-expression","source":"job.if"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: job.if. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":120,"end_line":120,"start":5874,"end":5903,"source":"['needs', 'github', 'inputs']","value":{"kind":"array","value":[{"kind":"string","value":"needs"},{"kind":"string","value":"github"},{"kind":"string","value":"inputs"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['needs', 'github', 'inputs']. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"47:121:for-of:20","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":121,"source":"['success', 'failure', 'cancelled', 'skipped', 'timed_out']","rows":[{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":121,"end_line":121,"start":5933,"end":5942,"source":"'success'","value":{"kind":"string","value":"success"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'success'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":121,"end_line":121,"start":5944,"end":5953,"source":"'failure'","value":{"kind":"string","value":"failure"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'failure'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":121,"end_line":121,"start":5955,"end":5966,"source":"'cancelled'","value":{"kind":"string","value":"cancelled"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'cancelled'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":121,"end_line":121,"start":5968,"end":5977,"source":"'skipped'","value":{"kind":"string","value":"skipped"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'skipped'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":121,"end_line":121,"start":5979,"end":5990,"source":"'timed_out'","value":{"kind":"string","value":"timed_out"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'timed_out'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"47:122:fixture-or-oracle-declaration:21","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":122,"source":"{\n ...context({ qualification: 'true', producer }),\n inputs: { build_template: true }\n }","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":123,"end_line":123,"start":6023,"end":6070,"source":"...context({ qualification: 'true', producer })","value":{"kind":"source-expression","source":"...context({ qualification: 'true', producer })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ...context({ qualification: 'true', producer }). Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":124,"end_line":124,"start":6080,"end":6112,"source":"inputs: { build_template: true }","value":{"kind":"property","key":"inputs","value":{"kind":"object","value":[{"key":"build_template","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: inputs: { build_template: true }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"47:123:inline-api-or-fixture-input:22","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":123,"source":"context({ qualification: 'true', producer })","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":123,"end_line":123,"start":6034,"end":6069,"source":"{ qualification: 'true', producer }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":"true"}},{"source":"producer"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { qualification: 'true', producer }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":116,"title":"%s waits through the dependency graph without polling the Actions API","start":5540,"end":6271},"implementation_status":"retained"},{"line":131,"title":"prepares every native lane and builds with the shared page","decision":"fix","reason":"Remove duplicated command-body substring inventory; retain actual prepare-before-download ordering, shared-page job dependencies, permissions and unconditional container-cleanup configuration. Name the case for configured ordering rather than executing builds.","explicit_input_controls":[{"control_id":"47:132:for-of:23","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":132,"source":"['persistence', 'linux_glibc_floor', 'linux_musl']","rows":[{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":132,"end_line":132,"start":6309,"end":6322,"source":"'persistence'","value":{"kind":"string","value":"persistence"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'persistence'. Remove duplicated command-body substring inventory; retain actual prepare-before-download ordering, shared-page job dependencies, permissions and unconditional container-cleanup configuration. Name the case for configured ordering rather than executing builds.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":132,"end_line":132,"start":6324,"end":6343,"source":"'linux_glibc_floor'","value":{"kind":"string","value":"linux_glibc_floor"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'linux_glibc_floor'. Remove duplicated command-body substring inventory; retain actual prepare-before-download ordering, shared-page job dependencies, permissions and unconditional container-cleanup configuration. Name the case for configured ordering rather than executing builds.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":132,"end_line":132,"start":6345,"end":6357,"source":"'linux_musl'","value":{"kind":"string","value":"linux_musl"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'linux_musl'. Remove duplicated command-body substring inventory; retain actual prepare-before-download ordering, shared-page job dependencies, permissions and unconditional container-cleanup configuration. Name the case for configured ordering rather than executing builds.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"fix","reason":"Remove duplicated command-body substring inventory; retain actual prepare-before-download ordering, shared-page job dependencies, permissions and unconditional container-cleanup configuration. Name the case for configured ordering rather than executing builds.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":133,"title":"configures native preparation before shared-page download and unconditional cleanup","start":6273,"end":7156},"implementation_status":"implemented"}],"lines":160,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"tests_executed":true,"decision":"fix","rationale":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work.","planned_changes":[{"original_line":95,"title":"avoids template download-cache transfers while retaining native and verification caches","decision":"fix","change":"Evaluate the native-runtime expression for each Linux/macOS/Windows context already used by the cache policy table, replacing a Windows-token substring check. Preserve all cache policy outcomes."},{"original_line":131,"title":"prepares every native lane and builds with the shared page","decision":"fix","change":"Remove duplicated command-body substring inventory; retain actual prepare-before-download ordering, shared-page job dependencies, permissions and unconditional container-cleanup configuration. Name the case for configured ordering rather than executing builds."}],"production_evidence":[".github/workflows/node-server-tests.yml","config/scripts/pr-aggregate-gate-context.mjs"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"47:7:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":7,"end_line":7,"start":241,"end":311,"source":"parse(readFileSync('.github/workflows/node-server-tests.yml', 'utf8'))","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":7,"end_line":7,"start":241,"end":311},"binding":"parse","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work.","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":7,"end_line":7,"start":247,"end":310,"source":"readFileSync('.github/workflows/node-server-tests.yml', 'utf8')","value":{"kind":"call-source","callee":"readFileSync","arguments":[{"kind":"string","value":".github/workflows/node-server-tests.yml"},{"kind":"string","value":"utf8"}],"source":"readFileSync('.github/workflows/node-server-tests.yml', 'utf8')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: readFileSync('.github/workflows/node-server-tests.yml', 'utf8'). Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:9:inline-api-or-fixture-input:2","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":9,"end_line":9,"start":380,"end":443,"source":"compileAggregateExpression(persistence.if, ['needs', 'github'])","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":9,"end_line":9,"start":380,"end":443},"binding":"compileAggregateExpression","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work.","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":9,"end_line":9,"start":407,"end":421,"source":"persistence.if","value":{"kind":"source-expression","source":"persistence.if"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: persistence.if. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":9,"end_line":9,"start":423,"end":442,"source":"['needs', 'github']","value":{"kind":"array","value":[{"kind":"string","value":"needs"},{"kind":"string","value":"github"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['needs', 'github']. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:21:parameter-table:3","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":21,"end_line":37,"start":745,"end":1768,"source":"[\n { qualification: 'true', producer: 'success', expected: true },\n { qualification: '', producer: 'success', expected: true },\n { qualification: 'true', producer: 'failure', expected: false },\n { qualification: 'true', producer: 'cancelled', expected: false },\n { qualification: 'true', producer: 'skipped', expected: false },\n { qualification: '', producer: 'skipped', expected: false },\n { qualification: 'false', producer: 'skipped', expected: true },\n { qualification: 'false', producer: 'skipped', draft: true, expected: false },\n { producer: 'success', event: 'workflow_dispatch', expected: true },\n { producer: 'success', event: 'schedule', expected: true }\n]","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":21,"end_line":32,"start":753,"end":1430},"binding":"it.each","resolution":[],"enclosing_case":{"line":21,"title":"gates qualification on the bundle while retaining test-only behavior: %j"},"affected_case_lines":[21],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","rows":[{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":22,"end_line":22,"start":757,"end":819,"source":"{ qualification: 'true', producer: 'success', expected: true }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":"true"}},{"key":"producer","value":{"kind":"string","value":"success"}},{"key":"expected","value":{"kind":"boolean","value":true}}]},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { qualification: 'true', producer: 'success', expected: true }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":23,"end_line":23,"start":823,"end":881,"source":"{ qualification: '', producer: 'success', expected: true }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":""}},{"key":"producer","value":{"kind":"string","value":"success"}},{"key":"expected","value":{"kind":"boolean","value":true}}]},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { qualification: '', producer: 'success', expected: true }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":24,"end_line":24,"start":885,"end":948,"source":"{ qualification: 'true', producer: 'failure', expected: false }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":"true"}},{"key":"producer","value":{"kind":"string","value":"failure"}},{"key":"expected","value":{"kind":"boolean","value":false}}]},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { qualification: 'true', producer: 'failure', expected: false }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":25,"end_line":25,"start":952,"end":1017,"source":"{ qualification: 'true', producer: 'cancelled', expected: false }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":"true"}},{"key":"producer","value":{"kind":"string","value":"cancelled"}},{"key":"expected","value":{"kind":"boolean","value":false}}]},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { qualification: 'true', producer: 'cancelled', expected: false }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":26,"end_line":26,"start":1021,"end":1084,"source":"{ qualification: 'true', producer: 'skipped', expected: false }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":"true"}},{"key":"producer","value":{"kind":"string","value":"skipped"}},{"key":"expected","value":{"kind":"boolean","value":false}}]},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { qualification: 'true', producer: 'skipped', expected: false }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":27,"end_line":27,"start":1088,"end":1147,"source":"{ qualification: '', producer: 'skipped', expected: false }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":""}},{"key":"producer","value":{"kind":"string","value":"skipped"}},{"key":"expected","value":{"kind":"boolean","value":false}}]},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { qualification: '', producer: 'skipped', expected: false }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":28,"end_line":28,"start":1151,"end":1214,"source":"{ qualification: 'false', producer: 'skipped', expected: true }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":"false"}},{"key":"producer","value":{"kind":"string","value":"skipped"}},{"key":"expected","value":{"kind":"boolean","value":true}}]},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { qualification: 'false', producer: 'skipped', expected: true }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":29,"end_line":29,"start":1218,"end":1295,"source":"{ qualification: 'false', producer: 'skipped', draft: true, expected: false }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":"false"}},{"key":"producer","value":{"kind":"string","value":"skipped"}},{"key":"draft","value":{"kind":"boolean","value":true}},{"key":"expected","value":{"kind":"boolean","value":false}}]},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { qualification: 'false', producer: 'skipped', draft: true, expected: false }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":30,"end_line":30,"start":1299,"end":1366,"source":"{ producer: 'success', event: 'workflow_dispatch', expected: true }","value":{"kind":"object","value":[{"key":"producer","value":{"kind":"string","value":"success"}},{"key":"event","value":{"kind":"string","value":"workflow_dispatch"}},{"key":"expected","value":{"kind":"boolean","value":true}}]},"index":9,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { producer: 'success', event: 'workflow_dispatch', expected: true }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":31,"end_line":31,"start":1370,"end":1428,"source":"{ producer: 'success', event: 'schedule', expected: true }","value":{"kind":"object","value":[{"key":"producer","value":{"kind":"string","value":"success"}},{"key":"event","value":{"kind":"string","value":"schedule"}},{"key":"expected","value":{"kind":"boolean","value":true}}]},"index":10,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: { producer: 'success', event: 'schedule', expected: true }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":9,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":10,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:33:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":33,"end_line":33,"start":1538,"end":1555,"source":"context(scenario)","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":33,"end_line":33,"start":1538,"end":1555},"binding":"context","resolution":[],"enclosing_case":{"line":21,"title":"gates qualification on the bundle while retaining test-only behavior: %j"},"affected_case_lines":[],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":33,"end_line":33,"start":1546,"end":1554,"source":"scenario","value":{"kind":"source-expression","source":"scenario"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: scenario. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: gates qualification on the bundle while retaining test-only behavior: %j.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:47:for-of:5","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":47,"end_line":55,"start":2470,"end":2825,"source":"['true', '', undefined, 'false']","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":47,"end_line":47,"start":2498,"end":2530},"binding":"const qualification","resolution":[],"enclosing_case":{"line":39,"title":"uses the shared page for qualification and builds locally only when its producer is skipped"},"affected_case_lines":[],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","rows":[{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":47,"end_line":47,"start":2499,"end":2505,"source":"'true'","value":{"kind":"string","value":"true"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'true'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":47,"end_line":47,"start":2507,"end":2509,"source":"''","value":{"kind":"string","value":""},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: ''. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":47,"end_line":47,"start":2511,"end":2520,"source":"undefined","value":{"kind":"source-expression","source":"undefined"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: undefined. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":47,"end_line":47,"start":2522,"end":2529,"source":"'false'","value":{"kind":"string","value":"false"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'false'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:48:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":48,"end_line":48,"start":2550,"end":2576,"source":"context({ qualification })","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":48,"end_line":48,"start":2550,"end":2576},"binding":"context","resolution":[],"enclosing_case":{"line":39,"title":"uses the shared page for qualification and builds locally only when its producer is skipped"},"affected_case_lines":[],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":48,"end_line":48,"start":2558,"end":2575,"source":"{ qualification }","value":{"kind":"object","value":[{"source":"qualification"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { qualification }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:49:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":49,"end_line":49,"start":2588,"end":2627,"source":"compileAggregateExpression(download.if)","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":49,"end_line":49,"start":2588,"end":2627},"binding":"compileAggregateExpression","resolution":[],"enclosing_case":{"line":39,"title":"uses the shared page for qualification and builds locally only when its producer is skipped"},"affected_case_lines":[],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":49,"end_line":49,"start":2615,"end":2626,"source":"download.if","value":{"kind":"source-expression","source":"download.if"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: download.if. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:52:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":52,"end_line":52,"start":2712,"end":2748,"source":"compileAggregateExpression(build.if)","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":52,"end_line":52,"start":2712,"end":2748},"binding":"compileAggregateExpression","resolution":[],"enclosing_case":{"line":39,"title":"uses the shared page for qualification and builds locally only when its producer is skipped"},"affected_case_lines":[],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":52,"end_line":52,"start":2739,"end":2747,"source":"build.if","value":{"kind":"source-expression","source":"build.if"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: build.if. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: uses the shared page for qualification and builds locally only when its producer is skipped.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:60:for-of:9","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":60,"end_line":73,"start":2981,"end":3709,"source":"['linux_glibc_floor', 'linux_glibc217_compat', 'linux_musl']","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":60,"end_line":60,"start":3000,"end":3060},"binding":"const name","resolution":[],"enclosing_case":{"line":59,"title":"starts independent Linux qualification without waiting for another platform"},"affected_case_lines":[],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","rows":[{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":60,"end_line":60,"start":3001,"end":3020,"source":"'linux_glibc_floor'","value":{"kind":"string","value":"linux_glibc_floor"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'linux_glibc_floor'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":60,"end_line":60,"start":3022,"end":3045,"source":"'linux_glibc217_compat'","value":{"kind":"string","value":"linux_glibc217_compat"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'linux_glibc217_compat'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":60,"end_line":60,"start":3047,"end":3059,"source":"'linux_musl'","value":{"kind":"string","value":"linux_musl"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'linux_musl'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:64:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":64,"end_line":64,"start":3235,"end":3300,"source":"compileAggregateExpression(job.if, ['needs', 'github', 'inputs'])","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":64,"end_line":64,"start":3235,"end":3300},"binding":"compileAggregateExpression","resolution":[],"enclosing_case":{"line":59,"title":"starts independent Linux qualification without waiting for another platform"},"affected_case_lines":[],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":64,"end_line":64,"start":3262,"end":3268,"source":"job.if","value":{"kind":"source-expression","source":"job.if"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: job.if. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":64,"end_line":64,"start":3270,"end":3299,"source":"['needs', 'github', 'inputs']","value":{"kind":"array","value":[{"kind":"string","value":"needs"},{"kind":"string","value":"github"},{"kind":"string","value":"inputs"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['needs', 'github', 'inputs']. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:65:fixture-or-oracle-declaration:11","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":65,"end_line":65,"start":3311,"end":3392,"source":"{ ...context({ qualification: 'true' }), inputs: { build_template: true } }","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":65,"end_line":65,"start":3317,"end":3392},"binding":"ctx","resolution":[],"enclosing_case":{"line":59,"title":"starts independent Linux qualification without waiting for another platform"},"affected_case_lines":[],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":65,"end_line":65,"start":3319,"end":3356,"source":"...context({ qualification: 'true' })","value":{"kind":"source-expression","source":"...context({ qualification: 'true' })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ...context({ qualification: 'true' }). Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":65,"end_line":65,"start":3358,"end":3390,"source":"inputs: { build_template: true }","value":{"kind":"property","key":"inputs","value":{"kind":"object","value":[{"key":"build_template","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: inputs: { build_template: true }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:65:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":65,"end_line":65,"start":3322,"end":3356,"source":"context({ qualification: 'true' })","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":65,"end_line":65,"start":3322,"end":3356},"binding":"context","resolution":[],"enclosing_case":{"line":59,"title":"starts independent Linux qualification without waiting for another platform"},"affected_case_lines":[],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":65,"end_line":65,"start":3330,"end":3355,"source":"{ qualification: 'true' }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":"true"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { qualification: 'true' }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:68:fixture-or-oracle-declaration:13","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":68,"end_line":71,"start":3518,"end":3648,"source":"{\n ...context({ qualification: '', draft: true, producer: 'skipped' }),\n inputs: { build_template: false }\n }","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":68,"end_line":71,"start":3526,"end":3648},"binding":"draft","resolution":[],"enclosing_case":{"line":59,"title":"starts independent Linux qualification without waiting for another platform"},"affected_case_lines":[],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":69,"end_line":69,"start":3534,"end":3601,"source":"...context({ qualification: '', draft: true, producer: 'skipped' })","value":{"kind":"source-expression","source":"...context({ qualification: '', draft: true, producer: 'skipped' })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ...context({ qualification: '', draft: true, producer: 'skipped' }). Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":70,"end_line":70,"start":3609,"end":3642,"source":"inputs: { build_template: false }","value":{"kind":"property","key":"inputs","value":{"kind":"object","value":[{"key":"build_template","value":{"kind":"boolean","value":false}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: inputs: { build_template: false }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:69:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":69,"end_line":69,"start":3537,"end":3601,"source":"context({ qualification: '', draft: true, producer: 'skipped' })","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":69,"end_line":69,"start":3537,"end":3601},"binding":"context","resolution":[],"enclosing_case":{"line":59,"title":"starts independent Linux qualification without waiting for another platform"},"affected_case_lines":[],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":69,"end_line":69,"start":3545,"end":3600,"source":"{ qualification: '', draft: true, producer: 'skipped' }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":""}},{"key":"draft","value":{"kind":"boolean","value":true}},{"key":"producer","value":{"kind":"string","value":"skipped"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { qualification: '', draft: true, producer: 'skipped' }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: starts independent Linux qualification without waiting for another platform.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:80:inline-api-or-fixture-input:15","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":80,"end_line":80,"start":3991,"end":4042,"source":"compileAggregateExpression(template.if, ['inputs'])","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":80,"end_line":80,"start":3991,"end":4042},"binding":"compileAggregateExpression","resolution":[],"enclosing_case":{"line":76,"title":"prepares template dependencies before waiting for every qualification lane"},"affected_case_lines":[],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: prepares template dependencies before waiting for every qualification lane.","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":80,"end_line":80,"start":4018,"end":4029,"source":"template.if","value":{"kind":"source-expression","source":"template.if"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: template.if. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: prepares template dependencies before waiting for every qualification lane.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":80,"end_line":80,"start":4031,"end":4041,"source":"['inputs']","value":{"kind":"array","value":[{"kind":"string","value":"inputs"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['inputs']. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: prepares template dependencies before waiting for every qualification lane.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:101:for-of:16","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":101,"end_line":111,"start":5131,"end":5476,"source":"['Linux', 'macOS', 'Windows']","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":101,"end_line":101,"start":5148,"end":5177},"binding":"const os","resolution":[],"enclosing_case":{"line":95,"title":"avoids template download-cache transfers while retaining native and verification caches"},"affected_case_lines":[],"decision":"keep","reason":"Evaluate the native-runtime expression for each Linux/macOS/Windows context already used by the cache policy table, replacing a Windows-token substring check. Preserve all cache policy outcomes.","rows":[{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":101,"end_line":101,"start":5149,"end":5156,"source":"'Linux'","value":{"kind":"string","value":"Linux"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Linux'. Evaluate the native-runtime expression for each Linux/macOS/Windows context already used by the cache policy table, replacing a Windows-token substring check. Preserve all cache policy outcomes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":101,"end_line":101,"start":5158,"end":5165,"source":"'macOS'","value":{"kind":"string","value":"macOS"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'macOS'. Evaluate the native-runtime expression for each Linux/macOS/Windows context already used by the cache policy table, replacing a Windows-token substring check. Preserve all cache policy outcomes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":101,"end_line":101,"start":5167,"end":5176,"source":"'Windows'","value":{"kind":"string","value":"Windows"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'Windows'. Evaluate the native-runtime expression for each Linux/macOS/Windows context already used by the cache policy table, replacing a Windows-token substring check. Preserve all cache policy outcomes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:102:for-of:17","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":102,"end_line":110,"start":5185,"end":5472,"source":"[true, false]","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":102,"end_line":102,"start":5213,"end":5226},"binding":"const buildTemplate","resolution":[],"enclosing_case":{"line":95,"title":"avoids template download-cache transfers while retaining native and verification caches"},"affected_case_lines":[],"decision":"keep","reason":"Evaluate the native-runtime expression for each Linux/macOS/Windows context already used by the cache policy table, replacing a Windows-token substring check. Preserve all cache policy outcomes.","rows":[{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":102,"end_line":102,"start":5214,"end":5218,"source":"true","value":{"kind":"boolean","value":true},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: true. Evaluate the native-runtime expression for each Linux/macOS/Windows context already used by the cache policy table, replacing a Windows-token substring check. Preserve all cache policy outcomes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":102,"end_line":102,"start":5220,"end":5225,"source":"false","value":{"kind":"boolean","value":false},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: false. Evaluate the native-runtime expression for each Linux/macOS/Windows context already used by the cache policy table, replacing a Windows-token substring check. Preserve all cache policy outcomes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:114:parameter-table:18","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":114,"end_line":129,"start":5481,"end":6212,"source":"['persistence', 'linux_glibc_floor', 'linux_musl']","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":114,"end_line":114,"start":5489,"end":5539},"binding":"it.each","resolution":[],"enclosing_case":{"line":114,"title":"%s waits through the dependency graph without polling the Actions API"},"affected_case_lines":[114],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","rows":[{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":114,"end_line":114,"start":5490,"end":5503,"source":"'persistence'","value":{"kind":"string","value":"persistence"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'persistence'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":114,"end_line":114,"start":5505,"end":5524,"source":"'linux_glibc_floor'","value":{"kind":"string","value":"linux_glibc_floor"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'linux_glibc_floor'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":114,"end_line":114,"start":5526,"end":5538,"source":"'linux_musl'","value":{"kind":"string","value":"linux_musl"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'linux_musl'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:120:inline-api-or-fixture-input:19","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":120,"end_line":120,"start":5839,"end":5904,"source":"compileAggregateExpression(job.if, ['needs', 'github', 'inputs'])","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":120,"end_line":120,"start":5839,"end":5904},"binding":"compileAggregateExpression","resolution":[],"enclosing_case":{"line":114,"title":"%s waits through the dependency graph without polling the Actions API"},"affected_case_lines":[],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":120,"end_line":120,"start":5866,"end":5872,"source":"job.if","value":{"kind":"source-expression","source":"job.if"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: job.if. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":120,"end_line":120,"start":5874,"end":5903,"source":"['needs', 'github', 'inputs']","value":{"kind":"array","value":[{"kind":"string","value":"needs"},{"kind":"string","value":"github"},{"kind":"string","value":"inputs"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: ['needs', 'github', 'inputs']. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:121:for-of:20","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":121,"end_line":127,"start":5909,"end":6206,"source":"['success', 'failure', 'cancelled', 'skipped', 'timed_out']","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":121,"end_line":121,"start":5932,"end":5991},"binding":"const producer","resolution":[],"enclosing_case":{"line":114,"title":"%s waits through the dependency graph without polling the Actions API"},"affected_case_lines":[],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","rows":[{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":121,"end_line":121,"start":5933,"end":5942,"source":"'success'","value":{"kind":"string","value":"success"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'success'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":121,"end_line":121,"start":5944,"end":5953,"source":"'failure'","value":{"kind":"string","value":"failure"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'failure'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":121,"end_line":121,"start":5955,"end":5966,"source":"'cancelled'","value":{"kind":"string","value":"cancelled"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'cancelled'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":121,"end_line":121,"start":5968,"end":5977,"source":"'skipped'","value":{"kind":"string","value":"skipped"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'skipped'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":121,"end_line":121,"start":5979,"end":5990,"source":"'timed_out'","value":{"kind":"string","value":"timed_out"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'timed_out'. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:122:fixture-or-oracle-declaration:21","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":122,"end_line":125,"start":6007,"end":6120,"source":"{\n ...context({ qualification: 'true', producer }),\n inputs: { build_template: true }\n }","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":122,"end_line":125,"start":6013,"end":6120},"binding":"ctx","resolution":[],"enclosing_case":{"line":114,"title":"%s waits through the dependency graph without polling the Actions API"},"affected_case_lines":[],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":123,"end_line":123,"start":6023,"end":6070,"source":"...context({ qualification: 'true', producer })","value":{"kind":"source-expression","source":"...context({ qualification: 'true', producer })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: ...context({ qualification: 'true', producer }). Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":124,"end_line":124,"start":6080,"end":6112,"source":"inputs: { build_template: true }","value":{"kind":"property","key":"inputs","value":{"kind":"object","value":[{"key":"build_template","value":{"kind":"boolean","value":true}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: inputs: { build_template: true }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:123:inline-api-or-fixture-input:22","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":123,"end_line":123,"start":6026,"end":6070,"source":"context({ qualification: 'true', producer })","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":123,"end_line":123,"start":6026,"end":6070},"binding":"context","resolution":[],"enclosing_case":{"line":114,"title":"%s waits through the dependency graph without polling the Actions API"},"affected_case_lines":[],"decision":"keep","reason":"Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","rows":[{"index":1,"path":"config/scripts/node-server-release-parallelism.test.mjs","line":123,"end_line":123,"start":6034,"end":6069,"source":"{ qualification: 'true', producer }","value":{"kind":"object","value":[{"key":"qualification","value":{"kind":"string","value":"true"}},{"source":"producer"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { qualification: 'true', producer }. Actual compiled workflow job/step expressions and parsed dependencies are evaluated for producer failures, drafts, cancellation, cache inputs and template callers; this protects dependency ordering and conditional work. Scenario: %s waits through the dependency graph without polling the Actions API.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}},{"id":"47:132:for-of:23","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/node-server-release-parallelism.test.mjs","line":132,"end_line":144,"start":6289,"end":6882,"source":"['persistence', 'linux_glibc_floor', 'linux_musl']","input_position":{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":132,"end_line":132,"start":6308,"end":6358},"binding":"const name","resolution":[],"enclosing_case":{"line":131,"title":"prepares every native lane and builds with the shared page"},"affected_case_lines":[],"decision":"keep","reason":"Remove duplicated command-body substring inventory; retain actual prepare-before-download ordering, shared-page job dependencies, permissions and unconditional container-cleanup configuration. Name the case for configured ordering rather than executing builds.","rows":[{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":132,"end_line":132,"start":6309,"end":6322,"source":"'persistence'","value":{"kind":"string","value":"persistence"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'persistence'. Remove duplicated command-body substring inventory; retain actual prepare-before-download ordering, shared-page job dependencies, permissions and unconditional container-cleanup configuration. Name the case for configured ordering rather than executing builds.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":132,"end_line":132,"start":6324,"end":6343,"source":"'linux_glibc_floor'","value":{"kind":"string","value":"linux_glibc_floor"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'linux_glibc_floor'. Remove duplicated command-body substring inventory; retain actual prepare-before-download ordering, shared-page job dependencies, permissions and unconditional container-cleanup configuration. Name the case for configured ordering rather than executing builds.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/node-server-release-parallelism.test.mjs","line":132,"end_line":132,"start":6345,"end":6357,"source":"'linux_musl'","value":{"kind":"string","value":"linux_musl"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original for-of control: 'linux_musl'. Remove duplicated command-body substring inventory; retain actual prepare-before-download ordering, shared-page job dependencies, permissions and unconditional container-cleanup configuration. Name the case for configured ordering rather than executing builds.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373"}}],"original_review_sha256":"90597a679c15d1a4f97a8131c839d679d6934da6e69cf58c150f404abba8c1d1","reviewer":"audit_config","reviewed_sha256":"ae184591706221b4b2652398023bd147db1cf9f9bfd2ca5d2a1b01b39e655373","implementation_status":"implemented","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Targeted ordinary runtime checks,scoped formatting/lint and focused benchmark TypeScript check passed; all15 mutation checks detected the expected failure and restored exact source bytes.","validation_attempt_history":[{"name":"dependency-probe-skips","result":"superseded","detail":"Before compatible mobile dependencies were linked:2 files passed,9 skipped;16 tests passed,107 skipped. No browser coverage claimed from this run.","log":"/tmp/orca-config-0007-mobile-available.log","log_sha256":"15cb1de3538776afb666fea00a5bf7e171ec54d4dce9ab26bc4163560d1afcb7"},{"name":"missing-generated-assets-and-webkit-libraries","result":"superseded-failure","detail":"After dependencies were linked,missing generated mobile engine modules and unavailable WebKit system libraries caused11 file failures:44 tests failed,46 passed,33 skipped. Generated ignored outputs and isolated WebKit cache setup resolved these failures.","log":"/tmp/orca-config-0007-mobile-full.log","log_sha256":"bbaee86d0cd3cc22daed7f5576cf1d1428dea8062576491d9e1c2120e81f53d3"},{"name":"postinstall-preflight","result":"completed-with-preflight-warning","detail":"pnpm attempted its automatic dependency verification first and rejected the symlink hoist directory. No successful dependency install occurred. The existing mobile postinstall generators then completed and produced the required ignored assets.","log":"/tmp/orca-config-0007-mobile-postinstall.log","log_sha256":"f76991a0d0979f2ed92caabcfe4429681382f3d7135dec3502a2a1f489db7b92"},{"name":"focused-typecheck-initial","result":"superseded-failure","detail":"Existing benchmark background-task discrimination and callback-assigned sink narrowing failed focused TypeScript checking. Checked narrowing and a typed sink object resolved both; final focused check passed.","log":"/tmp/orca-config-0007-typecheck.log","log_sha256":"983d7ff029a9ac3afc395db8a429f1ad2b1ea2a81b0d411be2d186d56909cb7d"},{"name":"initial-benchmark","result":"passed-earlier-state","detail":"The6 retained benchmark arms passed before the final checked-type cleanup. Final run records its own checksum and duration.","log":"/tmp/orca-config-0007-live-session-benchmark.log","log_sha256":"950b9e67af594c39132aff05d5d910fa7dcb223fbcef675b53d4e5ae8dd54623"},{"name":"webkit-install-probe","result":"setup-only","detail":"Existing WebKit download was available but its bundled wrapper hid inherited library paths. An isolated cache wrapper under /tmp uses existing extracted compatibility libraries; both engines subsequently passed.","log":"/tmp/orca-config-0007-webkit-install.log","log_sha256":"9609828a648ea872144c4f2ad1bc5bca304a19af4f5854472faf7a6a9927ddb3"},{"name":"form-mutation-bounded-readiness","result":"targeted-failure-rejected-by-strict-runner","detail":"Both engines failed at the expected10-second navigation precondition after forms capability was denied. The original runner required AssertionError and rejected this result. The retained second attempt also uses no-navigation settling so the independent top-navigation count assertion is reached and fails on both engines.","log":"/tmp/orca-config-0007-mutation-first-attempt/orca-config-0007-mutation-preview-positive-form-remains-sealed.log","log_sha256":"6e552b4e38649e1633407f8a5198037f1dac6be4a99af46c055271d1385c63f3"}],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/node-server-release-parallelism.test.mjs","final_declarations":7,"current_controls":{"path":"config/scripts/node-server-release-parallelism.test.mjs","each":[{"input":{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":753,"end":1430,"line":21,"end_line":32,"source":"[\n { qualification: 'true', producer: 'success', expected: true },\n { qualification: '', producer: 'success', expected: true },\n { qualification: 'true', producer: 'failure', expected: false },\n { qualification: 'true', producer: 'cancelled', expected: false },\n { qualification: 'true', producer: 'skipped', expected: false },\n { qualification: '', producer: 'skipped', expected: false },\n { qualification: 'false', producer: 'skipped', expected: true },\n { qualification: 'false', producer: 'skipped', draft: true, expected: false },\n { producer: 'success', event: 'workflow_dispatch', expected: true },\n { producer: 'success', event: 'schedule', expected: true }\n]"},"rows":[{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":757,"end":819,"line":22,"end_line":22,"source":"{ qualification: 'true', producer: 'success', expected: true }"},{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":823,"end":881,"line":23,"end_line":23,"source":"{ qualification: '', producer: 'success', expected: true }"},{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":885,"end":948,"line":24,"end_line":24,"source":"{ qualification: 'true', producer: 'failure', expected: false }"},{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":952,"end":1017,"line":25,"end_line":25,"source":"{ qualification: 'true', producer: 'cancelled', expected: false }"},{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":1021,"end":1084,"line":26,"end_line":26,"source":"{ qualification: 'true', producer: 'skipped', expected: false }"},{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":1088,"end":1147,"line":27,"end_line":27,"source":"{ qualification: '', producer: 'skipped', expected: false }"},{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":1151,"end":1214,"line":28,"end_line":28,"source":"{ qualification: 'false', producer: 'skipped', expected: true }"},{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":1218,"end":1295,"line":29,"end_line":29,"source":"{ qualification: 'false', producer: 'skipped', draft: true, expected: false }"},{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":1299,"end":1366,"line":30,"end_line":30,"source":"{ producer: 'success', event: 'workflow_dispatch', expected: true }"},{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":1370,"end":1428,"line":31,"end_line":31,"source":"{ producer: 'success', event: 'schedule', expected: true }"}]},{"input":{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":5548,"end":5598,"line":116,"end_line":116,"source":"['persistence', 'linux_glibc_floor', 'linux_musl']"},"rows":[{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":5549,"end":5562,"line":116,"end_line":116,"source":"'persistence'"},{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":5564,"end":5583,"line":116,"end_line":116,"source":"'linux_glibc_floor'"},{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":5585,"end":5597,"line":116,"end_line":116,"source":"'linux_musl'"}]}],"for_of":[{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":2498,"end":2530,"line":47,"end_line":47,"source":"['true', '', undefined, 'false']","binding":"const qualification","changed":false},{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":3000,"end":3060,"line":60,"end_line":60,"source":"['linux_glibc_floor', 'linux_glibc217_compat', 'linux_musl']","binding":"const name","changed":false},{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":5061,"end":5090,"line":100,"end_line":100,"source":"['Linux', 'macOS', 'Windows']","binding":"const os","changed":false},{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":5272,"end":5285,"line":104,"end_line":104,"source":"[true, false]","binding":"const buildTemplate","changed":false},{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":5991,"end":6050,"line":123,"end_line":123,"source":"['success', 'failure', 'cancelled', 'skipped', 'timed_out']","binding":"const producer","changed":false},{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":6392,"end":6442,"line":134,"end_line":134,"source":"['persistence', 'linux_glibc_floor', 'linux_musl']","binding":"const name","changed":false}],"literal_nodes_without_original_source_match":[{"path":"config/scripts/node-server-release-parallelism.test.mjs","start":5166,"end":5184,"line":101,"end_line":101,"source":"{ runner: { os } }","kind":"object"}]},"mutations":[{"name":"native-runtime-platform-branches-swapped","reason":"Actual evaluation must reject inverted Windows/non-Windows native runtime choices.","baseline_hashes":{".github/workflows/node-server-tests.yml":"ce215d47f979273576716afb04f06a82975d34ff7c2617a48ecebebfb47256e4"},"test":"config/scripts/node-server-release-parallelism.test.mjs","pattern":"avoids template download-cache","log":"/tmp/orca-config-0007-mutation-native-runtime-platform-branches-swapped.log","command":["pnpm","test","config/scripts/node-server-release-parallelism.test.mjs","-t","avoids template download-cache","--maxWorkers=1"],"seconds":2.67,"exit_code":1,"assertion_failure_seen":true,"expected_failure_seen":true,"failed_tests":["1 failed | 17 skipped (18)"],"restored_hashes":{".github/workflows/node-server-tests.yml":"ce215d47f979273576716afb04f06a82975d34ff7c2617a48ecebebfb47256e4"},"restored":true,"log_sha256":"cbcdf83983f46363c96c94b699087b6b97fca279161e56bae006c5f4025032cd"}]},"implemented_changes":[{"original_line":95,"title":"avoids template download-cache transfers while retaining native and verification caches","decision":"fix","change":"Evaluate the native-runtime expression for each Linux/macOS/Windows context already used by the cache policy table, replacing a Windows-token substring check. Preserve all cache policy outcomes."},{"original_line":131,"title":"prepares every native lane and builds with the shared page","decision":"fix","change":"Remove duplicated command-body substring inventory; retain actual prepare-before-download ordering, shared-page job dependencies, permissions and unconditional container-cleanup configuration. Name the case for configured ordering rather than executing builds."}],"manual_implementation_notes":[],"evidence":[".github/workflows/node-server-tests.yml","config/scripts/pr-aggregate-gate-context.mjs"],"runtime_validation":[{"name":"nonbrowser","result":"pass","log":"/tmp/orca-config-0007-nonbrowser.log","log_sha256":"22ba8a7028d642cf8dd90325e4bfa61545f2baa18c8dbf9166e93f3dae60467f"},{"name":"post-mutation-normal","result":"pass","log":"/tmp/orca-config-0007-post-mutation-normal.log","log_sha256":"b6e0d6953adec9b75f3b7c3fd59ad0572ed6abf5084585b80ca7b2212ed56f22"},{"name":"native-guards-final","result":"pass","log":"/tmp/orca-config-0007-native-guards-final.log","log_sha256":"106e107f68c54f635d9c90f17a759ab774b41ac9012aabf20c689c563e5cb055"},{"name":"mobile","result":"pass","log":"/tmp/orca-config-0007-mobile-generated.log","log_sha256":"f34075deb4e250589f3b35c24f0673546804a7b5d1cead6826ab91117d328f94"},{"name":"html-both-engines","result":"pass","log":"/tmp/orca-config-0007-html-both-engines.log","log_sha256":"f7fe7e15565825ebcf93625680ad57fd92f95a196bf88059e34339f3239bb49d"},{"name":"benchmark","result":"pass","log":"/tmp/orca-config-0007-live-session-benchmark-final.log","log_sha256":"ad4421064b9f00883e4753b0119a4e323dbbef990a2b6c24314b6c43ce0aa5a5"},{"name":"typecheck","result":"pass","log":"/tmp/orca-config-0007-typecheck-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"name":"oxfmt","result":"pass","log":"/tmp/orca-config-0007-oxfmt-final.log","log_sha256":"f08014d4b82479b3636ab7d5ac7ba77c933d8c5011d5afdaa87c0661188ba093"},{"name":"oxlint","result":"pass","log":"/tmp/orca-config-0007-oxlint-final.log","log_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}]}
+{"path":"config/scripts/nsis-process-check.test.mjs","sha256":"3e98c4a6691c3c3e837e314c4c3873e5dde3029f3466d6173d604304fde9034b","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":48,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"3e98c4a6691c3c3e837e314c4c3873e5dde3029f3466d6173d604304fde9034b","cases":[{"line":31,"title":"loads the capability hook through the installer and uninstaller include","decision":"keep","reason":"Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: loads the capability hook through the installer and uninstaller include.","explicit_input_controls":[],"current_declaration":{"line":31,"title":"loads the capability hook through the installer and uninstaller include","start":1136,"end":1563},"implementation_status":"retained"},{"line":39,"title":"keeps upstream process selection, retries, and installation-mode handling","decision":"keep","reason":"Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: keeps upstream process selection, retries, and installation-mode handling.","explicit_input_controls":[],"current_declaration":{"line":39,"title":"keeps upstream process selection, retries, and installation-mode handling","start":1567,"end":2192},"implementation_status":"retained"},{"line":97,"title":"%s permits the real inline process query","decision":"keep","reason":"Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s permits the real inline process query.","explicit_input_controls":[{"control_id":"48:97:parameter-table:2","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/nsis-process-check.test.mjs","line":97,"source":"['SysWOW64', 'System32']","rows":[{"path":"config/scripts/nsis-process-check.test.mjs","line":97,"end_line":97,"start":4430,"end":4440,"source":"'SysWOW64'","value":{"kind":"string","value":"SysWOW64"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'SysWOW64'. Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s permits the real inline process query.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/nsis-process-check.test.mjs","line":97,"end_line":97,"start":4442,"end":4452,"source":"'System32'","value":{"kind":"string","value":"System32"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'System32'. Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s permits the real inline process query.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s permits the real inline process query.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"48:101:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/nsis-process-check.test.mjs","line":101,"source":"runProbe(arch)","rows":[{"index":1,"path":"config/scripts/nsis-process-check.test.mjs","line":101,"end_line":101,"start":4598,"end":4602,"source":"arch","value":{"kind":"source-expression","source":"arch"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: arch. Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s permits the real inline process query.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s permits the real inline process query.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":97,"title":"%s permits the real inline process query","start":4421,"end":4776},"implementation_status":"retained"},{"line":108,"title":"%s rejects a failed process query","decision":"keep","reason":"Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s rejects a failed process query.","explicit_input_controls":[{"control_id":"48:108:parameter-table:4","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/nsis-process-check.test.mjs","line":108,"source":"['SysWOW64', 'System32']","rows":[{"path":"config/scripts/nsis-process-check.test.mjs","line":108,"end_line":108,"start":4791,"end":4801,"source":"'SysWOW64'","value":{"kind":"string","value":"SysWOW64"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'SysWOW64'. Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s rejects a failed process query.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/nsis-process-check.test.mjs","line":108,"end_line":108,"start":4803,"end":4813,"source":"'System32'","value":{"kind":"string","value":"System32"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'System32'. Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s rejects a failed process query.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s rejects a failed process query.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"48:112:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/nsis-process-check.test.mjs","line":112,"source":"runProbe(\n arch,\n 'function Get-CimInstance { [CmdletBinding()] param([string]$ClassName); ' +\n `[Console]::Out.WriteLine('${queryFailureReceipt}'); Write-Error 'CIM unavailable' }; `\n )","rows":[{"index":1,"path":"config/scripts/nsis-process-check.test.mjs","line":113,"end_line":113,"start":4963,"end":4967,"source":"arch","value":{"kind":"source-expression","source":"arch"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: arch. Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s rejects a failed process query.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/nsis-process-check.test.mjs","line":114,"end_line":115,"start":4979,"end":5155,"source":"'function Get-CimInstance { [CmdletBinding()] param([string]$ClassName); ' +\n `[Console]::Out.WriteLine('${queryFailureReceipt}'); Write-Error 'CIM unavailable' }; `","value":{"kind":"source-expression","source":"'function Get-CimInstance { [CmdletBinding()] param([string]$ClassName); ' +\n `[Console]::Out.WriteLine('${queryFailureReceipt}'); Write-Error 'CIM unavailable' }; `"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'function Get-CimInstance { [CmdletBinding()] param([string]$ClassName); ' + `[Console]::Out.WriteLine('${queryFailureReceipt}'). Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s rejects a failed process query.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s rejects a failed process query.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":108,"title":"%s rejects a failed process query","start":4782,"end":5399},"implementation_status":"retained"}],"lines":125,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control.","planned_changes":[],"production_evidence":["config/nsis/orca-installer-hooks.nsh","config/nsis/orca-process-check.nsh"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"48:85:inline-api-or-fixture-input:1","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/nsis-process-check.test.mjs","line":85,"end_line":94,"start":4038,"end":4409,"source":"runProcessSync({\n program: join(process.env.SystemRoot, arch, 'WindowsPowerShell', 'v1.0', 'powershell.exe'),\n args: [...args, '-Command', `${policyCheck} ${prefix}${command}`],\n env: {\n ...env,\n ORCA_BACKGROUND_LAUNCH: '1',\n PSExecutionPolicyPreference: 'Restricted'\n },\n timeoutMs: PROBE_TIMEOUT_MS\n })","input_position":{"path":"config/scripts/nsis-process-check.test.mjs","line":85,"end_line":94,"start":4038,"end":4409},"binding":"runProcessSync","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control.","rows":[{"index":1,"path":"config/scripts/nsis-process-check.test.mjs","line":85,"end_line":94,"start":4053,"end":4408,"source":"{\n program: join(process.env.SystemRoot, arch, 'WindowsPowerShell', 'v1.0', 'powershell.exe'),\n args: [...args, '-Command', `${policyCheck} ${prefix}${command}`],\n env: {\n ...env,\n ORCA_BACKGROUND_LAUNCH: '1',\n PSExecutionPolicyPreference: 'Restricted'\n },\n timeoutMs: PROBE_TIMEOUT_MS\n }","value":{"kind":"object","value":[{"key":"program","value":{"kind":"call-source","callee":"join","arguments":[{"kind":"source-expression","source":"process.env.SystemRoot"},{"kind":"source-expression","source":"arch"},{"kind":"string","value":"WindowsPowerShell"},{"kind":"string","value":"v1.0"},{"kind":"string","value":"powershell.exe"}],"source":"join(process.env.SystemRoot, arch, 'WindowsPowerShell', 'v1.0', 'powershell.exe')"}},{"key":"args","value":{"kind":"array","value":[{"kind":"source-expression","source":"...args"},{"kind":"string","value":"-Command"},{"kind":"source-expression","source":"`${policyCheck} ${prefix}${command}`"}]}},{"key":"env","value":{"kind":"object","value":[{"source":"...env"},{"key":"ORCA_BACKGROUND_LAUNCH","value":{"kind":"string","value":"1"}},{"key":"PSExecutionPolicyPreference","value":{"kind":"string","value":"Restricted"}}]}},{"key":"timeoutMs","value":{"kind":"reference","source":"PROBE_TIMEOUT_MS","resolved_at":{"path":"config/scripts/nsis-process-check.test.mjs","line":72,"end_line":72,"start":3428,"end":3434},"resolved":{"kind":"number","value":60000}}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { program: join(process.env.SystemRoot, arch, 'WindowsPowerShell', 'v1.0', 'powershell.exe'), args: [...args, '-Command', `$. Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3e98c4a6691c3c3e837e314c4c3873e5dde3029f3466d6173d604304fde9034b"}},{"id":"48:97:parameter-table:2","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/nsis-process-check.test.mjs","line":97,"end_line":106,"start":4421,"end":4776,"source":"['SysWOW64', 'System32']","input_position":{"path":"config/scripts/nsis-process-check.test.mjs","line":97,"end_line":97,"start":4429,"end":4453},"binding":"it.each","resolution":[],"enclosing_case":{"line":97,"title":"%s permits the real inline process query"},"affected_case_lines":[97],"decision":"keep","reason":"Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s permits the real inline process query.","rows":[{"path":"config/scripts/nsis-process-check.test.mjs","line":97,"end_line":97,"start":4430,"end":4440,"source":"'SysWOW64'","value":{"kind":"string","value":"SysWOW64"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'SysWOW64'. Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s permits the real inline process query.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/nsis-process-check.test.mjs","line":97,"end_line":97,"start":4442,"end":4452,"source":"'System32'","value":{"kind":"string","value":"System32"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'System32'. Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s permits the real inline process query.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3e98c4a6691c3c3e837e314c4c3873e5dde3029f3466d6173d604304fde9034b"}},{"id":"48:101:inline-api-or-fixture-input:3","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/nsis-process-check.test.mjs","line":101,"end_line":101,"start":4589,"end":4603,"source":"runProbe(arch)","input_position":{"path":"config/scripts/nsis-process-check.test.mjs","line":101,"end_line":101,"start":4589,"end":4603},"binding":"runProbe","resolution":[],"enclosing_case":{"line":97,"title":"%s permits the real inline process query"},"affected_case_lines":[],"decision":"keep","reason":"Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s permits the real inline process query.","rows":[{"index":1,"path":"config/scripts/nsis-process-check.test.mjs","line":101,"end_line":101,"start":4598,"end":4602,"source":"arch","value":{"kind":"source-expression","source":"arch"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: arch. Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s permits the real inline process query.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3e98c4a6691c3c3e837e314c4c3873e5dde3029f3466d6173d604304fde9034b"}},{"id":"48:108:parameter-table:4","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/nsis-process-check.test.mjs","line":108,"end_line":122,"start":4782,"end":5399,"source":"['SysWOW64', 'System32']","input_position":{"path":"config/scripts/nsis-process-check.test.mjs","line":108,"end_line":108,"start":4790,"end":4814},"binding":"it.each","resolution":[],"enclosing_case":{"line":108,"title":"%s rejects a failed process query"},"affected_case_lines":[108],"decision":"keep","reason":"Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s rejects a failed process query.","rows":[{"path":"config/scripts/nsis-process-check.test.mjs","line":108,"end_line":108,"start":4791,"end":4801,"source":"'SysWOW64'","value":{"kind":"string","value":"SysWOW64"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'SysWOW64'. Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s rejects a failed process query.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"config/scripts/nsis-process-check.test.mjs","line":108,"end_line":108,"start":4803,"end":4813,"source":"'System32'","value":{"kind":"string","value":"System32"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'System32'. Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s rejects a failed process query.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3e98c4a6691c3c3e837e314c4c3873e5dde3029f3466d6173d604304fde9034b"}},{"id":"48:112:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/nsis-process-check.test.mjs","line":112,"end_line":116,"start":4943,"end":5165,"source":"runProbe(\n arch,\n 'function Get-CimInstance { [CmdletBinding()] param([string]$ClassName); ' +\n `[Console]::Out.WriteLine('${queryFailureReceipt}'); Write-Error 'CIM unavailable' }; `\n )","input_position":{"path":"config/scripts/nsis-process-check.test.mjs","line":112,"end_line":116,"start":4943,"end":5165},"binding":"runProbe","resolution":[],"enclosing_case":{"line":108,"title":"%s rejects a failed process query"},"affected_case_lines":[],"decision":"keep","reason":"Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s rejects a failed process query.","rows":[{"index":1,"path":"config/scripts/nsis-process-check.test.mjs","line":113,"end_line":113,"start":4963,"end":4967,"source":"arch","value":{"kind":"source-expression","source":"arch"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: arch. Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s rejects a failed process query.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/nsis-process-check.test.mjs","line":114,"end_line":115,"start":4979,"end":5155,"source":"'function Get-CimInstance { [CmdletBinding()] param([string]$ClassName); ' +\n `[Console]::Out.WriteLine('${queryFailureReceipt}'); Write-Error 'CIM unavailable' }; `","value":{"kind":"source-expression","source":"'function Get-CimInstance { [CmdletBinding()] param([string]$ClassName); ' +\n `[Console]::Out.WriteLine('${queryFailureReceipt}'); Write-Error 'CIM unavailable' }; `"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: 'function Get-CimInstance { [CmdletBinding()] param([string]$ClassName); ' + `[Console]::Out.WriteLine('${queryFailureReceipt}'). Static installer/upstream linkage checks accompany actual Windows PowerShell invocation extracted from shipped NSIS, including enforced Restricted-policy preconditions and an observed failing-query negative control. Scenario: %s rejects a failed process query.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"3e98c4a6691c3c3e837e314c4c3873e5dde3029f3466d6173d604304fde9034b"}}],"original_review_sha256":"d125881f1f0c24268ac66401a06913a4bb8781d50de4626b4e1cf37f44a5a873","reviewer":"audit_config","reviewed_sha256":"3e98c4a6691c3c3e837e314c4c3873e5dde3029f3466d6173d604304fde9034b","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/nsis-process-check.test.mjs","final_declarations":4,"current_controls":{"path":"config/scripts/nsis-process-check.test.mjs","each":[{"input":{"path":"config/scripts/nsis-process-check.test.mjs","start":4429,"end":4453,"line":97,"end_line":97,"source":"['SysWOW64', 'System32']"},"rows":[{"path":"config/scripts/nsis-process-check.test.mjs","start":4430,"end":4440,"line":97,"end_line":97,"source":"'SysWOW64'"},{"path":"config/scripts/nsis-process-check.test.mjs","start":4442,"end":4452,"line":97,"end_line":97,"source":"'System32'"}]},{"input":{"path":"config/scripts/nsis-process-check.test.mjs","start":4790,"end":4814,"line":108,"end_line":108,"source":"['SysWOW64', 'System32']"},"rows":[{"path":"config/scripts/nsis-process-check.test.mjs","start":4791,"end":4801,"line":108,"end_line":108,"source":"'SysWOW64'"},{"path":"config/scripts/nsis-process-check.test.mjs","start":4803,"end":4813,"line":108,"end_line":108,"source":"'System32'"}]}],"for_of":[],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/nsis/orca-installer-hooks.nsh","config/nsis/orca-process-check.nsh"],"runtime_validation":[]}
+{"path":"config/scripts/orca-dev-bin.test.mjs","sha256":"72e310e8352642bbebc79d7af2d5f1dfc27ef22aeecdee908647554bc6fe8d98","declarations":1,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":49,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"72e310e8352642bbebc79d7af2d5f1dfc27ef22aeecdee908647554bc6fe8d98","cases":[{"line":11,"title":"runs the dev CLI through Node without requiring Bash","decision":"keep","reason":"Actual Node wrapper launches a fixture CLI child that records argv/environment; exact returned data verifies propagation without requiring Bash. Scenario: runs the dev CLI through Node without requiring Bash.","explicit_input_controls":[],"current_declaration":{"line":11,"title":"runs the dev CLI through Node without requiring Bash","start":422,"end":1720},"implementation_status":"retained"}],"lines":50,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Actual Node wrapper launches a fixture CLI child that records argv/environment; exact returned data verifies propagation without requiring Bash.","planned_changes":[],"production_evidence":["config/scripts/orca-dev.mjs"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[],"original_review_sha256":"1cc8c46eeccdb9532d1735a1ef6473c97f700af17450b95515ed0170a214d586","reviewer":"audit_config","reviewed_sha256":"72e310e8352642bbebc79d7af2d5f1dfc27ef22aeecdee908647554bc6fe8d98","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/orca-dev-bin.test.mjs","final_declarations":1,"current_controls":{"path":"config/scripts/orca-dev-bin.test.mjs","each":[],"for_of":[],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/scripts/orca-dev.mjs"],"runtime_validation":[]}
+{"path":"config/scripts/orcad-artifact-version.test.mjs","sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e","declarations":4,"signals":["named","declarations","ci-unit"],"status":"reviewed","index":50,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","inventory_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e","cases":[{"line":40,"title":"changes when a shipped search binary changes and rejects a missing binary","decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","explicit_input_controls":[{"control_id":"50:43:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":43,"source":"computeOrcadFullVersion(dir, { target })","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":43,"end_line":43,"start":1795,"end":1798,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":42,"end_line":42,"start":1720,"end":1751},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":41,"end_line":41,"start":1686,"end":1703},"resolved":{"kind":"string","value":"linux-x64-glibc"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":43,"end_line":43,"start":1800,"end":1810,"source":"{ target }","value":{"kind":"object","value":[{"source":"target"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { target }. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"50:44:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":44,"source":"orcadRipgrepArtifact(target)","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":44,"end_line":44,"start":1862,"end":1868,"source":"target","value":{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":41,"end_line":41,"start":1686,"end":1703},"resolved":{"kind":"string","value":"linux-x64-glibc"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: target. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"50:46:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":46,"source":"computeOrcadFullVersion(dir, { target })","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":46,"end_line":46,"start":1950,"end":1953,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":42,"end_line":42,"start":1720,"end":1751},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":41,"end_line":41,"start":1686,"end":1703},"resolved":{"kind":"string","value":"linux-x64-glibc"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":46,"end_line":46,"start":1955,"end":1965,"source":"{ target }","value":{"kind":"object","value":[{"source":"target"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { target }. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"50:48:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":48,"source":"computeOrcadFullVersion(dir, { target })","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":48,"end_line":48,"start":2045,"end":2048,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":42,"end_line":42,"start":1720,"end":1751},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":41,"end_line":41,"start":1686,"end":1703},"resolved":{"kind":"string","value":"linux-x64-glibc"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":48,"end_line":48,"start":2050,"end":2060,"source":"{ target }","value":{"kind":"object","value":[{"source":"target"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { target }. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"50:48:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":48,"source":"orcadRipgrepArtifact(target)","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":48,"end_line":48,"start":2092,"end":2098,"source":"target","value":{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":41,"end_line":41,"start":1686,"end":1703},"resolved":{"kind":"string","value":"linux-x64-glibc"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: target. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":40,"title":"changes when a shipped search binary changes and rejects a missing binary","start":1579,"end":2105},"implementation_status":"retained"},{"line":51,"title":"changes when a page asset changes and rejects a missing one","decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a page asset changes and rejects a missing one.","explicit_input_controls":[{"control_id":"50:54:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":54,"source":"computeOrcadFullVersion(dir, { target })","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":54,"end_line":54,"start":2311,"end":2314,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":53,"end_line":53,"start":2236,"end":2267},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":52,"end_line":52,"start":2202,"end":2219},"resolved":{"kind":"string","value":"linux-x64-glibc"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a page asset changes and rejects a missing one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":54,"end_line":54,"start":2316,"end":2326,"source":"{ target }","value":{"kind":"object","value":[{"source":"target"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { target }. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a page asset changes and rejects a missing one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a page asset changes and rejects a missing one.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"50:56:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":56,"source":"computeOrcadFullVersion(dir, { target })","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":56,"end_line":56,"start":2420,"end":2423,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":53,"end_line":53,"start":2236,"end":2267},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":52,"end_line":52,"start":2202,"end":2219},"resolved":{"kind":"string","value":"linux-x64-glibc"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a page asset changes and rejects a missing one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":56,"end_line":56,"start":2425,"end":2435,"source":"{ target }","value":{"kind":"object","value":[{"source":"target"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { target }. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a page asset changes and rejects a missing one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a page asset changes and rejects a missing one.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"50:58:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":58,"source":"computeOrcadFullVersion(dir, { target })","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":58,"end_line":58,"start":2530,"end":2533,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":53,"end_line":53,"start":2236,"end":2267},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":52,"end_line":52,"start":2202,"end":2219},"resolved":{"kind":"string","value":"linux-x64-glibc"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a page asset changes and rejects a missing one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":58,"end_line":58,"start":2535,"end":2545,"source":"{ target }","value":{"kind":"object","value":[{"source":"target"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { target }. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a page asset changes and rejects a missing one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a page asset changes and rejects a missing one.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":51,"title":"changes when a page asset changes and rejects a missing one","start":2109,"end":2572},"implementation_status":"retained"},{"line":61,"title":"keys the version on the referenced runtime digest rather than its bytes","decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: keys the version on the referenced runtime digest rather than its bytes.","explicit_input_controls":[{"control_id":"50:65:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":65,"source":"computeOrcadFullVersion(dir, { target })","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":65,"end_line":65,"start":2875,"end":2878,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":63,"end_line":63,"start":2712,"end":2743},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":62,"end_line":62,"start":2681,"end":2695},"resolved":{"kind":"string","value":"darwin-arm64"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: keys the version on the referenced runtime digest rather than its bytes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":65,"end_line":65,"start":2880,"end":2890,"source":"{ target }","value":{"kind":"object","value":[{"source":"target"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { target }. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: keys the version on the referenced runtime digest rather than its bytes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: keys the version on the referenced runtime digest rather than its bytes.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"50:67:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":67,"source":"computeOrcadFullVersion(dir, { target })","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":67,"end_line":67,"start":3015,"end":3018,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":63,"end_line":63,"start":2712,"end":2743},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":62,"end_line":62,"start":2681,"end":2695},"resolved":{"kind":"string","value":"darwin-arm64"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: keys the version on the referenced runtime digest rather than its bytes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":67,"end_line":67,"start":3020,"end":3030,"source":"{ target }","value":{"kind":"object","value":[{"source":"target"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { target }. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: keys the version on the referenced runtime digest rather than its bytes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: keys the version on the referenced runtime digest rather than its bytes.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":61,"title":"keys the version on the referenced runtime digest rather than its bytes","start":2576,"end":3054},"implementation_status":"retained"},{"line":70,"title":"matches the installed %s identity with and without its optional browser","decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","explicit_input_controls":[{"control_id":"50:70:parameter-table:15","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":70,"source":"SERVER_TARGETS","rows":[{"path":"src/shared/node-runtime-pin.ts","line":9,"end_line":9,"start":312,"end":326,"source":"'darwin-arm64'","value":{"kind":"string","value":"darwin-arm64"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'darwin-arm64'. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"src/shared/node-runtime-pin.ts","line":10,"end_line":10,"start":330,"end":342,"source":"'darwin-x64'","value":{"kind":"string","value":"darwin-x64"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'darwin-x64'. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"src/shared/node-runtime-pin.ts","line":11,"end_line":11,"start":346,"end":365,"source":"'linux-arm64-glibc'","value":{"kind":"string","value":"linux-arm64-glibc"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'linux-arm64-glibc'. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"src/shared/node-runtime-pin.ts","line":12,"end_line":12,"start":369,"end":386,"source":"'linux-x64-glibc'","value":{"kind":"string","value":"linux-x64-glibc"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'linux-x64-glibc'. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"src/shared/node-runtime-pin.ts","line":13,"end_line":13,"start":390,"end":408,"source":"'linux-arm64-musl'","value":{"kind":"string","value":"linux-arm64-musl"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'linux-arm64-musl'. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"src/shared/node-runtime-pin.ts","line":14,"end_line":14,"start":412,"end":428,"source":"'linux-x64-musl'","value":{"kind":"string","value":"linux-x64-musl"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'linux-x64-musl'. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"src/shared/node-runtime-pin.ts","line":15,"end_line":15,"start":432,"end":445,"source":"'win32-arm64'","value":{"kind":"string","value":"win32-arm64"},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'win32-arm64'. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"src/shared/node-runtime-pin.ts","line":16,"end_line":16,"start":449,"end":460,"source":"'win32-x64'","value":{"kind":"string","value":"win32-x64"},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'win32-x64'. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"50:75:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":75,"source":"orcadAgentBrowserNativeName(\n platform,\n arch,\n target.endsWith('-musl') ? 'musl' : 'glibc'\n )","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":76,"end_line":76,"start":3357,"end":3365,"source":"platform","value":{"kind":"source-expression","source":"platform"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: platform. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":77,"end_line":77,"start":3375,"end":3379,"source":"arch","value":{"kind":"source-expression","source":"arch"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: arch. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/orcad-artifact-version.test.mjs","line":78,"end_line":78,"start":3389,"end":3432,"source":"target.endsWith('-musl') ? 'musl' : 'glibc'","value":{"kind":"source-expression","source":"target.endsWith('-musl') ? 'musl' : 'glibc'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: target.endsWith('-musl') ? 'musl' : 'glibc'. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"50:80:fixture-or-oracle-declaration:17","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":80,"source":"{ target, agentBrowserFilename }","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":80,"end_line":80,"start":3465,"end":3471,"source":"target","value":{"kind":"source-expression","source":"target"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: target. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":80,"end_line":80,"start":3473,"end":3493,"source":"agentBrowserFilename","value":{"kind":"source-expression","source":"agentBrowserFilename"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: agentBrowserFilename. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"50:81:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":81,"source":"computeOrcadFullVersion(dir, options)","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":81,"end_line":81,"start":3549,"end":3552,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":73,"end_line":73,"start":3204,"end":3235},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":62,"end_line":62,"start":2681,"end":2695},"resolved":{"kind":"string","value":"darwin-arm64"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":81,"end_line":81,"start":3554,"end":3561,"source":"options","value":{"kind":"reference","source":"options","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":80,"end_line":80,"start":3463,"end":3495},"resolved":{"kind":"object","value":[{"source":"target"},{"source":"agentBrowserFilename"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: options. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"50:82:inline-api-or-fixture-input:19","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":82,"source":"readOrcadArtifactIdentity(dir)","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":82,"end_line":82,"start":3629,"end":3632,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":73,"end_line":73,"start":3204,"end":3235},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":62,"end_line":62,"start":2681,"end":2695},"resolved":{"kind":"string","value":"darwin-arm64"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"50:84:inline-api-or-fixture-input:20","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":84,"source":"computeOrcadFullVersion(dir, options)","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":84,"end_line":84,"start":3749,"end":3752,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":73,"end_line":73,"start":3204,"end":3235},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":62,"end_line":62,"start":2681,"end":2695},"resolved":{"kind":"string","value":"darwin-arm64"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":84,"end_line":84,"start":3754,"end":3761,"source":"options","value":{"kind":"reference","source":"options","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":80,"end_line":80,"start":3463,"end":3495},"resolved":{"kind":"object","value":[{"source":"target"},{"source":"agentBrowserFilename"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: options. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"50:86:inline-api-or-fixture-input:21","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":86,"source":"readOrcadArtifactIdentity(dir)","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":86,"end_line":86,"start":3877,"end":3880,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":73,"end_line":73,"start":3204,"end":3235},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":62,"end_line":62,"start":2681,"end":2695},"resolved":{"kind":"string","value":"darwin-arm64"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"50:88:inline-api-or-fixture-input:22","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":88,"source":"computeOrcadFullVersion(dir, options)","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":88,"end_line":88,"start":3992,"end":3995,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":73,"end_line":73,"start":3204,"end":3235},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":62,"end_line":62,"start":2681,"end":2695},"resolved":{"kind":"string","value":"darwin-arm64"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":88,"end_line":88,"start":3997,"end":4004,"source":"options","value":{"kind":"reference","source":"options","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":80,"end_line":80,"start":3463,"end":3495},"resolved":{"kind":"object","value":[{"source":"target"},{"source":"agentBrowserFilename"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: options. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"50:89:inline-api-or-fixture-input:23","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":89,"source":"computeOrcadFullVersion(dir, options)","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":89,"end_line":89,"start":4066,"end":4069,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":73,"end_line":73,"start":3204,"end":3235},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":62,"end_line":62,"start":2681,"end":2695},"resolved":{"kind":"string","value":"darwin-arm64"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":89,"end_line":89,"start":4071,"end":4078,"source":"options","value":{"kind":"reference","source":"options","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":80,"end_line":80,"start":3463,"end":3495},"resolved":{"kind":"object","value":[{"source":"target"},{"source":"agentBrowserFilename"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: options. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]},{"control_id":"50:89:inline-api-or-fixture-input:24","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":89,"source":"readOrcadArtifactIdentity(dir)","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":89,"end_line":89,"start":4118,"end":4121,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":73,"end_line":73,"start":3204,"end":3235},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":62,"end_line":62,"start":2681,"end":2695},"resolved":{"kind":"string","value":"darwin-arm64"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}]}],"current_declaration":{"line":70,"title":"matches the installed %s identity with and without its optional browser","start":3058,"end":4133},"implementation_status":"retained"}],"lines":93,"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"tests_executed":false,"decision":"keep","rationale":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes.","planned_changes":[],"production_evidence":["config/scripts/orcad-artifact-version.mjs","src/main/orcad/orcad-artifact-identity.ts","src/shared/node-runtime-pin.ts","src/shared/orcad-agent-browser-name.ts","src/shared/orcad-artifacts.ts"],"evidence_inspection":{"selected_test_body":"complete original body, explicit tables and fixtures reviewed; current bytes equal pinned source","production_references":"direct imported dependencies and additional production contract references snapshotted below; relevant decision-producing implementations inspected; snapshot alone is not a full-file read claim"},"explicit_input_controls":[{"id":"50:17:fixture-or-oracle-declaration:1","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":17,"end_line":17,"start":737,"end":753,"source":"[]","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":17,"end_line":17,"start":751,"end":753},"binding":"directories","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:19:for-of:2","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":19,"end_line":21,"start":774,"end":882,"source":"directories.splice(0)","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":19,"end_line":19,"start":798,"end":819},"binding":"const directory","resolution":[],"dynamic_source":"directories.splice(0)","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:30:for-of:3","kind":"for-of","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":30,"end_line":34,"start":1171,"end":1429,"source":"orcadArtifactFilenames(target, [PAGE_ASSET])","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":30,"end_line":30,"start":1194,"end":1238},"binding":"const filename","resolution":[],"dynamic_source":"orcadArtifactFilenames(target, [PAGE_ASSET])","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes.","rows":[],"policy":"Runtime/generated control: exact source expression retained; repetitions are not additional declarations or measured executions.","implementation_rows":[],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:30:inline-api-or-fixture-input:4","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":30,"end_line":30,"start":1194,"end":1238,"source":"orcadArtifactFilenames(target, [PAGE_ASSET])","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":30,"end_line":30,"start":1194,"end":1238},"binding":"orcadArtifactFilenames","resolution":[],"enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes.","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":30,"end_line":30,"start":1217,"end":1223,"source":"target","value":{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":41,"end_line":41,"start":1686,"end":1703},"resolved":{"kind":"string","value":"linux-x64-glibc"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: target. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":30,"end_line":30,"start":1225,"end":1237,"source":"[PAGE_ASSET]","value":{"kind":"array","value":[{"kind":"reference","source":"PAGE_ASSET","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":24,"end_line":24,"start":906,"end":933},"resolved":{"kind":"string","value":"out/mobile-web/index.html"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: [PAGE_ASSET]. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:43:inline-api-or-fixture-input:5","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":43,"end_line":43,"start":1771,"end":1811,"source":"computeOrcadFullVersion(dir, { target })","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":43,"end_line":43,"start":1771,"end":1811},"binding":"computeOrcadFullVersion","resolution":[],"enclosing_case":{"line":40,"title":"changes when a shipped search binary changes and rejects a missing binary"},"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":43,"end_line":43,"start":1795,"end":1798,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":42,"end_line":42,"start":1720,"end":1751},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":41,"end_line":41,"start":1686,"end":1703},"resolved":{"kind":"string","value":"linux-x64-glibc"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":43,"end_line":43,"start":1800,"end":1810,"source":"{ target }","value":{"kind":"object","value":[{"source":"target"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { target }. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:44:inline-api-or-fixture-input:6","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":44,"end_line":44,"start":1841,"end":1869,"source":"orcadRipgrepArtifact(target)","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":44,"end_line":44,"start":1841,"end":1869},"binding":"orcadRipgrepArtifact","resolution":[],"enclosing_case":{"line":40,"title":"changes when a shipped search binary changes and rejects a missing binary"},"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":44,"end_line":44,"start":1862,"end":1868,"source":"target","value":{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":41,"end_line":41,"start":1686,"end":1703},"resolved":{"kind":"string","value":"linux-x64-glibc"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: target. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:46:inline-api-or-fixture-input:7","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":46,"end_line":46,"start":1926,"end":1966,"source":"computeOrcadFullVersion(dir, { target })","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":46,"end_line":46,"start":1926,"end":1966},"binding":"computeOrcadFullVersion","resolution":[],"enclosing_case":{"line":40,"title":"changes when a shipped search binary changes and rejects a missing binary"},"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":46,"end_line":46,"start":1950,"end":1953,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":42,"end_line":42,"start":1720,"end":1751},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":41,"end_line":41,"start":1686,"end":1703},"resolved":{"kind":"string","value":"linux-x64-glibc"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":46,"end_line":46,"start":1955,"end":1965,"source":"{ target }","value":{"kind":"object","value":[{"source":"target"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { target }. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:48:inline-api-or-fixture-input:8","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":48,"end_line":48,"start":2021,"end":2061,"source":"computeOrcadFullVersion(dir, { target })","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":48,"end_line":48,"start":2021,"end":2061},"binding":"computeOrcadFullVersion","resolution":[],"enclosing_case":{"line":40,"title":"changes when a shipped search binary changes and rejects a missing binary"},"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":48,"end_line":48,"start":2045,"end":2048,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":42,"end_line":42,"start":1720,"end":1751},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":41,"end_line":41,"start":1686,"end":1703},"resolved":{"kind":"string","value":"linux-x64-glibc"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":48,"end_line":48,"start":2050,"end":2060,"source":"{ target }","value":{"kind":"object","value":[{"source":"target"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { target }. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:48:inline-api-or-fixture-input:9","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":48,"end_line":48,"start":2071,"end":2099,"source":"orcadRipgrepArtifact(target)","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":48,"end_line":48,"start":2071,"end":2099},"binding":"orcadRipgrepArtifact","resolution":[],"enclosing_case":{"line":40,"title":"changes when a shipped search binary changes and rejects a missing binary"},"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":48,"end_line":48,"start":2092,"end":2098,"source":"target","value":{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":41,"end_line":41,"start":1686,"end":1703},"resolved":{"kind":"string","value":"linux-x64-glibc"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: target. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a shipped search binary changes and rejects a missing binary.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:54:inline-api-or-fixture-input:10","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":54,"end_line":54,"start":2287,"end":2327,"source":"computeOrcadFullVersion(dir, { target })","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":54,"end_line":54,"start":2287,"end":2327},"binding":"computeOrcadFullVersion","resolution":[],"enclosing_case":{"line":51,"title":"changes when a page asset changes and rejects a missing one"},"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a page asset changes and rejects a missing one.","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":54,"end_line":54,"start":2311,"end":2314,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":53,"end_line":53,"start":2236,"end":2267},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":52,"end_line":52,"start":2202,"end":2219},"resolved":{"kind":"string","value":"linux-x64-glibc"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a page asset changes and rejects a missing one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":54,"end_line":54,"start":2316,"end":2326,"source":"{ target }","value":{"kind":"object","value":[{"source":"target"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { target }. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a page asset changes and rejects a missing one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:56:inline-api-or-fixture-input:11","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":56,"end_line":56,"start":2396,"end":2436,"source":"computeOrcadFullVersion(dir, { target })","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":56,"end_line":56,"start":2396,"end":2436},"binding":"computeOrcadFullVersion","resolution":[],"enclosing_case":{"line":51,"title":"changes when a page asset changes and rejects a missing one"},"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a page asset changes and rejects a missing one.","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":56,"end_line":56,"start":2420,"end":2423,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":53,"end_line":53,"start":2236,"end":2267},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":52,"end_line":52,"start":2202,"end":2219},"resolved":{"kind":"string","value":"linux-x64-glibc"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a page asset changes and rejects a missing one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":56,"end_line":56,"start":2425,"end":2435,"source":"{ target }","value":{"kind":"object","value":[{"source":"target"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { target }. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a page asset changes and rejects a missing one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:58:inline-api-or-fixture-input:12","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":58,"end_line":58,"start":2506,"end":2546,"source":"computeOrcadFullVersion(dir, { target })","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":58,"end_line":58,"start":2506,"end":2546},"binding":"computeOrcadFullVersion","resolution":[],"enclosing_case":{"line":51,"title":"changes when a page asset changes and rejects a missing one"},"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a page asset changes and rejects a missing one.","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":58,"end_line":58,"start":2530,"end":2533,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":53,"end_line":53,"start":2236,"end":2267},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":52,"end_line":52,"start":2202,"end":2219},"resolved":{"kind":"string","value":"linux-x64-glibc"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a page asset changes and rejects a missing one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":58,"end_line":58,"start":2535,"end":2545,"source":"{ target }","value":{"kind":"object","value":[{"source":"target"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { target }. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: changes when a page asset changes and rejects a missing one.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:65:inline-api-or-fixture-input:13","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":65,"end_line":65,"start":2851,"end":2891,"source":"computeOrcadFullVersion(dir, { target })","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":65,"end_line":65,"start":2851,"end":2891},"binding":"computeOrcadFullVersion","resolution":[],"enclosing_case":{"line":61,"title":"keys the version on the referenced runtime digest rather than its bytes"},"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: keys the version on the referenced runtime digest rather than its bytes.","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":65,"end_line":65,"start":2875,"end":2878,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":63,"end_line":63,"start":2712,"end":2743},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":62,"end_line":62,"start":2681,"end":2695},"resolved":{"kind":"string","value":"darwin-arm64"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: keys the version on the referenced runtime digest rather than its bytes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":65,"end_line":65,"start":2880,"end":2890,"source":"{ target }","value":{"kind":"object","value":[{"source":"target"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { target }. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: keys the version on the referenced runtime digest rather than its bytes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:67:inline-api-or-fixture-input:14","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":67,"end_line":67,"start":2991,"end":3031,"source":"computeOrcadFullVersion(dir, { target })","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":67,"end_line":67,"start":2991,"end":3031},"binding":"computeOrcadFullVersion","resolution":[],"enclosing_case":{"line":61,"title":"keys the version on the referenced runtime digest rather than its bytes"},"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: keys the version on the referenced runtime digest rather than its bytes.","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":67,"end_line":67,"start":3015,"end":3018,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":63,"end_line":63,"start":2712,"end":2743},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":62,"end_line":62,"start":2681,"end":2695},"resolved":{"kind":"string","value":"darwin-arm64"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: keys the version on the referenced runtime digest rather than its bytes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":67,"end_line":67,"start":3020,"end":3030,"source":"{ target }","value":{"kind":"object","value":[{"source":"target"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: { target }. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: keys the version on the referenced runtime digest rather than its bytes.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:70:parameter-table:15","kind":"parameter-table","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":70,"end_line":91,"start":3058,"end":4133,"source":"SERVER_TARGETS","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":70,"end_line":70,"start":3066,"end":3080},"binding":"it.each","resolution":[{"name":"SERVER_TARGETS","path":"src/shared/node-runtime-pin.ts","line":8,"end_line":17,"start":308,"end":471,"declaration_position":{"path":"src/shared/node-runtime-pin.ts","line":8,"end_line":17,"start":291,"end":471},"source":"[\n 'darwin-arm64',\n 'darwin-x64',\n 'linux-arm64-glibc',\n 'linux-x64-glibc',\n 'linux-arm64-musl',\n 'linux-x64-musl',\n 'win32-arm64',\n 'win32-x64'\n] as const"}],"enclosing_case":{"line":70,"title":"matches the installed %s identity with and without its optional browser"},"affected_case_lines":[70],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","rows":[{"path":"src/shared/node-runtime-pin.ts","line":9,"end_line":9,"start":312,"end":326,"source":"'darwin-arm64'","value":{"kind":"string","value":"darwin-arm64"},"index":1,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'darwin-arm64'. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"src/shared/node-runtime-pin.ts","line":10,"end_line":10,"start":330,"end":342,"source":"'darwin-x64'","value":{"kind":"string","value":"darwin-x64"},"index":2,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'darwin-x64'. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"src/shared/node-runtime-pin.ts","line":11,"end_line":11,"start":346,"end":365,"source":"'linux-arm64-glibc'","value":{"kind":"string","value":"linux-arm64-glibc"},"index":3,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'linux-arm64-glibc'. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"src/shared/node-runtime-pin.ts","line":12,"end_line":12,"start":369,"end":386,"source":"'linux-x64-glibc'","value":{"kind":"string","value":"linux-x64-glibc"},"index":4,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'linux-x64-glibc'. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"src/shared/node-runtime-pin.ts","line":13,"end_line":13,"start":390,"end":408,"source":"'linux-arm64-musl'","value":{"kind":"string","value":"linux-arm64-musl"},"index":5,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'linux-arm64-musl'. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"src/shared/node-runtime-pin.ts","line":14,"end_line":14,"start":412,"end":428,"source":"'linux-x64-musl'","value":{"kind":"string","value":"linux-x64-musl"},"index":6,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'linux-x64-musl'. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"src/shared/node-runtime-pin.ts","line":15,"end_line":15,"start":432,"end":445,"source":"'win32-arm64'","value":{"kind":"string","value":"win32-arm64"},"index":7,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'win32-arm64'. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"path":"src/shared/node-runtime-pin.ts","line":16,"end_line":16,"start":449,"end":460,"source":"'win32-x64'","value":{"kind":"string","value":"win32-x64"},"index":8,"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original parameter-table control: 'win32-x64'. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":4,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":5,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":6,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":7,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":8,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:75:inline-api-or-fixture-input:16","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":75,"end_line":79,"start":3320,"end":3440,"source":"orcadAgentBrowserNativeName(\n platform,\n arch,\n target.endsWith('-musl') ? 'musl' : 'glibc'\n )","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":75,"end_line":79,"start":3320,"end":3440},"binding":"orcadAgentBrowserNativeName","resolution":[],"enclosing_case":{"line":70,"title":"matches the installed %s identity with and without its optional browser"},"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":76,"end_line":76,"start":3357,"end":3365,"source":"platform","value":{"kind":"source-expression","source":"platform"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: platform. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":77,"end_line":77,"start":3375,"end":3379,"source":"arch","value":{"kind":"source-expression","source":"arch"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: arch. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":3,"path":"config/scripts/orcad-artifact-version.test.mjs","line":78,"end_line":78,"start":3389,"end":3432,"source":"target.endsWith('-musl') ? 'musl' : 'glibc'","value":{"kind":"source-expression","source":"target.endsWith('-musl') ? 'musl' : 'glibc'"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: target.endsWith('-musl') ? 'musl' : 'glibc'. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":3,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:80:fixture-or-oracle-declaration:17","kind":"fixture-or-oracle-declaration","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":80,"end_line":80,"start":3453,"end":3495,"source":"{ target, agentBrowserFilename }","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":80,"end_line":80,"start":3463,"end":3495},"binding":"options","resolution":[],"enclosing_case":{"line":70,"title":"matches the installed %s identity with and without its optional browser"},"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":80,"end_line":80,"start":3465,"end":3471,"source":"target","value":{"kind":"source-expression","source":"target"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: target. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":80,"end_line":80,"start":3473,"end":3493,"source":"agentBrowserFilename","value":{"kind":"source-expression","source":"agentBrowserFilename"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original fixture-or-oracle-declaration control: agentBrowserFilename. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:81:inline-api-or-fixture-input:18","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":81,"end_line":81,"start":3525,"end":3562,"source":"computeOrcadFullVersion(dir, options)","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":81,"end_line":81,"start":3525,"end":3562},"binding":"computeOrcadFullVersion","resolution":[],"enclosing_case":{"line":70,"title":"matches the installed %s identity with and without its optional browser"},"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":81,"end_line":81,"start":3549,"end":3552,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":73,"end_line":73,"start":3204,"end":3235},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":62,"end_line":62,"start":2681,"end":2695},"resolved":{"kind":"string","value":"darwin-arm64"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":81,"end_line":81,"start":3554,"end":3561,"source":"options","value":{"kind":"reference","source":"options","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":80,"end_line":80,"start":3463,"end":3495},"resolved":{"kind":"object","value":[{"source":"target"},{"source":"agentBrowserFilename"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: options. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:82:inline-api-or-fixture-input:19","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":82,"end_line":82,"start":3603,"end":3633,"source":"readOrcadArtifactIdentity(dir)","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":82,"end_line":82,"start":3603,"end":3633},"binding":"readOrcadArtifactIdentity","resolution":[],"enclosing_case":{"line":70,"title":"matches the installed %s identity with and without its optional browser"},"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":82,"end_line":82,"start":3629,"end":3632,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":73,"end_line":73,"start":3204,"end":3235},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":62,"end_line":62,"start":2681,"end":2695},"resolved":{"kind":"string","value":"darwin-arm64"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:84:inline-api-or-fixture-input:20","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":84,"end_line":84,"start":3725,"end":3762,"source":"computeOrcadFullVersion(dir, options)","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":84,"end_line":84,"start":3725,"end":3762},"binding":"computeOrcadFullVersion","resolution":[],"enclosing_case":{"line":70,"title":"matches the installed %s identity with and without its optional browser"},"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":84,"end_line":84,"start":3749,"end":3752,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":73,"end_line":73,"start":3204,"end":3235},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":62,"end_line":62,"start":2681,"end":2695},"resolved":{"kind":"string","value":"darwin-arm64"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":84,"end_line":84,"start":3754,"end":3761,"source":"options","value":{"kind":"reference","source":"options","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":80,"end_line":80,"start":3463,"end":3495},"resolved":{"kind":"object","value":[{"source":"target"},{"source":"agentBrowserFilename"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: options. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:86:inline-api-or-fixture-input:21","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":86,"end_line":86,"start":3851,"end":3881,"source":"readOrcadArtifactIdentity(dir)","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":86,"end_line":86,"start":3851,"end":3881},"binding":"readOrcadArtifactIdentity","resolution":[],"enclosing_case":{"line":70,"title":"matches the installed %s identity with and without its optional browser"},"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":86,"end_line":86,"start":3877,"end":3880,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":73,"end_line":73,"start":3204,"end":3235},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":62,"end_line":62,"start":2681,"end":2695},"resolved":{"kind":"string","value":"darwin-arm64"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:88:inline-api-or-fixture-input:22","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":88,"end_line":88,"start":3968,"end":4005,"source":"computeOrcadFullVersion(dir, options)","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":88,"end_line":88,"start":3968,"end":4005},"binding":"computeOrcadFullVersion","resolution":[],"enclosing_case":{"line":70,"title":"matches the installed %s identity with and without its optional browser"},"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":88,"end_line":88,"start":3992,"end":3995,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":73,"end_line":73,"start":3204,"end":3235},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":62,"end_line":62,"start":2681,"end":2695},"resolved":{"kind":"string","value":"darwin-arm64"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":88,"end_line":88,"start":3997,"end":4004,"source":"options","value":{"kind":"reference","source":"options","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":80,"end_line":80,"start":3463,"end":3495},"resolved":{"kind":"object","value":[{"source":"target"},{"source":"agentBrowserFilename"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: options. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:89:inline-api-or-fixture-input:23","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":89,"end_line":89,"start":4042,"end":4079,"source":"computeOrcadFullVersion(dir, options)","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":89,"end_line":89,"start":4042,"end":4079},"binding":"computeOrcadFullVersion","resolution":[],"enclosing_case":{"line":70,"title":"matches the installed %s identity with and without its optional browser"},"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":89,"end_line":89,"start":4066,"end":4069,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":73,"end_line":73,"start":3204,"end":3235},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":62,"end_line":62,"start":2681,"end":2695},"resolved":{"kind":"string","value":"darwin-arm64"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}},{"index":2,"path":"config/scripts/orcad-artifact-version.test.mjs","line":89,"end_line":89,"start":4071,"end":4078,"source":"options","value":{"kind":"reference","source":"options","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":80,"end_line":80,"start":3463,"end":3495},"resolved":{"kind":"object","value":[{"source":"target"},{"source":"agentBrowserFilename"}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: options. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."},{"index":2,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}},{"id":"50:89:inline-api-or-fixture-input:24","kind":"inline-api-or-fixture-input","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"config/scripts/orcad-artifact-version.test.mjs","line":89,"end_line":89,"start":4092,"end":4122,"source":"readOrcadArtifactIdentity(dir)","input_position":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":89,"end_line":89,"start":4092,"end":4122},"binding":"readOrcadArtifactIdentity","resolution":[],"enclosing_case":{"line":70,"title":"matches the installed %s identity with and without its optional browser"},"affected_case_lines":[],"decision":"keep","reason":"Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","rows":[{"index":1,"path":"config/scripts/orcad-artifact-version.test.mjs","line":89,"end_line":89,"start":4118,"end":4121,"source":"dir","value":{"kind":"reference","source":"dir","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":73,"end_line":73,"start":3204,"end":3235},"resolved":{"kind":"call-source","callee":"createArtifactDirectory","arguments":[{"kind":"reference","source":"target","resolved_at":{"path":"config/scripts/orcad-artifact-version.test.mjs","line":62,"end_line":62,"start":2681,"end":2695},"resolved":{"kind":"string","value":"darwin-arm64"}}],"source":"createArtifactDirectory(target)"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","decision":"keep","reason":"Retain this exact original inline-api-or-fixture-input control: dir. Actual build-version and installed-identity readers run on filesystem fixtures across SERVER_TARGETS; content mutations/missing files and optional-browser changes have explicit independent digest-change/rejection outcomes. Scenario: matches the installed %s identity with and without its optional browser.","implementation":{"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}}],"implementation_rows":[{"index":1,"disposition":"retained","source_match":"exact","reason":"Original exact input/oracle source survives in its corresponding current case or the shared fixture declaration."}],"implementation":{"all_original_row_occurrences_attributed":true,"current_file_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e"}}],"original_review_sha256":"2913aee171f4774e250e8eb69772d119f136ddf5af1c8fdf6c92064ecc7b8d75","reviewer":"audit_config","reviewed_sha256":"1719290765653c08b356a7efd4843f27ea69e237d906f569afa400785f87841e","implementation_status":"retained","manual_validation_executed":false,"validation":"reviews/config-0007-validation.json","validation_summary":"Original/current file bytes match; full source/fixtures/tables reviewed. No separate runtime claim for this unchanged file.","validation_attempt_history":[],"implementation_evidence":{"original_source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_snapshot":"/tmp/orca-config-0007-originals/config/scripts/orcad-artifact-version.test.mjs","final_declarations":4,"current_controls":{"path":"config/scripts/orcad-artifact-version.test.mjs","each":[{"input":{"path":"config/scripts/orcad-artifact-version.test.mjs","start":3066,"end":3080,"line":70,"end_line":70,"source":"SERVER_TARGETS"},"rows":[{"path":"src/shared/node-runtime-pin.ts","start":312,"end":326,"line":9,"end_line":9,"source":"'darwin-arm64'"},{"path":"src/shared/node-runtime-pin.ts","start":330,"end":342,"line":10,"end_line":10,"source":"'darwin-x64'"},{"path":"src/shared/node-runtime-pin.ts","start":346,"end":365,"line":11,"end_line":11,"source":"'linux-arm64-glibc'"},{"path":"src/shared/node-runtime-pin.ts","start":369,"end":386,"line":12,"end_line":12,"source":"'linux-x64-glibc'"},{"path":"src/shared/node-runtime-pin.ts","start":390,"end":408,"line":13,"end_line":13,"source":"'linux-arm64-musl'"},{"path":"src/shared/node-runtime-pin.ts","start":412,"end":428,"line":14,"end_line":14,"source":"'linux-x64-musl'"},{"path":"src/shared/node-runtime-pin.ts","start":432,"end":445,"line":15,"end_line":15,"source":"'win32-arm64'"},{"path":"src/shared/node-runtime-pin.ts","start":449,"end":460,"line":16,"end_line":16,"source":"'win32-x64'"}]}],"for_of":[{"path":"config/scripts/orcad-artifact-version.test.mjs","start":798,"end":819,"line":19,"end_line":19,"source":"directories.splice(0)","binding":"const directory","changed":false},{"path":"config/scripts/orcad-artifact-version.test.mjs","start":1194,"end":1238,"line":30,"end_line":30,"source":"orcadArtifactFilenames(target, [PAGE_ASSET])","binding":"const filename","changed":false}],"literal_nodes_without_original_source_match":[]},"mutations":[]},"implemented_changes":[],"manual_implementation_notes":[],"evidence":["config/scripts/orcad-artifact-version.mjs","src/main/orcad/orcad-artifact-identity.ts","src/shared/node-runtime-pin.ts","src/shared/orcad-agent-browser-name.ts","src/shared/orcad-artifacts.ts"],"runtime_validation":[]}
diff --git a/docs/audits/test-value/reviews/main-0001-validation.json b/docs/audits/test-value/reviews/main-0001-validation.json
new file mode 100644
index 00000000000..4a9e522dd78
--- /dev/null
+++ b/docs/audits/test-value/reviews/main-0001-validation.json
@@ -0,0 +1,2284 @@
+{
+ "batch": "main-0001",
+ "reviewer": "audit_cloud",
+ "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a",
+ "reviewed_files": 51,
+ "selected_original_files": 50,
+ "additional_changed_auxiliary_files": 1,
+ "selected_support_files_without_cases": 2,
+ "additional_support_files_without_cases": 1,
+ "original_declarations": 311,
+ "case_records": 311,
+ "final_selected_declarations": 304,
+ "original_parameter_tables": 44,
+ "explicit_parameter_rows": 142,
+ "original_selected_loops": 33,
+ "additional_shared_replay_loops": 2,
+ "current_selected_loops": 34,
+ "decisions": {
+ "keep": 269,
+ "fix": 35,
+ "consolidate": 4,
+ "remove": 3
+ },
+ "parameter_row_decisions": {
+ "keep": 123,
+ "fix": 9,
+ "remove": 10
+ },
+ "production_changes": false,
+ "implementation_proposals_completed": 51,
+ "normal_runtime": {
+ "report": "restored-final.json",
+ "command": "restored-final-command.json",
+ "additional_final_assertion_control": "child-transfer-final-corrected.json",
+ "test_files": 50,
+ "total": 404,
+ "passed": 404,
+ "failed": 0,
+ "skipped": 0,
+ "selected_tests": 393,
+ "additional_replay_tests": 11,
+ "original_static_expanded_cases": 409,
+ "current_static_expanded_selected_cases": 393,
+ "all_seven_shared_replay_consumers_executed": true,
+ "additional_replay_consumer_cases": 11,
+ "final_child_work_control": {
+ "passed": 14,
+ "failed": 0,
+ "report": "child-transfer-final-corrected.json",
+ "reason": "Adds explicit settled host membership to both transferred capture assertions after full restored run."
+ },
+ "final_comment_cleanup": {
+ "path": "src/main/acp/acp-structured-launch-resolution.test.ts",
+ "change": "Removed orphan full-access mode inventory comment and adjacent blank line after its table was removed.",
+ "logic_changed": false,
+ "verification": "format-orphan-cleanup-final-command.json",
+ "runtime_rerun": "Not required: comment/whitespace-only cleanup requested by parent after complete normal validation."
+ },
+ "count_limits": "Source declarations, parameter/loop rows and runtime results are separate counts. Two selected support fixtures and the added shared support file have zero invented runnable cases."
+ },
+ "scope_reconciliation": {
+ "original_proposal_paths": 30,
+ "selected_transfer_destination": "src/main/acp/acp-structured-child-work.test.ts",
+ "added_shared_dependency": "src/main/acp/acp-structured-fixture-replay.test-support.ts",
+ "intended_paths_count": 32,
+ "actual_modified_paths_count": 31,
+ "modified_selected_files": 30,
+ "modified_auxiliary_files": 1,
+ "unchanged_intended_path": "src/main/acp/acp-structured-omp-recordings.test.ts",
+ "reason": "The original OMP recording proposal is implemented in shared replay support; its selected test source remains byte-for-byte original. The child-work destination is selected and modified, so 30 proposal paths +1 destination +1 shared dependency =32 intended, less1 unchanged recording path =31 modified.",
+ "fully_reconciled": true,
+ "intended_paths": [
+ "src/main/acp/acp-conversation-copy.test.ts",
+ "src/main/acp/acp-dialects/omp-dialect.test.ts",
+ "src/main/acp/acp-fixture-privacy.test.ts",
+ "src/main/acp/acp-model-catalog-probe.test.ts",
+ "src/main/acp/acp-prompt-content.test.ts",
+ "src/main/acp/acp-recovery-history.test.ts",
+ "src/main/acp/acp-session-events.test.ts",
+ "src/main/acp/acp-session-lifecycle.test.ts",
+ "src/main/acp/acp-session-runtime.test.ts",
+ "src/main/acp/acp-structured-antigravity.test.ts",
+ "src/main/acp/acp-structured-auth.test.ts",
+ "src/main/acp/acp-structured-background-task-stop.test.ts",
+ "src/main/acp/acp-structured-broken-stream.test.ts",
+ "src/main/acp/acp-structured-child-stop.test.ts",
+ "src/main/acp/acp-structured-child-work-admission.test.ts",
+ "src/main/acp/acp-structured-child-work.test.ts",
+ "src/main/acp/acp-structured-compaction.test.ts",
+ "src/main/acp/acp-structured-context-clear.test.ts",
+ "src/main/acp/acp-structured-electron-free.test.ts",
+ "src/main/acp/acp-structured-fixture-replay.test-support.ts",
+ "src/main/acp/acp-structured-grok-subagent-recordings.test.ts",
+ "src/main/acp/acp-structured-host-live-listing.test.ts",
+ "src/main/acp/acp-structured-host-option-hang.test.ts",
+ "src/main/acp/acp-structured-host-restore-failed.test.ts",
+ "src/main/acp/acp-structured-host-start-aborts.test.ts",
+ "src/main/acp/acp-structured-host-stop.test.ts",
+ "src/main/acp/acp-structured-launch-resolution-opencode.test.ts",
+ "src/main/acp/acp-structured-launch-resolution.test.ts",
+ "src/main/acp/acp-structured-launch-visuals.test.ts",
+ "src/main/acp/acp-structured-mail-admission.test.ts",
+ "src/main/acp/acp-structured-managed-runtime.test.ts",
+ "src/main/acp/acp-structured-omp-recordings.test.ts"
+ ],
+ "actual_modified_paths": [
+ "src/main/acp/acp-conversation-copy.test.ts",
+ "src/main/acp/acp-dialects/omp-dialect.test.ts",
+ "src/main/acp/acp-fixture-privacy.test.ts",
+ "src/main/acp/acp-model-catalog-probe.test.ts",
+ "src/main/acp/acp-prompt-content.test.ts",
+ "src/main/acp/acp-recovery-history.test.ts",
+ "src/main/acp/acp-session-events.test.ts",
+ "src/main/acp/acp-session-lifecycle.test.ts",
+ "src/main/acp/acp-session-runtime.test.ts",
+ "src/main/acp/acp-structured-antigravity.test.ts",
+ "src/main/acp/acp-structured-auth.test.ts",
+ "src/main/acp/acp-structured-background-task-stop.test.ts",
+ "src/main/acp/acp-structured-broken-stream.test.ts",
+ "src/main/acp/acp-structured-child-stop.test.ts",
+ "src/main/acp/acp-structured-child-work-admission.test.ts",
+ "src/main/acp/acp-structured-child-work.test.ts",
+ "src/main/acp/acp-structured-compaction.test.ts",
+ "src/main/acp/acp-structured-context-clear.test.ts",
+ "src/main/acp/acp-structured-electron-free.test.ts",
+ "src/main/acp/acp-structured-grok-subagent-recordings.test.ts",
+ "src/main/acp/acp-structured-host-live-listing.test.ts",
+ "src/main/acp/acp-structured-host-option-hang.test.ts",
+ "src/main/acp/acp-structured-host-restore-failed.test.ts",
+ "src/main/acp/acp-structured-host-start-aborts.test.ts",
+ "src/main/acp/acp-structured-host-stop.test.ts",
+ "src/main/acp/acp-structured-launch-resolution-opencode.test.ts",
+ "src/main/acp/acp-structured-launch-resolution.test.ts",
+ "src/main/acp/acp-structured-launch-visuals.test.ts",
+ "src/main/acp/acp-structured-mail-admission.test.ts",
+ "src/main/acp/acp-structured-managed-runtime.test.ts",
+ "src/main/acp/acp-structured-fixture-replay.test-support.ts"
+ ],
+ "working_diff_matches_modified_scope": true
+ },
+ "shared_support_discovery": {
+ "path": "src/main/acp/acp-structured-fixture-replay.test-support.ts",
+ "original_sha256": "18ca0b27aec30b6ae51b5df5899eee5d614c5e88af6c799bed9248a861b54eb9",
+ "tracked_at_original": true,
+ "original_inventory_entry": null,
+ "original_review_matches": [],
+ "current_inventory_entry": null,
+ "current_review_matches": [],
+ "named_pattern_matches": false,
+ "auxiliary_pattern_matches": false,
+ "explanation": "The tracked .test-support.ts basename matches neither .test. test names nor the current auxiliary directory/name patterns, and has no recognized declarations. Explicit review adds it to refresh through reviews.has(path)."
+ },
+ "checks": [
+ {
+ "label": "child-transfer-final",
+ "command": [
+ "pnpm",
+ "test",
+ "src/main/acp/acp-structured-child-work.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-main-0001-implementation/child-transfer-final.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "started_at": 1792768022.7443027,
+ "exit_code": 1,
+ "finished_at": 1792768028.9582915,
+ "result": "failed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/child-transfer-final-command.json",
+ "command_artifact_sha256": "a4f162718cbfc781f29ba561a6df385fd5d03c3944c3984b3e227b4255681215",
+ "log": "/tmp/orca-main-0001-implementation/child-transfer-final.log",
+ "log_sha256": "e1ceb8618f556bf0ec7aa1d101922931741e24280f2d2c7c65cc1f80e338019c",
+ "report": "/tmp/orca-main-0001-implementation/child-transfer-final.json",
+ "report_sha256": "f4e06a9ee73d22fd5756a855554e93b38024240148ab890acbea3e98f829f769",
+ "test_files": 1,
+ "runtime_total": 14,
+ "passed": 12,
+ "failed": 2,
+ "skipped": 0,
+ "failures": [
+ {
+ "title": "Grok roster evidence through the existing host child store publishes the production s7-subagent-foreground recording through the same host readers",
+ "messages": [
+ "AssertionError: expected [ { \u2026(13) } ] to match object [ { providerId: 'subagent-1', \u2026(4) } ]\n(10 matching properties omitted from actual)\n at Proxy. (file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/index.aTZaPVhf.js:2066:10)\n at Proxy. (file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/index.aTZaPVhf.js:1958:14)\n at Proxy.methodWrapper (file:///home/neil/.local/share/pnpm/store/v11/links/@/chai/6.3.0/25b5fcf6626be1440275f25f04f4b64170f3760bb1da107f5691c470b8dd65d1/node_modules/chai/index.js:1737:25)\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-structured-child-work.test.ts:150:31\n at runNextTicks (node:internal/process/task_queues:65:5)\n at process.processTimers (node:internal/timers:615:9)\n at async file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:20"
+ ]
+ },
+ {
+ "title": "Grok roster evidence through the existing host child store publishes the production s7-subagent-background recording through the same host readers",
+ "messages": [
+ "AssertionError: expected [ { \u2026(13) } ] to match object [ { providerId: 'subagent-1', \u2026(3) } ]\n(11 matching properties omitted from actual)\n at Proxy. (file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/index.aTZaPVhf.js:2066:10)\n at Proxy. (file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/index.aTZaPVhf.js:1958:14)\n at Proxy.methodWrapper (file:///home/neil/.local/share/pnpm/store/v11/links/@/chai/6.3.0/25b5fcf6626be1440275f25f04f4b64170f3760bb1da107f5691c470b8dd65d1/node_modules/chai/index.js:1737:25)\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-structured-child-work.test.ts:150:31\n at runNextTicks (node:internal/process/task_queues:65:5)\n at process.processTimers (node:internal/timers:615:9)\n at async file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:20"
+ ]
+ }
+ ],
+ "evidence_phase": "historical normal/format failure, corrected before final delivery",
+ "correction": "The membership expectation used ended; the domain state is settled. Corrected final assertion and all14 child-work cases pass in child-transfer-final-corrected."
+ },
+ {
+ "label": "child-transfer-final-corrected",
+ "command": [
+ "pnpm",
+ "test",
+ "src/main/acp/acp-structured-child-work.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-main-0001-implementation/child-transfer-final-corrected.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "started_at": 1792768083.7096653,
+ "exit_code": 0,
+ "finished_at": 1792768089.804262,
+ "result": "passed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/child-transfer-final-corrected-command.json",
+ "command_artifact_sha256": "8bba4352f3418e3b9cd3e4994010e5b9d91012ebdda64579716d62551bd9af22",
+ "log": "/tmp/orca-main-0001-implementation/child-transfer-final-corrected.log",
+ "log_sha256": "514df907846a2b63f79ec61dca48c09c98cfa346f4b9fc37370f77aa8d0ca539",
+ "report": "/tmp/orca-main-0001-implementation/child-transfer-final-corrected.json",
+ "report_sha256": "040fbb75615e13754b8de34cdfecff3e1e9aa3a88290e3f306b5cf75fff975f4",
+ "test_files": 1,
+ "runtime_total": 14,
+ "passed": 14,
+ "failed": 0,
+ "skipped": 0,
+ "failures": [],
+ "evidence_phase": "final passing normal/static evidence"
+ },
+ {
+ "label": "copy-corrected-control",
+ "command": [
+ "pnpm",
+ "test",
+ "src/main/acp/acp-conversation-copy.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-main-0001-implementation/copy-corrected-control.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "started_at": 1792767716.8639045,
+ "exit_code": 0,
+ "finished_at": 1792767721.3173056,
+ "result": "passed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/copy-corrected-control-command.json",
+ "command_artifact_sha256": "7cc1b42b79eb0e1dce7a58b22de4bafbb1315642507ae060b2465d78049c549d",
+ "log": "/tmp/orca-main-0001-implementation/copy-corrected-control.log",
+ "log_sha256": "873ccf2e988d25b19fbaa0fd342abadf1c261bd8bd848873d5c43e66c0b7c4d9",
+ "report": "/tmp/orca-main-0001-implementation/copy-corrected-control.json",
+ "report_sha256": "4b3288253bde22c22a0500290c14ea0ca0c01fb2d97408e8c3d77585f4ca2051",
+ "test_files": 1,
+ "runtime_total": 6,
+ "passed": 6,
+ "failed": 0,
+ "skipped": 0,
+ "failures": [],
+ "evidence_phase": "final passing normal/static evidence"
+ },
+ {
+ "label": "corrected-runtime",
+ "command": [
+ "pnpm",
+ "test",
+ "src/main/acp/acp-dialects/omp-dialect.test.ts",
+ "src/main/acp/acp-structured-child-work.test.ts",
+ "src/main/acp/acp-structured-child-work-admission.test.ts",
+ "src/main/acp/acp-structured-host-stop.test.ts",
+ "src/main/acp/acp-structured-opencode-recordings.test.ts",
+ "src/main/acp/acp-session-lifecycle.test.ts",
+ "src/main/acp/acp-structured-antigravity.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-main-0001-implementation/corrected-runtime.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "started_at": 1792767102.0781431,
+ "exit_code": 1,
+ "finished_at": 1792767121.6290267,
+ "result": "failed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/corrected-runtime-command.json",
+ "command_artifact_sha256": "e801e6ec03a9853cad40a8518868f12ddb0a63d0a3d6ebe8833bda70fd09f9a0",
+ "log": "/tmp/orca-main-0001-implementation/corrected-runtime.log",
+ "log_sha256": "14a7ab83322153aa58bd74df68026d5b6eb7926cf79082ee4d8322a31d22b0b4",
+ "report": "/tmp/orca-main-0001-implementation/corrected-runtime.json",
+ "report_sha256": "8d489d1de02db83413f8bc73aafdd32d6a7f026237dd493c45dbc5477df79a73",
+ "test_files": 7,
+ "runtime_total": 73,
+ "passed": 72,
+ "failed": 1,
+ "skipped": 0,
+ "failures": [
+ {
+ "title": "a Grok chat Stop ends Grok at the grace when Grok never reads the cancel, never waiting on its write",
+ "messages": [
+ "AssertionError: expected false to be true // Object.is equality\n at native\n at checkCallback (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/index.aTZaPVhf.js:7182:20)",
+ "Error: agent session host teardown phase did not finish within 8000ms\n at withPhaseTimeout (/home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/native-chat/agent-session-wire/structured-agent-session-host-teardown.ts:50:11)\n at tearDownStructuredAgentSessionHost (/home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/native-chat/agent-session-wire/structured-agent-session-host-teardown.ts:121:19)\n at flushStructuredAgentSessionHost (/home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/native-chat/agent-session-wire/structured-agent-session-host-teardown.ts:165:9)"
+ ]
+ }
+ ],
+ "evidence_phase": "historical normal/format failure, corrected before final delivery"
+ },
+ {
+ "label": "eof-and-deadline",
+ "command": [
+ "pnpm",
+ "test",
+ "src/main/acp/acp-structured-broken-stream.test.ts",
+ "src/main/acp/acp-structured-host-stop.test.ts",
+ "src/main/acp/acp-structured-child-stop.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-main-0001-implementation/eof-and-deadline.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "started_at": 1792767197.1460023,
+ "exit_code": 0,
+ "finished_at": 1792767202.9095886,
+ "result": "passed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/eof-and-deadline-command.json",
+ "command_artifact_sha256": "affb904bbf75da246f86915210a06ba4a165455aa73290df0a24adb503171778",
+ "log": "/tmp/orca-main-0001-implementation/eof-and-deadline.log",
+ "log_sha256": "a57e18cf26703f00b13ac286bd3b7c0e0ec8051b5427cf34e73ffdf3037528f0",
+ "report": "/tmp/orca-main-0001-implementation/eof-and-deadline.json",
+ "report_sha256": "5f90519a7d3ee3c9f2458a14639f096aa3ee36b2797b00940e6e489de71bcab4",
+ "test_files": 3,
+ "runtime_total": 27,
+ "passed": 27,
+ "failed": 0,
+ "skipped": 0,
+ "failures": [],
+ "evidence_phase": "final passing normal/static evidence"
+ },
+ {
+ "label": "format-corrected",
+ "command": [
+ "pnpm",
+ "exec",
+ "oxfmt",
+ "--write",
+ "src/main/acp/acp-conversation-copy.test.ts",
+ "src/main/acp/acp-dialects/omp-dialect.test.ts",
+ "src/main/acp/acp-fixture-privacy.test.ts",
+ "src/main/acp/acp-model-catalog-probe.test.ts",
+ "src/main/acp/acp-prompt-content.test.ts",
+ "src/main/acp/acp-recovery-history.test.ts",
+ "src/main/acp/acp-session-events.test.ts",
+ "src/main/acp/acp-session-lifecycle.test.ts",
+ "src/main/acp/acp-session-runtime.test.ts",
+ "src/main/acp/acp-structured-antigravity.test.ts",
+ "src/main/acp/acp-structured-auth.test.ts",
+ "src/main/acp/acp-structured-background-task-stop.test.ts",
+ "src/main/acp/acp-structured-broken-stream.test.ts",
+ "src/main/acp/acp-structured-child-stop.test.ts",
+ "src/main/acp/acp-structured-child-work-admission.test.ts",
+ "src/main/acp/acp-structured-child-work.test.ts",
+ "src/main/acp/acp-structured-compaction.test.ts",
+ "src/main/acp/acp-structured-context-clear.test.ts",
+ "src/main/acp/acp-structured-electron-free.test.ts",
+ "src/main/acp/acp-structured-fixture-replay.test-support.ts",
+ "src/main/acp/acp-structured-grok-subagent-recordings.test.ts",
+ "src/main/acp/acp-structured-host-live-listing.test.ts",
+ "src/main/acp/acp-structured-host-option-hang.test.ts",
+ "src/main/acp/acp-structured-host-restore-failed.test.ts",
+ "src/main/acp/acp-structured-host-start-aborts.test.ts",
+ "src/main/acp/acp-structured-host-stop.test.ts",
+ "src/main/acp/acp-structured-launch-resolution-opencode.test.ts",
+ "src/main/acp/acp-structured-launch-resolution.test.ts",
+ "src/main/acp/acp-structured-launch-visuals.test.ts",
+ "src/main/acp/acp-structured-mail-admission.test.ts",
+ "src/main/acp/acp-structured-managed-runtime.test.ts",
+ "src/main/acp/acp-structured-omp-recordings.test.ts"
+ ],
+ "started_at": 1792767232.3301373,
+ "finished_at": 1792767232.4360223,
+ "exit_code": 0,
+ "result": "passed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/format-corrected-command.json",
+ "command_artifact_sha256": "24988f88927df55a46fd0d1dafe6c507a526879fb1aab1a26a785d6a5179c7f3",
+ "log": "/tmp/orca-main-0001-implementation/format-corrected.log",
+ "log_sha256": "9b15cd11902e79f8cb9e2413926f1c367bf0bf1c7ba91076e9db3a0083a9e430",
+ "evidence_phase": "final passing normal/static evidence"
+ },
+ {
+ "label": "format-delivery",
+ "command": [
+ "pnpm",
+ "exec",
+ "oxfmt",
+ "--check",
+ "src/main/acp/acp-conversation-copy.test.ts",
+ "src/main/acp/acp-dialects/omp-dialect.test.ts",
+ "src/main/acp/acp-fixture-privacy.test.ts",
+ "src/main/acp/acp-model-catalog-probe.test.ts",
+ "src/main/acp/acp-prompt-content.test.ts",
+ "src/main/acp/acp-recovery-history.test.ts",
+ "src/main/acp/acp-session-events.test.ts",
+ "src/main/acp/acp-session-lifecycle.test.ts",
+ "src/main/acp/acp-session-runtime.test.ts",
+ "src/main/acp/acp-structured-antigravity.test.ts",
+ "src/main/acp/acp-structured-auth.test.ts",
+ "src/main/acp/acp-structured-background-task-stop.test.ts",
+ "src/main/acp/acp-structured-broken-stream.test.ts",
+ "src/main/acp/acp-structured-child-stop.test.ts",
+ "src/main/acp/acp-structured-child-work-admission.test.ts",
+ "src/main/acp/acp-structured-child-work.test.ts",
+ "src/main/acp/acp-structured-compaction.test.ts",
+ "src/main/acp/acp-structured-context-clear.test.ts",
+ "src/main/acp/acp-structured-electron-free.test.ts",
+ "src/main/acp/acp-structured-fixture-replay.test-support.ts",
+ "src/main/acp/acp-structured-grok-subagent-recordings.test.ts",
+ "src/main/acp/acp-structured-host-live-listing.test.ts",
+ "src/main/acp/acp-structured-host-option-hang.test.ts",
+ "src/main/acp/acp-structured-host-restore-failed.test.ts",
+ "src/main/acp/acp-structured-host-start-aborts.test.ts",
+ "src/main/acp/acp-structured-host-stop.test.ts",
+ "src/main/acp/acp-structured-launch-resolution-opencode.test.ts",
+ "src/main/acp/acp-structured-launch-resolution.test.ts",
+ "src/main/acp/acp-structured-launch-visuals.test.ts",
+ "src/main/acp/acp-structured-mail-admission.test.ts",
+ "src/main/acp/acp-structured-managed-runtime.test.ts",
+ "src/main/acp/acp-structured-omp-recordings.test.ts"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "started_at": 1792768179.3646827,
+ "exit_code": 0,
+ "finished_at": 1792768179.4642882,
+ "result": "passed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/format-delivery-command.json",
+ "command_artifact_sha256": "01abe2f88c7c208b9fa8e892b6921990e8a213af9930c60b2e5d9b505e1d18f4",
+ "log": "/tmp/orca-main-0001-implementation/format-delivery.log",
+ "log_sha256": "b481a95f79d06ea97adaf251c83ab147599219bda314e2354b7bf4aad37e775b",
+ "evidence_phase": "final passing normal/static evidence"
+ },
+ {
+ "label": "format-final",
+ "command": [
+ "pnpm",
+ "exec",
+ "oxfmt",
+ "--write",
+ "src/main/acp/acp-conversation-copy.test.ts",
+ "src/main/acp/acp-dialects/omp-dialect.test.ts",
+ "src/main/acp/acp-fixture-privacy.test.ts",
+ "src/main/acp/acp-model-catalog-probe.test.ts",
+ "src/main/acp/acp-prompt-content.test.ts",
+ "src/main/acp/acp-recovery-history.test.ts",
+ "src/main/acp/acp-session-events.test.ts",
+ "src/main/acp/acp-session-lifecycle.test.ts",
+ "src/main/acp/acp-session-runtime.test.ts",
+ "src/main/acp/acp-structured-antigravity.test.ts",
+ "src/main/acp/acp-structured-auth.test.ts",
+ "src/main/acp/acp-structured-background-task-stop.test.ts",
+ "src/main/acp/acp-structured-broken-stream.test.ts",
+ "src/main/acp/acp-structured-child-stop.test.ts",
+ "src/main/acp/acp-structured-child-work-admission.test.ts",
+ "src/main/acp/acp-structured-child-work.test.ts",
+ "src/main/acp/acp-structured-compaction.test.ts",
+ "src/main/acp/acp-structured-context-clear.test.ts",
+ "src/main/acp/acp-structured-electron-free.test.ts",
+ "src/main/acp/acp-structured-fixture-replay.test-support.ts",
+ "src/main/acp/acp-structured-grok-subagent-recordings.test.ts",
+ "src/main/acp/acp-structured-host-live-listing.test.ts",
+ "src/main/acp/acp-structured-host-option-hang.test.ts",
+ "src/main/acp/acp-structured-host-restore-failed.test.ts",
+ "src/main/acp/acp-structured-host-start-aborts.test.ts",
+ "src/main/acp/acp-structured-host-stop.test.ts",
+ "src/main/acp/acp-structured-launch-resolution-opencode.test.ts",
+ "src/main/acp/acp-structured-launch-resolution.test.ts",
+ "src/main/acp/acp-structured-launch-visuals.test.ts",
+ "src/main/acp/acp-structured-mail-admission.test.ts",
+ "src/main/acp/acp-structured-managed-runtime.test.ts",
+ "src/main/acp/acp-structured-omp-recordings.test.ts"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "started_at": 1792767817.1871812,
+ "exit_code": 0,
+ "finished_at": 1792767817.2931144,
+ "result": "passed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/format-final-command.json",
+ "command_artifact_sha256": "6c2a31da78b8dac969e6ee9401d46dd17f0cda34ed74721fe22a4b4eb183542f",
+ "log": "/tmp/orca-main-0001-implementation/format-final.log",
+ "log_sha256": "9b15cd11902e79f8cb9e2413926f1c367bf0bf1c7ba91076e9db3a0083a9e430",
+ "evidence_phase": "final passing normal/static evidence"
+ },
+ {
+ "label": "format-orphan-cleanup",
+ "command": [
+ "pnpm",
+ "exec",
+ "oxfmt",
+ "--check",
+ "src/main/acp/acp-structured-launch-resolution.test.ts"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "started_at": 1792768603.341026,
+ "exit_code": 1,
+ "finished_at": 1792768603.4461946,
+ "result": "failed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/format-orphan-cleanup-command.json",
+ "command_artifact_sha256": "dfb7ddea1614e3bff300bca05e8c773a65132bf9df106881df20e687c4bd7230",
+ "log": "/tmp/orca-main-0001-implementation/format-orphan-cleanup.log",
+ "log_sha256": "1190fa6cb842080b174aaad27761c4cc6a34b0d0446db92e0fab37a1d93330a9",
+ "evidence_phase": "historical normal/format failure, corrected before final delivery",
+ "correction": "Comment removal left redundant whitespace. Scoped formatter and final --check passed; comment/whitespace-only final cleanup did not require a runtime rerun."
+ },
+ {
+ "label": "format-orphan-cleanup-final",
+ "command": [
+ "pnpm",
+ "exec",
+ "oxfmt",
+ "--check",
+ "src/main/acp/acp-structured-launch-resolution.test.ts"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "started_at": 1792768618.0331817,
+ "exit_code": 0,
+ "finished_at": 1792768618.1425977,
+ "result": "passed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/format-orphan-cleanup-final-command.json",
+ "command_artifact_sha256": "363f3dfe12e98c712d29fe8e9ef7f97f25e39bb044af2b9545d0cd5f80304bd3",
+ "log": "/tmp/orca-main-0001-implementation/format-orphan-cleanup-final.log",
+ "log_sha256": "40b223ad82c15debd657ab48f9473de002f232b3b9952793cf227fcea706bc3e",
+ "evidence_phase": "final passing normal/static evidence"
+ },
+ {
+ "label": "format-orphan-cleanup-write",
+ "command": ["pnpm", "exec", "oxfmt", "src/main/acp/acp-structured-launch-resolution.test.ts"],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "started_at": 1792768617.8344066,
+ "exit_code": 0,
+ "finished_at": 1792768617.9439595,
+ "result": "passed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/format-orphan-cleanup-write-command.json",
+ "command_artifact_sha256": "0dd29135be4fd92d0d52997dee78baa6205fbf16bb9e3c09baf44415bafc679a",
+ "log": "/tmp/orca-main-0001-implementation/format-orphan-cleanup-write.log",
+ "log_sha256": "c77753ddd695e76e24e230662749ccdac62c0f6ee1527e25e265975137f33f86",
+ "evidence_phase": "final passing normal/static evidence"
+ },
+ {
+ "label": "lint-corrected",
+ "command": [
+ "pnpm",
+ "exec",
+ "oxlint",
+ "src/main/acp/acp-conversation-copy.test.ts",
+ "src/main/acp/acp-dialects/omp-dialect.test.ts",
+ "src/main/acp/acp-fixture-privacy.test.ts",
+ "src/main/acp/acp-model-catalog-probe.test.ts",
+ "src/main/acp/acp-prompt-content.test.ts",
+ "src/main/acp/acp-recovery-history.test.ts",
+ "src/main/acp/acp-session-events.test.ts",
+ "src/main/acp/acp-session-lifecycle.test.ts",
+ "src/main/acp/acp-session-runtime.test.ts",
+ "src/main/acp/acp-structured-antigravity.test.ts",
+ "src/main/acp/acp-structured-auth.test.ts",
+ "src/main/acp/acp-structured-background-task-stop.test.ts",
+ "src/main/acp/acp-structured-broken-stream.test.ts",
+ "src/main/acp/acp-structured-child-stop.test.ts",
+ "src/main/acp/acp-structured-child-work-admission.test.ts",
+ "src/main/acp/acp-structured-child-work.test.ts",
+ "src/main/acp/acp-structured-compaction.test.ts",
+ "src/main/acp/acp-structured-context-clear.test.ts",
+ "src/main/acp/acp-structured-electron-free.test.ts",
+ "src/main/acp/acp-structured-fixture-replay.test-support.ts",
+ "src/main/acp/acp-structured-grok-subagent-recordings.test.ts",
+ "src/main/acp/acp-structured-host-live-listing.test.ts",
+ "src/main/acp/acp-structured-host-option-hang.test.ts",
+ "src/main/acp/acp-structured-host-restore-failed.test.ts",
+ "src/main/acp/acp-structured-host-start-aborts.test.ts",
+ "src/main/acp/acp-structured-host-stop.test.ts",
+ "src/main/acp/acp-structured-launch-resolution-opencode.test.ts",
+ "src/main/acp/acp-structured-launch-resolution.test.ts",
+ "src/main/acp/acp-structured-launch-visuals.test.ts",
+ "src/main/acp/acp-structured-mail-admission.test.ts",
+ "src/main/acp/acp-structured-managed-runtime.test.ts",
+ "src/main/acp/acp-structured-omp-recordings.test.ts"
+ ],
+ "started_at": 1792767244.1132739,
+ "finished_at": 1792767244.5020258,
+ "exit_code": 0,
+ "result": "passed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/lint-corrected-command.json",
+ "command_artifact_sha256": "6405c6ce1f17d68927f05b05bb9438a2f3ccae0319c7477f88549405d45470db",
+ "log": "/tmp/orca-main-0001-implementation/lint-corrected.log",
+ "log_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "evidence_phase": "final passing normal/static evidence"
+ },
+ {
+ "label": "lint-delivery",
+ "command": [
+ "pnpm",
+ "exec",
+ "oxlint",
+ "src/main/acp/acp-conversation-copy.test.ts",
+ "src/main/acp/acp-dialects/omp-dialect.test.ts",
+ "src/main/acp/acp-fixture-privacy.test.ts",
+ "src/main/acp/acp-model-catalog-probe.test.ts",
+ "src/main/acp/acp-prompt-content.test.ts",
+ "src/main/acp/acp-recovery-history.test.ts",
+ "src/main/acp/acp-session-events.test.ts",
+ "src/main/acp/acp-session-lifecycle.test.ts",
+ "src/main/acp/acp-session-runtime.test.ts",
+ "src/main/acp/acp-structured-antigravity.test.ts",
+ "src/main/acp/acp-structured-auth.test.ts",
+ "src/main/acp/acp-structured-background-task-stop.test.ts",
+ "src/main/acp/acp-structured-broken-stream.test.ts",
+ "src/main/acp/acp-structured-child-stop.test.ts",
+ "src/main/acp/acp-structured-child-work-admission.test.ts",
+ "src/main/acp/acp-structured-child-work.test.ts",
+ "src/main/acp/acp-structured-compaction.test.ts",
+ "src/main/acp/acp-structured-context-clear.test.ts",
+ "src/main/acp/acp-structured-electron-free.test.ts",
+ "src/main/acp/acp-structured-fixture-replay.test-support.ts",
+ "src/main/acp/acp-structured-grok-subagent-recordings.test.ts",
+ "src/main/acp/acp-structured-host-live-listing.test.ts",
+ "src/main/acp/acp-structured-host-option-hang.test.ts",
+ "src/main/acp/acp-structured-host-restore-failed.test.ts",
+ "src/main/acp/acp-structured-host-start-aborts.test.ts",
+ "src/main/acp/acp-structured-host-stop.test.ts",
+ "src/main/acp/acp-structured-launch-resolution-opencode.test.ts",
+ "src/main/acp/acp-structured-launch-resolution.test.ts",
+ "src/main/acp/acp-structured-launch-visuals.test.ts",
+ "src/main/acp/acp-structured-mail-admission.test.ts",
+ "src/main/acp/acp-structured-managed-runtime.test.ts",
+ "src/main/acp/acp-structured-omp-recordings.test.ts"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "started_at": 1792768179.4873831,
+ "exit_code": 0,
+ "finished_at": 1792768179.7948675,
+ "result": "passed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/lint-delivery-command.json",
+ "command_artifact_sha256": "50a41e67f0f79baf308cfbdca80d87164eee5b8cc4019f48b74b921ccda20db4",
+ "log": "/tmp/orca-main-0001-implementation/lint-delivery.log",
+ "log_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "evidence_phase": "final passing normal/static evidence"
+ },
+ {
+ "label": "lint-final",
+ "command": [
+ "pnpm",
+ "exec",
+ "oxlint",
+ "src/main/acp/acp-conversation-copy.test.ts",
+ "src/main/acp/acp-dialects/omp-dialect.test.ts",
+ "src/main/acp/acp-fixture-privacy.test.ts",
+ "src/main/acp/acp-model-catalog-probe.test.ts",
+ "src/main/acp/acp-prompt-content.test.ts",
+ "src/main/acp/acp-recovery-history.test.ts",
+ "src/main/acp/acp-session-events.test.ts",
+ "src/main/acp/acp-session-lifecycle.test.ts",
+ "src/main/acp/acp-session-runtime.test.ts",
+ "src/main/acp/acp-structured-antigravity.test.ts",
+ "src/main/acp/acp-structured-auth.test.ts",
+ "src/main/acp/acp-structured-background-task-stop.test.ts",
+ "src/main/acp/acp-structured-broken-stream.test.ts",
+ "src/main/acp/acp-structured-child-stop.test.ts",
+ "src/main/acp/acp-structured-child-work-admission.test.ts",
+ "src/main/acp/acp-structured-child-work.test.ts",
+ "src/main/acp/acp-structured-compaction.test.ts",
+ "src/main/acp/acp-structured-context-clear.test.ts",
+ "src/main/acp/acp-structured-electron-free.test.ts",
+ "src/main/acp/acp-structured-fixture-replay.test-support.ts",
+ "src/main/acp/acp-structured-grok-subagent-recordings.test.ts",
+ "src/main/acp/acp-structured-host-live-listing.test.ts",
+ "src/main/acp/acp-structured-host-option-hang.test.ts",
+ "src/main/acp/acp-structured-host-restore-failed.test.ts",
+ "src/main/acp/acp-structured-host-start-aborts.test.ts",
+ "src/main/acp/acp-structured-host-stop.test.ts",
+ "src/main/acp/acp-structured-launch-resolution-opencode.test.ts",
+ "src/main/acp/acp-structured-launch-resolution.test.ts",
+ "src/main/acp/acp-structured-launch-visuals.test.ts",
+ "src/main/acp/acp-structured-mail-admission.test.ts",
+ "src/main/acp/acp-structured-managed-runtime.test.ts",
+ "src/main/acp/acp-structured-omp-recordings.test.ts"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "started_at": 1792767817.3184438,
+ "exit_code": 0,
+ "finished_at": 1792767817.6162522,
+ "result": "passed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/lint-final-command.json",
+ "command_artifact_sha256": "dcad825d06bcef87e65ca5cfaf642a36355ed959c8456a726076c7aa533990ad",
+ "log": "/tmp/orca-main-0001-implementation/lint-final.log",
+ "log_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "evidence_phase": "final passing normal/static evidence"
+ },
+ {
+ "label": "real-streams",
+ "command": [
+ "pnpm",
+ "test",
+ "src/main/acp/acp-structured-broken-stream.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-main-0001-implementation/real-streams.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "started_at": 1792766757.206968,
+ "exit_code": 1,
+ "finished_at": 1792766765.5097919,
+ "result": "failed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/real-streams-command.json",
+ "command_artifact_sha256": "d68b65c9921c9d4b11aad7ce35e235b03627ce91e1913ea552db799096d61c35",
+ "log": "/tmp/orca-main-0001-implementation/real-streams.log",
+ "log_sha256": "90c474b4a6af392db643fe63df1b0be4e4f1e9eb44cde11640bc29be5c5bc335",
+ "report": "/tmp/orca-main-0001-implementation/real-streams.json",
+ "report_sha256": "bb01f3d8c7008bc027abf35852bf1a3d0b7bce9d38a82cd618927186ad0bb4bd",
+ "test_files": 1,
+ "runtime_total": 2,
+ "passed": 1,
+ "failed": 1,
+ "skipped": 0,
+ "failures": [
+ {
+ "title": "ACP agent that closes its stdout but keeps running leaves the turn running and the agent alive until Orca closes it",
+ "messages": [
+ "AssertionError: expected false to be true // Object.is equality\n at native\n at checkCallback (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/index.aTZaPVhf.js:7182:20)"
+ ]
+ }
+ ],
+ "evidence_phase": "historical normal/format failure, corrected before final delivery"
+ },
+ {
+ "label": "restored-final",
+ "command": [
+ "pnpm",
+ "test",
+ "src/main/acp/acp-agent-connection.test.ts",
+ "src/main/acp/acp-compaction-journal-fixture.test.ts",
+ "src/main/acp/acp-conversation-copy.test.ts",
+ "src/main/acp/acp-dialects/grok-subagents.test.ts",
+ "src/main/acp/acp-dialects/omp-dialect.test.ts",
+ "src/main/acp/acp-fixture-privacy.test.ts",
+ "src/main/acp/acp-json-rpc-peer.test.ts",
+ "src/main/acp/acp-model-catalog-probe.test.ts",
+ "src/main/acp/acp-permission-requests.test.ts",
+ "src/main/acp/acp-prompt-content.test.ts",
+ "src/main/acp/acp-recovery-history.test.ts",
+ "src/main/acp/acp-scripted-child-runtime.test.ts",
+ "src/main/acp/acp-session-agent-turns.test.ts",
+ "src/main/acp/acp-session-events.test.ts",
+ "src/main/acp/acp-session-lifecycle.test.ts",
+ "src/main/acp/acp-session-notifications.test.ts",
+ "src/main/acp/acp-session-runtime.test.ts",
+ "src/main/acp/acp-structured-antigravity.test.ts",
+ "src/main/acp/acp-structured-auth.test.ts",
+ "src/main/acp/acp-structured-background-task-stop.test.ts",
+ "src/main/acp/acp-structured-broken-stream.test.ts",
+ "src/main/acp/acp-structured-child-session-end.test.ts",
+ "src/main/acp/acp-structured-child-stop.test.ts",
+ "src/main/acp/acp-structured-child-work-admission.test.ts",
+ "src/main/acp/acp-structured-child-work.test.ts",
+ "src/main/acp/acp-structured-compaction.test.ts",
+ "src/main/acp/acp-structured-context-clear.test.ts",
+ "src/main/acp/acp-structured-electron-free.test.ts",
+ "src/main/acp/acp-structured-grok-subagent-recordings.test.ts",
+ "src/main/acp/acp-structured-host-configured-default.test.ts",
+ "src/main/acp/acp-structured-host-crash.test.ts",
+ "src/main/acp/acp-structured-host-lifecycle.test.ts",
+ "src/main/acp/acp-structured-host-live-listing.test.ts",
+ "src/main/acp/acp-structured-host-option-hang.test.ts",
+ "src/main/acp/acp-structured-host-restore-failed.test.ts",
+ "src/main/acp/acp-structured-host-start-aborts.test.ts",
+ "src/main/acp/acp-structured-host-start-failure.test.ts",
+ "src/main/acp/acp-structured-host-stop.test.ts",
+ "src/main/acp/acp-structured-host-subagent-stop.test.ts",
+ "src/main/acp/acp-structured-image-prompts.test.ts",
+ "src/main/acp/acp-structured-launch-resolution-omp.test.ts",
+ "src/main/acp/acp-structured-launch-resolution-opencode.test.ts",
+ "src/main/acp/acp-structured-launch-resolution.test.ts",
+ "src/main/acp/acp-structured-launch-visuals.test.ts",
+ "src/main/acp/acp-structured-mail-admission.test.ts",
+ "src/main/acp/acp-structured-managed-runtime.test.ts",
+ "src/main/acp/acp-structured-missing-model.test.ts",
+ "src/main/acp/acp-structured-omp-recordings.test.ts",
+ "src/main/acp/acp-structured-opencode-recordings.test.ts",
+ "src/main/acp/acp-structured-session-adapter-recordings.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-main-0001-implementation/restored-final.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "started_at": 1792767817.6384363,
+ "exit_code": 0,
+ "finished_at": 1792767832.041338,
+ "result": "passed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/restored-final-command.json",
+ "command_artifact_sha256": "b2bf947bf656b9a5700f168aaa45c402422abd19337681c260781106564b1e8a",
+ "log": "/tmp/orca-main-0001-implementation/restored-final.log",
+ "log_sha256": "08b639232982ba1f2b512ab0b50772a33129db1f781b34e8891145037206e4b0",
+ "report": "/tmp/orca-main-0001-implementation/restored-final.json",
+ "report_sha256": "a2222f725dd544d3b7e732e8701a548b40edce8e93c80aa07966bbad831533e3",
+ "test_files": 50,
+ "runtime_total": 404,
+ "passed": 404,
+ "failed": 0,
+ "skipped": 0,
+ "failures": [],
+ "evidence_phase": "final passing normal/static evidence"
+ },
+ {
+ "label": "selected-and-replay",
+ "command": [
+ "pnpm",
+ "test",
+ "src/main/acp/acp-agent-connection.test.ts",
+ "src/main/acp/acp-compaction-journal-fixture.test.ts",
+ "src/main/acp/acp-conversation-copy.test.ts",
+ "src/main/acp/acp-dialects/grok-subagents.test.ts",
+ "src/main/acp/acp-dialects/omp-dialect.test.ts",
+ "src/main/acp/acp-fixture-privacy.test.ts",
+ "src/main/acp/acp-json-rpc-peer.test.ts",
+ "src/main/acp/acp-model-catalog-probe.test.ts",
+ "src/main/acp/acp-permission-requests.test.ts",
+ "src/main/acp/acp-prompt-content.test.ts",
+ "src/main/acp/acp-recovery-history.test.ts",
+ "src/main/acp/acp-scripted-child-runtime.test.ts",
+ "src/main/acp/acp-session-agent-turns.test.ts",
+ "src/main/acp/acp-session-events.test.ts",
+ "src/main/acp/acp-session-lifecycle.test.ts",
+ "src/main/acp/acp-session-notifications.test.ts",
+ "src/main/acp/acp-session-runtime.test.ts",
+ "src/main/acp/acp-structured-antigravity.test.ts",
+ "src/main/acp/acp-structured-auth.test.ts",
+ "src/main/acp/acp-structured-background-task-stop.test.ts",
+ "src/main/acp/acp-structured-child-session-end.test.ts",
+ "src/main/acp/acp-structured-child-stop.test.ts",
+ "src/main/acp/acp-structured-child-work-admission.test.ts",
+ "src/main/acp/acp-structured-child-work.test.ts",
+ "src/main/acp/acp-structured-compaction.test.ts",
+ "src/main/acp/acp-structured-context-clear.test.ts",
+ "src/main/acp/acp-structured-electron-free.test.ts",
+ "src/main/acp/acp-structured-grok-subagent-recordings.test.ts",
+ "src/main/acp/acp-structured-host-configured-default.test.ts",
+ "src/main/acp/acp-structured-host-crash.test.ts",
+ "src/main/acp/acp-structured-host-lifecycle.test.ts",
+ "src/main/acp/acp-structured-host-live-listing.test.ts",
+ "src/main/acp/acp-structured-host-option-hang.test.ts",
+ "src/main/acp/acp-structured-host-restore-failed.test.ts",
+ "src/main/acp/acp-structured-host-start-aborts.test.ts",
+ "src/main/acp/acp-structured-host-start-failure.test.ts",
+ "src/main/acp/acp-structured-host-stop.test.ts",
+ "src/main/acp/acp-structured-host-subagent-stop.test.ts",
+ "src/main/acp/acp-structured-image-prompts.test.ts",
+ "src/main/acp/acp-structured-launch-resolution-omp.test.ts",
+ "src/main/acp/acp-structured-launch-resolution-opencode.test.ts",
+ "src/main/acp/acp-structured-launch-resolution.test.ts",
+ "src/main/acp/acp-structured-launch-visuals.test.ts",
+ "src/main/acp/acp-structured-mail-admission.test.ts",
+ "src/main/acp/acp-structured-managed-runtime.test.ts",
+ "src/main/acp/acp-structured-missing-model.test.ts",
+ "src/main/acp/acp-structured-omp-recordings.test.ts",
+ "src/main/acp/acp-structured-opencode-recordings.test.ts",
+ "src/main/acp/acp-structured-session-adapter-recordings.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-main-0001-implementation/selected-and-replay.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "started_at": 1792766757.238494,
+ "exit_code": 1,
+ "finished_at": 1792766779.3404372,
+ "result": "failed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/selected-and-replay-command.json",
+ "command_artifact_sha256": "7ca508c9d0ff847fd041de51d6650108103357eb71fa695a01212249573080fd",
+ "log": "/tmp/orca-main-0001-implementation/selected-and-replay.log",
+ "log_sha256": "a7b55da5776439e0424b28e5181d09a394cef2c83031d8e6250de506d2a8917b",
+ "report": "/tmp/orca-main-0001-implementation/selected-and-replay.json",
+ "report_sha256": "6fe16fa47e1c19950114d5e15122497fb632b4fd7da8d4ecc62f3071276e7bc9",
+ "test_files": 49,
+ "runtime_total": 402,
+ "passed": 397,
+ "failed": 5,
+ "skipped": 0,
+ "failures": [
+ {
+ "title": "a Grok chat Stop ends Grok at the grace when Grok never reads the cancel, never waiting on its write",
+ "messages": [
+ "AssertionError: expected false to be true // Object.is equality\n at native\n at checkCallback (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/index.aTZaPVhf.js:7182:20)",
+ "Error: agent session host teardown phase did not finish within 8000ms\n at withPhaseTimeout (/home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/native-chat/agent-session-wire/structured-agent-session-host-teardown.ts:50:11)\n at tearDownStructuredAgentSessionHost (/home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/native-chat/agent-session-wire/structured-agent-session-host-teardown.ts:121:19)\n at flushStructuredAgentSessionHost (/home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/native-chat/agent-session-wire/structured-agent-session-host-teardown.ts:165:9)"
+ ]
+ },
+ {
+ "title": "OpenCode recordings through the adapter OpenCode's stray file write after an approved edit is refused without breaking the turn",
+ "messages": [
+ "Error: no pending approval yet\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-structured-opencode-recordings.test.ts:54:13"
+ ]
+ },
+ {
+ "title": "ACP subagent evidence at the ordered journal boundary does not let a throwing optional evidence consumer poison the journal",
+ "messages": [
+ "AssertionError: expected [ { kind: 'turn', \u2026(4) } ] to match object [ { kind: 'turn', \u2026(3) } ]\n(1 matching property omitted from actual)\n at Proxy. (file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/index.aTZaPVhf.js:2066:10)\n at Proxy. (file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/index.aTZaPVhf.js:1958:14)\n at Proxy.methodWrapper (file:///home/neil/.local/share/pnpm/store/v11/links/@/chai/6.3.0/25b5fcf6626be1440275f25f04f4b64170f3760bb1da107f5691c470b8dd65d1/node_modules/chai/index.js:1737:25)\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-structured-child-work-admission.test.ts:187:55\n at async file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:20"
+ ]
+ },
+ {
+ "title": "Grok roster evidence through the existing host child store publishes the production s7-subagent-foreground recording through the same host readers",
+ "messages": [
+ "TypeError: hosted.rows is not a function\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-structured-child-work.test.ts:158:31\n at runNextTicks (node:internal/process/task_queues:65:5)\n at process.processTimers (node:internal/timers:615:9)\n at async file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:20"
+ ]
+ },
+ {
+ "title": "Grok roster evidence through the existing host child store publishes the production s7-subagent-background recording through the same host readers",
+ "messages": [
+ "TypeError: hosted.rows is not a function\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-structured-child-work.test.ts:158:31\n at async file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:20"
+ ]
+ }
+ ],
+ "evidence_phase": "historical normal/format failure, corrected before final delivery"
+ },
+ {
+ "label": "selected-final",
+ "command": [
+ "pnpm",
+ "test",
+ "src/main/acp/acp-agent-connection.test.ts",
+ "src/main/acp/acp-compaction-journal-fixture.test.ts",
+ "src/main/acp/acp-conversation-copy.test.ts",
+ "src/main/acp/acp-dialects/grok-subagents.test.ts",
+ "src/main/acp/acp-dialects/omp-dialect.test.ts",
+ "src/main/acp/acp-fixture-privacy.test.ts",
+ "src/main/acp/acp-json-rpc-peer.test.ts",
+ "src/main/acp/acp-model-catalog-probe.test.ts",
+ "src/main/acp/acp-permission-requests.test.ts",
+ "src/main/acp/acp-prompt-content.test.ts",
+ "src/main/acp/acp-recovery-history.test.ts",
+ "src/main/acp/acp-scripted-child-runtime.test.ts",
+ "src/main/acp/acp-session-agent-turns.test.ts",
+ "src/main/acp/acp-session-events.test.ts",
+ "src/main/acp/acp-session-lifecycle.test.ts",
+ "src/main/acp/acp-session-notifications.test.ts",
+ "src/main/acp/acp-session-runtime.test.ts",
+ "src/main/acp/acp-structured-antigravity.test.ts",
+ "src/main/acp/acp-structured-auth.test.ts",
+ "src/main/acp/acp-structured-background-task-stop.test.ts",
+ "src/main/acp/acp-structured-broken-stream.test.ts",
+ "src/main/acp/acp-structured-child-session-end.test.ts",
+ "src/main/acp/acp-structured-child-stop.test.ts",
+ "src/main/acp/acp-structured-child-work-admission.test.ts",
+ "src/main/acp/acp-structured-child-work.test.ts",
+ "src/main/acp/acp-structured-compaction.test.ts",
+ "src/main/acp/acp-structured-context-clear.test.ts",
+ "src/main/acp/acp-structured-electron-free.test.ts",
+ "src/main/acp/acp-structured-grok-subagent-recordings.test.ts",
+ "src/main/acp/acp-structured-host-configured-default.test.ts",
+ "src/main/acp/acp-structured-host-crash.test.ts",
+ "src/main/acp/acp-structured-host-lifecycle.test.ts",
+ "src/main/acp/acp-structured-host-live-listing.test.ts",
+ "src/main/acp/acp-structured-host-option-hang.test.ts",
+ "src/main/acp/acp-structured-host-restore-failed.test.ts",
+ "src/main/acp/acp-structured-host-start-aborts.test.ts",
+ "src/main/acp/acp-structured-host-start-failure.test.ts",
+ "src/main/acp/acp-structured-host-stop.test.ts",
+ "src/main/acp/acp-structured-host-subagent-stop.test.ts",
+ "src/main/acp/acp-structured-image-prompts.test.ts",
+ "src/main/acp/acp-structured-launch-resolution-omp.test.ts",
+ "src/main/acp/acp-structured-launch-resolution-opencode.test.ts",
+ "src/main/acp/acp-structured-launch-resolution.test.ts",
+ "src/main/acp/acp-structured-launch-visuals.test.ts",
+ "src/main/acp/acp-structured-mail-admission.test.ts",
+ "src/main/acp/acp-structured-managed-runtime.test.ts",
+ "src/main/acp/acp-structured-missing-model.test.ts",
+ "src/main/acp/acp-structured-omp-recordings.test.ts",
+ "src/main/acp/acp-structured-opencode-recordings.test.ts",
+ "src/main/acp/acp-structured-session-adapter-recordings.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-main-0001-implementation/selected-final.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "started_at": 1792767244.147675,
+ "exit_code": 0,
+ "finished_at": 1792767265.508943,
+ "result": "passed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/selected-final-command.json",
+ "command_artifact_sha256": "e199a5b84c9598482c81d5b25bc9df0eb5e681b39f36a915fdad2aeb7218f9e6",
+ "log": "/tmp/orca-main-0001-implementation/selected-final.log",
+ "log_sha256": "f02a621c17211a3ff1cc1a276aa4e1387b1ff90cb1dc635fdf0b17dfaeebb931",
+ "report": "/tmp/orca-main-0001-implementation/selected-final.json",
+ "report_sha256": "48c19695095ee24fea8f7a1d10a6e7fb2e8afe6adc2d98397f5792f3b1fa9bdb",
+ "test_files": 50,
+ "runtime_total": 404,
+ "passed": 404,
+ "failed": 0,
+ "skipped": 0,
+ "failures": [],
+ "evidence_phase": "final passing normal/static evidence"
+ },
+ {
+ "label": "typecheck-delivery",
+ "command": ["pnpm", "tc:node"],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "started_at": 1792768179.8176656,
+ "exit_code": 0,
+ "finished_at": 1792768181.0775938,
+ "result": "passed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/typecheck-delivery-command.json",
+ "command_artifact_sha256": "f82a3433b34f20fb7ac0aa90bf3dfca22cedc3100102d541723371c1cc8ff61d",
+ "log": "/tmp/orca-main-0001-implementation/typecheck-delivery.log",
+ "log_sha256": "8efc13c1501d8ec6901c2a31e8437ee5908f1e352d1d3a54e4894cfa1987a58e",
+ "evidence_phase": "final passing normal/static evidence"
+ },
+ {
+ "label": "typecheck-final",
+ "command": ["pnpm", "tc:node"],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "started_at": 1792767832.0643728,
+ "exit_code": 0,
+ "finished_at": 1792767833.5284429,
+ "result": "passed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/typecheck-final-command.json",
+ "command_artifact_sha256": "ae2c1a74cb1ea4af772d5afdc2f4e3e9afa67f00f426dfaf8d89193f99fbfa46",
+ "log": "/tmp/orca-main-0001-implementation/typecheck-final.log",
+ "log_sha256": "8efc13c1501d8ec6901c2a31e8437ee5908f1e352d1d3a54e4894cfa1987a58e",
+ "evidence_phase": "final passing normal/static evidence"
+ }
+ ],
+ "mutation_summary": {
+ "invocations": 12,
+ "positive_clone_controls_passed": 1,
+ "intended_negative_mutations_killed": 10,
+ "excluded_harness_attempts": 1,
+ "all_production_sources_restored": true,
+ "interpretation": "Only explicitly recorded mutations were executed. Frozen suggested mutation plans and failure-injection ideas do not count as executed validation."
+ },
+ "mutations": [
+ {
+ "label": "catalog-read-save",
+ "proposal_ids": [34],
+ "path": "src/main/native-chat/agent-session-wire/structured-agent-session-options-read.ts",
+ "original_sha256": "fda8027d8fc14be3d114270d8223f983b6e177148db9e1190786427a283dfaa1",
+ "old": " saveStructuredAgentSessionListing(context, sessionId, catalogListing)",
+ "new": " void catalogListing",
+ "tests": [
+ "src/main/acp/acp-structured-host-live-listing.test.ts",
+ "-t",
+ "saves a changed live menu"
+ ],
+ "expected_test_outcome": "fail",
+ "status": "completed",
+ "started_at": 1792767599.4924455,
+ "command": [
+ "pnpm",
+ "test",
+ "src/main/acp/acp-structured-host-live-listing.test.ts",
+ "-t",
+ "saves a changed live menu",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-main-0001-implementation/mutation-catalog-read-save.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "mutated_sha256": "32b63f166bdfcef19e90c27a4333c33ef37552dbf21fa0a6fa7e0ac4633ffe0e",
+ "exit_code": 1,
+ "restored_sha256": "fda8027d8fc14be3d114270d8223f983b6e177148db9e1190786427a283dfaa1",
+ "restored": true,
+ "finished_at": 1792767605.0426798,
+ "result": "failed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/mutation-catalog-read-save-command.json",
+ "command_artifact_sha256": "2726517f44d38c526092eba9891f6dd29464132a6c1ccc399e0d4cdf5b104384",
+ "log": "/tmp/orca-main-0001-implementation/mutation-catalog-read-save.log",
+ "log_sha256": "f7613c19cda7ac722595a562d417685ec2a9fe46803add3b4e2be58124e49084",
+ "report": "/tmp/orca-main-0001-implementation/mutation-catalog-read-save.json",
+ "report_sha256": "5274696d96c5c187383dada89ffa5acd7ac6bcec406eb34de0913c131dc6a211",
+ "test_files": 1,
+ "runtime_total": 2,
+ "passed": 0,
+ "failed": 1,
+ "skipped": 1,
+ "failures": [
+ {
+ "title": "a live Grok listing saves a changed live menu for the next chat when options are read, despite a failed probe",
+ "messages": [
+ "AssertionError: expected { origin: 'live-session', \u2026(4) } to match object { origin: 'live-session', \u2026(1) }\n(3 matching properties omitted from actual)\n at Proxy. (file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/index.aTZaPVhf.js:2066:10)\n at Proxy. (file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/index.aTZaPVhf.js:1958:14)\n at Proxy.methodWrapper (file:///home/neil/.local/share/pnpm/store/v11/links/@/chai/6.3.0/25b5fcf6626be1440275f25f04f4b64170f3760bb1da107f5691c470b8dd65d1/node_modules/chai/index.js:1737:25)\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-structured-host-live-listing.test.ts:77:27\n at async file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:20"
+ ]
+ }
+ ],
+ "evidence_classification": "intended_assertion_failed",
+ "proved_proposal_ids": [34],
+ "scope_limit": null,
+ "cleanup_limit": null,
+ "production_path": "src/main/native-chat/agent-session-wire/structured-agent-session-options-read.ts",
+ "original_source_sha256": "fda8027d8fc14be3d114270d8223f983b6e177148db9e1190786427a283dfaa1",
+ "mutated_source_sha256": "32b63f166bdfcef19e90c27a4333c33ef37552dbf21fa0a6fa7e0ac4633ffe0e",
+ "restored_source_sha256": "fda8027d8fc14be3d114270d8223f983b6e177148db9e1190786427a283dfaa1",
+ "original_replacement": " saveStructuredAgentSessionListing(context, sessionId, catalogListing)",
+ "mutated_replacement": " void catalogListing"
+ },
+ {
+ "label": "copy-no-close-corrected",
+ "proposal_ids": [1],
+ "path": "src/main/acp/acp-conversation-copy.ts",
+ "original_sha256": "7251c25b54f31aa7642530bae9c73d5832a3de70bcd0d3653f113c87af441578",
+ "old": "if (connection && !(await connection.close().catch(() => false)))",
+ "new": "if (connection && false)",
+ "tests": ["src/main/acp/acp-conversation-copy.test.ts", "-t", "cancels an unanswered fork"],
+ "expected_test_outcome": "fail",
+ "status": "completed",
+ "supersedes": "copy-no-close",
+ "started_at": 1792767748.688449,
+ "command": [
+ "pnpm",
+ "test",
+ "src/main/acp/acp-conversation-copy.test.ts",
+ "-t",
+ "cancels an unanswered fork",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-main-0001-implementation/mutation-copy-no-close-corrected.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "mutated_sha256": "2c621342dc35d5b90a5610a5dc64a9e25869e3ad745853712d67d6bbcd7a0df4",
+ "exit_code": 1,
+ "restored_sha256": "7251c25b54f31aa7642530bae9c73d5832a3de70bcd0d3653f113c87af441578",
+ "restored": true,
+ "finished_at": 1792767754.06382,
+ "result": "failed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/mutation-copy-no-close-corrected-command.json",
+ "command_artifact_sha256": "44c0c9836e965c221ebfca3f3641a8704471f6c57c0739c6f7ecacee81c9c866",
+ "log": "/tmp/orca-main-0001-implementation/mutation-copy-no-close-corrected.log",
+ "log_sha256": "4a006622d3e1c891d9af9ae1c3aad4d0020db7920e59bc13afed6ac74f034e9c",
+ "report": "/tmp/orca-main-0001-implementation/mutation-copy-no-close-corrected.json",
+ "report_sha256": "366fe4c4b08fde2e8d6a2072010586f5ef4103e793510409cb901c901e7d2bf7",
+ "test_files": 1,
+ "runtime_total": 6,
+ "passed": 0,
+ "failed": 1,
+ "skipped": 5,
+ "failures": [
+ {
+ "title": "copying a chat conversation for the CLI cancels an unanswered fork after delivery and closes its temporary process",
+ "messages": [
+ "AssertionError: expected [ +0 ] to deeply equal [ 1 ]\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-conversation-copy.test.ts:145:53\n at async file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:20"
+ ]
+ }
+ ],
+ "evidence_classification": "intended_assertion_failed",
+ "proved_proposal_ids": [1],
+ "scope_limit": null,
+ "cleanup_limit": null,
+ "production_path": "src/main/acp/acp-conversation-copy.ts",
+ "original_source_sha256": "7251c25b54f31aa7642530bae9c73d5832a3de70bcd0d3653f113c87af441578",
+ "mutated_source_sha256": "2c621342dc35d5b90a5610a5dc64a9e25869e3ad745853712d67d6bbcd7a0df4",
+ "restored_source_sha256": "7251c25b54f31aa7642530bae9c73d5832a3de70bcd0d3653f113c87af441578",
+ "original_replacement": "if (connection && !(await connection.close().catch(() => false)))",
+ "mutated_replacement": "if (connection && false)"
+ },
+ {
+ "label": "eof-close",
+ "proposal_ids": [19],
+ "path": "src/main/acp/acp-agent-connection.ts",
+ "original_sha256": "342ab3a8803b26d0946055c30a332c05917ce7cefc56af80bb9fe3ec37f7eeaf",
+ "old": "closeOnInputEnd: false",
+ "new": "closeOnInputEnd: true",
+ "tests": ["src/main/acp/acp-structured-broken-stream.test.ts", "-t", "directly launched"],
+ "expected_test_outcome": "fail",
+ "status": "completed",
+ "started_at": 1792767579.8812516,
+ "command": [
+ "pnpm",
+ "test",
+ "src/main/acp/acp-structured-broken-stream.test.ts",
+ "-t",
+ "directly launched",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-main-0001-implementation/mutation-eof-close.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "mutated_sha256": "fb054be313fb4bc5755d2acbcc18a35c07d4fc3225568c1460e60eca478a4ea8",
+ "exit_code": 1,
+ "restored_sha256": "342ab3a8803b26d0946055c30a332c05917ce7cefc56af80bb9fe3ec37f7eeaf",
+ "restored": true,
+ "finished_at": 1792767593.5388792,
+ "result": "failed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/mutation-eof-close-command.json",
+ "command_artifact_sha256": "9a22982485b939f7c7b1c320a357731b75835db109e76f911cf51ca6f5349ad6",
+ "log": "/tmp/orca-main-0001-implementation/mutation-eof-close.log",
+ "log_sha256": "1065951953aa71bed85350d7043305591ec6cdefca41f42be4ae3189c68eb722",
+ "report": "/tmp/orca-main-0001-implementation/mutation-eof-close.json",
+ "report_sha256": "4dba6b29d3f9de6b0b302f1c7a28001c6acfac61edabd17b9eb826073cf2a3da",
+ "test_files": 1,
+ "runtime_total": 2,
+ "passed": 0,
+ "failed": 1,
+ "skipped": 1,
+ "failures": [
+ {
+ "title": "ACP connection to a directly launched agent that closes stdout but keeps running leaves the turn running and the agent alive until Orca closes it",
+ "messages": [
+ "AssertionError: expected { \u2026(5) } to match object { state: 'running' }\n(4 matching properties omitted from actual)\n at (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/index.aTZaPVhf.js:2066:10)\n at (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/index.aTZaPVhf.js:1958:14)\n at methodWrapper (/home/neil/.local/share/pnpm/store/v11/links/@/chai/6.3.0/25b5fcf6626be1440275f25f04f4b64170f3760bb1da107f5691c470b8dd65d1/node_modules/chai/index.js:1737:25)\n at native\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-structured-broken-stream.test.ts:168:50"
+ ]
+ }
+ ],
+ "evidence_classification": "intended_assertion_failed",
+ "proved_proposal_ids": [19],
+ "scope_limit": null,
+ "cleanup_limit": null,
+ "production_path": "src/main/acp/acp-agent-connection.ts",
+ "original_source_sha256": "342ab3a8803b26d0946055c30a332c05917ce7cefc56af80bb9fe3ec37f7eeaf",
+ "mutated_source_sha256": "fb054be313fb4bc5755d2acbcc18a35c07d4fc3225568c1460e60eca478a4ea8",
+ "restored_source_sha256": "342ab3a8803b26d0946055c30a332c05917ce7cefc56af80bb9fe3ec37f7eeaf",
+ "original_replacement": "closeOnInputEnd: false",
+ "mutated_replacement": "closeOnInputEnd: true"
+ },
+ {
+ "label": "eof-missing",
+ "proposal_ids": [19],
+ "path": "src/main/acp/acp-structured-broken-stream.test.ts",
+ "original_sha256": "44692cc4cf2896548689fbaf81e55941e8ddcbaf190867563f304435d7fa04cc",
+ "old": "${agentScript('fs.closeSync(1)')}",
+ "new": "${agentScript('void 0')}",
+ "tests": ["src/main/acp/acp-structured-broken-stream.test.ts", "-t", "directly launched"],
+ "expected_test_outcome": "fail",
+ "status": "completed",
+ "started_at": 1792767593.5631177,
+ "command": [
+ "pnpm",
+ "test",
+ "src/main/acp/acp-structured-broken-stream.test.ts",
+ "-t",
+ "directly launched",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-main-0001-implementation/mutation-eof-missing.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "mutated_sha256": "95eda2605e9333b1e0c035e6584ee85136836f904d4e45271d15f2a283b4d923",
+ "exit_code": 1,
+ "restored_sha256": "44692cc4cf2896548689fbaf81e55941e8ddcbaf190867563f304435d7fa04cc",
+ "restored": true,
+ "finished_at": 1792767599.4662488,
+ "result": "failed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/mutation-eof-missing-command.json",
+ "command_artifact_sha256": "84dc220e70a05c982e7c4511fa09213dc88cb6373cdad8ad06dde275cd997469",
+ "log": "/tmp/orca-main-0001-implementation/mutation-eof-missing.log",
+ "log_sha256": "d0e1a1ebebbe3afcbd7be89f9d871a9124e6afb315cb983cd9c25921dbcd9eba",
+ "report": "/tmp/orca-main-0001-implementation/mutation-eof-missing.json",
+ "report_sha256": "acd1e84b43669f0e74f45d228a5c135936f8bd4687d593e594c2858f0ab90d00",
+ "test_files": 1,
+ "runtime_total": 2,
+ "passed": 0,
+ "failed": 1,
+ "skipped": 1,
+ "failures": [
+ {
+ "title": "ACP connection to a directly launched agent that closes stdout but keeps running leaves the turn running and the agent alive until Orca closes it",
+ "messages": [
+ "AssertionError: expected false to be true // Object.is equality\n at native\n at checkCallback (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/index.aTZaPVhf.js:7182:20)"
+ ]
+ }
+ ],
+ "evidence_classification": "intended_assertion_failed",
+ "proved_proposal_ids": [19],
+ "scope_limit": null,
+ "cleanup_limit": null,
+ "production_path": "src/main/acp/acp-structured-broken-stream.test.ts",
+ "original_source_sha256": "44692cc4cf2896548689fbaf81e55941e8ddcbaf190867563f304435d7fa04cc",
+ "mutated_source_sha256": "95eda2605e9333b1e0c035e6584ee85136836f904d4e45271d15f2a283b4d923",
+ "restored_source_sha256": "44692cc4cf2896548689fbaf81e55941e8ddcbaf190867563f304435d7fa04cc",
+ "original_replacement": "${agentScript('fs.closeSync(1)')}",
+ "mutated_replacement": "${agentScript('void 0')}"
+ },
+ {
+ "label": "omp-corrupt",
+ "proposal_ids": [2, 3, 4],
+ "path": "src/main/acp/acp-dialects/omp-dialect.ts",
+ "original_sha256": "f0be0ff957f30cdcd7c9326e64292f797a54f2da9e5e3c2c6758998819a79d54",
+ "old": "function normalizeToolUpdate(update: ToolCallUpdate): ToolCallUpdate {",
+ "new": "function normalizeToolUpdate(update: ToolCallUpdate): ToolCallUpdate {\n update.content = [{ type: 'content', content: { type: 'text', text: 'mutated' } }]",
+ "tests": [
+ "src/main/acp/acp-dialects/omp-dialect.test.ts",
+ "-t",
+ "leaves a tool|keeps a result|existing generic"
+ ],
+ "expected_test_outcome": "fail",
+ "status": "completed",
+ "started_at": 1792767574.047248,
+ "command": [
+ "pnpm",
+ "test",
+ "src/main/acp/acp-dialects/omp-dialect.test.ts",
+ "-t",
+ "leaves a tool|keeps a result|existing generic",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-main-0001-implementation/mutation-omp-corrupt.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "mutated_sha256": "7464a533a05239058493de1aaef51059245e6b69d65135f615c13f6dcea03fd5",
+ "exit_code": 1,
+ "restored_sha256": "f0be0ff957f30cdcd7c9326e64292f797a54f2da9e5e3c2c6758998819a79d54",
+ "restored": true,
+ "finished_at": 1792767576.6165788,
+ "result": "failed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/mutation-omp-corrupt-command.json",
+ "command_artifact_sha256": "0c26d5f7ec0cb95577ca90e5cb078ab71fcd55d19bb6abad7d0eb7dae78114f1",
+ "log": "/tmp/orca-main-0001-implementation/mutation-omp-corrupt.log",
+ "log_sha256": "7f8cee11ede4a2c1e16b6b29669d6395b9164cd761267b2fc8215d6beb641048",
+ "report": "/tmp/orca-main-0001-implementation/mutation-omp-corrupt.json",
+ "report_sha256": "e0082aa37419a476c214667347e8b94580776e2df66f9d0f94af4973d3a4b6d4",
+ "test_files": 1,
+ "runtime_total": 10,
+ "passed": 0,
+ "failed": 3,
+ "skipped": 7,
+ "failures": [
+ {
+ "title": "OMP tool updates leaves a tool without a command echo as it came",
+ "messages": [
+ "AssertionError: expected { toolCallId: 'call-1', \u2026(3) } to deeply equal { toolCallId: 'call-1', \u2026(3) }\n at native\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-dialects/omp-dialect.test.ts:20:31\n at (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:1632:35)\n at (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:26)\n at (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3338:20)\n at Promise (native)\n at runWithCancel (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3333:10)\n at (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3318:20)\n at Promise (native)\n at runWithTimeout (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3276:10)"
+ ]
+ },
+ {
+ "title": "OMP tool updates keeps a result that itself starts with \"$ \"",
+ "messages": [
+ "AssertionError: expected { toolCallId: 'call-1', \u2026(3) } to deeply equal { toolCallId: 'call-1', \u2026(3) }\n at native\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-dialects/omp-dialect.test.ts:31:31\n at (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:1632:35)\n at (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:26)\n at (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3338:20)\n at Promise (native)\n at runWithCancel (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3333:10)\n at (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3318:20)\n at Promise (native)\n at runWithTimeout (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3276:10)"
+ ]
+ },
+ {
+ "title": "OMP tool updates leaves an existing generic command result intact",
+ "messages": [
+ "AssertionError: expected { toolCallId: 'call-1', \u2026(3) } to deeply equal { toolCallId: 'call-1', \u2026(3) }\n at native\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-dialects/omp-dialect.test.ts:136:33\n at (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:1632:35)\n at (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:26)\n at (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3338:20)\n at Promise (native)\n at runWithCancel (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3333:10)\n at (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3318:20)\n at Promise (native)\n at runWithTimeout (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3276:10)"
+ ]
+ }
+ ],
+ "evidence_classification": "intended_assertion_failed",
+ "proved_proposal_ids": [2, 3, 4],
+ "scope_limit": null,
+ "cleanup_limit": null,
+ "production_path": "src/main/acp/acp-dialects/omp-dialect.ts",
+ "original_source_sha256": "f0be0ff957f30cdcd7c9326e64292f797a54f2da9e5e3c2c6758998819a79d54",
+ "mutated_source_sha256": "7464a533a05239058493de1aaef51059245e6b69d65135f615c13f6dcea03fd5",
+ "restored_source_sha256": "f0be0ff957f30cdcd7c9326e64292f797a54f2da9e5e3c2c6758998819a79d54",
+ "original_replacement": "function normalizeToolUpdate(update: ToolCallUpdate): ToolCallUpdate {",
+ "mutated_replacement": "function normalizeToolUpdate(update: ToolCallUpdate): ToolCallUpdate {\n update.content = [{ type: 'content', content: { type: 'text', text: 'mutated' } }]"
+ },
+ {
+ "label": "permission-cancelled",
+ "proposal_ids": [51],
+ "path": "src/main/acp/acp-structured-prompts.ts",
+ "original_sha256": "2a1b7e28afa98fd6282bb8df6a1ba47fa83d3ba651be0d3c0da6361afb25f00f",
+ "old": " entry.settle(reply)",
+ "new": " entry.settle(entry.permission ? { outcome: { outcome: \"cancelled\" } } : reply)",
+ "tests": ["src/main/acp/acp-structured-omp-recordings.test.ts", "-t", "OMP recordings"],
+ "expected_test_outcome": "fail",
+ "status": "completed",
+ "started_at": 1792767639.8063905,
+ "command": [
+ "pnpm",
+ "test",
+ "src/main/acp/acp-structured-omp-recordings.test.ts",
+ "-t",
+ "OMP recordings",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-main-0001-implementation/mutation-permission-cancelled.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "mutated_sha256": "f1e2c945304a416f8b98d431f631f3044117c5aff575b08558b2ac1f4c947b48",
+ "exit_code": 1,
+ "restored_sha256": "2a1b7e28afa98fd6282bb8df6a1ba47fa83d3ba651be0d3c0da6361afb25f00f",
+ "restored": true,
+ "finished_at": 1792767651.8635814,
+ "result": "failed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/mutation-permission-cancelled-command.json",
+ "command_artifact_sha256": "742cf9bfc1e31e58fc8dd97dfc23e4ad89191e2b71641a8d6cd51be238a01052",
+ "log": "/tmp/orca-main-0001-implementation/mutation-permission-cancelled.log",
+ "log_sha256": "41d314f8e32acf762dd71764397443465fa0e8f427fa042cac5f725c1a6ab907",
+ "report": "/tmp/orca-main-0001-implementation/mutation-permission-cancelled.json",
+ "report_sha256": "258cbf6e40d5fbdd9ec20110e648b242356b97277a54b089d602381a07ee9ea1",
+ "test_files": 1,
+ "runtime_total": 5,
+ "passed": 2,
+ "failed": 3,
+ "skipped": 0,
+ "failures": [
+ {
+ "title": "OMP recordings through the adapter a failed command's row shows its output and exit code, not the command again",
+ "messages": [
+ "AssertionError: expected { id: +0, \u2026(1) } to deeply equal { id: +0, \u2026(1) }\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-structured-fixture-replay.test-support.ts:98:51\n at process.processTicksAndRejections (node:internal/process/task_queues:104:5)"
+ ]
+ },
+ {
+ "title": "OMP recordings through the adapter a successful command's row shows its output and exit code 0",
+ "messages": [
+ "AssertionError: expected { id: +0, \u2026(1) } to deeply equal { id: +0, \u2026(1) }\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-structured-fixture-replay.test-support.ts:98:51\n at process.processTicksAndRejections (node:internal/process/task_queues:104:5)"
+ ]
+ },
+ {
+ "title": "OMP recordings through the adapter Stop during a running command ends the turn and leaves the row without the command as output",
+ "messages": [
+ "AssertionError: expected { id: +0, \u2026(1) } to deeply equal { id: +0, \u2026(1) }\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-structured-fixture-replay.test-support.ts:98:51\n at process.processTicksAndRejections (node:internal/process/task_queues:104:5)"
+ ]
+ }
+ ],
+ "evidence_classification": "intended_assertion_failed",
+ "proved_proposal_ids": [51],
+ "scope_limit": null,
+ "cleanup_limit": null,
+ "production_path": "src/main/acp/acp-structured-prompts.ts",
+ "original_source_sha256": "2a1b7e28afa98fd6282bb8df6a1ba47fa83d3ba651be0d3c0da6361afb25f00f",
+ "mutated_source_sha256": "f1e2c945304a416f8b98d431f631f3044117c5aff575b08558b2ac1f4c947b48",
+ "restored_source_sha256": "2a1b7e28afa98fd6282bb8df6a1ba47fa83d3ba651be0d3c0da6361afb25f00f",
+ "original_replacement": " entry.settle(reply)",
+ "mutated_replacement": " entry.settle(entry.permission ? { outcome: { outcome: \"cancelled\" } } : reply)"
+ },
+ {
+ "label": "permission-wrong-option",
+ "proposal_ids": [51],
+ "path": "src/main/acp/acp-structured-prompts.ts",
+ "original_sha256": "2a1b7e28afa98fd6282bb8df6a1ba47fa83d3ba651be0d3c0da6361afb25f00f",
+ "old": " entry.settle(reply)",
+ "new": " entry.settle(entry.permission ? { outcome: { outcome: \"selected\", optionId: \"wrong-option\" } } : reply)",
+ "tests": ["src/main/acp/acp-structured-omp-recordings.test.ts", "-t", "OMP recordings"],
+ "expected_test_outcome": "fail",
+ "status": "completed",
+ "started_at": 1792767628.5754805,
+ "command": [
+ "pnpm",
+ "test",
+ "src/main/acp/acp-structured-omp-recordings.test.ts",
+ "-t",
+ "OMP recordings",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-main-0001-implementation/mutation-permission-wrong-option.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "mutated_sha256": "8c2393502addb805d6366ee22b8ccdcdf810553d5be1e6975d9f993fb20889da",
+ "exit_code": 1,
+ "restored_sha256": "2a1b7e28afa98fd6282bb8df6a1ba47fa83d3ba651be0d3c0da6361afb25f00f",
+ "restored": true,
+ "finished_at": 1792767639.7822053,
+ "result": "failed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/mutation-permission-wrong-option-command.json",
+ "command_artifact_sha256": "f85415b2a988fb70902fa863ed78a62331202889f0bc347dcabeffc867f52cc4",
+ "log": "/tmp/orca-main-0001-implementation/mutation-permission-wrong-option.log",
+ "log_sha256": "c10720ed1e5e7c8a919f818d15f13efed3ba5ff2e7395ee4ee0e9a7312ad26d0",
+ "report": "/tmp/orca-main-0001-implementation/mutation-permission-wrong-option.json",
+ "report_sha256": "f40a66c86704ce759cb8ce3aee0877d60cf1af2d8a15b4baa653a50bd4db762f",
+ "test_files": 1,
+ "runtime_total": 5,
+ "passed": 2,
+ "failed": 3,
+ "skipped": 0,
+ "failures": [
+ {
+ "title": "OMP recordings through the adapter a failed command's row shows its output and exit code, not the command again",
+ "messages": [
+ "AssertionError: expected { id: +0, \u2026(1) } to deeply equal { id: +0, \u2026(1) }\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-structured-fixture-replay.test-support.ts:98:51\n at process.processTicksAndRejections (node:internal/process/task_queues:104:5)"
+ ]
+ },
+ {
+ "title": "OMP recordings through the adapter a successful command's row shows its output and exit code 0",
+ "messages": [
+ "AssertionError: expected { id: +0, \u2026(1) } to deeply equal { id: +0, \u2026(1) }\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-structured-fixture-replay.test-support.ts:98:51\n at process.processTicksAndRejections (node:internal/process/task_queues:104:5)"
+ ]
+ },
+ {
+ "title": "OMP recordings through the adapter Stop during a running command ends the turn and leaves the row without the command as output",
+ "messages": [
+ "AssertionError: expected { id: +0, \u2026(1) } to deeply equal { id: +0, \u2026(1) }\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-structured-fixture-replay.test-support.ts:98:51\n at process.processTicksAndRejections (node:internal/process/task_queues:104:5)"
+ ]
+ }
+ ],
+ "evidence_classification": "intended_assertion_failed",
+ "proved_proposal_ids": [51],
+ "scope_limit": "Wrong selected option is rejected downstream into cancelled response, and all three exact recorded permission comparisons fail.",
+ "cleanup_limit": null,
+ "production_path": "src/main/acp/acp-structured-prompts.ts",
+ "original_source_sha256": "2a1b7e28afa98fd6282bb8df6a1ba47fa83d3ba651be0d3c0da6361afb25f00f",
+ "mutated_source_sha256": "8c2393502addb805d6366ee22b8ccdcdf810553d5be1e6975d9f993fb20889da",
+ "restored_source_sha256": "2a1b7e28afa98fd6282bb8df6a1ba47fa83d3ba651be0d3c0da6361afb25f00f",
+ "original_replacement": " entry.settle(reply)",
+ "mutated_replacement": " entry.settle(entry.permission ? { outcome: { outcome: \"selected\", optionId: \"wrong-option\" } } : reply)"
+ },
+ {
+ "label": "recovery-illegal-read",
+ "proposal_ids": [10],
+ "path": "src/main/acp/acp-recovery-history.ts",
+ "original_sha256": "115befc6c6213f337cbc3fe2e18f2a146dad98d68eead194cc3f75d1a48478ef",
+ "old": " if (!load || inDoubt.length === 0) {\n return null",
+ "new": " if (!load || inDoubt.length === 0) {\n await readStoredUserMessages({ env: {}, providerSessionId: \"unrelated\", signal })\n return null",
+ "tests": ["src/main/acp/acp-recovery-history.test.ts", "-t", "accepted|damaged"],
+ "expected_test_outcome": "fail",
+ "status": "completed",
+ "started_at": 1792767576.6407406,
+ "command": [
+ "pnpm",
+ "test",
+ "src/main/acp/acp-recovery-history.test.ts",
+ "-t",
+ "accepted|damaged",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-main-0001-implementation/mutation-recovery-illegal-read.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "mutated_sha256": "a5412dd65589992389d4983e80c56b1921576eecbc67c33b056a1115a8a56afa",
+ "exit_code": 1,
+ "restored_sha256": "115befc6c6213f337cbc3fe2e18f2a146dad98d68eead194cc3f75d1a48478ef",
+ "restored": true,
+ "finished_at": 1792767579.8577363,
+ "result": "failed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/mutation-recovery-illegal-read-command.json",
+ "command_artifact_sha256": "ba62baa4986fe2f02acb660e952af6af2a8762a5417b6b5c26733fff02a58419",
+ "log": "/tmp/orca-main-0001-implementation/mutation-recovery-illegal-read.log",
+ "log_sha256": "3b51d54472b87724ec21bbfda965e2ee98d9b6dd8e234e01f9c36e2061c92d28",
+ "report": "/tmp/orca-main-0001-implementation/mutation-recovery-illegal-read.json",
+ "report_sha256": "90e0d10405e7853b36ab03890635cc0742c013b4aee2d687a80f90fe6b8ed419",
+ "test_files": 1,
+ "runtime_total": 9,
+ "passed": 1,
+ "failed": 1,
+ "skipped": 7,
+ "failures": [
+ {
+ "title": "ACP restart recovery from the agent store reads nothing with no message in doubt, a damaged journal, or no resumable session",
+ "messages": [
+ "AssertionError: expected \"vi.fn()\" to not be called at all, but actually been called 1 times\n\nReceived:\n\n 1st vi.fn() call:\n\n Array [\n Object {\n \"env\": Object {},\n \"providerSessionId\": \"unrelated\",\n \"signal\": AbortSignal {},\n },\n ]\n\n\nNumber of calls: 1\n\n at (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/index.aTZaPVhf.js:2230:51)\n at (/home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/index.aTZaPVhf.js:1958:14)\n at methodWrapper (/home/neil/.local/share/pnpm/store/v11/links/@/chai/6.3.0/25b5fcf6626be1440275f25f04f4b64170f3760bb1da107f5691c470b8dd65d1/node_modules/chai/index.js:1737:25)\n at native\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-recovery-history.test.ts:170:49"
+ ]
+ }
+ ],
+ "evidence_classification": "intended_assertion_failed",
+ "proved_proposal_ids": [10],
+ "scope_limit": "Accepted-only no-read assertion failed first. Damaged-journal no-read assertion exists and passed normal control, but is not separately killed by this invocation.",
+ "cleanup_limit": null,
+ "production_path": "src/main/acp/acp-recovery-history.ts",
+ "original_source_sha256": "115befc6c6213f337cbc3fe2e18f2a146dad98d68eead194cc3f75d1a48478ef",
+ "mutated_source_sha256": "a5412dd65589992389d4983e80c56b1921576eecbc67c33b056a1115a8a56afa",
+ "restored_source_sha256": "115befc6c6213f337cbc3fe2e18f2a146dad98d68eead194cc3f75d1a48478ef",
+ "original_replacement": " if (!load || inDoubt.length === 0) {\n return null",
+ "mutated_replacement": " if (!load || inDoubt.length === 0) {\n await readStoredUserMessages({ env: {}, providerSessionId: \"unrelated\", signal })\n return null"
+ },
+ {
+ "label": "stop-immediate",
+ "proposal_ids": [41, 42],
+ "path": "src/main/acp/acp-structured-stop.ts",
+ "original_sha256": "d8f74e52d28a4653ed80afcda9867345d98079d8d8880db5eb869be152725fdc",
+ "old": "timer = setTimeout(resolve, Math.max(0, stoppedAt + graceMs - Date.now()))",
+ "new": "timer = setTimeout(resolve, 0)",
+ "tests": [
+ "src/main/acp/acp-structured-host-stop.test.ts",
+ "-t",
+ "once it settles|at the grace"
+ ],
+ "expected_test_outcome": "fail",
+ "status": "completed",
+ "started_at": 1792767605.067705,
+ "command": [
+ "pnpm",
+ "test",
+ "src/main/acp/acp-structured-host-stop.test.ts",
+ "-t",
+ "once it settles|at the grace",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-main-0001-implementation/mutation-stop-immediate.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "mutated_sha256": "3ff68a6eb69c66239a09dc6f975ce0dde69c679d002edc4cef6dc2acf6b58889",
+ "exit_code": 1,
+ "restored_sha256": "d8f74e52d28a4653ed80afcda9867345d98079d8d8880db5eb869be152725fdc",
+ "restored": true,
+ "finished_at": 1792767610.1886525,
+ "result": "failed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/mutation-stop-immediate-command.json",
+ "command_artifact_sha256": "4fb46ceb4b65076dc9da3ecda80317c923e08e5311266cf862fc5fb827efc6e6",
+ "log": "/tmp/orca-main-0001-implementation/mutation-stop-immediate.log",
+ "log_sha256": "da7573b499037bdb5a554eecf6922226beff83b6a52f8185d54ab87651f8eecb",
+ "report": "/tmp/orca-main-0001-implementation/mutation-stop-immediate.json",
+ "report_sha256": "cab966676d55542deec29178b25b93cfc301646931b27595cd94e34008f62343",
+ "test_files": 1,
+ "runtime_total": 6,
+ "passed": 1,
+ "failed": 1,
+ "skipped": 4,
+ "failures": [
+ {
+ "title": "a Grok chat Stop ends Grok at the grace when Grok never reads the cancel, never waiting on its write",
+ "messages": [
+ "AssertionError: expected true to be false // Object.is equality\n at native\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-structured-host-stop.test.ts:108:26"
+ ]
+ }
+ ],
+ "evidence_classification": "intended_assertion_failed",
+ "proved_proposal_ids": [42],
+ "scope_limit": "Acknowledged-cancel row passed; immediate grace change was caught by grace-expiry row only.",
+ "cleanup_limit": null,
+ "production_path": "src/main/acp/acp-structured-stop.ts",
+ "original_source_sha256": "d8f74e52d28a4653ed80afcda9867345d98079d8d8880db5eb869be152725fdc",
+ "mutated_source_sha256": "3ff68a6eb69c66239a09dc6f975ce0dde69c679d002edc4cef6dc2acf6b58889",
+ "restored_source_sha256": "d8f74e52d28a4653ed80afcda9867345d98079d8d8880db5eb869be152725fdc",
+ "original_replacement": "timer = setTimeout(resolve, Math.max(0, stoppedAt + graceMs - Date.now()))",
+ "mutated_replacement": "timer = setTimeout(resolve, 0)"
+ },
+ {
+ "label": "stop-late",
+ "proposal_ids": [42],
+ "path": "src/main/acp/acp-structured-stop.ts",
+ "original_sha256": "d8f74e52d28a4653ed80afcda9867345d98079d8d8880db5eb869be152725fdc",
+ "old": "timer = setTimeout(resolve, Math.max(0, stoppedAt + graceMs - Date.now()))",
+ "new": "timer = setTimeout(resolve, Math.max(0, stoppedAt + graceMs + 1000 - Date.now()))",
+ "tests": ["src/main/acp/acp-structured-host-stop.test.ts", "-t", "at the grace"],
+ "expected_test_outcome": "fail",
+ "status": "completed",
+ "started_at": 1792767610.2138114,
+ "command": [
+ "pnpm",
+ "test",
+ "src/main/acp/acp-structured-host-stop.test.ts",
+ "-t",
+ "at the grace",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-main-0001-implementation/mutation-stop-late.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "mutated_sha256": "3ea1fc58ed974b22f2587416b256a3628fcb379d0a99e48d4d8555262336e537",
+ "exit_code": 1,
+ "restored_sha256": "d8f74e52d28a4653ed80afcda9867345d98079d8d8880db5eb869be152725fdc",
+ "restored": true,
+ "finished_at": 1792767623.6977108,
+ "result": "failed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/mutation-stop-late-command.json",
+ "command_artifact_sha256": "8d4229654b806c4befc19e835e47a77e87d641ff48810cda0ac30fdb014d3879",
+ "log": "/tmp/orca-main-0001-implementation/mutation-stop-late.log",
+ "log_sha256": "27874e9a52b893a21226f0014f58ff64927a92889e5bb36f5af55b425350076c",
+ "report": "/tmp/orca-main-0001-implementation/mutation-stop-late.json",
+ "report_sha256": "f195c25b255f9536f84838cbc76d071d57d58315aa44e48e6e070100b467f134",
+ "test_files": 1,
+ "runtime_total": 6,
+ "passed": 0,
+ "failed": 1,
+ "skipped": 5,
+ "failures": [
+ {
+ "title": "a Grok chat Stop ends Grok at the grace when Grok never reads the cancel, never waiting on its write",
+ "messages": [
+ "AssertionError: expected false to be true // Object.is equality\n at native\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-structured-host-stop.test.ts:111:29",
+ "Error: agent session host teardown phase did not finish within 8000ms\n at withPhaseTimeout (/home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/native-chat/agent-session-wire/structured-agent-session-host-teardown.ts:50:11)\n at tearDownStructuredAgentSessionHost (/home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/native-chat/agent-session-wire/structured-agent-session-host-teardown.ts:121:19)\n at flushStructuredAgentSessionHost (/home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/native-chat/agent-session-wire/structured-agent-session-host-teardown.ts:165:9)",
+ "AgentSessionJournalError: the chat journal database is closed\n at db (/home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/native-chat/agent-session-journal/journal-host-database.ts:55:13)\n at transaction (/home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/native-chat/agent-session-journal/journal-host-database.ts:67:16)\n at writeRows (/home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/native-chat/agent-session-journal/journal-row-writer.ts:111:26)\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/native-chat/agent-session-journal/journal-step-writer.ts:43:30\n at runNow (/home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/native-chat/agent-session-journal/journal-write-queue.ts:79:32)\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/native-chat/agent-session-wire/structured-agent-session-transition.ts:99:37\n at runNow (/home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/native-chat/agent-session-wire/structured-agent-session-event-sink-queue.ts:344:28)\n at handOver (/home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/native-chat/agent-session-wire/structured-agent-session-event-sink-queue.ts:229:17)\n at submit (/home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/native-chat/agent-session-wire/structured-agent-session-event-sink-queue.ts:215:12)\n at submit (/home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/native-chat/agent-session-timeline/provider-timeline-plan.ts:51:30)"
+ ]
+ }
+ ],
+ "evidence_classification": "intended_assertion_failed",
+ "proved_proposal_ids": [42],
+ "scope_limit": null,
+ "cleanup_limit": "Primary intended expiry assertion failed; teardown additionally timed out and reported journal_closed. Not classified as harness-only.",
+ "production_path": "src/main/acp/acp-structured-stop.ts",
+ "original_source_sha256": "d8f74e52d28a4653ed80afcda9867345d98079d8d8880db5eb869be152725fdc",
+ "mutated_source_sha256": "3ea1fc58ed974b22f2587416b256a3628fcb379d0a99e48d4d8555262336e537",
+ "restored_source_sha256": "d8f74e52d28a4653ed80afcda9867345d98079d8d8880db5eb869be152725fdc",
+ "original_replacement": "timer = setTimeout(resolve, Math.max(0, stoppedAt + graceMs - Date.now()))",
+ "mutated_replacement": "timer = setTimeout(resolve, Math.max(0, stoppedAt + graceMs + 1000 - Date.now()))"
+ }
+ ],
+ "positive_mutation_controls": [
+ {
+ "label": "omp-clone",
+ "proposal_ids": [2, 3, 4],
+ "path": "src/main/acp/acp-dialects/omp-dialect.ts",
+ "original_sha256": "f0be0ff957f30cdcd7c9326e64292f797a54f2da9e5e3c2c6758998819a79d54",
+ "old": "function normalizeToolUpdate(update: ToolCallUpdate): ToolCallUpdate {",
+ "new": "function normalizeToolUpdate(update: ToolCallUpdate): ToolCallUpdate {\n update = structuredClone(update)",
+ "tests": [
+ "src/main/acp/acp-dialects/omp-dialect.test.ts",
+ "-t",
+ "leaves a tool|keeps a result|existing generic"
+ ],
+ "expected_test_outcome": "pass",
+ "status": "completed",
+ "started_at": 1792767571.139765,
+ "command": [
+ "pnpm",
+ "test",
+ "src/main/acp/acp-dialects/omp-dialect.test.ts",
+ "-t",
+ "leaves a tool|keeps a result|existing generic",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-main-0001-implementation/mutation-omp-clone.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "mutated_sha256": "290991de4b6bced4f31959777d1683af961542abc91a6b05f0f979dc32f5e2af",
+ "exit_code": 0,
+ "restored_sha256": "f0be0ff957f30cdcd7c9326e64292f797a54f2da9e5e3c2c6758998819a79d54",
+ "restored": true,
+ "finished_at": 1792767574.0214312,
+ "result": "passed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/mutation-omp-clone-command.json",
+ "command_artifact_sha256": "f20114188cf5a0d990a6e1c3f4ba0de123a7ef6fda162ed9beae20b3919d3341",
+ "log": "/tmp/orca-main-0001-implementation/mutation-omp-clone.log",
+ "log_sha256": "cbb364660856ac3bb446491daf023c7ae447b1d235206d22bbdef19817f784a6",
+ "report": "/tmp/orca-main-0001-implementation/mutation-omp-clone.json",
+ "report_sha256": "e23699b609e3c85078924d5d4937d02958838eec27e5eff6b436c1c01aa29e05",
+ "test_files": 1,
+ "runtime_total": 10,
+ "passed": 3,
+ "failed": 0,
+ "skipped": 7,
+ "failures": [],
+ "evidence_classification": "positive_control_passed",
+ "proved_proposal_ids": [2, 3, 4],
+ "scope_limit": null,
+ "cleanup_limit": null,
+ "production_path": "src/main/acp/acp-dialects/omp-dialect.ts",
+ "original_source_sha256": "f0be0ff957f30cdcd7c9326e64292f797a54f2da9e5e3c2c6758998819a79d54",
+ "mutated_source_sha256": "290991de4b6bced4f31959777d1683af961542abc91a6b05f0f979dc32f5e2af",
+ "restored_source_sha256": "f0be0ff957f30cdcd7c9326e64292f797a54f2da9e5e3c2c6758998819a79d54",
+ "original_replacement": "function normalizeToolUpdate(update: ToolCallUpdate): ToolCallUpdate {",
+ "mutated_replacement": "function normalizeToolUpdate(update: ToolCallUpdate): ToolCallUpdate {\n update = structuredClone(update)"
+ }
+ ],
+ "excluded_mutation_harness_attempts": [
+ {
+ "label": "copy-no-close",
+ "proposal_ids": [1],
+ "path": "src/main/acp/acp-conversation-copy.ts",
+ "original_sha256": "7251c25b54f31aa7642530bae9c73d5832a3de70bcd0d3653f113c87af441578",
+ "old": "if (connection && !(await connection.close().catch(() => false)))",
+ "new": "if (connection && false)",
+ "tests": ["src/main/acp/acp-conversation-copy.test.ts", "-t", "cancels an unanswered fork"],
+ "expected_test_outcome": "fail",
+ "status": "completed",
+ "started_at": 1792767623.7210429,
+ "command": [
+ "pnpm",
+ "test",
+ "src/main/acp/acp-conversation-copy.test.ts",
+ "-t",
+ "cancels an unanswered fork",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-main-0001-implementation/mutation-copy-no-close.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "mutated_sha256": "2c621342dc35d5b90a5610a5dc64a9e25869e3ad745853712d67d6bbcd7a0df4",
+ "exit_code": 1,
+ "restored_sha256": "7251c25b54f31aa7642530bae9c73d5832a3de70bcd0d3653f113c87af441578",
+ "restored": true,
+ "finished_at": 1792767628.5517447,
+ "result": "failed",
+ "command_artifact": "/tmp/orca-main-0001-implementation/mutation-copy-no-close-command.json",
+ "command_artifact_sha256": "18b2cb8aeb3e7110f1d0de69422dcf66a233bd353cd08052702e7816b06c5918",
+ "log": "/tmp/orca-main-0001-implementation/mutation-copy-no-close.log",
+ "log_sha256": "64b020bcae2c5409bcbfa12e3d3edace0bd7bd3e5d739c2383fd606b2ee74cb2",
+ "report": "/tmp/orca-main-0001-implementation/mutation-copy-no-close.json",
+ "report_sha256": "6a85a80928da7aff8d8172aaf84fc7052fdcea55b55bcd31738e50a3e14aa47b",
+ "test_files": 1,
+ "runtime_total": 6,
+ "passed": 0,
+ "failed": 1,
+ "skipped": 5,
+ "failures": [
+ {
+ "title": "copying a chat conversation for the CLI cancels an unanswered fork after delivery and closes its temporary process",
+ "messages": [
+ "AssertionError: expected [ Array(1) ] to deeply equal [ Array(1) ]\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-conversation-copy.test.ts:144:11\n at Timeout.checkCallback (file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/index.aTZaPVhf.js:7182:20)\n at listOnTimeout (node:internal/timers:685:17)\n at process.processTimers (node:internal/timers:618:7)",
+ "Error: Promise returned by `expect(actual).rejects.toMatchObject(expected)` was not awaited. This assertion is asynchronous and must be awaited; otherwise, it is not guaranteed to complete before the test finishes:\n\nawait expect(actual).rejects.toMatchObject(expected)\n\n at Assertion.__VITEST_REJECTS__ (file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/index.aTZaPVhf.js:2480:33)\n at Assertion.propertyGetter (file:///home/neil/.local/share/pnpm/store/v11/links/@/chai/6.3.0/25b5fcf6626be1440275f25f04f4b64170f3760bb1da107f5691c470b8dd65d1/node_modules/chai/index.js:1607:27)\n at Reflect.get ()\n at Object.proxyGetter [as get] (file:///home/neil/.local/share/pnpm/store/v11/links/@/chai/6.3.0/25b5fcf6626be1440275f25f04f4b64170f3760bb1da107f5691c470b8dd65d1/node_modules/chai/index.js:1696:22)\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/main/acp/acp-conversation-copy.test.ts:136:35\n at file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:1632:35\n at file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:26\n at file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3338:20\n at new Promise ()\n at runWithCancel (file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3333:10)"
+ ]
+ }
+ ],
+ "evidence_classification": "harness_expectation_failure_not_counted",
+ "proved_proposal_ids": [],
+ "scope_limit": null,
+ "cleanup_limit": null,
+ "production_path": "src/main/acp/acp-conversation-copy.ts",
+ "original_source_sha256": "7251c25b54f31aa7642530bae9c73d5832a3de70bcd0d3653f113c87af441578",
+ "mutated_source_sha256": "2c621342dc35d5b90a5610a5dc64a9e25869e3ad745853712d67d6bbcd7a0df4",
+ "restored_source_sha256": "7251c25b54f31aa7642530bae9c73d5832a3de70bcd0d3653f113c87af441578",
+ "original_replacement": "if (connection && !(await connection.close().catch(() => false)))",
+ "mutated_replacement": "if (connection && false)"
+ }
+ ],
+ "excluded_harness_attempt_explanation": "Initial copy-no-close run failed on an added fork-request fixture expectation missing mcpServers: [], before reaching the owned close assertion; it is excluded as mutation proof. After correcting the expectation, the full copy control passed6 cases, and corrected copy-no-close failed exactly on closes0 versus expected1.",
+ "production_restoration": [
+ {
+ "path": "src/main/acp/acp-dialects/omp-dialect.ts",
+ "expected_sha256": "f0be0ff957f30cdcd7c9326e64292f797a54f2da9e5e3c2c6758998819a79d54",
+ "actual_sha256": "f0be0ff957f30cdcd7c9326e64292f797a54f2da9e5e3c2c6758998819a79d54",
+ "matches": true
+ },
+ {
+ "path": "src/main/acp/acp-recovery-history.ts",
+ "expected_sha256": "115befc6c6213f337cbc3fe2e18f2a146dad98d68eead194cc3f75d1a48478ef",
+ "actual_sha256": "115befc6c6213f337cbc3fe2e18f2a146dad98d68eead194cc3f75d1a48478ef",
+ "matches": true
+ },
+ {
+ "path": "src/main/acp/acp-agent-connection.ts",
+ "expected_sha256": "342ab3a8803b26d0946055c30a332c05917ce7cefc56af80bb9fe3ec37f7eeaf",
+ "actual_sha256": "342ab3a8803b26d0946055c30a332c05917ce7cefc56af80bb9fe3ec37f7eeaf",
+ "matches": true
+ },
+ {
+ "path": "src/main/native-chat/agent-session-wire/structured-agent-session-options-read.ts",
+ "expected_sha256": "fda8027d8fc14be3d114270d8223f983b6e177148db9e1190786427a283dfaa1",
+ "actual_sha256": "fda8027d8fc14be3d114270d8223f983b6e177148db9e1190786427a283dfaa1",
+ "matches": true
+ },
+ {
+ "path": "src/main/acp/acp-structured-stop.ts",
+ "expected_sha256": "d8f74e52d28a4653ed80afcda9867345d98079d8d8880db5eb869be152725fdc",
+ "actual_sha256": "d8f74e52d28a4653ed80afcda9867345d98079d8d8880db5eb869be152725fdc",
+ "matches": true
+ },
+ {
+ "path": "src/main/acp/acp-conversation-copy.ts",
+ "expected_sha256": "7251c25b54f31aa7642530bae9c73d5832a3de70bcd0d3653f113c87af441578",
+ "actual_sha256": "7251c25b54f31aa7642530bae9c73d5832a3de70bcd0d3653f113c87af441578",
+ "matches": true
+ },
+ {
+ "path": "src/main/acp/acp-structured-prompts.ts",
+ "expected_sha256": "2a1b7e28afa98fd6282bb8df6a1ba47fa83d3ba651be0d3c0da6361afb25f00f",
+ "actual_sha256": "2a1b7e28afa98fd6282bb8df6a1ba47fa83d3ba651be0d3c0da6361afb25f00f",
+ "matches": true
+ }
+ ],
+ "integrity": {
+ "record_path": "/tmp/orca-main-0001-implementation/tracker/reviews/main-0001.jsonl",
+ "record_sha256": "f801fbe0ce35478b92d732d024b35fb9e06a98bcb688094e28b5f5d4cccac423",
+ "refresh_source_path": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7/docs/audits/test-value/refresh.mjs",
+ "refresh_source_sha256": "8296df957f493fb39555831bdc45cc4aefaadfae948919805d4bc60ab06fa5ee",
+ "refresh_parser_source_sha256": "a13a325c0d4359ae5433ea898510bc93acac05c944f53fae23c1c54adb581c21",
+ "refresh_validation": "Unmodified refresh review-loading and declaration parser code executed with read interception for only the new /tmp main-0001 records. Inventory/progress write phase was excluded; no repository tracker writes.",
+ "refresh_errors": [],
+ "records": 51,
+ "immutable_git_files_checked": 52,
+ "original_whole_file_hashes_verified": 51,
+ "final_reviewed_file_hashes_verified": 51,
+ "original_case_slices_verified": 311,
+ "final_destination_case_hashes_verified": true,
+ "original_parameter_tables_verified": 44,
+ "original_parameter_rows_verified": 142,
+ "original_selected_loop_headers_and_bodies_verified": 33,
+ "additional_shared_replay_loops_verified": 2,
+ "loop_literal_rows_verified": 44,
+ "delivery_path_hashes_verified": 32,
+ "selected_originals": 50,
+ "changed_shared_support": 1,
+ "no_repository_tracker_writes": true,
+ "original_and_final_hashes_verified": true,
+ "frozen_manifest_path": "/tmp/orca-main-0001-manifest.sha256",
+ "frozen_manifest_sha256": "53fe93f1c1ae3e5eb2dafd883b8d29443e18ce8a9eb3d370f28f3937f898f997",
+ "frozen_integrity_checked_files": 35,
+ "frozen_integrity_all_match": true,
+ "production_restoration_verified": true,
+ "original_snapshot_sha256": "a33e19d46f6e5b2047f1ca14c3fb1a568893da239cb617b4be3e914378627d53",
+ "original_reviews_sha256": "a59dbf1e2c696c26eb7da7a5bd85cee68fba6f8f3dcefddc22d2c0006708cf54",
+ "original_ast_sha256": "824d6d55c67582b268d0d96bb8e8592595dd905bec61e72916491e818f1cfe98",
+ "original_input_decisions_sha256": "0017ad1a18544f29b5c10fd91cacec9d4115bc5f05b5978e7e79f6ea888fc9a4",
+ "original_mutation_plan_sha256": "5facdf530d42236b5177175d3c7b9c0b0107116cab4fc85f9d937fdc89b09054",
+ "implementation_ledger_sha256": "38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13",
+ "delivery_hash_manifest_sha256": "4cf2220f75e9f3c3133c020f377fe323eb0afffe1a13b4de5a045e49251408ae",
+ "record_generator_sha256": "83cb45e3580bdffe2080cb2988685877313412470fc5f774a9f4925a6bf88576",
+ "validation_generator_sha256": "79fe4c828bc671c87e680265b9a985dd4d7848c3017cfbbd89a9ab83bf5b1f94",
+ "tracker_integrity_verifier_sha256": "4ad1df9ca0a3522e21f583217328a213024d7be81e7311afc4322ee9a264c4c3",
+ "control_resolver_reuse": "Source-position and immutable symbol/table resolution reuses /tmp/orca-config-0006-expand-controls.mjs with Git-only loading and frozen ACP row decisions."
+ },
+ "frozen_integrity": [
+ {
+ "path": "/tmp/orca-main-0001-analyze.mjs",
+ "expected_sha256": "0515dacb82e1206dafb3e9fac4e6728a3d5ddfc12217431d078b296b16d03862",
+ "actual_sha256": "0515dacb82e1206dafb3e9fac4e6728a3d5ddfc12217431d078b296b16d03862",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-ast.json",
+ "expected_sha256": "824d6d55c67582b268d0d96bb8e8592595dd905bec61e72916491e818f1cfe98",
+ "actual_sha256": "824d6d55c67582b268d0d96bb8e8592595dd905bec61e72916491e818f1cfe98",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-boundaries.py",
+ "expected_sha256": "fd6ec9f3ed7d5d98c985af17cd08e76b1f5384ee48be18c8250d4674329f76dc",
+ "actual_sha256": "fd6ec9f3ed7d5d98c985af17cd08e76b1f5384ee48be18c8250d4674329f76dc",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-boundary-review.json",
+ "expected_sha256": "a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80",
+ "actual_sha256": "a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-boundary-review.py",
+ "expected_sha256": "54087d708b4a34979930c8ed2367df9bbb16545b2da1b25eeaad1baa1dd5b62e",
+ "actual_sha256": "54087d708b4a34979930c8ed2367df9bbb16545b2da1b25eeaad1baa1dd5b62e",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-boundary-snapshot.json",
+ "expected_sha256": "8c7f752d01395a8bfb6703b44085904183fa6de7b0de307dc5259ef579d26cdc",
+ "actual_sha256": "8c7f752d01395a8bfb6703b44085904183fa6de7b0de307dc5259ef579d26cdc",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-check-tables.mjs",
+ "expected_sha256": "1830f13a8758b06ee6bcce28d79dc071c002f6c244bc7caa07ee1848536d7ee1",
+ "actual_sha256": "1830f13a8758b06ee6bcce28d79dc071c002f6c244bc7caa07ee1848536d7ee1",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-enrich-plans.py",
+ "expected_sha256": "d2e65ed7e96c421ab9729a2249425de4f16919ecae2bcb5df1509a7bf45e5748",
+ "actual_sha256": "d2e65ed7e96c421ab9729a2249425de4f16919ecae2bcb5df1509a7bf45e5748",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-final-audit.py",
+ "expected_sha256": "5b863414db4b293b89aa1115ae529ff9429e8c27e9b6822aea708265eaadebd5",
+ "actual_sha256": "5b863414db4b293b89aa1115ae529ff9429e8c27e9b6822aea708265eaadebd5",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-finalize.py",
+ "expected_sha256": "2d63580ec7b88f5fbcaf12585300ed0fcd06897818d21fe34b856b2bef55933f",
+ "actual_sha256": "2d63580ec7b88f5fbcaf12585300ed0fcd06897818d21fe34b856b2bef55933f",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-fixture-comparison.json",
+ "expected_sha256": "4278acd46857bdff0d91d6a2a3e479442ab58c045f6e65a0ee1bec8030561242",
+ "actual_sha256": "4278acd46857bdff0d91d6a2a3e479442ab58c045f6e65a0ee1bec8030561242",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-host-decisions.py",
+ "expected_sha256": "8d7288d354eeaf14465e96bba70bffca19c9523048c0cdded122d83efd90038b",
+ "actual_sha256": "8d7288d354eeaf14465e96bba70bffca19c9523048c0cdded122d83efd90038b",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-input-decisions.json",
+ "expected_sha256": "0017ad1a18544f29b5c10fd91cacec9d4115bc5f05b5978e7e79f6ea888fc9a4",
+ "actual_sha256": "0017ad1a18544f29b5c10fd91cacec9d4115bc5f05b5978e7e79f6ea888fc9a4",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-input-decisions.py",
+ "expected_sha256": "ea9629eb77e532212f391fcc816b472098c23440372ecc3cb63aff17c8a86a32",
+ "actual_sha256": "ea9629eb77e532212f391fcc816b472098c23440372ecc3cb63aff17c8a86a32",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-integrity-check.json",
+ "expected_sha256": "343f86190456aa1039e0bfd8434dcc64b55a43bf31685bdecb2116d2bb617239",
+ "actual_sha256": "343f86190456aa1039e0bfd8434dcc64b55a43bf31685bdecb2116d2bb617239",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-integrity-check.py",
+ "expected_sha256": "6f203c788ab417c96f7af65a0c3ce2986e74d5e0944ad1f66babd5dd377306dd",
+ "actual_sha256": "6f203c788ab417c96f7af65a0c3ce2986e74d5e0944ad1f66babd5dd377306dd",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-launch-decisions.py",
+ "expected_sha256": "442ffe4c46d13b8ae9d3e2bb558bb9bd1c3cf44555a401e4a1bc63bd12a7589f",
+ "actual_sha256": "442ffe4c46d13b8ae9d3e2bb558bb9bd1c3cf44555a401e4a1bc63bd12a7589f",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-mutation-plan.json",
+ "expected_sha256": "5facdf530d42236b5177175d3c7b9c0b0107116cab4fc85f9d937fdc89b09054",
+ "actual_sha256": "5facdf530d42236b5177175d3c7b9c0b0107116cab4fc85f9d937fdc89b09054",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-mutation-plan.py",
+ "expected_sha256": "e2d565fa8eed3bd78e0f23732b229b3e37329b4552ff86176e0883b0ad1ef56d",
+ "actual_sha256": "e2d565fa8eed3bd78e0f23732b229b3e37329b4552ff86176e0883b0ad1ef56d",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-next-decisions.py",
+ "expected_sha256": "2a457a371b5fa058364527c3f40b4ea5de5acda99f92462232504717ded18348",
+ "actual_sha256": "2a457a371b5fa058364527c3f40b4ea5de5acda99f92462232504717ded18348",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-notes.md",
+ "expected_sha256": "f8149afd66b8238ba08a0c1d6a27e6a30b697c7f18f3b23e60ccd2c40e46b189",
+ "actual_sha256": "f8149afd66b8238ba08a0c1d6a27e6a30b697c7f18f3b23e60ccd2c40e46b189",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-proposals.json",
+ "expected_sha256": "3381870b0e95321a7c1e55a619586e50a29cb5522e982215e49590288dfbd4ee",
+ "actual_sha256": "3381870b0e95321a7c1e55a619586e50a29cb5522e982215e49590288dfbd4ee",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-reconcile.py",
+ "expected_sha256": "f5f41e208ef641488fffe07d91ab805b11e6348e937f74a998df31a27f2f4c43",
+ "actual_sha256": "f5f41e208ef641488fffe07d91ab805b11e6348e937f74a998df31a27f2f4c43",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-response-contract-evidence.json",
+ "expected_sha256": "f8135a3bc88fb53c2903d5332ed3e787f3ded0be94615db749cb91efdf89017f",
+ "actual_sha256": "f8135a3bc88fb53c2903d5332ed3e787f3ded0be94615db749cb91efdf89017f",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-response-evidence.py",
+ "expected_sha256": "8307fea5c1d17def2b6a265c1a16099279816c89cbad646e44cb0f45f9e36f53",
+ "actual_sha256": "8307fea5c1d17def2b6a265c1a16099279816c89cbad646e44cb0f45f9e36f53",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-reviews.jsonl",
+ "expected_sha256": "a59dbf1e2c696c26eb7da7a5bd85cee68fba6f8f3dcefddc22d2c0006708cf54",
+ "actual_sha256": "a59dbf1e2c696c26eb7da7a5bd85cee68fba6f8f3dcefddc22d2c0006708cf54",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-select.py",
+ "expected_sha256": "908cf12b9689f3534c5dca4dd27a6a1d6d638ac0beacf26348ef1623896017a7",
+ "actual_sha256": "908cf12b9689f3534c5dca4dd27a6a1d6d638ac0beacf26348ef1623896017a7",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-selection.json",
+ "expected_sha256": "16777df79345ee9c38329731be1ded7cd808d778f69935832132b740211f28ad",
+ "actual_sha256": "16777df79345ee9c38329731be1ded7cd808d778f69935832132b740211f28ad",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-session-decisions.py",
+ "expected_sha256": "1a29ec4e8847828282f7d26c3a5d7f1c1092d37406da225f0fc9b84c3cfaf401",
+ "actual_sha256": "1a29ec4e8847828282f7d26c3a5d7f1c1092d37406da225f0fc9b84c3cfaf401",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-snapshot.json",
+ "expected_sha256": "a33e19d46f6e5b2047f1ca14c3fb1a568893da239cb617b4be3e914378627d53",
+ "actual_sha256": "a33e19d46f6e5b2047f1ca14c3fb1a568893da239cb617b4be3e914378627d53",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-structured-decisions.py",
+ "expected_sha256": "0a73603fc71bbbc3fdaad0c154e4dfaa58e8fd94e852e071bfa779e81a482c02",
+ "actual_sha256": "0a73603fc71bbbc3fdaad0c154e4dfaa58e8fd94e852e071bfa779e81a482c02",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-table-cardinality-check.json",
+ "expected_sha256": "5f7605333a91aa37bb49bdf721eee2f2e51310db98096c87e0d25a83cffc99b6",
+ "actual_sha256": "5f7605333a91aa37bb49bdf721eee2f2e51310db98096c87e0d25a83cffc99b6",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-validation-plan.json",
+ "expected_sha256": "505afce65bcc930d870e4cd03b48c5851f2e578b05971a2492d1aa042a1213a9",
+ "actual_sha256": "505afce65bcc930d870e4cd03b48c5851f2e578b05971a2492d1aa042a1213a9",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-working-decisions.json",
+ "expected_sha256": "60c77fe3a85cb8e524f8905a4458ce64d0923d1e405541ae1f21e91694e8facb",
+ "actual_sha256": "60c77fe3a85cb8e524f8905a4458ce64d0923d1e405541ae1f21e91694e8facb",
+ "matches": true
+ },
+ {
+ "path": "/tmp/orca-main-0001-working-decisions.py",
+ "expected_sha256": "3077588e4267134818e4a6f999f8969af2316e42704756c48ee5c9089bed4f31",
+ "actual_sha256": "3077588e4267134818e4a6f999f8969af2316e42704756c48ee5c9089bed4f31",
+ "matches": true
+ }
+ ],
+ "delivery_hashes": {
+ "src/main/acp/acp-conversation-copy.test.ts": "520973f698e360f4de215e9739262e0609c58420fb251ff4c29c158f5c0febe2",
+ "src/main/acp/acp-dialects/omp-dialect.test.ts": "63d0c28988ba6c6e0e386e6c6c9ceb7a7bfd3c42a7fe02d64a0e12a0af1967f3",
+ "src/main/acp/acp-fixture-privacy.test.ts": "a0fe648b12f57662a3ba2cd4c2793c5f9660e6aee2ba4949b2ba3e14df8b4719",
+ "src/main/acp/acp-model-catalog-probe.test.ts": "031f49ecb81fd11983ff16f99f922c8c263e09505d90e9b1bee35fec8942e998",
+ "src/main/acp/acp-prompt-content.test.ts": "0b607135edd4b9975bed5bc007347d40f190b16c731f9b67eed142ba13e58e7d",
+ "src/main/acp/acp-recovery-history.test.ts": "d9e6d1506d3cf12e8d6005c05daeb3938ba9d5c922008545c11bb3a79c13ff2c",
+ "src/main/acp/acp-session-events.test.ts": "5c9068eb210a0bb813aab0898a3a36762328c6ee79b80911521a96109ce3fd08",
+ "src/main/acp/acp-session-lifecycle.test.ts": "082a7a9ea2cf3d989422715ec357ddb641fbde1390907c49e2adc87c2b624c2c",
+ "src/main/acp/acp-session-runtime.test.ts": "d1e525e52cb7df71f2fd3632e4740c0e7078b7acdea6a6442db67d59120ae87e",
+ "src/main/acp/acp-structured-antigravity.test.ts": "ff6fc7c8995f74a768b3c31033ec99712aa6d49fd63983dfe646ad8881292d9f",
+ "src/main/acp/acp-structured-auth.test.ts": "708a86e98fcce5ec241d2d5dfb82bcfaf137b8cae5c905f69bd1defc2a996142",
+ "src/main/acp/acp-structured-background-task-stop.test.ts": "21c18bf11301ca497d8c8e4bd369e4b62bb10a2c81b2c802d4906cae09127d62",
+ "src/main/acp/acp-structured-broken-stream.test.ts": "44692cc4cf2896548689fbaf81e55941e8ddcbaf190867563f304435d7fa04cc",
+ "src/main/acp/acp-structured-child-stop.test.ts": "5d7b5b683dcac4162f41085c2c38db2f5985a011d0fdaeded2ea7b56b67a0e43",
+ "src/main/acp/acp-structured-child-work-admission.test.ts": "e430870b63814acd288ac077e260bb2ae0b08c5254093456da9d374926b6fe2e",
+ "src/main/acp/acp-structured-child-work.test.ts": "35b97748340e0ce1b7ea92d5adc136c131d7f44093a555fccdb389ad06a76583",
+ "src/main/acp/acp-structured-compaction.test.ts": "068cb25b4f2da0fc292d768dbf6012623d68a50fec90cb160b4fc2957966ba39",
+ "src/main/acp/acp-structured-context-clear.test.ts": "496a73892d332861a48b35ec6ee4368daf4bcec8481f00da560a154e72ccec79",
+ "src/main/acp/acp-structured-electron-free.test.ts": "5c22c2b97abb6cf502f058e5f74b7a856dd4ef7d2f6bb56d27296e3c9e521803",
+ "src/main/acp/acp-structured-fixture-replay.test-support.ts": "b3161ea99b49a3aa29966b2c4414b131428886e2325e4e9e6e5503e2a0867780",
+ "src/main/acp/acp-structured-grok-subagent-recordings.test.ts": "3ad01ddde1af05fa5ed1cffc2813d06295d8bc743f4b89e3e02b8ef1cc4de52c",
+ "src/main/acp/acp-structured-host-live-listing.test.ts": "99fb4d3a89416d99f68a55fe9e56c02684fdbd213a67e7425a9b9f2a3522fc4b",
+ "src/main/acp/acp-structured-host-option-hang.test.ts": "202d1d64b81fda30ae9d8b3f002cc3b6d36621ec0cf7e5eca47e2a6931e4589d",
+ "src/main/acp/acp-structured-host-restore-failed.test.ts": "467f24bf9f41982c250426585cb295b2343046ff5441dc2f97481199a9911052",
+ "src/main/acp/acp-structured-host-start-aborts.test.ts": "c373b83e51a6fab6948d665bde89596bf0a0758991545ff05b4fc7119b4056ba",
+ "src/main/acp/acp-structured-host-stop.test.ts": "fa4fdf8db518e9c76729e80c555f00d7767f4fe9d997265dbf42a387e6ec8d6c",
+ "src/main/acp/acp-structured-launch-resolution-opencode.test.ts": "a2603bc0c5912bf5eb496eb50c7a8473b54de5ed721d38981cdd40f63464fcad",
+ "src/main/acp/acp-structured-launch-resolution.test.ts": "9dd69a846ab9a6b155f9a31c81092288048d7efb22d33233a728747f4469248a",
+ "src/main/acp/acp-structured-launch-visuals.test.ts": "5edd74b2e5e487e54362d7a12e47ba2891e9074a1555894b40d85860de0a93da",
+ "src/main/acp/acp-structured-mail-admission.test.ts": "992e5707a223b7850ce3f3e77fb08d62cf5b048a82f59e793ab54e30f26a94a9",
+ "src/main/acp/acp-structured-managed-runtime.test.ts": "2796f5b90bddb4dac2ecaa4b9e50dd5a0c668ef5636ea54db1489939855b61a8",
+ "src/main/acp/acp-structured-omp-recordings.test.ts": "4934b3c55093a7d32389794f42051d7ce8783b8afc4fcb50d0c38af1edabd498"
+ },
+ "reviewed_file_hashes": {
+ "src/main/acp/acp-agent-connection.test.ts": "7d8d3d09f67424c0a97490f6bd366ff39aa255dcdbd44bc19150f0eb943dae6e",
+ "src/main/acp/acp-compaction-journal-fixture.test.ts": "5445f066f3a729799e28522f4e3a49a860ca32c0f158abb2e521c5acd807de6e",
+ "src/main/acp/acp-conversation-copy.test.ts": "520973f698e360f4de215e9739262e0609c58420fb251ff4c29c158f5c0febe2",
+ "src/main/acp/acp-dialects/grok-subagents.test.ts": "fe4f89c85d51f9bdcacf90965abdbde8e7d8b1f4244e73f156ef83d70cd831af",
+ "src/main/acp/acp-dialects/omp-dialect.test.ts": "63d0c28988ba6c6e0e386e6c6c9ceb7a7bfd3c42a7fe02d64a0e12a0af1967f3",
+ "src/main/acp/acp-fixture-privacy.test.ts": "a0fe648b12f57662a3ba2cd4c2793c5f9660e6aee2ba4949b2ba3e14df8b4719",
+ "src/main/acp/acp-json-rpc-peer.test.ts": "15845c76d39862d8fcde746fd096830af54fcd15a5c51cfe09bfb184e8d675e6",
+ "src/main/acp/acp-model-catalog-probe.test.ts": "031f49ecb81fd11983ff16f99f922c8c263e09505d90e9b1bee35fec8942e998",
+ "src/main/acp/acp-permission-requests.test.ts": "7b23166c5e1f0d1ceb15b40e179cce6a824b5a8cad66c6494b65269d91a96a3e",
+ "src/main/acp/acp-prompt-content.test.ts": "0b607135edd4b9975bed5bc007347d40f190b16c731f9b67eed142ba13e58e7d",
+ "src/main/acp/acp-recovery-history.test.ts": "d9e6d1506d3cf12e8d6005c05daeb3938ba9d5c922008545c11bb3a79c13ff2c",
+ "src/main/acp/acp-scripted-child-runtime.test.ts": "804856a2f1bf2f37a4431165eb034788f7967daf3d786c8ec28219f3be70e27e",
+ "src/main/acp/acp-scripted-child.test-fixture.ts": "9b97cab8fba48a99bc11dbb8873c4713295357528c82cb82c9cceb50f8055484",
+ "src/main/acp/acp-scripted-connection.test-fixture.ts": "17c16b7a117268413d65d8e87df5c6159ef22bb329f521703c595721c30b8527",
+ "src/main/acp/acp-session-agent-turns.test.ts": "e41b5fab0fff07e67ee2f8fcca0c2e29645489016f74a5bc4df181a4b057ba2f",
+ "src/main/acp/acp-session-events.test.ts": "5c9068eb210a0bb813aab0898a3a36762328c6ee79b80911521a96109ce3fd08",
+ "src/main/acp/acp-session-lifecycle.test.ts": "082a7a9ea2cf3d989422715ec357ddb641fbde1390907c49e2adc87c2b624c2c",
+ "src/main/acp/acp-session-notifications.test.ts": "99439a6976af2e8a302fff6423a0bd65ff1f81f9299724d892916de9a24ff1ee",
+ "src/main/acp/acp-session-runtime.test.ts": "d1e525e52cb7df71f2fd3632e4740c0e7078b7acdea6a6442db67d59120ae87e",
+ "src/main/acp/acp-structured-antigravity.test.ts": "ff6fc7c8995f74a768b3c31033ec99712aa6d49fd63983dfe646ad8881292d9f",
+ "src/main/acp/acp-structured-auth.test.ts": "708a86e98fcce5ec241d2d5dfb82bcfaf137b8cae5c905f69bd1defc2a996142",
+ "src/main/acp/acp-structured-background-task-stop.test.ts": "21c18bf11301ca497d8c8e4bd369e4b62bb10a2c81b2c802d4906cae09127d62",
+ "src/main/acp/acp-structured-broken-stream.test.ts": "44692cc4cf2896548689fbaf81e55941e8ddcbaf190867563f304435d7fa04cc",
+ "src/main/acp/acp-structured-child-session-end.test.ts": "f2136c5e0f0ea65ee665262f4086edc56cf9d29a737752a00fb023603a05de54",
+ "src/main/acp/acp-structured-child-stop.test.ts": "5d7b5b683dcac4162f41085c2c38db2f5985a011d0fdaeded2ea7b56b67a0e43",
+ "src/main/acp/acp-structured-child-work-admission.test.ts": "e430870b63814acd288ac077e260bb2ae0b08c5254093456da9d374926b6fe2e",
+ "src/main/acp/acp-structured-child-work.test.ts": "35b97748340e0ce1b7ea92d5adc136c131d7f44093a555fccdb389ad06a76583",
+ "src/main/acp/acp-structured-compaction.test.ts": "068cb25b4f2da0fc292d768dbf6012623d68a50fec90cb160b4fc2957966ba39",
+ "src/main/acp/acp-structured-context-clear.test.ts": "496a73892d332861a48b35ec6ee4368daf4bcec8481f00da560a154e72ccec79",
+ "src/main/acp/acp-structured-electron-free.test.ts": "5c22c2b97abb6cf502f058e5f74b7a856dd4ef7d2f6bb56d27296e3c9e521803",
+ "src/main/acp/acp-structured-grok-subagent-recordings.test.ts": "3ad01ddde1af05fa5ed1cffc2813d06295d8bc743f4b89e3e02b8ef1cc4de52c",
+ "src/main/acp/acp-structured-host-configured-default.test.ts": "85fe2d6f2eb6b15e54fe763404097be183f1e96b47e8e7f7976856dab57329b2",
+ "src/main/acp/acp-structured-host-crash.test.ts": "5ebae1b8063114216a2d689395cce43a69a24b948fad2fa733ce87c805b72452",
+ "src/main/acp/acp-structured-host-lifecycle.test.ts": "20dcf409351bf4cc508d785df89f0b8760da1483a4c68742ff0ffedf72925c41",
+ "src/main/acp/acp-structured-host-live-listing.test.ts": "99fb4d3a89416d99f68a55fe9e56c02684fdbd213a67e7425a9b9f2a3522fc4b",
+ "src/main/acp/acp-structured-host-option-hang.test.ts": "202d1d64b81fda30ae9d8b3f002cc3b6d36621ec0cf7e5eca47e2a6931e4589d",
+ "src/main/acp/acp-structured-host-restore-failed.test.ts": "467f24bf9f41982c250426585cb295b2343046ff5441dc2f97481199a9911052",
+ "src/main/acp/acp-structured-host-start-aborts.test.ts": "c373b83e51a6fab6948d665bde89596bf0a0758991545ff05b4fc7119b4056ba",
+ "src/main/acp/acp-structured-host-start-failure.test.ts": "4cea0dccdb76c1c55cec22f4965453d0f9e5992ae329c6401edd9a814e8e9930",
+ "src/main/acp/acp-structured-host-stop.test.ts": "fa4fdf8db518e9c76729e80c555f00d7767f4fe9d997265dbf42a387e6ec8d6c",
+ "src/main/acp/acp-structured-host-subagent-stop.test.ts": "6e1c3a773f8713c4d2626a1584f6ed43179ef83fc655c003379de0d0a1cdf56e",
+ "src/main/acp/acp-structured-image-prompts.test.ts": "69b7508d0133f356065c7d0753c14f95b2f3935bcb7bfcc7a7df64266704c54f",
+ "src/main/acp/acp-structured-launch-resolution-omp.test.ts": "ab5a6721f1359393ed6e8d677ae4045f7317b25a3b4aa37c2d7bf27d4dabbde9",
+ "src/main/acp/acp-structured-launch-resolution-opencode.test.ts": "a2603bc0c5912bf5eb496eb50c7a8473b54de5ed721d38981cdd40f63464fcad",
+ "src/main/acp/acp-structured-launch-resolution.test.ts": "9dd69a846ab9a6b155f9a31c81092288048d7efb22d33233a728747f4469248a",
+ "src/main/acp/acp-structured-launch-visuals.test.ts": "5edd74b2e5e487e54362d7a12e47ba2891e9074a1555894b40d85860de0a93da",
+ "src/main/acp/acp-structured-mail-admission.test.ts": "992e5707a223b7850ce3f3e77fb08d62cf5b048a82f59e793ab54e30f26a94a9",
+ "src/main/acp/acp-structured-managed-runtime.test.ts": "2796f5b90bddb4dac2ecaa4b9e50dd5a0c668ef5636ea54db1489939855b61a8",
+ "src/main/acp/acp-structured-missing-model.test.ts": "51627f8046a7219ad4e4b6a8887082d6486173a72d9b391f28417870df325061",
+ "src/main/acp/acp-structured-omp-recordings.test.ts": "4934b3c55093a7d32389794f42051d7ce8783b8afc4fcb50d0c38af1edabd498",
+ "src/main/acp/acp-structured-fixture-replay.test-support.ts": "b3161ea99b49a3aa29966b2c4414b131428886e2325e4e9e6e5503e2a0867780"
+ },
+ "historical_logs_without_command_metadata": [
+ {
+ "path": "/tmp/orca-main-0001-implementation/format-initial.log",
+ "sha256": "1bfeb06af02201053b12f8a4708f4b29f23169f7f5a651a2922d69c98ccffa64",
+ "classification": "Historical initial implementation log without a separate command metadata file; not substituted for final checked command evidence."
+ },
+ {
+ "path": "/tmp/orca-main-0001-implementation/lint-initial.log",
+ "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "classification": "Historical initial implementation log without a separate command metadata file; not substituted for final checked command evidence."
+ },
+ {
+ "path": "/tmp/orca-main-0001-implementation/typecheck-initial.log",
+ "sha256": "a22171c104ed19b3e0bc5e870d71e5030349d76176655d88b5b020881c0dad38",
+ "classification": "Historical initial implementation log without a separate command metadata file; not substituted for final checked command evidence."
+ }
+ ],
+ "limitations": [
+ "Runtime verification on Linux only; Windows/macOS real process topology remains CI validation.",
+ "Direct first broken-stream case proves connection EOF handling using existing spawner seam; default supervised second case proves process-exit handling. POSIX supervisor stdout does not end when provider stdout closes.",
+ "One exact legacy fs/write_text_file -32601 diagnostic message is normalized; all permission payloads and other response/error fields compare exactly.",
+ "Mutation runs are only those with recorded command artifacts; prepared or frozen plans alone are not execution evidence.",
+ "Forced-failure cleanup injections and other frozen mutation-plan suggestions were not separately executed; corresponding implementation and normal-suite evidence is recorded without mutation claims.",
+ "Grace-immediate mutation killed the unacknowledged-cancel expiry case; acknowledged-cancel ordering has normal gated assertions but no separate executed production mutation.",
+ "The first broken-stream case directly spawns the real provider through the existing PipedProcessSpawner/process-host seam so actual stdout EOF can be observed. IPC/detached spawn bookkeeping remains, with no fabricated group/exit evidence; explicit close proves root absence. The default POSIX supervisor retains its own stdout after provider EOF, so the default supervised second case establishes process-exit behavior with an inherited-stdout descendant.",
+ "Actual subprocess validation ran on Linux only. Windows and macOS native process behavior remains CI validation; no visible app window or native-focus test was launched.",
+ "The late grace mutant failed its intended expiry assertion and subsequently timed out in teardown with journal_closed errors. Those additional errors remain in logs and are not hidden.",
+ "The immediate grace mutant proves the unacknowledged-cancel expiry case only. The acknowledged-cancel case passed that mutant; its ordering improvement has normal gated assertions, not a separately killed production mutant.",
+ "The recovery no-read mutant fails first on accepted-only recovery. The damaged-journal no-call assertion is retained and passes normal control but was not independently mutation-proven in this invocation.",
+ "Wrong permission option is rejected downstream to a cancelled response; exact replay comparisons still fail in all three OMP approval recordings, as does a directly cancelled permission response.",
+ "The shared replay normalizes only the exact legacy fs/write_text_file/-32601/old-diagnostic tuple. All other normalized response fields and permission payloads compare exactly.",
+ "Forced-failure cleanup injections and other frozen proposed mutations were not executed. Their implementation/normal control evidence is recorded without mutation claims.",
+ "Complete original case/row/loop records remain bound to immutable source commit89b3d382847f10b31a731ebd7e18aad022a4b15a, and reviewed hashes bind final delivered working bytes. A final comment/blank-line cleanup changed the launch-resolution hash after passing runtime/lint/typecheck commands; scoped final formatting passed and parent requested no logic-test rerun.",
+ "Artifacts were generated under /tmp only. The only repository edit in this tracker follow-up was the explicitly requested orphan comment/whitespace cleanup. No tracker/inventory file, Git index, commit, push, rebase or hook was changed by this agent."
+ ]
+}
diff --git a/docs/audits/test-value/reviews/main-0001.jsonl b/docs/audits/test-value/reviews/main-0001.jsonl
new file mode 100644
index 00000000000..66d5436e2a9
--- /dev/null
+++ b/docs/audits/test-value/reviews/main-0001.jsonl
@@ -0,0 +1,51 @@
+{"path":"src/main/acp/acp-agent-connection.test.ts","sha256":"7d8d3d09f67424c0a97490f6bd366ff39aa255dcdbd44bc19150f0eb943dae6e","reviewed_sha256":"7d8d3d09f67424c0a97490f6bd366ff39aa255dcdbd44bc19150f0eb943dae6e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":1,"decision":"keep","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 15. Retained the reviewed behavioral coverage; final bytes match the pinned original.","declarations":15,"original_declarations":15,"final_declarations":15,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"implementation_status":"reviewed-unchanged","cases":[{"line":74,"end_line":101,"title":"spawns through the supervisor with the host launch and exposes typed session calls","decision":"keep","reason":"Real connection/supervisor maps launch environment and RPC start/prompt while transport is an independently scripted byte peer; also checks actual PassThrough pause/resume and proven-close state.","source_body_sha256":"7b2d5c2865eac0a2265a03a441fda88406fd6ac8d66cbb64eca1f214fabc39e6","path":"src/main/acp/acp-agent-connection.test.ts","start":2744,"end":4000,"byte_start":2744,"byte_end":4000,"source":"it('spawns through the supervisor with the host launch and exposes typed session calls', async () => {\n const { connection, spawn, child, agent } = fixture()\n await connection.spawned\n expect(connection.pid).toBe(child.pid)\n expect(connection.rootVerdict).toBe('live')\n expect(connection.lastCloseResult).toBeNull()\n expect(spawn).toHaveBeenCalledExactlyOnceWith(\n expect.objectContaining({\n cwd: start.cwd,\n env: expect.objectContaining({ ACP_ACCOUNT_HOME: '/host/account' }),\n stdio: ['pipe', 'pipe', 'pipe', ...(process.platform === 'win32' ? [] : ['ipc'])]\n })\n )\n expect(spawn.mock.calls[0][0].env).not.toHaveProperty('STRIPPED')\n expect(await connection.start(start)).toMatchObject({\n sessionId: 'session-1'\n })\n agent.on('session/prompt', (frame) => agent.reply(frame, { stopReason: 'end_turn' }))\n expect(await connection.prompt([...prompt])).toEqual({\n stopReason: 'end_turn'\n })\n connection.pauseReading()\n expect(child.stdout.isPaused()).toBe(true)\n connection.resumeReading()\n expect(child.stdout.isPaused()).toBe(false)\n expect(await connection.close()).toBe(true)\n expect(connection.lastCloseResult).toEqual({ root: 'exited', tree: null })\n })","source_sha256":"7b2d5c2865eac0a2265a03a441fda88406fd6ac8d66cbb64eca1f214fabc39e6","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-agent-connection.test.ts","line":74,"title":"spawns through the supervisor with the host launch and exposes typed session calls","body_sha256":"7b2d5c2865eac0a2265a03a441fda88406fd6ac8d66cbb64eca1f214fabc39e6"},"proposal_ids":[],"explicit_input_controls":[]},{"line":103,"end_line":139,"title":"settles prompts and permission signals on proven exit with stdout still open","decision":"keep","reason":"Real root exit rejects an outstanding prompt and aborts its permission context despite stdout remaining open, with one actual exit publication.","source_body_sha256":"0ad0ee5e141168d0c5459426ecd2372fb2c751d1fbe6b199e60605e38863468d","path":"src/main/acp/acp-agent-connection.test.ts","start":4004,"end":5431,"byte_start":4004,"byte_end":5431,"source":"it('settles prompts and permission signals on proven exit with stdout still open', async () => {\n const onExit = vi.fn()\n const onClose = vi.fn()\n const permission = deferred()\n const { connection, child, agent } = fixture({\n onExit,\n onClose,\n onPermission: (_request, context) => {\n permission.resolve(context.signal)\n return new Promise(() => {})\n }\n })\n await connection.start(start)\n const rejected = expect(connection.prompt([...prompt])).rejects.toThrow('provider failed')\n void agent.request('approval', 'session/request_permission', {\n sessionId: 'session-1',\n toolCall: { toolCallId: 'tool-1' },\n options: [{ optionId: 'allow', kind: 'allow_once', name: 'Allow' }]\n })\n const signal = await permission.promise\n child.stderr.write('provider failed\\n')\n child.emit('exit', 7, null)\n child.emit('close', 7, null)\n await rejected\n expect(signal.aborted).toBe(true)\n expect(child.stdout.readableEnded).toBe(false)\n expect(connection.exited).toBe(true)\n expect(onClose).not.toHaveBeenCalled()\n expect(onExit).toHaveBeenCalledExactlyOnceWith(expect.any(Error), {\n expected: false,\n exit: { code: 7, signal: null, processless: false }\n })\n const late = vi.fn()\n connection.onExit(late)\n expect(late).toHaveBeenCalledOnce()\n await expect(connection.close()).resolves.toBe(true)\n })","source_sha256":"0ad0ee5e141168d0c5459426ecd2372fb2c751d1fbe6b199e60605e38863468d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-agent-connection.test.ts","line":103,"title":"settles prompts and permission signals on proven exit with stdout still open","body_sha256":"0ad0ee5e141168d0c5459426ecd2372fb2c751d1fbe6b199e60605e38863468d"},"proposal_ids":[],"explicit_input_controls":[]},{"line":141,"end_line":164,"title":"ends a turn signed out at a sign-in prompt line and never retains its URL","decision":"keep","reason":"A real bounded stderr/sign-in parser ends the turn and excludes a large auth URL and secret from exposed diagnostic buffers.","source_body_sha256":"adad57c346e3a9076f0f34fa7928973bc7a37b85abc1caa74dfebfb09b95a1c8","path":"src/main/acp/acp-agent-connection.test.ts","start":5435,"end":6527,"byte_start":5435,"byte_end":6527,"source":"it('ends a turn signed out at a sign-in prompt line and never retains its URL', async () => {\n const said: string[] = []\n const onExit = vi.fn((error: Error) => said.push(error.message))\n const { connection, child } = fixture({\n onExit,\n onDiagnostic: (message) => said.push(message),\n signIn: {\n read: (line) =>\n line.startsWith('Open the following link to authenticate') ? 'link' : undefined\n }\n })\n await connection.start(start)\n const turn = connection.prompt([...prompt]).catch((error: unknown) => error)\n child.stderr.write(\n `warming up\\nOpen the following link to authenticate the ACP server: https://accounts.example/auth?state=${'x'.repeat(8192)}`\n )\n child.stderr.write('s3cret\\n')\n const error = await turn\n expect(error).toBeInstanceOf(AcpAuthRequiredError)\n await vi.waitFor(() => expect(onExit).toHaveBeenCalledOnce())\n said.push(String(error), connection.stderrTail())\n expect(connection.stderrTail()).toBe('warming up')\n expect(said.join('\\n')).not.toMatch(/s3cret|accounts\\.example/)\n })","source_sha256":"adad57c346e3a9076f0f34fa7928973bc7a37b85abc1caa74dfebfb09b95a1c8","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-agent-connection.test.ts","line":141,"title":"ends a turn signed out at a sign-in prompt line and never retains its URL","body_sha256":"adad57c346e3a9076f0f34fa7928973bc7a37b85abc1caa74dfebfb09b95a1c8"},"proposal_ids":[],"explicit_input_controls":[]},{"line":166,"end_line":178,"title":"drops an overlong stderr line it could not classify instead of keeping its prefix","decision":"keep","reason":"Real line truncation discards an unclassifiable oversized stderr fragment instead of leaking its retained prefix.","source_body_sha256":"22747ec0e012db216d0872c706602745bc0fb7e1de851bc057421ea3b334f093","path":"src/main/acp/acp-agent-connection.test.ts","start":6531,"end":7142,"byte_start":6531,"byte_end":7142,"source":"it('drops an overlong stderr line it could not classify instead of keeping its prefix', async () => {\n const { connection, child } = fixture({\n signIn: {\n read: (line) => (line.endsWith('authenticate') ? 'link' : undefined)\n }\n })\n await connection.start(start)\n const link = `https://accounts.example/auth?state=${'x'.repeat(33_000)}`\n child.stderr.write(`warming up\\nplease visit ${link}`)\n child.stderr.write('s3cret\\nready\\n')\n await vi.waitFor(() => expect(connection.stderrTail()).toContain('ready'))\n expect(connection.stderrTail()).toBe('warming up\\nready')\n })","source_sha256":"22747ec0e012db216d0872c706602745bc0fb7e1de851bc057421ea3b334f093","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-agent-connection.test.ts","line":166,"title":"drops an overlong stderr line it could not classify instead of keeping its prefix","body_sha256":"22747ec0e012db216d0872c706602745bc0fb7e1de851bc057421ea3b334f093"},"proposal_ids":[],"explicit_input_controls":[]},{"line":180,"end_line":197,"title":"keeps cancel writable after stdout EOF and waits for process exit evidence","decision":"keep","reason":"Real EOF handling keeps cancellation writable and distinguishes protocol-stream EOF from process exit evidence.","source_body_sha256":"667f8b835c76ee1b29d2d5c2645c3842dd038e1dbb4566bcd89d8fa35855d297","path":"src/main/acp/acp-agent-connection.test.ts","start":7146,"end":7932,"byte_start":7146,"byte_end":7932,"source":"it('keeps cancel writable after stdout EOF and waits for process exit evidence', async () => {\n const onClose = vi.fn()\n const onExit = vi.fn()\n const { connection, child, agent } = fixture({ onClose, onExit })\n await connection.start(start)\n const rejected = expect(connection.prompt([...prompt])).rejects.toThrow('connection closed')\n child.stdout.end()\n await tick()\n expect(connection.closed).toBe(false)\n expect(connection.rootVerdict).toBe('live')\n await connection.cancel()\n expect(agent.frames.at(-1)?.method).toBe('session/cancel')\n expect(onClose).not.toHaveBeenCalled()\n expect(onExit).not.toHaveBeenCalled()\n expect(await connection.close()).toBe(true)\n await rejected\n expect(onExit.mock.calls[0][1].expected).toBe(true)\n })","source_sha256":"667f8b835c76ee1b29d2d5c2645c3842dd038e1dbb4566bcd89d8fa35855d297","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-agent-connection.test.ts","line":180,"title":"keeps cancel writable after stdout EOF and waits for process exit evidence","body_sha256":"667f8b835c76ee1b29d2d5c2645c3842dd038e1dbb4566bcd89d8fa35855d297"},"proposal_ids":[],"explicit_input_controls":[]},{"line":199,"end_line":218,"title":"reports broken stdin immediately but reports exit only after the host observes it","decision":"keep","reason":"Broken stdin settles protocol work immediately while close without exit cannot claim root death; fake timers verify cleanup.","source_body_sha256":"155fcffbd6ab4af5b40d39319b6602ee056370315da5205df9a3ef6fcba04778","path":"src/main/acp/acp-agent-connection.test.ts","start":7936,"end":8831,"byte_start":7936,"byte_end":8831,"source":"it('reports broken stdin immediately but reports exit only after the host observes it', async () => {\n vi.useFakeTimers()\n const onClose = vi.fn()\n const onExit = vi.fn()\n const { connection, child } = fixture({ onClose, onExit }, { exitOnEnd: false })\n await connection.start(start)\n const rejected = expect(connection.prompt([...prompt])).rejects.toThrow('broken pipe')\n child.stdin.emit('error', new Error('broken pipe'))\n child.emit('close', 0, null)\n await rejected\n expect(connection.closed).toBe(true)\n expect(connection.rootVerdict).toBe('live')\n expect(onClose).toHaveBeenCalledOnce()\n expect(onExit).not.toHaveBeenCalled()\n child.emit('exit', 1, null)\n await vi.advanceTimersByTimeAsync(0)\n expect(connection.rootVerdict).toBe('exited')\n expect(onExit.mock.calls[0][1].expected).toBe(false)\n expect(vi.getTimerCount()).toBe(0)\n })","source_sha256":"155fcffbd6ab4af5b40d39319b6602ee056370315da5205df9a3ef6fcba04778","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-agent-connection.test.ts","line":199,"title":"reports broken stdin immediately but reports exit only after the host observes it","body_sha256":"155fcffbd6ab4af5b40d39319b6602ee056370315da5205df9a3ef6fcba04778"},"proposal_ids":[],"explicit_input_controls":[]},{"line":220,"end_line":242,"title":"joins physical close and retries unproven exit without spawning a replacement","decision":"keep","reason":"Concurrent real close attempts join; unproven teardown can retry without spawning another child, retaining tree uncertainty.","source_body_sha256":"bbf0dd67424a30bcd8a7982328bbcacc8432beab91722de1565a08d480ff57c5","path":"src/main/acp/acp-agent-connection.test.ts","start":8835,"end":9805,"byte_start":8835,"byte_end":9805,"source":"it('joins physical close and retries unproven exit without spawning a replacement', async () => {\n vi.useFakeTimers()\n const onExit = vi.fn()\n const { connection, child, spawn } = fixture({ onExit }, { exitOnEnd: false })\n const first = connection.close()\n const joined = connection.close()\n await vi.advanceTimersByTimeAsync(grace + 1_000)\n expect(await first).toBe(false)\n expect(await joined).toBe(false)\n expect(connection.rootVerdict).toBe('live')\n expect(teardown).toHaveBeenCalledOnce()\n teardown.mockImplementationOnce(async () => {\n child.emit('exit', null, 'SIGKILL')\n return 'unverifiable'\n })\n const retry = connection.close()\n await vi.advanceTimersByTimeAsync(grace + 1_000)\n expect(await retry).toBe(true)\n expect(connection.processTreeUnproven).toBe(true)\n expect(spawn).toHaveBeenCalledOnce()\n expect(onExit.mock.calls[0][1].expected).toBe(true)\n expect(vi.getTimerCount()).toBe(0)\n })","source_sha256":"bbf0dd67424a30bcd8a7982328bbcacc8432beab91722de1565a08d480ff57c5","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-agent-connection.test.ts","line":220,"title":"joins physical close and retries unproven exit without spawning a replacement","body_sha256":"bbf0dd67424a30bcd8a7982328bbcacc8432beab91722de1565a08d480ff57c5"},"proposal_ids":[],"explicit_input_controls":[]},{"line":244,"end_line":259,"title":"ends notification draining at the bounded close result even when exit remains unproven","decision":"keep","reason":"A bounded close stops actual notification draining even if root exit remains unproven; late peer notification cannot invoke observer.","source_body_sha256":"03af98c458511e32b5a54e6ed457afb78510d9eee781a4ef45e43d16ea5410ac","path":"src/main/acp/acp-agent-connection.test.ts","start":9809,"end":10653,"byte_start":9809,"byte_end":10653,"source":"it('ends notification draining at the bounded close result even when exit remains unproven', async () => {\n vi.useFakeTimers()\n const onExtensionNotification = vi.fn()\n const { connection, agent } = fixture({ onExtensionNotification }, { exitOnEnd: false })\n await connection.start(start)\n const closing = connection.close()\n expect(connection.closed).toBe(true)\n agent.notify('_x.ai/session/update', { outcome: 'before-exit' })\n expect(onExtensionNotification).toHaveBeenCalledOnce()\n await vi.advanceTimersByTimeAsync(grace + 1_000)\n expect(await closing).toBe(false)\n expect(connection.rootVerdict).toBe('live')\n agent.notify('_x.ai/session/update', { outcome: 'after-unproven-close' })\n expect(onExtensionNotification).toHaveBeenCalledOnce()\n expect(agent.stdout.listenerCount('data')).toBe(0)\n })","source_sha256":"03af98c458511e32b5a54e6ed457afb78510d9eee781a4ef45e43d16ea5410ac","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-agent-connection.test.ts","line":244,"title":"ends notification draining at the bounded close result even when exit remains unproven","body_sha256":"03af98c458511e32b5a54e6ed457afb78510d9eee781a4ef45e43d16ea5410ac"},"proposal_ids":[],"explicit_input_controls":[]},{"line":261,"end_line":277,"title":"retains %s tree evidence when root exits between completed close attempts","decision":"keep","reason":"Both live and unverifiable completed tree verdicts remain retained after a later independent root exit; no second teardown is fabricated.","source_body_sha256":"6402f378162b0115abe97506a4e0fcdf3b058ec45a2af95e05b7a9e8d48a2307","parameter_groups":[{"path":"src/main/acp/acp-agent-connection.test.ts","line":261,"source":"['live', 'unverifiable'] as const","decision":"keep","reason":"","rows":[{"input":"live","decision":"keep","reason":"Retain completed tree evidence after later independent root exit."},{"input":"unverifiable","decision":"keep","reason":"Do not improve an uncertain descendant verdict merely because root exits."}],"row_count":2}],"path":"src/main/acp/acp-agent-connection.test.ts","start":10657,"end":11406,"byte_start":10657,"byte_end":11406,"source":"it.each(['live', 'unverifiable'] as const)(\n 'retains %s tree evidence when root exits between completed close attempts',\n async (tree) => {\n vi.useFakeTimers()\n const { connection, child } = fixture({}, { exitOnEnd: false })\n teardown.mockResolvedValueOnce(tree)\n const close = connection.close()\n await vi.advanceTimersByTimeAsync(grace + 1_000)\n expect(await close).toBe(false)\n child.emit('exit', null, 'SIGKILL')\n expect(connection.processTreeUnproven).toBe(true)\n expect(await connection.close()).toBe(true)\n expect(connection.processTreeUnproven).toBe(true)\n expect(connection.lastCloseResult).toEqual({ root: 'live', tree })\n expect(teardown).toHaveBeenCalledOnce()\n }\n )","source_sha256":"6402f378162b0115abe97506a4e0fcdf3b058ec45a2af95e05b7a9e8d48a2307","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-agent-connection.test.ts","line":261,"title":"retains %s tree evidence when root exits between completed close attempts","body_sha256":"6402f378162b0115abe97506a4e0fcdf3b058ec45a2af95e05b7a9e8d48a2307"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-agent-connection.test.ts:261:parameter-table"]},{"line":279,"end_line":301,"title":"isolates early and late exit subscribers and continues delivering exit","decision":"keep","reason":"Throwing real exit observers/diagnostic callbacks cannot suppress subsequent early or late subscribers.","source_body_sha256":"0ee72e1c2df5965f0dbb2ad07501c0604087b37387cfaa2357d38b37bcec88e3","path":"src/main/acp/acp-agent-connection.test.ts","start":11410,"end":12182,"byte_start":11410,"byte_end":12182,"source":"it('isolates early and late exit subscribers and continues delivering exit', () => {\n const onDiagnostic = vi.fn(() => {\n throw new Error('diagnostic')\n })\n const { connection, child } = fixture({ onDiagnostic })\n const failing = (): void => {\n throw new Error('observer')\n }\n const early = vi.fn()\n connection.onExit(failing)\n connection.onExit(early)\n expect(() => child.emit('exit', 0, null)).not.toThrow()\n expect(early).toHaveBeenCalledExactlyOnceWith({\n code: 0,\n signal: null,\n processless: false\n })\n expect(() => connection.onExit(failing)).not.toThrow()\n const late = vi.fn()\n connection.onExit(late)\n expect(late).toHaveBeenCalledOnce()\n expect(onDiagnostic).toHaveBeenCalledTimes(2)\n })","source_sha256":"0ee72e1c2df5965f0dbb2ad07501c0604087b37387cfaa2357d38b37bcec88e3","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-agent-connection.test.ts","line":279,"title":"isolates early and late exit subscribers and continues delivering exit","body_sha256":"0ee72e1c2df5965f0dbb2ad07501c0604087b37387cfaa2357d38b37bcec88e3"},"proposal_ids":[],"explicit_input_controls":[]},{"line":303,"end_line":317,"title":"settles a failed spawn but requires processless close evidence before reporting exit","decision":"keep","reason":"Failed spawn with no PID requires actual processless close evidence before root exit can be published.","source_body_sha256":"aaef4495dbc785c44a51b6a9416c8e6ce48e5fb272046e2963b92a6374618449","path":"src/main/acp/acp-agent-connection.test.ts","start":12186,"end":12921,"byte_start":12186,"byte_end":12921,"source":"it('settles a failed spawn but requires processless close evidence before reporting exit', async () => {\n const onExit = vi.fn()\n const { connection, child, agent } = fixture({ onExit }, { pid: null, exitOnEnd: false })\n agent.on('initialize', () => {})\n const rejected = expect(connection.initialize()).rejects.toThrow('ENOENT')\n child.emit('error', new Error('ENOENT'))\n await connection.spawned\n await rejected\n expect(connection.rootVerdict).toBe('unverifiable')\n expect(onExit).not.toHaveBeenCalled()\n child.emit('close', null, null)\n expect(connection.rootVerdict).toBe('exited')\n expect(onExit.mock.calls[0][1].exit.processless).toBe(true)\n expect(await connection.close()).toBe(true)\n })","source_sha256":"aaef4495dbc785c44a51b6a9416c8e6ce48e5fb272046e2963b92a6374618449","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-agent-connection.test.ts","line":303,"title":"settles a failed spawn but requires processless close evidence before reporting exit","body_sha256":"aaef4495dbc785c44a51b6a9416c8e6ce48e5fb272046e2963b92a6374618449"},"proposal_ids":[],"explicit_input_controls":[]},{"line":319,"end_line":332,"title":"owns stderr failure cleanup and isolates failing exit callbacks","decision":"keep","reason":"Real stderr failure triggers cleanup and isolates a throwing exit callback.","source_body_sha256":"074bcbb8495e1b91415f806e93c9ae78446bcc2f4013a040e255ee089da66c22","path":"src/main/acp/acp-agent-connection.test.ts","start":12925,"end":13437,"byte_start":12925,"byte_end":13437,"source":"it('owns stderr failure cleanup and isolates failing exit callbacks', async () => {\n const { connection, child } = fixture({\n onExit: () => {\n throw new Error('listener')\n }\n })\n await connection.start(start)\n const rejected = expect(connection.prompt([...prompt])).rejects.toThrow('stderr failure')\n child.stderr.destroy(new Error('stderr failure'))\n await rejected\n await tick()\n expect(connection.exited).toBe(true)\n expect(await connection.close()).toBe(true)\n })","source_sha256":"074bcbb8495e1b91415f806e93c9ae78446bcc2f4013a040e255ee089da66c22","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-agent-connection.test.ts","line":319,"title":"owns stderr failure cleanup and isolates failing exit callbacks","body_sha256":"074bcbb8495e1b91415f806e93c9ae78446bcc2f4013a040e255ee089da66c22"},"proposal_ids":[],"explicit_input_controls":[]},{"line":334,"end_line":344,"title":"rejects invalid peer options before starting any process","decision":"keep","reason":"Invalid peer limits take the production validation rejection path before the injected spawn boundary can be called.","source_body_sha256":"5da521a82607ee2d32b56b2e7fe9b5b746738835112b17d51c467f41ae2e4532","path":"src/main/acp/acp-agent-connection.test.ts","start":13441,"end":13804,"byte_start":13441,"byte_end":13804,"source":"it('rejects invalid peer options before starting any process', () => {\n const spawn = vi.fn()\n expect(() =>\n createAcpAgentConnection(\n { command: 'fixture', args: [] },\n { peer: { maxPendingRequests: 0 } },\n spawn\n )\n ).toThrow('positive finite integers')\n expect(spawn).not.toHaveBeenCalled()\n })","source_sha256":"5da521a82607ee2d32b56b2e7fe9b5b746738835112b17d51c467f41ae2e4532","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-agent-connection.test.ts","line":334,"title":"rejects invalid peer options before starting any process","body_sha256":"5da521a82607ee2d32b56b2e7fe9b5b746738835112b17d51c467f41ae2e4532"},"proposal_ids":[],"explicit_input_controls":[]},{"line":347,"end_line":371,"title":"settles a typed session response synchronously before the following stdout sign-in line (valid=%s)","decision":"keep","reason":"Two typed response shapes in one stdout chunk exercise actual synchronous response validation before the following sign-in line; valid and invalid rows differ.","source_body_sha256":"7d4e8409d9e84d7e0c8c8bf0625baf844639005a42cd383d4ac83b6811f43e62","parameter_groups":[{"path":"src/main/acp/acp-agent-connection.test.ts","line":347,"source":"[true, false]","decision":"keep","reason":"","rows":[{"input":"true","decision":"keep","reason":"Valid typed start response settles synchronously before sign-in line in same stdout chunk."},{"input":"false","decision":"keep","reason":"Invalid typed start response rejects before following sign-in line can replace its error."}],"row_count":2}],"path":"src/main/acp/acp-agent-connection.test.ts","start":13809,"end":14760,"byte_start":13809,"byte_end":14760,"source":"it.each([true, false])(\n 'settles a typed session response synchronously before the following stdout sign-in line (valid=%s)',\n async (valid) => {\n const answers: boolean[] = []\n const { connection, agent } = fixture({\n signIn: {\n read: (line) => (line.startsWith('SIGN IN') ? 'fixture-link' : undefined),\n answered: (answer) => answers.push(answer)\n }\n })\n agent.on('session/new', (frame) =>\n agent.stdout.write(\n `${JSON.stringify({ jsonrpc: '2.0', id: frame.id, result: valid ? { sessionId: 'accepted-session' } : {} })}\\nSIGN IN fixture-link\\n`\n )\n )\n const result = await connection.start(start).catch((error: unknown) => error)\n expect(answers).toEqual(valid ? [true, false] : [false])\n if (valid) {\n expect(result).toMatchObject({ sessionId: 'accepted-session' })\n } else {\n expect(result).toBeInstanceOf(Error)\n }\n expect(connection.closed).toBe(true)\n }\n)","source_sha256":"7d4e8409d9e84d7e0c8c8bf0625baf844639005a42cd383d4ac83b6811f43e62","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-agent-connection.test.ts","line":347,"title":"settles a typed session response synchronously before the following stdout sign-in line (valid=%s)","body_sha256":"7d4e8409d9e84d7e0c8c8bf0625baf844639005a42cd383d4ac83b6811f43e62"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-agent-connection.test.ts:347:parameter-table"]},{"line":373,"end_line":386,"title":"closes a recognized stdout prompt over 16 MiB without inventing a signed-out answer","decision":"keep","reason":"A real over-16MiB stdout line triggers bounded parse closure without fabricating another signed-in/out answer.","source_body_sha256":"5fee0236672328477fd841d364cf55c7ccbdbb957aa4667f468053f72aae2b8f","path":"src/main/acp/acp-agent-connection.test.ts","start":14762,"end":15319,"byte_start":14762,"byte_end":15319,"source":"it('closes a recognized stdout prompt over 16 MiB without inventing a signed-out answer', async () => {\n const answered = vi.fn()\n const { connection, agent } = fixture({\n signIn: {\n read: (line) => (line.startsWith('SIGN IN') ? 'prefix-only' : undefined),\n answered\n }\n })\n await connection.start(start)\n expect(answered).toHaveBeenCalledExactlyOnceWith(true)\n agent.stdout.write(`SIGN IN ${'x'.repeat(16 * 1024 * 1024)}\\n`)\n await vi.waitFor(() => expect(connection.closed).toBe(true))\n expect(answered).toHaveBeenCalledTimes(1)\n})","source_sha256":"5fee0236672328477fd841d364cf55c7ccbdbb957aa4667f468053f72aae2b8f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-agent-connection.test.ts","line":373,"title":"closes a recognized stdout prompt over 16 MiB without inventing a signed-out answer","body_sha256":"5fee0236672328477fd841d364cf55c7ccbdbb957aa4667f468053f72aae2b8f"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-agent-connection.test.ts:65:loop","kind":"for-of","path":"src/main/acp/acp-agent-connection.test.ts","line":65,"end_line":68,"start":2511,"end":2609,"byte_start":2511,"byte_end":2609,"source":"for (const { connection, exit } of opened.splice(0)) {\n exit()\n await connection.close()\n }","source_sha256":"ca49745647d14f21273e371a2d0a4d9f334a37c58f5fc874fa18b8b06e225ef8","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const { connection, exit } of opened.splice(0)) ","header_sha256":"3401bf83c2b23082289ab481f266aa0144b08b6bc70882a2c19748a0eaffca3f","input_position":{"path":"src/main/acp/acp-agent-connection.test.ts","line":65,"end_line":65,"start":2546,"end":2562,"byte_start":2546,"byte_end":2562},"binding":"const { connection, exit }","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"cleanup","decision":"keep","reason":"Closes each owned connection after publishing fake process exit; not a separate behavior case.","rows":[],"current_matches":[{"path":"src/main/acp/acp-agent-connection.test.ts","line":65,"body_sha256":"d0007e0cdb3deacc2b50bc8ba6c274d0a21050fb008601ddf93f9e0c13e3ec9f"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-agent-connection.test.ts:261:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-agent-connection.test.ts","line":261,"end_line":277,"start":10657,"end":11406,"byte_start":10657,"byte_end":11406,"source":"['live', 'unverifiable'] as const","source_sha256":"3e4faa76faca714ea0e9ceba3770d4564b406f26dbdc5b2b1028b9bf2603b896","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-agent-connection.test.ts","line":261,"end_line":261,"start":10665,"end":10698,"byte_start":10665,"byte_end":10698},"binding":"it.each","resolution":[],"enclosing_case":{"line":261,"title":"retains %s tree evidence when root exits between completed close attempts"},"affected_case_lines":[261],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-agent-connection.test.ts","line":261,"end_line":261,"start":10666,"end":10672,"source":"'live'","value":{"kind":"string","value":"live"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"b9664377c6184f6c78e6d8b7599df96208f5d4a9c6731af755336eee417a1d64","byte_start":10666,"byte_end":10672,"input_label":"live","decision":"keep","reason":"Retain completed tree evidence after later independent root exit."},{"index":2,"path":"src/main/acp/acp-agent-connection.test.ts","line":261,"end_line":261,"start":10674,"end":10688,"source":"'unverifiable'","value":{"kind":"string","value":"unverifiable"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"83e37ef4dbcc5aa39d781879261c02bb6703520d8636b4801a4f5d92bff211fd","byte_start":10674,"byte_end":10688,"input_label":"unverifiable","decision":"keep","reason":"Do not improve an uncertain descendant verdict merely because root exits."}],"original_row_count":2},{"id":"src/main/acp/acp-agent-connection.test.ts:347:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-agent-connection.test.ts","line":347,"end_line":371,"start":13809,"end":14760,"byte_start":13809,"byte_end":14760,"source":"[true, false]","source_sha256":"180c67426bd12add66bac48181939b7d9467d64a0a0eeea4604059a9af50c7d1","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-agent-connection.test.ts","line":347,"end_line":347,"start":13817,"end":13830,"byte_start":13817,"byte_end":13830},"binding":"it.each","resolution":[],"enclosing_case":{"line":347,"title":"settles a typed session response synchronously before the following stdout sign-in line (valid=%s)"},"affected_case_lines":[347],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-agent-connection.test.ts","line":347,"end_line":347,"start":13818,"end":13822,"source":"true","value":{"kind":"boolean","value":true},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"b5bea41b6c623f7c09f1bf24dcae58ebab3c0cdd90ad966bc43a45b44867e12b","byte_start":13818,"byte_end":13822,"input_label":"true","decision":"keep","reason":"Valid typed start response settles synchronously before sign-in line in same stdout chunk."},{"index":2,"path":"src/main/acp/acp-agent-connection.test.ts","line":347,"end_line":347,"start":13824,"end":13829,"source":"false","value":{"kind":"boolean","value":false},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"fcbcf165908dd18a9e49f7ff27810176db8e9f63b4352213741664245224f8aa","byte_start":13824,"byte_end":13829,"input_label":"false","decision":"keep","reason":"Invalid typed start response rejects before following sign-in line can replace its error."}],"original_row_count":2}],"parameter_groups":[{"id":"src/main/acp/acp-agent-connection.test.ts:261:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-agent-connection.test.ts","line":261,"end_line":277,"start":10657,"end":11406,"byte_start":10657,"byte_end":11406,"source":"['live', 'unverifiable'] as const","source_sha256":"3e4faa76faca714ea0e9ceba3770d4564b406f26dbdc5b2b1028b9bf2603b896","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-agent-connection.test.ts","line":261,"end_line":261,"start":10665,"end":10698,"byte_start":10665,"byte_end":10698},"binding":"it.each","resolution":[],"enclosing_case":{"line":261,"title":"retains %s tree evidence when root exits between completed close attempts"},"affected_case_lines":[261],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-agent-connection.test.ts","line":261,"end_line":261,"start":10666,"end":10672,"source":"'live'","value":{"kind":"string","value":"live"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"b9664377c6184f6c78e6d8b7599df96208f5d4a9c6731af755336eee417a1d64","byte_start":10666,"byte_end":10672,"input_label":"live","decision":"keep","reason":"Retain completed tree evidence after later independent root exit."},{"index":2,"path":"src/main/acp/acp-agent-connection.test.ts","line":261,"end_line":261,"start":10674,"end":10688,"source":"'unverifiable'","value":{"kind":"string","value":"unverifiable"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"83e37ef4dbcc5aa39d781879261c02bb6703520d8636b4801a4f5d92bff211fd","byte_start":10674,"byte_end":10688,"input_label":"unverifiable","decision":"keep","reason":"Do not improve an uncertain descendant verdict merely because root exits."}],"original_row_count":2},{"id":"src/main/acp/acp-agent-connection.test.ts:347:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-agent-connection.test.ts","line":347,"end_line":371,"start":13809,"end":14760,"byte_start":13809,"byte_end":14760,"source":"[true, false]","source_sha256":"180c67426bd12add66bac48181939b7d9467d64a0a0eeea4604059a9af50c7d1","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-agent-connection.test.ts","line":347,"end_line":347,"start":13817,"end":13830,"byte_start":13817,"byte_end":13830},"binding":"it.each","resolution":[],"enclosing_case":{"line":347,"title":"settles a typed session response synchronously before the following stdout sign-in line (valid=%s)"},"affected_case_lines":[347],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-agent-connection.test.ts","line":347,"end_line":347,"start":13818,"end":13822,"source":"true","value":{"kind":"boolean","value":true},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"b5bea41b6c623f7c09f1bf24dcae58ebab3c0cdd90ad966bc43a45b44867e12b","byte_start":13818,"byte_end":13822,"input_label":"true","decision":"keep","reason":"Valid typed start response settles synchronously before sign-in line in same stdout chunk."},{"index":2,"path":"src/main/acp/acp-agent-connection.test.ts","line":347,"end_line":347,"start":13824,"end":13829,"source":"false","value":{"kind":"boolean","value":false},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"fcbcf165908dd18a9e49f7ff27810176db8e9f63b4352213741664245224f8aa","byte_start":13824,"byte_end":13829,"input_label":"false","decision":"keep","reason":"Invalid typed start response rejects before following sign-in line can replace its error."}],"original_row_count":2}],"body_support_cleanup_loops":[{"id":"src/main/acp/acp-agent-connection.test.ts:65:loop","kind":"for-of","path":"src/main/acp/acp-agent-connection.test.ts","line":65,"end_line":68,"start":2511,"end":2609,"byte_start":2511,"byte_end":2609,"source":"for (const { connection, exit } of opened.splice(0)) {\n exit()\n await connection.close()\n }","source_sha256":"ca49745647d14f21273e371a2d0a4d9f334a37c58f5fc874fa18b8b06e225ef8","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const { connection, exit } of opened.splice(0)) ","header_sha256":"3401bf83c2b23082289ab481f266aa0144b08b6bc70882a2c19748a0eaffca3f","input_position":{"path":"src/main/acp/acp-agent-connection.test.ts","line":65,"end_line":65,"start":2546,"end":2562,"byte_start":2546,"byte_end":2562},"binding":"const { connection, exit }","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"cleanup","decision":"keep","reason":"Closes each owned connection after publishing fake process exit; not a separate behavior case.","rows":[],"current_matches":[{"path":"src/main/acp/acp-agent-connection.test.ts","line":65,"body_sha256":"d0007e0cdb3deacc2b50bc8ba6c274d0a21050fb008601ddf93f9e0c13e3ec9f"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"implemented_changes":[],"evidence":["src/main/acp/acp-agent-connection.ts","src/main/acp/acp-session-runtime.ts","src/main/provider-process/managed-provider-process.ts"],"evidence_sha256":{"src/main/acp/acp-agent-connection.ts":"342ab3a8803b26d0946055c30a332c05917ce7cefc56af80bb9fe3ec37f7eeaf","src/main/acp/acp-session-runtime.ts":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b","src/main/provider-process/managed-provider-process.ts":"c900263abd07795ed702164b2d6bcaa69d3638fb1d451cb71a4e6cb2cb675062"},"evidence_source_sha256":{"src/main/acp/acp-agent-connection.ts":"342ab3a8803b26d0946055c30a332c05917ce7cefc56af80bb9fe3ec37f7eeaf","src/main/acp/acp-session-runtime.ts":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b","src/main/provider-process/managed-provider-process.ts":"c900263abd07795ed702164b2d6bcaa69d3638fb1d451cb71a4e6cb2cb675062"},"original_evidence_detail":[{"path":"src/main/acp/acp-agent-connection.ts","sha256":"342ab3a8803b26d0946055c30a332c05917ce7cefc56af80bb9fe3ec37f7eeaf","lines":210,"read_state":"full_body_read"},{"path":"src/main/acp/acp-session-runtime.ts","sha256":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b","lines":323,"read_state":"full_body_read"},{"path":"src/main/provider-process/managed-provider-process.ts","sha256":"c900263abd07795ed702164b2d6bcaa69d3638fb1d451cb71a4e6cb2cb675062","lines":242,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"ACP process-owning connection spawns through the supervisor with the host launch and exposes typed session calls","status":"passed"},{"full_name":"ACP process-owning connection settles prompts and permission signals on proven exit with stdout still open","status":"passed"},{"full_name":"ACP process-owning connection ends a turn signed out at a sign-in prompt line and never retains its URL","status":"passed"},{"full_name":"ACP process-owning connection drops an overlong stderr line it could not classify instead of keeping its prefix","status":"passed"},{"full_name":"ACP process-owning connection keeps cancel writable after stdout EOF and waits for process exit evidence","status":"passed"},{"full_name":"ACP process-owning connection reports broken stdin immediately but reports exit only after the host observes it","status":"passed"},{"full_name":"ACP process-owning connection joins physical close and retries unproven exit without spawning a replacement","status":"passed"},{"full_name":"ACP process-owning connection ends notification draining at the bounded close result even when exit remains unproven","status":"passed"},{"full_name":"ACP process-owning connection retains live tree evidence when root exits between completed close attempts","status":"passed"},{"full_name":"ACP process-owning connection retains unverifiable tree evidence when root exits between completed close attempts","status":"passed"},{"full_name":"ACP process-owning connection isolates early and late exit subscribers and continues delivering exit","status":"passed"},{"full_name":"ACP process-owning connection settles a failed spawn but requires processless close evidence before reporting exit","status":"passed"},{"full_name":"ACP process-owning connection owns stderr failure cleanup and isolates failing exit callbacks","status":"passed"},{"full_name":"ACP process-owning connection rejects invalid peer options before starting any process","status":"passed"},{"full_name":"settles a typed session response synchronously before the following stdout sign-in line (valid=true)","status":"passed"},{"full_name":"settles a typed session response synchronously before the following stdout sign-in line (valid=false)","status":"passed"},{"full_name":"closes a recognized stdout prompt over 16 MiB without inventing a signed-out answer","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-compaction-journal-fixture.test.ts","sha256":"5445f066f3a729799e28522f4e3a49a860ca32c0f158abb2e521c5acd807de6e","reviewed_sha256":"5445f066f3a729799e28522f4e3a49a860ca32c0f158abb2e521c5acd807de6e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":2,"decision":"keep","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 1. Retained the reviewed behavioral coverage; final bytes match the pinned original.","declarations":1,"original_declarations":1,"final_declarations":1,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"implementation_status":"reviewed-unchanged","cases":[{"line":27,"end_line":33,"title":"replays the captured OMP skip into the renderer fixture without changing its outcome","decision":"keep","reason":"Captured rows pass the real journal schema/reducer and render to an independently frozen expected outcome, guarding compaction skip replay across the journal-to-render boundary.","source_body_sha256":"17279ad160287cef43eba7884e4ee2521ee1a30b83bc7147f1fca4237fc3f61f","path":"src/main/acp/acp-compaction-journal-fixture.test.ts","start":828,"end":1212,"byte_start":828,"byte_end":1212,"source":"it('replays the captured OMP skip into the renderer fixture without changing its outcome', async () => {\n const journal = await capturedCompaction()\n const expected: unknown = JSON.parse(\n await readFile(new URL('./fixtures/omp-v17-compact-skip.render.jsonl', import.meta.url), 'utf8')\n )\n expect({ items: journal.items, submissions: journal.submissions }).toEqual(expected)\n})","source_sha256":"17279ad160287cef43eba7884e4ee2521ee1a30b83bc7147f1fca4237fc3f61f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-compaction-journal-fixture.test.ts","line":27,"title":"replays the captured OMP skip into the renderer fixture without changing its outcome","body_sha256":"17279ad160287cef43eba7884e4ee2521ee1a30b83bc7147f1fca4237fc3f61f"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-compaction-journal-fixture.test.ts:16:loop","kind":"for-of","path":"src/main/acp/acp-compaction-journal-fixture.test.ts","line":16,"end_line":23,"start":542,"end":789,"byte_start":542,"byte_end":789,"source":"for (const line of text.trim().split('\\n')) {\n const parsed = parseJournalRow(line)\n expect(parsed.ok).toBe(true)\n if (!parsed.ok) {\n throw new Error('Unreadable captured journal row')\n }\n applyJournalRow(state, parsed.row)\n }","source_sha256":"ee2ba0a98be40a1a7767c6f8028b6e4527dc44ced3752e9c09fe37818cc674be","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const line of text.trim().split('\\n')) ","header_sha256":"f298b70f95a0171f77538477bbc7a04301858432a1213403f0ebcdc7895f56b7","input_position":{"path":"src/main/acp/acp-compaction-journal-fixture.test.ts","line":16,"end_line":16,"start":561,"end":584,"byte_start":561,"byte_end":584},"binding":"const line","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"fixture corpus","decision":"keep","reason":"Every captured serialized journal line must parse and preserve actual compaction/usage rows. Nonempty exact fixtures, not separate declared tests.","rows":[],"current_matches":[{"path":"src/main/acp/acp-compaction-journal-fixture.test.ts","line":16,"body_sha256":"7493e28b9e9f3c560053ba06ee0d672509e7e85cc40ff3f02378443d983968be"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"parameter_groups":[],"body_support_cleanup_loops":[{"id":"src/main/acp/acp-compaction-journal-fixture.test.ts:16:loop","kind":"for-of","path":"src/main/acp/acp-compaction-journal-fixture.test.ts","line":16,"end_line":23,"start":542,"end":789,"byte_start":542,"byte_end":789,"source":"for (const line of text.trim().split('\\n')) {\n const parsed = parseJournalRow(line)\n expect(parsed.ok).toBe(true)\n if (!parsed.ok) {\n throw new Error('Unreadable captured journal row')\n }\n applyJournalRow(state, parsed.row)\n }","source_sha256":"ee2ba0a98be40a1a7767c6f8028b6e4527dc44ced3752e9c09fe37818cc674be","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const line of text.trim().split('\\n')) ","header_sha256":"f298b70f95a0171f77538477bbc7a04301858432a1213403f0ebcdc7895f56b7","input_position":{"path":"src/main/acp/acp-compaction-journal-fixture.test.ts","line":16,"end_line":16,"start":561,"end":584,"byte_start":561,"byte_end":584},"binding":"const line","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"fixture corpus","decision":"keep","reason":"Every captured serialized journal line must parse and preserve actual compaction/usage rows. Nonempty exact fixtures, not separate declared tests.","rows":[],"current_matches":[{"path":"src/main/acp/acp-compaction-journal-fixture.test.ts","line":16,"body_sha256":"7493e28b9e9f3c560053ba06ee0d672509e7e85cc40ff3f02378443d983968be"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"implemented_changes":[],"evidence":["src/main/native-chat/agent-session-journal/journal-reducer.ts","src/main/native-chat/agent-session-journal/journal-row-schema.ts"],"evidence_sha256":{"src/main/native-chat/agent-session-journal/journal-reducer.ts":"ad5a07e5671713f40aa8948557004a6860730528757cd6f7e893ceda46185e2f","src/main/native-chat/agent-session-journal/journal-row-schema.ts":"a92d433849f2e742a9dc0f812d7eefa148b559a59dd1acdbab8ded8ef6998bcd"},"evidence_source_sha256":{"src/main/native-chat/agent-session-journal/journal-reducer.ts":"ad5a07e5671713f40aa8948557004a6860730528757cd6f7e893ceda46185e2f","src/main/native-chat/agent-session-journal/journal-row-schema.ts":"a92d433849f2e742a9dc0f812d7eefa148b559a59dd1acdbab8ded8ef6998bcd"},"original_evidence_detail":[{"path":"src/main/native-chat/agent-session-journal/journal-reducer.ts","sha256":"ad5a07e5671713f40aa8948557004a6860730528757cd6f7e893ceda46185e2f","lines":320,"read_state":"stored_not_claimed_read"},{"path":"src/main/native-chat/agent-session-journal/journal-row-schema.ts","sha256":"a92d433849f2e742a9dc0f812d7eefa148b559a59dd1acdbab8ded8ef6998bcd","lines":440,"read_state":"stored_not_claimed_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"replays the captured OMP skip into the renderer fixture without changing its outcome","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-conversation-copy.test.ts","sha256":"38a3b5c59fb91a653bb77a16f03eb94a69cd007f82950eda712799650a8569bd","reviewed_sha256":"520973f698e360f4de215e9739262e0609c58420fb251ff4c29c158f5c0febe2","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":3,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 3, fix 1. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":4,"original_declarations":4,"final_declarations":4,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":43,"end_line":79,"title":"copies a stopped and running %s chat without loading or prompting its original","decision":"keep","reason":"Both OMP and OpenCode copies use a separate real adapter/connection with correct fork wire parameters; running original receives no load/prompt and temporary child closes.","source_body_sha256":"3cba717ab91d1d98b2860bcb2186770388a98bf79a876cb1fa6d993b04d77311","parameter_groups":[{"path":"src/main/acp/acp-conversation-copy.test.ts","line":43,"source":"['omp', 'opencode'] as const","decision":"keep","reason":"","rows":[{"input":"omp","decision":"keep","reason":"Directory-bound OMP fork uses its native session protocol."},{"input":"opencode","decision":"keep","reason":"Locator-bound OpenCode fork uses its native session protocol."}],"row_count":2}],"path":"src/main/acp/acp-conversation-copy.test.ts","start":1313,"end":2687,"byte_start":1313,"byte_end":2687,"source":"it.each(['omp', 'opencode'] as const)(\n 'copies a stopped and running %s chat without loading or prompting its original',\n async (agent) => {\n const rig = await open(agent)\n const request = {\n ...input,\n identity: { ...input.identity, agent },\n accountHome:\n agent === 'omp'\n ? input.accountHome\n : { kind: 'opencode' as const, locator: { kind: 'unmanaged' as const } }\n }\n const expected = {\n sessionId: 'copy-1',\n ...(agent === 'omp' ? { filePath: '/account-a/sessions/copy-1.jsonl' } : {})\n }\n await expect(rig.adapter.copyConversation(request)).resolves.toEqual(expected)\n expect(rig.child().agent.frames.map((frame) => frame.method)).toEqual([\n 'initialize',\n 'session/fork'\n ])\n expect(rig.sent('session/fork')[0]?.params).toEqual({\n sessionId: PROVIDER_SESSION,\n cwd: '/workspace/project',\n mcpServers: []\n })\n expect(rig.child().closes).toBe(1)\n await rig.acquire()\n const chat = rig.child()\n const frames = [...chat.agent.frames]\n await expect(rig.adapter.copyConversation(request)).resolves.toEqual(expected)\n expect(chat.agent.frames).toEqual(frames)\n expect(chat.closes).toBe(0)\n expect(rig.child()).not.toBe(chat)\n expect(rig.child().closes).toBe(1)\n }\n )","source_sha256":"3cba717ab91d1d98b2860bcb2186770388a98bf79a876cb1fa6d993b04d77311","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-conversation-copy.test.ts","line":43,"title":"copies a stopped and running %s chat without loading or prompting its original","body_sha256":"3cba717ab91d1d98b2860bcb2186770388a98bf79a876cb1fa6d993b04d77311"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-conversation-copy.test.ts:43:parameter-table"]},{"line":81,"end_line":103,"title":"permits another copy after unproven cleanup and retries the retained child at shutdown","decision":"keep","reason":"Unproven temporary-child cleanup is retained for later shutdown while subsequent independent copies remain possible.","source_body_sha256":"78da13db640a923ed3b1f92d2f6db60ae4763bce04738044278acc217cacac7d","path":"src/main/acp/acp-conversation-copy.test.ts","start":2691,"end":3755,"byte_start":2691,"byte_end":3755,"source":"it('permits another copy after unproven cleanup and retries the retained child at shutdown', async () => {\n const rig = await openAcpAdapterRig({ spec: acpLaunchSpecFor('omp')!, initialize: FORKS })\n rigs.push(rig)\n const copying = rig.adapter.copyConversation(input)\n await vi.waitFor(() => expect(rig.sent('session/fork')).toHaveLength(1))\n const child = rig.child()\n child.proveClose = async () => false\n child.agent.reply(rig.sent('session/fork')[0]!, { sessionId: 'copy-1' })\n await expect(copying).resolves.toHaveProperty('sessionId', 'copy-1')\n const next = rig.adapter.copyConversation(input)\n await vi.waitFor(() => {\n expect(rig.child()).not.toBe(child)\n expect(rig.sent('session/fork')).toHaveLength(1)\n })\n rig.child().agent.reply(rig.sent('session/fork')[0]!, { sessionId: 'copy-2' })\n await expect(next).resolves.toHaveProperty('sessionId', 'copy-2')\n child.proveClose = async () => {\n child.exit()\n return true\n }\n await rig.adapter.closeAll()\n expect(child.closes).toBe(2)\n })","source_sha256":"78da13db640a923ed3b1f92d2f6db60ae4763bce04738044278acc217cacac7d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-conversation-copy.test.ts","line":81,"title":"permits another copy after unproven cleanup and retries the retained child at shutdown","body_sha256":"78da13db640a923ed3b1f92d2f6db60ae4763bce04738044278acc217cacac7d"},"proposal_ids":[],"explicit_input_controls":[]},{"line":105,"end_line":137,"title":"bounds an unanswered fork and closes its temporary process","decision":"fix","reason":"Currently only generic rejection plus close count can pass if the 10ms deadline expires before session/fork is sent; prove that the intended unanswered fork was actually issued.","source_body_sha256":"0f87a2bda5f4e817d334f45d823024f3292500b3e44bcc05ab679da07ccd2cc1","proposed_changes":[{"line":105,"decision":"fix","proposal":"Wait until the scripted peer receives session/fork before triggering a controlled cancellation/deadline; assert the observed request and owned-child closure. Replace the incidental real 10ms scheduling dependency. If retaining timeout-specific intent, use a controllable deadline seam and assert the timeout cause, not only the generic copy error.","reason":"The current setup can timeout during initialization and still satisfy every assertion."}],"path":"src/main/acp/acp-conversation-copy.test.ts","start":3759,"end":4819,"byte_start":3759,"byte_end":4819,"source":"it('bounds an unanswered fork and closes its temporary process', async () => {\n const children: FakeAcpChild[] = []\n const spec = acpLaunchSpecFor('omp')!\n await expect(\n copyAcpConversation(\n {\n spec,\n dataDirectory: '/orca-data',\n readLaunch: async () => ({\n spec,\n command: 'fake',\n args: [],\n cwd: '/repo',\n env: {},\n envToDelete: [],\n fullAccess: false,\n resume: null\n }),\n connect: (...args: ConstructorParameters) => {\n const child = new FakeAcpChild(...args)\n child.agent.on('initialize', (frame) =>\n child.agent.reply(frame, { protocolVersion: 1, ...FORKS })\n )\n children.push(child)\n return child\n }\n },\n input,\n { timeoutMs: 10, track: () => {} }\n )\n ).rejects.toThrow('OMP could not copy this chat')\n expect(children.map((child) => child.closes)).toEqual([1])\n })","source_sha256":"0f87a2bda5f4e817d334f45d823024f3292500b3e44bcc05ab679da07ccd2cc1","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-conversation-copy.test.ts","line":105,"title":"cancels an unanswered fork after delivery and closes its temporary process","body_sha256":"e32658adbe98ee5fa1a537d9e3ad93494e6ca04e8a10ff2b5d50806fadb3b5b9"},"proposal_ids":["acp-main-0001-001"],"explicit_input_controls":[]},{"line":140,"end_line":166,"title":"refuses to copy a %s chat whose arguments route to a server, before starting OpenCode","decision":"keep","reason":"Both OpenCode definitions reject server-routing launch args before launch resolution or connection creation, exercising the real host-local-copy guard.","source_body_sha256":"7aafc5cfa7a4529b469a3f434acaae4df40e422abaaaddf9673975b4f203d41d","parameter_groups":[{"path":"src/main/acp/acp-conversation-copy.test.ts","line":140,"source":"['opencode', 'opencode2'] as const","decision":"keep","reason":"","rows":[{"input":"opencode","decision":"keep","reason":"Reject stock binary copy args that target another store."},{"input":"opencode2","decision":"keep","reason":"Preserve alias-specific wrong-store rejection as same account, different executable."}],"row_count":2}],"path":"src/main/acp/acp-conversation-copy.test.ts","start":4914,"end":5785,"byte_start":4914,"byte_end":5785,"source":"it.each(['opencode', 'opencode2'] as const)(\n 'refuses to copy a %s chat whose arguments route to a server, before starting OpenCode',\n async (agent) => {\n const spec = acpLaunchSpecFor(agent)!\n const connect = vi.fn()\n await expect(\n copyAcpConversation(\n {\n spec,\n dataDirectory: '/orca-data',\n resolveLaunchArgs: () => ['--server', 'https://other-host:4096'],\n readLaunch: async () => {\n throw new Error('not reached')\n },\n connect\n },\n {\n ...input,\n identity: { ...input.identity, agent },\n accountHome: { kind: 'opencode', locator: { kind: 'unmanaged' } }\n },\n { track: () => {} }\n )\n ).rejects.toThrow('--server')\n expect(connect).not.toHaveBeenCalled()\n }\n )","source_sha256":"7aafc5cfa7a4529b469a3f434acaae4df40e422abaaaddf9673975b4f203d41d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-conversation-copy.test.ts","line":158,"title":"refuses to copy a %s chat whose arguments route to a server, before starting OpenCode","body_sha256":"7aafc5cfa7a4529b469a3f434acaae4df40e422abaaaddf9673975b4f203d41d"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-conversation-copy.test.ts:140:parameter-table"]}],"explicit_input_controls":[{"id":"src/main/acp/acp-conversation-copy.test.ts:43:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-conversation-copy.test.ts","line":43,"end_line":79,"start":1313,"end":2687,"byte_start":1313,"byte_end":2687,"source":"['omp', 'opencode'] as const","source_sha256":"02b72e08b4d1c802bb2d7acd7ba5dc1e05ae07f15c5d4be6babefd407383e317","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-conversation-copy.test.ts","line":43,"end_line":43,"start":1321,"end":1349,"byte_start":1321,"byte_end":1349},"binding":"it.each","resolution":[],"enclosing_case":{"line":43,"title":"copies a stopped and running %s chat without loading or prompting its original"},"affected_case_lines":[43],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-conversation-copy.test.ts","line":43,"end_line":43,"start":1322,"end":1327,"source":"'omp'","value":{"kind":"string","value":"omp"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"0fd4f26f3bf93224c5f0f449b4903f16f676165b1fae2d74a872d568c7afb733","byte_start":1322,"byte_end":1327,"input_label":"omp","decision":"keep","reason":"Directory-bound OMP fork uses its native session protocol."},{"index":2,"path":"src/main/acp/acp-conversation-copy.test.ts","line":43,"end_line":43,"start":1329,"end":1339,"source":"'opencode'","value":{"kind":"string","value":"opencode"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e52f090977516f88e9a87d94dd486ce40fe014c11fdcc92d5d5441fd323bf713","byte_start":1329,"byte_end":1339,"input_label":"opencode","decision":"keep","reason":"Locator-bound OpenCode fork uses its native session protocol."}],"original_row_count":2},{"id":"src/main/acp/acp-conversation-copy.test.ts:140:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-conversation-copy.test.ts","line":140,"end_line":166,"start":4914,"end":5785,"byte_start":4914,"byte_end":5785,"source":"['opencode', 'opencode2'] as const","source_sha256":"e9a954e7d0a883a86fc9e7e8e60498073de72242ab6855397e9220a04fdb4d4c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-conversation-copy.test.ts","line":140,"end_line":140,"start":4922,"end":4956,"byte_start":4922,"byte_end":4956},"binding":"it.each","resolution":[],"enclosing_case":{"line":140,"title":"refuses to copy a %s chat whose arguments route to a server, before starting OpenCode"},"affected_case_lines":[140],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-conversation-copy.test.ts","line":140,"end_line":140,"start":4923,"end":4933,"source":"'opencode'","value":{"kind":"string","value":"opencode"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e52f090977516f88e9a87d94dd486ce40fe014c11fdcc92d5d5441fd323bf713","byte_start":4923,"byte_end":4933,"input_label":"opencode","decision":"keep","reason":"Reject stock binary copy args that target another store."},{"index":2,"path":"src/main/acp/acp-conversation-copy.test.ts","line":140,"end_line":140,"start":4935,"end":4946,"source":"'opencode2'","value":{"kind":"string","value":"opencode2"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"907a20c58e58fc5f587549636853a716614dd88d9ea0de4a53f48c121eb01b71","byte_start":4935,"byte_end":4946,"input_label":"opencode2","decision":"keep","reason":"Preserve alias-specific wrong-store rejection as same account, different executable."}],"original_row_count":2}],"parameter_groups":[{"id":"src/main/acp/acp-conversation-copy.test.ts:43:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-conversation-copy.test.ts","line":43,"end_line":79,"start":1313,"end":2687,"byte_start":1313,"byte_end":2687,"source":"['omp', 'opencode'] as const","source_sha256":"02b72e08b4d1c802bb2d7acd7ba5dc1e05ae07f15c5d4be6babefd407383e317","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-conversation-copy.test.ts","line":43,"end_line":43,"start":1321,"end":1349,"byte_start":1321,"byte_end":1349},"binding":"it.each","resolution":[],"enclosing_case":{"line":43,"title":"copies a stopped and running %s chat without loading or prompting its original"},"affected_case_lines":[43],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-conversation-copy.test.ts","line":43,"end_line":43,"start":1322,"end":1327,"source":"'omp'","value":{"kind":"string","value":"omp"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"0fd4f26f3bf93224c5f0f449b4903f16f676165b1fae2d74a872d568c7afb733","byte_start":1322,"byte_end":1327,"input_label":"omp","decision":"keep","reason":"Directory-bound OMP fork uses its native session protocol."},{"index":2,"path":"src/main/acp/acp-conversation-copy.test.ts","line":43,"end_line":43,"start":1329,"end":1339,"source":"'opencode'","value":{"kind":"string","value":"opencode"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e52f090977516f88e9a87d94dd486ce40fe014c11fdcc92d5d5441fd323bf713","byte_start":1329,"byte_end":1339,"input_label":"opencode","decision":"keep","reason":"Locator-bound OpenCode fork uses its native session protocol."}],"original_row_count":2},{"id":"src/main/acp/acp-conversation-copy.test.ts:140:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-conversation-copy.test.ts","line":140,"end_line":166,"start":4914,"end":5785,"byte_start":4914,"byte_end":5785,"source":"['opencode', 'opencode2'] as const","source_sha256":"e9a954e7d0a883a86fc9e7e8e60498073de72242ab6855397e9220a04fdb4d4c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-conversation-copy.test.ts","line":140,"end_line":140,"start":4922,"end":4956,"byte_start":4922,"byte_end":4956},"binding":"it.each","resolution":[],"enclosing_case":{"line":140,"title":"refuses to copy a %s chat whose arguments route to a server, before starting OpenCode"},"affected_case_lines":[140],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-conversation-copy.test.ts","line":140,"end_line":140,"start":4923,"end":4933,"source":"'opencode'","value":{"kind":"string","value":"opencode"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e52f090977516f88e9a87d94dd486ce40fe014c11fdcc92d5d5441fd323bf713","byte_start":4923,"byte_end":4933,"input_label":"opencode","decision":"keep","reason":"Reject stock binary copy args that target another store."},{"index":2,"path":"src/main/acp/acp-conversation-copy.test.ts","line":140,"end_line":140,"start":4935,"end":4946,"source":"'opencode2'","value":{"kind":"string","value":"opencode2"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"907a20c58e58fc5f587549636853a716614dd88d9ea0de4a53f48c121eb01b71","byte_start":4935,"byte_end":4946,"input_label":"opencode2","decision":"keep","reason":"Preserve alias-specific wrong-store rejection as same account, different executable."}],"original_row_count":2}],"body_support_cleanup_loops":[],"implemented_changes":[{"proposal_id":"acp-main-0001-001","summary":"Fork delivery is observed with exact sessionId/cwd/mcpServers before caller cancellation; wrapped cause and owned close are asserted.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"executed_see_scope_limits","mutation_evidence":["copy-no-close-corrected"]}],"evidence":["src/main/acp/acp-conversation-copy.ts","src/main/acp/acp-structured-session-adapter.ts"],"evidence_sha256":{"src/main/acp/acp-conversation-copy.ts":"7251c25b54f31aa7642530bae9c73d5832a3de70bcd0d3653f113c87af441578","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"evidence_source_sha256":{"src/main/acp/acp-conversation-copy.ts":"7251c25b54f31aa7642530bae9c73d5832a3de70bcd0d3653f113c87af441578","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"original_evidence_detail":[{"path":"src/main/acp/acp-conversation-copy.ts","sha256":"7251c25b54f31aa7642530bae9c73d5832a3de70bcd0d3653f113c87af441578","lines":149,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-session-adapter.ts","sha256":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e","lines":345,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"copying a chat conversation for the CLI copies a stopped and running omp chat without loading or prompting its original","status":"passed"},{"full_name":"copying a chat conversation for the CLI copies a stopped and running opencode chat without loading or prompting its original","status":"passed"},{"full_name":"copying a chat conversation for the CLI permits another copy after unproven cleanup and retries the retained child at shutdown","status":"passed"},{"full_name":"copying a chat conversation for the CLI cancels an unanswered fork after delivery and closes its temporary process","status":"passed"},{"full_name":"copying a chat conversation for the CLI refuses to copy a opencode chat whose arguments route to a server, before starting OpenCode","status":"passed"},{"full_name":"copying a chat conversation for the CLI refuses to copy a opencode2 chat whose arguments route to a server, before starting OpenCode","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","sha256":"fe4f89c85d51f9bdcacf90965abdbde8e7d8b1f4244e73f156ef83d70cd831af","reviewed_sha256":"fe4f89c85d51f9bdcacf90965abdbde8e7d8b1f4244e73f156ef83d70cd831af","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":4,"decision":"keep","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 12. Retained the reviewed behavioral coverage; final bytes match the pinned original.","declarations":12,"original_declarations":12,"final_declarations":12,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"implementation_status":"reviewed-unchanged","cases":[{"line":20,"end_line":32,"title":"reads a spawn with its description, its spawning turn and nothing it cannot show","decision":"keep","reason":"Real notification parser selects visible spawn identity/label/turn and drops private/unrenderable fields.","source_body_sha256":"80cd42fd0f7d2a3aacaa9fcf8af7853b84ebc7db9bde68d599b1096b516c7978","path":"src/main/acp/acp-dialects/grok-subagents.test.ts","start":934,"end":1451,"byte_start":934,"byte_end":1451,"source":"it('reads a spawn with its description, its spawning turn and nothing it cannot show', () => {\n expect(\n grokSubagentNotification({\n sessionUpdate: 'subagent_spawned',\n subagent_id: 'subagent-1',\n child_session_id: 'subagent-1',\n parent_prompt_id: 'prompt-1',\n subagent_type: 'general-purpose',\n description: 'Count note lines',\n model: 'grok-4.7'\n })\n ).toEqual({ id: 'subagent-1', state: 'working', label: 'Count note lines', turn: 'prompt-1' })\n })","source_sha256":"80cd42fd0f7d2a3aacaa9fcf8af7853b84ebc7db9bde68d599b1096b516c7978","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":20,"title":"reads a spawn with its description, its spawning turn and nothing it cannot show","body_sha256":"80cd42fd0f7d2a3aacaa9fcf8af7853b84ebc7db9bde68d599b1096b516c7978"},"proposal_ids":[],"explicit_input_controls":[]},{"line":34,"end_line":42,"title":"labels a spawn with no description by its type","decision":"keep","reason":"Missing description follows the actual fallback type label mapping.","source_body_sha256":"fbb2ad1d07d17cd56d734ea09202238fc7817d84c40eb01847c21ebc4190f2c6","path":"src/main/acp/acp-dialects/grok-subagents.test.ts","start":1455,"end":1757,"byte_start":1455,"byte_end":1757,"source":"it('labels a spawn with no description by its type', () => {\n expect(\n grokSubagentNotification({\n sessionUpdate: 'subagent_spawned',\n subagent_id: 'subagent-1',\n subagent_type: 'explore'\n })\n ).toEqual({ id: 'subagent-1', state: 'working', label: 'explore' })\n })","source_sha256":"fbb2ad1d07d17cd56d734ea09202238fc7817d84c40eb01847c21ebc4190f2c6","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":34,"title":"labels a spawn with no description by its type","body_sha256":"fbb2ad1d07d17cd56d734ea09202238fc7817d84c40eb01847c21ebc4190f2c6"},"proposal_ids":[],"explicit_input_controls":[]},{"line":44,"end_line":52,"title":"reads progress as tokens only","decision":"keep","reason":"Progress updates preserve nonzero token count without inventing a terminal state.","source_body_sha256":"5dd708c3fc43dfb69b3043e11522dd0ff575c9c060496e7bcd3c4026dd9f00bd","path":"src/main/acp/acp-dialects/grok-subagents.test.ts","start":1761,"end":2018,"byte_start":1761,"byte_end":2018,"source":"it('reads progress as tokens only', () => {\n expect(\n grokSubagentNotification({\n sessionUpdate: 'subagent_progress',\n subagent_id: 'subagent-1',\n tokens_used: 4091\n })\n ).toEqual({ id: 'subagent-1', tokens: 4091 })\n })","source_sha256":"5dd708c3fc43dfb69b3043e11522dd0ff575c9c060496e7bcd3c4026dd9f00bd","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":44,"title":"reads progress as tokens only","body_sha256":"5dd708c3fc43dfb69b3043e11522dd0ff575c9c060496e7bcd3c4026dd9f00bd"},"proposal_ids":[],"explicit_input_controls":[]},{"line":54,"end_line":70,"title":"reads a %s finish","decision":"keep","reason":"Four explicit completion statuses select completed/failed/stopped/unknown behavior; only completed output is exposed and zero tokens do not overwrite progress.","source_body_sha256":"cd0e326540a23c0a30520c22d69c6f4665a5bb3d3b979fcf3846576d99e116b4","parameter_groups":[{"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":54,"source":"[\n ['completed', { state: 'completed', result: '4' }],\n ['failed', { state: 'failed' }],\n ['cancelled', { state: 'stopped' }],\n ['something-new', {}]\n ] as const","decision":"keep","reason":"","rows":[{"input":"completed","decision":"keep","reason":"Terminal success maps result text 4."},{"input":"failed","decision":"keep","reason":"Terminal failure maps failed."},{"input":"cancelled","decision":"keep","reason":"Terminal cancellation maps stopped."},{"input":"something-new","decision":"keep","reason":"Unknown terminal state supplies no fabricated outcome."}],"row_count":4}],"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","start":2022,"end":2612,"byte_start":2022,"byte_end":2612,"source":"it.each([\n ['completed', { state: 'completed', result: '4' }],\n ['failed', { state: 'failed' }],\n ['cancelled', { state: 'stopped' }],\n ['something-new', {}]\n ] as const)('reads a %s finish', (status, expected) => {\n expect(\n grokSubagentNotification({\n sessionUpdate: 'subagent_finished',\n subagent_id: 'subagent-1',\n status,\n output: status === 'completed' ? '4' : undefined,\n error: status === 'completed' ? undefined : 'Subagent was cancelled',\n tokens_used: 0\n })\n ).toEqual({ id: 'subagent-1', ...expected })\n })","source_sha256":"cd0e326540a23c0a30520c22d69c6f4665a5bb3d3b979fcf3846576d99e116b4","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":54,"title":"reads a %s finish","body_sha256":"cd0e326540a23c0a30520c22d69c6f4665a5bb3d3b979fcf3846576d99e116b4"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-dialects/grok-subagents.test.ts:54:parameter-table"]},{"line":72,"end_line":75,"title":"ignores every other update","decision":"keep","reason":"Unrelated and malformed spawn notifications take real schema rejection paths.","source_body_sha256":"82177a7a9c7bb559f1cf66ea9d63e18ceee20f0093bbe25e18905cf458ce74e0","path":"src/main/acp/acp-dialects/grok-subagents.test.ts","start":2616,"end":2843,"byte_start":2616,"byte_end":2843,"source":"it('ignores every other update', () => {\n expect(grokSubagentNotification({ sessionUpdate: 'turn_completed' })).toBeUndefined()\n expect(grokSubagentNotification({ sessionUpdate: 'subagent_spawned' })).toBeUndefined()\n })","source_sha256":"82177a7a9c7bb559f1cf66ea9d63e18ceee20f0093bbe25e18905cf458ce74e0","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":72,"title":"ignores every other update","body_sha256":"82177a7a9c7bb559f1cf66ea9d63e18ceee20f0093bbe25e18905cf458ce74e0"},"proposal_ids":[],"explicit_input_controls":[]},{"line":77,"end_line":93,"title":"maps the extension notification, and leaves a replayed one to the load","decision":"keep","reason":"Real Grok extension route maps progress and records replay metadata; this unit does not itself prove the adapter suppresses replay.","source_body_sha256":"32c789732bdb8e3171b2951b248bc5430829bddb1d65cf3f91fcc5ba272042e5","path":"src/main/acp/acp-dialects/grok-subagents.test.ts","start":2847,"end":3476,"byte_start":2847,"byte_end":3476,"source":"it('maps the extension notification, and leaves a replayed one to the load', () => {\n const params = {\n sessionId: 'session-1',\n update: { sessionUpdate: 'subagent_progress', subagent_id: 'subagent-1', tokens_used: 9 }\n }\n expect(GROK_ACP_DIALECT.notification?.('_x.ai/session_notification', params, 1)).toEqual({\n disposition: 'map',\n subagents: [{ id: 'subagent-1', tokens: 9 }]\n })\n expect(\n GROK_ACP_DIALECT.notification?.(\n 'x.ai/session/update',\n { ...params, _meta: { isReplay: true } },\n 1\n )\n ).toMatchObject({ disposition: 'map', replay: true })\n })","source_sha256":"32c789732bdb8e3171b2951b248bc5430829bddb1d65cf3f91fcc5ba272042e5","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":77,"title":"maps the extension notification, and leaves a replayed one to the load","body_sha256":"32c789732bdb8e3171b2951b248bc5430829bddb1d65cf3f91fcc5ba272042e5"},"proposal_ids":[],"explicit_input_controls":[]},{"line":99,"end_line":112,"title":"ends a foreground spawn with its reply, the machine blocks removed","decision":"keep","reason":"Real completed-spawn parser strips machine metadata/result blocks while preserving human output and description.","source_body_sha256":"2a6f68f2e6454f674ad691bcb25aa583c086371879beadbb1c04d86d75bc6355","path":"src/main/acp/acp-dialects/grok-subagents.test.ts","start":3612,"end":4074,"byte_start":3612,"byte_end":4074,"source":"it('ends a foreground spawn with its reply, the machine blocks removed', () => {\n expect(\n grokToolSubagents(\n finished({\n rawOutput: {\n type: 'SubagentCompleted',\n subagent_id: 'subagent-1',\n output: `4${SUBAGENT_RESULT_TAIL}`\n }\n }),\n tool('spawn_subagent', spawnInput)\n )\n ).toEqual([{ id: 'subagent-1', state: 'completed', label: 'Count note lines', result: '4' }])\n })","source_sha256":"2a6f68f2e6454f674ad691bcb25aa583c086371879beadbb1c04d86d75bc6355","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":99,"title":"ends a foreground spawn with its reply, the machine blocks removed","body_sha256":"2a6f68f2e6454f674ad691bcb25aa583c086371879beadbb1c04d86d75bc6355"},"proposal_ids":[],"explicit_input_controls":[]},{"line":114,"end_line":126,"title":"keeps a background spawn running from its acknowledgement, labelled by the prompt when undescribed","decision":"keep","reason":"Real background acknowledgement parser extracts id and first-line prompt fallback while preserving working state.","source_body_sha256":"ff8ffe81d8049585c237ad05f98167434e7d49d52cb73fbc6fd156bdc8d4354d","path":"src/main/acp/acp-dialects/grok-subagents.test.ts","start":4078,"end":4579,"byte_start":4078,"byte_end":4579,"source":"it('keeps a background spawn running from its acknowledgement, labelled by the prompt when undescribed', () => {\n expect(\n grokToolSubagents(\n finished({\n rawOutput: {\n type: 'Text',\n text: 'Subagent started in background.\\nsubagent_id: subagent-2\\ndescription: x\\n'\n }\n }),\n tool('spawn_subagent', { prompt: 'List the files\\nand more' })\n )\n ).toEqual([{ id: 'subagent-2', state: 'working', label: 'List the files' }])\n })","source_sha256":"ff8ffe81d8049585c237ad05f98167434e7d49d52cb73fbc6fd156bdc8d4354d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":114,"title":"keeps a background spawn running from its acknowledgement, labelled by the prompt when undescribed","body_sha256":"ff8ffe81d8049585c237ad05f98167434e7d49d52cb73fbc6fd156bdc8d4354d"},"proposal_ids":[],"explicit_input_controls":[]},{"line":128,"end_line":132,"title":"reads nothing from a spawn that has not finished","decision":"keep","reason":"In-progress spawn is rejected by the actual completed-tool guard.","source_body_sha256":"5efd8949bc5271974e2a67dc3162c117c7a4e6109fefd040240fdfb0cca896b6","path":"src/main/acp/acp-dialects/grok-subagents.test.ts","start":4583,"end":4777,"byte_start":4583,"byte_end":4777,"source":"it('reads nothing from a spawn that has not finished', () => {\n expect(\n grokToolSubagents(finished({ status: 'in_progress' }), tool('spawn_subagent', spawnInput))\n ).toEqual([])\n })","source_sha256":"5efd8949bc5271974e2a67dc3162c117c7a4e6109fefd040240fdfb0cca896b6","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":128,"title":"reads nothing from a spawn that has not finished","body_sha256":"5efd8949bc5271974e2a67dc3162c117c7a4e6109fefd040240fdfb0cca896b6"},"proposal_ids":[],"explicit_input_controls":[]},{"line":134,"end_line":166,"title":"settles known subagents from an output read, and leaves its shell tasks alone","decision":"keep","reason":"Mixed TaskOutput results split real subagent versus shell task handling and strip subagent machine blocks.","source_body_sha256":"4fae59f782cef2fafebae65ec62bf7139fc0adf6abef4d43509f7bcbd503255b","path":"src/main/acp/acp-dialects/grok-subagents.test.ts","start":4781,"end":5988,"byte_start":4781,"byte_end":5988,"source":"it('settles known subagents from an output read, and leaves its shell tasks alone', () => {\n const update = finished({\n rawOutput: {\n type: 'TaskOutput',\n MultiResult: {\n results: [\n {\n task_id: 'subagent-1',\n command: '[subagent:general-purpose] List folder files',\n status: 'completed',\n output: `notes.txt, README.md${SUBAGENT_RESULT_TAIL}`\n },\n {\n task_id: 'subagent-2',\n command: '[subagent:general-purpose] Sleeper',\n status: 'cancelled',\n output: 'Subagent was cancelled'\n },\n { task_id: 'shell-1', command: 'sleep 5', status: 'completed', exit_code: 0 }\n ]\n }\n }\n })\n expect(grokToolSubagents(update, tool('get_command_or_subagent_output'))).toEqual([\n { id: 'subagent-1', state: 'completed', knownOnly: true, result: 'notes.txt, README.md' },\n { id: 'subagent-2', state: 'stopped', knownOnly: true }\n ])\n expect(\n grokToolBackgroundTasks(update, tool('get_command_or_subagent_output')).map(\n (task) => task.taskId\n )\n ).toEqual(['shell-1'])\n })","source_sha256":"4fae59f782cef2fafebae65ec62bf7139fc0adf6abef4d43509f7bcbd503255b","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":134,"title":"settles known subagents from an output read, and leaves its shell tasks alone","body_sha256":"4fae59f782cef2fafebae65ec62bf7139fc0adf6abef4d43509f7bcbd503255b"},"proposal_ids":[],"explicit_input_controls":[]},{"line":168,"end_line":179,"title":"stops a subagent a kill reports killed, and never makes it a background task","decision":"keep","reason":"A reported killed subagent settles the known child without becoming an unrelated background shell task.","source_body_sha256":"877ecb7e0e444689d6f63e8c0d0d3328004ed19c3bffe7e1d1a8a6185123e914","path":"src/main/acp/acp-dialects/grok-subagents.test.ts","start":5992,"end":6515,"byte_start":5992,"byte_end":6515,"source":"it('stops a subagent a kill reports killed, and never makes it a background task', () => {\n const update = finished({\n rawOutput: {\n type: 'KillTask',\n Result: { task_id: 'subagent-1', command: '[subagent:explore] Look', outcome: 'killed' }\n }\n })\n expect(grokToolSubagents(update, tool('kill_command_or_subagent'))).toEqual([\n { id: 'subagent-1', state: 'stopped', knownOnly: true }\n ])\n expect(grokToolBackgroundTasks(update, tool('kill_command_or_subagent'))).toEqual([])\n })","source_sha256":"877ecb7e0e444689d6f63e8c0d0d3328004ed19c3bffe7e1d1a8a6185123e914","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":168,"title":"stops a subagent a kill reports killed, and never makes it a background task","body_sha256":"877ecb7e0e444689d6f63e8c0d0d3328004ed19c3bffe7e1d1a8a6185123e914"},"proposal_ids":[],"explicit_input_controls":[]},{"line":181,"end_line":188,"title":"infers a kill with no result from the ids it named","decision":"keep","reason":"Kill inference reads actual input ids and deduplicates them when the provider emits no structured result.","source_body_sha256":"da78567a56a15e6355a3d2a1d0cec852f7e12b765c4b95eeff877ac3e0131815","path":"src/main/acp/acp-dialects/grok-subagents.test.ts","start":6519,"end":6813,"byte_start":6519,"byte_end":6813,"source":"it('infers a kill with no result from the ids it named', () => {\n expect(\n grokToolSubagents(\n finished({}),\n tool('kill_command_or_subagent', { task_ids: ['subagent-1', 'subagent-1'] })\n )\n ).toEqual([{ id: 'subagent-1', state: 'stopped', knownOnly: true }])\n })","source_sha256":"da78567a56a15e6355a3d2a1d0cec852f7e12b765c4b95eeff877ac3e0131815","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":181,"title":"infers a kill with no result from the ids it named","body_sha256":"da78567a56a15e6355a3d2a1d0cec852f7e12b765c4b95eeff877ac3e0131815"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-dialects/grok-subagents.test.ts:54:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":54,"end_line":70,"start":2022,"end":2612,"byte_start":2022,"byte_end":2612,"source":"[\n ['completed', { state: 'completed', result: '4' }],\n ['failed', { state: 'failed' }],\n ['cancelled', { state: 'stopped' }],\n ['something-new', {}]\n ] as const","source_sha256":"7c250a49c529b5eba3eb764b9a8ef368aa1d6f8d3b1893d46c46323dd1a40721","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":54,"end_line":59,"start":2030,"end":2204,"byte_start":2030,"byte_end":2204},"binding":"it.each","resolution":[],"enclosing_case":{"line":54,"title":"reads a %s finish"},"affected_case_lines":[54],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":55,"end_line":55,"start":2036,"end":2086,"source":"['completed', { state: 'completed', result: '4' }]","value":{"kind":"array","value":[{"kind":"string","value":"completed"},{"kind":"object","value":[{"key":"state","value":{"kind":"string","value":"completed"}},{"key":"result","value":{"kind":"string","value":"4"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"f531f4341f16e6502aefb72c2a6a35fef5e826f86e1b08a76ad1686421e2165d","byte_start":2036,"byte_end":2086,"input_label":"completed","decision":"keep","reason":"Terminal success maps result text 4."},{"index":2,"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":56,"end_line":56,"start":2092,"end":2123,"source":"['failed', { state: 'failed' }]","value":{"kind":"array","value":[{"kind":"string","value":"failed"},{"kind":"object","value":[{"key":"state","value":{"kind":"string","value":"failed"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"feb6c8e139d6ff138501764a74187c3a8a5d1c071dc043316d1dd19542270d54","byte_start":2092,"byte_end":2123,"input_label":"failed","decision":"keep","reason":"Terminal failure maps failed."},{"index":3,"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":57,"end_line":57,"start":2129,"end":2164,"source":"['cancelled', { state: 'stopped' }]","value":{"kind":"array","value":[{"kind":"string","value":"cancelled"},{"kind":"object","value":[{"key":"state","value":{"kind":"string","value":"stopped"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"aa071d780decbd6feb806e4dd65fa1613b7670521ae1a15593edf0f4bae25ac0","byte_start":2129,"byte_end":2164,"input_label":"cancelled","decision":"keep","reason":"Terminal cancellation maps stopped."},{"index":4,"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":58,"end_line":58,"start":2170,"end":2191,"source":"['something-new', {}]","value":{"kind":"array","value":[{"kind":"string","value":"something-new"},{"kind":"object","value":[]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"6954347b635baa8145825c28e3c01bd9cf161b28296be8da01f71181d759aca3","byte_start":2170,"byte_end":2191,"input_label":"something-new","decision":"keep","reason":"Unknown terminal state supplies no fabricated outcome."}],"original_row_count":4}],"parameter_groups":[{"id":"src/main/acp/acp-dialects/grok-subagents.test.ts:54:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":54,"end_line":70,"start":2022,"end":2612,"byte_start":2022,"byte_end":2612,"source":"[\n ['completed', { state: 'completed', result: '4' }],\n ['failed', { state: 'failed' }],\n ['cancelled', { state: 'stopped' }],\n ['something-new', {}]\n ] as const","source_sha256":"7c250a49c529b5eba3eb764b9a8ef368aa1d6f8d3b1893d46c46323dd1a40721","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":54,"end_line":59,"start":2030,"end":2204,"byte_start":2030,"byte_end":2204},"binding":"it.each","resolution":[],"enclosing_case":{"line":54,"title":"reads a %s finish"},"affected_case_lines":[54],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":55,"end_line":55,"start":2036,"end":2086,"source":"['completed', { state: 'completed', result: '4' }]","value":{"kind":"array","value":[{"kind":"string","value":"completed"},{"kind":"object","value":[{"key":"state","value":{"kind":"string","value":"completed"}},{"key":"result","value":{"kind":"string","value":"4"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"f531f4341f16e6502aefb72c2a6a35fef5e826f86e1b08a76ad1686421e2165d","byte_start":2036,"byte_end":2086,"input_label":"completed","decision":"keep","reason":"Terminal success maps result text 4."},{"index":2,"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":56,"end_line":56,"start":2092,"end":2123,"source":"['failed', { state: 'failed' }]","value":{"kind":"array","value":[{"kind":"string","value":"failed"},{"kind":"object","value":[{"key":"state","value":{"kind":"string","value":"failed"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"feb6c8e139d6ff138501764a74187c3a8a5d1c071dc043316d1dd19542270d54","byte_start":2092,"byte_end":2123,"input_label":"failed","decision":"keep","reason":"Terminal failure maps failed."},{"index":3,"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":57,"end_line":57,"start":2129,"end":2164,"source":"['cancelled', { state: 'stopped' }]","value":{"kind":"array","value":[{"kind":"string","value":"cancelled"},{"kind":"object","value":[{"key":"state","value":{"kind":"string","value":"stopped"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"aa071d780decbd6feb806e4dd65fa1613b7670521ae1a15593edf0f4bae25ac0","byte_start":2129,"byte_end":2164,"input_label":"cancelled","decision":"keep","reason":"Terminal cancellation maps stopped."},{"index":4,"path":"src/main/acp/acp-dialects/grok-subagents.test.ts","line":58,"end_line":58,"start":2170,"end":2191,"source":"['something-new', {}]","value":{"kind":"array","value":[{"kind":"string","value":"something-new"},{"kind":"object","value":[]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"6954347b635baa8145825c28e3c01bd9cf161b28296be8da01f71181d759aca3","byte_start":2170,"byte_end":2191,"input_label":"something-new","decision":"keep","reason":"Unknown terminal state supplies no fabricated outcome."}],"original_row_count":4}],"body_support_cleanup_loops":[],"implemented_changes":[],"evidence":["src/main/acp/acp-dialects/grok-background-tasks.ts","src/main/acp/acp-dialects/grok-dialect.ts","src/main/acp/acp-dialects/grok-subagents.ts"],"evidence_sha256":{"src/main/acp/acp-dialects/grok-background-tasks.ts":"5f7b7e3361763e67584d92ce91bd53345359477cc51e4560a105d639d6c02597","src/main/acp/acp-dialects/grok-dialect.ts":"6ce1c85d14107c695c2c4cef369dd22514d021428e45941f2aeb9ec5e5547cf0","src/main/acp/acp-dialects/grok-subagents.ts":"61779da238fa1c6253d4404557049df60c364794be966f41c992df29c4aaa9c1"},"evidence_source_sha256":{"src/main/acp/acp-dialects/grok-background-tasks.ts":"5f7b7e3361763e67584d92ce91bd53345359477cc51e4560a105d639d6c02597","src/main/acp/acp-dialects/grok-dialect.ts":"6ce1c85d14107c695c2c4cef369dd22514d021428e45941f2aeb9ec5e5547cf0","src/main/acp/acp-dialects/grok-subagents.ts":"61779da238fa1c6253d4404557049df60c364794be966f41c992df29c4aaa9c1"},"original_evidence_detail":[{"path":"src/main/acp/acp-dialects/grok-background-tasks.ts","sha256":"5f7b7e3361763e67584d92ce91bd53345359477cc51e4560a105d639d6c02597","lines":205,"read_state":"stored_not_claimed_read"},{"path":"src/main/acp/acp-dialects/grok-dialect.ts","sha256":"6ce1c85d14107c695c2c4cef369dd22514d021428e45941f2aeb9ec5e5547cf0","lines":229,"read_state":"stored_not_claimed_read"},{"path":"src/main/acp/acp-dialects/grok-subagents.ts","sha256":"61779da238fa1c6253d4404557049df60c364794be966f41c992df29c4aaa9c1","lines":174,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"Grok subagent session updates reads a spawn with its description, its spawning turn and nothing it cannot show","status":"passed"},{"full_name":"Grok subagent session updates labels a spawn with no description by its type","status":"passed"},{"full_name":"Grok subagent session updates reads progress as tokens only","status":"passed"},{"full_name":"Grok subagent session updates reads a completed finish","status":"passed"},{"full_name":"Grok subagent session updates reads a failed finish","status":"passed"},{"full_name":"Grok subagent session updates reads a cancelled finish","status":"passed"},{"full_name":"Grok subagent session updates reads a something-new finish","status":"passed"},{"full_name":"Grok subagent session updates ignores every other update","status":"passed"},{"full_name":"Grok subagent session updates maps the extension notification, and leaves a replayed one to the load","status":"passed"},{"full_name":"Grok subagent tool calls ends a foreground spawn with its reply, the machine blocks removed","status":"passed"},{"full_name":"Grok subagent tool calls keeps a background spawn running from its acknowledgement, labelled by the prompt when undescribed","status":"passed"},{"full_name":"Grok subagent tool calls reads nothing from a spawn that has not finished","status":"passed"},{"full_name":"Grok subagent tool calls settles known subagents from an output read, and leaves its shell tasks alone","status":"passed"},{"full_name":"Grok subagent tool calls stops a subagent a kill reports killed, and never makes it a background task","status":"passed"},{"full_name":"Grok subagent tool calls infers a kill with no result from the ids it named","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","sha256":"14e3e564686c94a58db3a547775fa3999c703f236768b0ef74352e655e1b1e39","reviewed_sha256":"63d0c28988ba6c6e0e386e6c6c9ceb7a7bfd3c42a7fe02d64a0e12a0af1967f3","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":5,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: fix 3, keep 6. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":9,"original_declarations":9,"final_declarations":9,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":12,"end_line":20,"title":"leaves a tool without a command echo as it came","decision":"fix","reason":"No command echo should preserve observable tool payload; exact object identity is an unnecessary implementation constraint.","source_body_sha256":"9182542309be0158275d47fde9d1f37132f2a776f12bc01939c7ed78281504ef","proposed_changes":[{"line":12,"decision":"fix","proposal":"Assert normalize(update) deeply equals the independently specified unchanged payload rather than toBe(update).","reason":"Allocation/reference identity does not change the displayed tool result."}],"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","start":416,"end":740,"byte_start":416,"byte_end":740,"source":"it('leaves a tool without a command echo as it came', () => {\n const update: ToolCallUpdate = {\n toolCallId: 'call-1',\n status: 'completed',\n rawOutput: { content: [{ type: 'text', text: 'file body' }], details: {} },\n content: [text('file body')]\n }\n expect(normalize(update)).toBe(update)\n })","source_sha256":"9182542309be0158275d47fde9d1f37132f2a776f12bc01939c7ed78281504ef","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":12,"title":"leaves a tool without a command echo as it came","body_sha256":"675646306438972cb0a9a236e26d6ab992a55181dbba8881f819fda62b875b06"},"proposal_ids":["acp-main-0001-002"],"explicit_input_controls":[]},{"line":22,"end_line":30,"title":"keeps a result that itself starts with \"$ \"","decision":"fix","reason":"Output beginning with dollar-space should remain content rather than being mistaken for a command echo; exact identity is unnecessary.","source_body_sha256":"fb1333b508c493d3dc58337cb46490d7debe02a2addce5be96e448d2f3f01a5a","proposed_changes":[{"line":22,"decision":"fix","proposal":"Assert unchanged output fields/value rather than reference identity.","reason":"The dollar-prefixed result behavior is meaningful; original-object reuse is incidental."}],"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","start":744,"end":1058,"byte_start":744,"byte_end":1058,"source":"it('keeps a result that itself starts with \"$ \"', () => {\n const update: ToolCallUpdate = {\n toolCallId: 'call-1',\n status: 'completed',\n rawOutput: { content: [{ type: 'text', text: '$ 5.00' }], details: {} },\n content: [text('$ 5.00')]\n }\n expect(normalize(update)).toBe(update)\n })","source_sha256":"fb1333b508c493d3dc58337cb46490d7debe02a2addce5be96e448d2f3f01a5a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":23,"title":"keeps a result that itself starts with \"$ \"","body_sha256":"bd6313e61db1c1e21984728742ca5bd5f67086936b65a9a3123483b976e4e7f2"},"proposal_ids":["acp-main-0001-003"],"explicit_input_controls":[]},{"line":32,"end_line":47,"title":"keeps an exit %s notice when OMP sent no matching detail","decision":"keep","reason":"Zero/nonzero notice strings stay in stdout without matching provider exit details; they must not be stripped from actual output.","source_body_sha256":"f43833c268e9a0da5630dea6cfd1a9e883ea9dcb1962da3ec9eb78ea78be8ac4","parameter_groups":[{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":32,"source":"[0, 3]","decision":"keep","reason":"","rows":[{"input":"0","decision":"keep","reason":"Explicit zero exit is preserved with extracted output."},{"input":"3","decision":"keep","reason":"Nonzero exit and trailing exit notice map actual failed result."}],"row_count":2}],"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","start":1062,"end":1581,"byte_start":1062,"byte_end":1581,"source":"it.each([0, 3])('keeps an exit %s notice when OMP sent no matching detail', (code) => {\n const output = `done\\n\\nCommand exited with code ${code}`\n const update = normalize({\n toolCallId: 'call-1',\n status: 'completed',\n rawOutput: {\n content: [{ type: 'text', text: output }],\n details: { wallTimeMs: 12 }\n },\n content: [text('$ ./run'), text(output)]\n })\n expect(update).toMatchObject({\n content: [],\n rawOutput: { stdout: output, exitCode: 0 }\n })\n })","source_sha256":"f43833c268e9a0da5630dea6cfd1a9e883ea9dcb1962da3ec9eb78ea78be8ac4","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":34,"title":"keeps an exit %s notice when OMP sent no matching detail","body_sha256":"f43833c268e9a0da5630dea6cfd1a9e883ea9dcb1962da3ec9eb78ea78be8ac4"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-dialects/omp-dialect.test.ts:32:parameter-table"]},{"line":61,"end_line":71,"title":"shows exit 0 for a foreground command that completed, since OMP omits a zero exit","decision":"keep","reason":"Foreground completed results with explicit timing and no failure/background/service markers infer exit zero, including signal null.","source_body_sha256":"74b2e0dc9df76d0da0b0625e9eddd08e03d587f2abe598741f1333b0b633e330","path":"src/main/acp/acp-dialects/omp-dialect.test.ts","start":1939,"end":2314,"byte_start":1939,"byte_end":2314,"source":"it('shows exit 0 for a foreground command that completed, since OMP omits a zero exit', () => {\n expect(normalize(command('completed', { wallTimeMs: 12 })).rawOutput).toMatchObject({\n stdout: 'ok',\n exitCode: 0\n })\n expect(\n normalize(command('completed', { wallTimeMs: 0, signal: null })).rawOutput\n ).toMatchObject({\n exitCode: 0\n })\n })","source_sha256":"74b2e0dc9df76d0da0b0625e9eddd08e03d587f2abe598741f1333b0b633e330","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":63,"title":"shows exit 0 for a foreground command that completed, since OMP omits a zero exit","body_sha256":"74b2e0dc9df76d0da0b0625e9eddd08e03d587f2abe598741f1333b0b633e330"},"proposal_ids":[],"explicit_input_controls":[]},{"line":73,"end_line":83,"title":"infers no exit code for a command that is running, timed out, signalled or in the background","decision":"keep","reason":"Five adverse running/timeout/signal/background shapes must not invent an exitCode from tool completion.","source_body_sha256":"2d152c2ef727d35532a6224a2ac1e9ef5eaf12fb99a3f52fd2511b4357d59301","body_loops":[{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":74,"source":"for (const update of [\n command('in_progress', { wallTimeMs: 12 }),\n command('completed', { wallTimeMs: 12, timedOut: true }),\n command('completed', { wallTimeMs: 12, signal: 'SIGTERM' }),\n command('completed', { wallTimeMs: 12, async: { jobId: 'job-1' } }),\n command('completed', { wallTimeMs: 12 }, { command: './run', async: true })\n ]) ","classification":"input scenarios","decision":"keep","reason":"Each row must avoid inventing exit 0 under a distinct unfinished or nonforeground condition.","inputs":["in_progress","timedOut=true","signal=SIGTERM","async job","rawInput async=true"]}],"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","start":2318,"end":2882,"byte_start":2318,"byte_end":2882,"source":"it('infers no exit code for a command that is running, timed out, signalled or in the background', () => {\n for (const update of [\n command('in_progress', { wallTimeMs: 12 }),\n command('completed', { wallTimeMs: 12, timedOut: true }),\n command('completed', { wallTimeMs: 12, signal: 'SIGTERM' }),\n command('completed', { wallTimeMs: 12, async: { jobId: 'job-1' } }),\n command('completed', { wallTimeMs: 12 }, { command: './run', async: true })\n ]) {\n expect(normalize(update).rawOutput).not.toHaveProperty('exitCode')\n }\n })","source_sha256":"2d152c2ef727d35532a6224a2ac1e9ef5eaf12fb99a3f52fd2511b4357d59301","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":75,"title":"infers no exit code for a command that is running, timed out, signalled or in the background","body_sha256":"2d152c2ef727d35532a6224a2ac1e9ef5eaf12fb99a3f52fd2511b4357d59301"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-dialects/omp-dialect.test.ts:74:loop"]},{"line":85,"end_line":96,"title":"infers no exit code without foreground timing metadata","decision":"keep","reason":"Three absent/incomplete timing shapes preserve stdout without inferring process exit.","source_body_sha256":"036565c040fc435d335b9effded53e66e5d75287a45de5018f4091e3679b40a2","body_loops":[{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":86,"source":"for (const details of [undefined, {}, { signal: null }]) ","classification":"input scenarios","decision":"keep","reason":"Absent timing proof cannot establish command exit, whether details missing, empty or signal=null.","inputs":["undefined details","empty details","signal=null without timing"]}],"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","start":2886,"end":3398,"byte_start":2886,"byte_end":3398,"source":"it('infers no exit code without foreground timing metadata', () => {\n for (const details of [undefined, {}, { signal: null }]) {\n const update = normalize({\n toolCallId: 'call-1',\n status: 'completed',\n rawOutput: { content: [{ type: 'text', text: 'ok' }], ...(details ? { details } : {}) },\n content: [text('$ ./run'), text('ok')]\n })\n expect(update.rawOutput).toMatchObject({ stdout: 'ok' })\n expect(update.rawOutput).not.toHaveProperty('exitCode')\n }\n })","source_sha256":"036565c040fc435d335b9effded53e66e5d75287a45de5018f4091e3679b40a2","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":87,"title":"infers no exit code without foreground timing metadata","body_sha256":"036565c040fc435d335b9effded53e66e5d75287a45de5018f4091e3679b40a2"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-dialects/omp-dialect.test.ts:86:loop"]},{"line":98,"end_line":115,"title":"does not confuse OMP v18.4 service-start completion with a process exit","decision":"keep","reason":"Two service-start timing variants must preserve running service output without claiming the actual process ended.","source_body_sha256":"18a4754ed4aa1f76d82efe2f531539695cacf31fc94c649928b3e1bed475874e","body_loops":[{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":99,"source":"for (const timing of [{}, { wallTimeMs: 12 }]) ","classification":"input scenarios","decision":"keep","reason":"Service output never proves process exit regardless of a timing field.","inputs":["no timing","wallTimeMs=12"]}],"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","start":3402,"end":4158,"byte_start":3402,"byte_end":4158,"source":"it('does not confuse OMP v18.4 service-start completion with a process exit', () => {\n for (const timing of [{}, { wallTimeMs: 12 }]) {\n const update = normalize({\n toolCallId: 'service-call',\n status: 'completed',\n rawOutput: {\n content: [{ type: 'text', text: 'web: running pid=123 ready' }],\n details: {\n ...timing,\n service: { name: 'web', state: 'running', ready: true, timedOut: false, pid: 123 }\n }\n },\n content: [text('$ python3 -m http.server 8765'), text('web: running pid=123 ready')]\n })\n expect(update.rawOutput).toMatchObject({ stdout: 'web: running pid=123 ready' })\n expect(update.rawOutput).not.toHaveProperty('exitCode')\n }\n })","source_sha256":"18a4754ed4aa1f76d82efe2f531539695cacf31fc94c649928b3e1bed475874e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":100,"title":"does not confuse OMP v18.4 service-start completion with a process exit","body_sha256":"18a4754ed4aa1f76d82efe2f531539695cacf31fc94c649928b3e1bed475874e"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-dialects/omp-dialect.test.ts:99:loop"]},{"line":117,"end_line":135,"title":"leaves an existing generic command result intact","decision":"fix","reason":"Seven explicit generic result shapes preserve existing observable fields instead of being normalized as OMP echoes; reference identity is unnecessary.","source_body_sha256":"dc40ce914f6a4b6d26b5e3217efc2a5ea3b0f34bc79c99916f27cf4802bdcb93","proposed_changes":[{"line":117,"decision":"fix","proposal":"Replace toBe(update) in all seven generic-result rows with value equality and explicit preserved result fields.","reason":"Protect the real generic-result bypass without pinning allocation strategy."}],"body_loops":[{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":118,"source":"for (const result of [\n { exitCode: 3 },\n { exit_code: 3 },\n { stdout: 'original' },\n { stderr: 'error' },\n { output_for_prompt: 'original' },\n { signal: 'SIGTERM' },\n { timed_out: true }\n ]) ","classification":"input scenarios","decision":"fix","reason":"Preserve each already-generic result value with deep equality instead of allocation identity.","inputs":["exitCode","exit_code","stdout","stderr","output_for_prompt","signal","timed_out"]}],"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","start":4162,"end":4717,"byte_start":4162,"byte_end":4717,"source":"it('leaves an existing generic command result intact', () => {\n for (const result of [\n { exitCode: 3 },\n { exit_code: 3 },\n { stdout: 'original' },\n { stderr: 'error' },\n { output_for_prompt: 'original' },\n { signal: 'SIGTERM' },\n { timed_out: true }\n ]) {\n const update = command('completed', { wallTimeMs: 12 })\n update.rawOutput = {\n ...result,\n content: [{ type: 'text', text: 'ok' }],\n details: { wallTimeMs: 12 }\n }\n expect(normalize(update)).toBe(update)\n }\n })","source_sha256":"dc40ce914f6a4b6d26b5e3217efc2a5ea3b0f34bc79c99916f27cf4802bdcb93","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":119,"title":"leaves an existing generic command result intact","body_sha256":"bd75b3a4c481744ab50072281f813369918b52b2bb4cd9f7ce8278e3b4ac9d1f"},"proposal_ids":["acp-main-0001-004"],"explicit_input_controls":["src/main/acp/acp-dialects/omp-dialect.test.ts:118:loop"]},{"line":137,"end_line":148,"title":"keeps a failed command's reported exit code","decision":"keep","reason":"Reported nonzero exit is preserved while only its matching repeated notice is removed from stdout.","source_body_sha256":"9a9fefd883fa3142ee40c09ee995bbe646929582783fdeb075a0626dba9419c4","path":"src/main/acp/acp-dialects/omp-dialect.test.ts","start":4721,"end":5162,"byte_start":4721,"byte_end":5162,"source":"it(\"keeps a failed command's reported exit code\", () => {\n const update = normalize({\n toolCallId: 'call-1',\n status: 'failed',\n rawOutput: {\n content: [{ type: 'text', text: 'hi\\n\\nCommand exited with code 3' }],\n details: { exitCode: 3 }\n },\n content: [text('$ ./run'), text('hi\\n\\nCommand exited with code 3')]\n })\n expect(update.rawOutput).toMatchObject({ stdout: 'hi', exitCode: 3 })\n })","source_sha256":"9a9fefd883fa3142ee40c09ee995bbe646929582783fdeb075a0626dba9419c4","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":140,"title":"keeps a failed command's reported exit code","body_sha256":"9a9fefd883fa3142ee40c09ee995bbe646929582783fdeb075a0626dba9419c4"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-dialects/omp-dialect.test.ts:32:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":32,"end_line":47,"start":1062,"end":1581,"byte_start":1062,"byte_end":1581,"source":"[0, 3]","source_sha256":"7c131fd95efadcf93597f1a2013987488f734db930f130f0e470e3b115b3228a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":32,"end_line":32,"start":1070,"end":1076,"byte_start":1070,"byte_end":1076},"binding":"it.each","resolution":[],"enclosing_case":{"line":32,"title":"keeps an exit %s notice when OMP sent no matching detail"},"affected_case_lines":[32],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":32,"end_line":32,"start":1071,"end":1072,"source":"0","value":{"kind":"number","value":0},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"5feceb66ffc86f38d952786c6d696c79c2dbc239dd4e91b46729d73a27fb57e9","byte_start":1071,"byte_end":1072,"input_label":"0","decision":"keep","reason":"Explicit zero exit is preserved with extracted output."},{"index":2,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":32,"end_line":32,"start":1074,"end":1075,"source":"3","value":{"kind":"number","value":3},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"4e07408562bedb8b60ce05c1decfe3ad16b72230967de01f640b7e4729b49fce","byte_start":1074,"byte_end":1075,"input_label":"3","decision":"keep","reason":"Nonzero exit and trailing exit notice map actual failed result."}],"original_row_count":2},{"id":"src/main/acp/acp-dialects/omp-dialect.test.ts:74:loop","kind":"for-of","path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":74,"end_line":82,"start":2429,"end":2877,"byte_start":2429,"byte_end":2877,"source":"for (const update of [\n command('in_progress', { wallTimeMs: 12 }),\n command('completed', { wallTimeMs: 12, timedOut: true }),\n command('completed', { wallTimeMs: 12, signal: 'SIGTERM' }),\n command('completed', { wallTimeMs: 12, async: { jobId: 'job-1' } }),\n command('completed', { wallTimeMs: 12 }, { command: './run', async: true })\n ]) {\n expect(normalize(update).rawOutput).not.toHaveProperty('exitCode')\n }","source_sha256":"c8600f90569b3cf354ec1c7eda9c2dfa8587acdfdea1e3ef024f1c555f330e7e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const update of [\n command('in_progress', { wallTimeMs: 12 }),\n command('completed', { wallTimeMs: 12, timedOut: true }),\n command('completed', { wallTimeMs: 12, signal: 'SIGTERM' }),\n command('completed', { wallTimeMs: 12, async: { jobId: 'job-1' } }),\n command('completed', { wallTimeMs: 12 }, { command: './run', async: true })\n ]) ","header_sha256":"56c1dd0065d84426705b58e1da3dc634893d15eb6b4c8c13cd724fd5a9e85318","input_position":{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":74,"end_line":80,"start":2450,"end":2795,"byte_start":2450,"byte_end":2795},"binding":"const update","resolution":[],"enclosing_case":{"line":73,"title":"infers no exit code for a command that is running, timed out, signalled or in the background"},"affected_case_lines":[],"classification":"input scenarios","decision":"keep","reason":"Each row must avoid inventing exit 0 under a distinct unfinished or nonforeground condition.","original_inputs":["in_progress","timedOut=true","signal=SIGTERM","async job","rawInput async=true"],"rows":[{"index":1,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":75,"end_line":75,"start":2458,"end":2500,"source":"command('in_progress', { wallTimeMs: 12 })","value":{"kind":"call-source","callee":"command","arguments":[{"kind":"string","value":"in_progress"},{"kind":"object","value":[{"key":"wallTimeMs","value":{"kind":"number","value":12}}]}],"source":"command('in_progress', { wallTimeMs: 12 })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"f60690366b384ab8be7506a56140e39881b69f5ab58df3400ea42a4327b02a60","byte_start":2458,"byte_end":2500,"decision":"keep","reason":"Each row must avoid inventing exit 0 under a distinct unfinished or nonforeground condition."},{"index":2,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":76,"end_line":76,"start":2508,"end":2564,"source":"command('completed', { wallTimeMs: 12, timedOut: true })","value":{"kind":"call-source","callee":"command","arguments":[{"kind":"string","value":"completed"},{"kind":"object","value":[{"key":"wallTimeMs","value":{"kind":"number","value":12}},{"key":"timedOut","value":{"kind":"boolean","value":true}}]}],"source":"command('completed', { wallTimeMs: 12, timedOut: true })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"97379e918a9fc8d1d516b39990f2b74c13cc7b7d1ee20d0257243d51d0bcd4e3","byte_start":2508,"byte_end":2564,"decision":"keep","reason":"Each row must avoid inventing exit 0 under a distinct unfinished or nonforeground condition."},{"index":3,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":77,"end_line":77,"start":2572,"end":2631,"source":"command('completed', { wallTimeMs: 12, signal: 'SIGTERM' })","value":{"kind":"call-source","callee":"command","arguments":[{"kind":"string","value":"completed"},{"kind":"object","value":[{"key":"wallTimeMs","value":{"kind":"number","value":12}},{"key":"signal","value":{"kind":"string","value":"SIGTERM"}}]}],"source":"command('completed', { wallTimeMs: 12, signal: 'SIGTERM' })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"265c116dc7535fd9cf632202894287447d80a4d6a1be8c33634c10c93b776b43","byte_start":2572,"byte_end":2631,"decision":"keep","reason":"Each row must avoid inventing exit 0 under a distinct unfinished or nonforeground condition."},{"index":4,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":78,"end_line":78,"start":2639,"end":2706,"source":"command('completed', { wallTimeMs: 12, async: { jobId: 'job-1' } })","value":{"kind":"call-source","callee":"command","arguments":[{"kind":"string","value":"completed"},{"kind":"object","value":[{"key":"wallTimeMs","value":{"kind":"number","value":12}},{"key":"async","value":{"kind":"object","value":[{"key":"jobId","value":{"kind":"string","value":"job-1"}}]}}]}],"source":"command('completed', { wallTimeMs: 12, async: { jobId: 'job-1' } })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"4bc7ac5db73e1d2346b4ab87ff67b17ceda35266106421b44cf3b3f10a8998ce","byte_start":2639,"byte_end":2706,"decision":"keep","reason":"Each row must avoid inventing exit 0 under a distinct unfinished or nonforeground condition."},{"index":5,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":79,"end_line":79,"start":2714,"end":2789,"source":"command('completed', { wallTimeMs: 12 }, { command: './run', async: true })","value":{"kind":"call-source","callee":"command","arguments":[{"kind":"string","value":"completed"},{"kind":"object","value":[{"key":"wallTimeMs","value":{"kind":"number","value":12}}]},{"kind":"object","value":[{"key":"command","value":{"kind":"string","value":"./run"}},{"key":"async","value":{"kind":"boolean","value":true}}]}],"source":"command('completed', { wallTimeMs: 12 }, { command: './run', async: true })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"8d7598e7aa13b981c883bf08d0e71fb75c682aeaff0855b620fc3f485067ab11","byte_start":2714,"byte_end":2789,"decision":"keep","reason":"Each row must avoid inventing exit 0 under a distinct unfinished or nonforeground condition."}],"current_matches":[{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":76,"body_sha256":"a3e9630ba9830becc9d5918f233982c93dc45af0b2e76f992076cc25ae800cba"}],"policy":"Exact literal inputs within this traversal; not additional declared test cases."},{"id":"src/main/acp/acp-dialects/omp-dialect.test.ts:86:loop","kind":"for-of","path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":86,"end_line":95,"start":2959,"end":3393,"byte_start":2959,"byte_end":3393,"source":"for (const details of [undefined, {}, { signal: null }]) {\n const update = normalize({\n toolCallId: 'call-1',\n status: 'completed',\n rawOutput: { content: [{ type: 'text', text: 'ok' }], ...(details ? { details } : {}) },\n content: [text('$ ./run'), text('ok')]\n })\n expect(update.rawOutput).toMatchObject({ stdout: 'ok' })\n expect(update.rawOutput).not.toHaveProperty('exitCode')\n }","source_sha256":"b603b8095696049dfd8cbb533d8e4e5825ff5c6d6e7a13d19c6127d1d7725c78","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const details of [undefined, {}, { signal: null }]) ","header_sha256":"8734cbee109ab80944b84c41b0b4da20e059462c758de08772385cfdab362d4f","input_position":{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":86,"end_line":86,"start":2981,"end":3014,"byte_start":2981,"byte_end":3014},"binding":"const details","resolution":[],"enclosing_case":{"line":85,"title":"infers no exit code without foreground timing metadata"},"affected_case_lines":[],"classification":"input scenarios","decision":"keep","reason":"Absent timing proof cannot establish command exit, whether details missing, empty or signal=null.","original_inputs":["undefined details","empty details","signal=null without timing"],"rows":[{"index":1,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":86,"end_line":86,"start":2982,"end":2991,"source":"undefined","value":{"kind":"source-expression","source":"undefined"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"eb045d78d273107348b0300c01d29b7552d622abbc6faf81b3ec55359aa9950c","byte_start":2982,"byte_end":2991,"decision":"keep","reason":"Absent timing proof cannot establish command exit, whether details missing, empty or signal=null."},{"index":2,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":86,"end_line":86,"start":2993,"end":2995,"source":"{}","value":{"kind":"object","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a","byte_start":2993,"byte_end":2995,"decision":"keep","reason":"Absent timing proof cannot establish command exit, whether details missing, empty or signal=null."},{"index":3,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":86,"end_line":86,"start":2997,"end":3013,"source":"{ signal: null }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"null","value":null}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"de077e5297d623cda7b38f698e9511363fd18a2eed8cf588375f6b1fef8bba9e","byte_start":2997,"byte_end":3013,"decision":"keep","reason":"Absent timing proof cannot establish command exit, whether details missing, empty or signal=null."}],"current_matches":[{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":88,"body_sha256":"03eaa24bb5a08572e15ae1252bf5ad5a00eecacceed630f4fc40461a5654c54b"}],"policy":"Exact literal inputs within this traversal; not additional declared test cases."},{"id":"src/main/acp/acp-dialects/omp-dialect.test.ts:99:loop","kind":"for-of","path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":99,"end_line":114,"start":3492,"end":4153,"byte_start":3492,"byte_end":4153,"source":"for (const timing of [{}, { wallTimeMs: 12 }]) {\n const update = normalize({\n toolCallId: 'service-call',\n status: 'completed',\n rawOutput: {\n content: [{ type: 'text', text: 'web: running pid=123 ready' }],\n details: {\n ...timing,\n service: { name: 'web', state: 'running', ready: true, timedOut: false, pid: 123 }\n }\n },\n content: [text('$ python3 -m http.server 8765'), text('web: running pid=123 ready')]\n })\n expect(update.rawOutput).toMatchObject({ stdout: 'web: running pid=123 ready' })\n expect(update.rawOutput).not.toHaveProperty('exitCode')\n }","source_sha256":"3eeeb8dec11c894b53ba70b4ce79a32613b0c8d1e9fc03e65ad2f80a2509065e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const timing of [{}, { wallTimeMs: 12 }]) ","header_sha256":"3869b88c1bd8b318a9e2e72701d784dad38af55d8fa3e961cf2a011504da25ac","input_position":{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":99,"end_line":99,"start":3513,"end":3537,"byte_start":3513,"byte_end":3537},"binding":"const timing","resolution":[],"enclosing_case":{"line":98,"title":"does not confuse OMP v18.4 service-start completion with a process exit"},"affected_case_lines":[],"classification":"input scenarios","decision":"keep","reason":"Service output never proves process exit regardless of a timing field.","original_inputs":["no timing","wallTimeMs=12"],"rows":[{"index":1,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":99,"end_line":99,"start":3514,"end":3516,"source":"{}","value":{"kind":"object","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a","byte_start":3514,"byte_end":3516,"decision":"keep","reason":"Service output never proves process exit regardless of a timing field."},{"index":2,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":99,"end_line":99,"start":3518,"end":3536,"source":"{ wallTimeMs: 12 }","value":{"kind":"object","value":[{"key":"wallTimeMs","value":{"kind":"number","value":12}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"a545cc2bf9535087cb1d0fcedf7561f029a64d5b0439a924a4640e3b155d0adf","byte_start":3518,"byte_end":3536,"decision":"keep","reason":"Service output never proves process exit regardless of a timing field."}],"current_matches":[{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":101,"body_sha256":"d79ee470b6c746f4c07db94f6839c9fc4321c303331d48f712c892e03f7b3cd7"}],"policy":"Exact literal inputs within this traversal; not additional declared test cases."},{"id":"src/main/acp/acp-dialects/omp-dialect.test.ts:118:loop","kind":"for-of","path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":118,"end_line":134,"start":4229,"end":4712,"byte_start":4229,"byte_end":4712,"source":"for (const result of [\n { exitCode: 3 },\n { exit_code: 3 },\n { stdout: 'original' },\n { stderr: 'error' },\n { output_for_prompt: 'original' },\n { signal: 'SIGTERM' },\n { timed_out: true }\n ]) {\n const update = command('completed', { wallTimeMs: 12 })\n update.rawOutput = {\n ...result,\n content: [{ type: 'text', text: 'ok' }],\n details: { wallTimeMs: 12 }\n }\n expect(normalize(update)).toBe(update)\n }","source_sha256":"fe05659d6fae56187892f79024c8da8198bebea4b2db247517d4fb86cd71137a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const result of [\n { exitCode: 3 },\n { exit_code: 3 },\n { stdout: 'original' },\n { stderr: 'error' },\n { output_for_prompt: 'original' },\n { signal: 'SIGTERM' },\n { timed_out: true }\n ]) ","header_sha256":"8fcd2f95b368146188524196dcc472ad957cc0c77947f9b5fac47898078b9a24","input_position":{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":118,"end_line":126,"start":4250,"end":4457,"byte_start":4250,"byte_end":4457},"binding":"const result","resolution":[],"enclosing_case":{"line":117,"title":"leaves an existing generic command result intact"},"affected_case_lines":[],"classification":"input scenarios","decision":"fix","reason":"Preserve each already-generic result value with deep equality instead of allocation identity.","original_inputs":["exitCode","exit_code","stdout","stderr","output_for_prompt","signal","timed_out"],"rows":[{"index":1,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":119,"end_line":119,"start":4258,"end":4273,"source":"{ exitCode: 3 }","value":{"kind":"object","value":[{"key":"exitCode","value":{"kind":"number","value":3}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"ba15a99688833ae16844140a6dd4006d9e41a23ae9ded2a4b1cc4bf217a4a263","byte_start":4258,"byte_end":4273,"decision":"fix","reason":"Preserve each already-generic result value with deep equality instead of allocation identity."},{"index":2,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":120,"end_line":120,"start":4281,"end":4297,"source":"{ exit_code: 3 }","value":{"kind":"object","value":[{"key":"exit_code","value":{"kind":"number","value":3}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"54a98e8d8af64a038ac2b8da2af3a8cfc03f52a849229e8a3a3cc68e1ed3970c","byte_start":4281,"byte_end":4297,"decision":"fix","reason":"Preserve each already-generic result value with deep equality instead of allocation identity."},{"index":3,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":121,"end_line":121,"start":4305,"end":4327,"source":"{ stdout: 'original' }","value":{"kind":"object","value":[{"key":"stdout","value":{"kind":"string","value":"original"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"09ea04c783d8988365429031dbc88e95e7dce3499b6ee90f0726d5484ea920ed","byte_start":4305,"byte_end":4327,"decision":"fix","reason":"Preserve each already-generic result value with deep equality instead of allocation identity."},{"index":4,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":122,"end_line":122,"start":4335,"end":4354,"source":"{ stderr: 'error' }","value":{"kind":"object","value":[{"key":"stderr","value":{"kind":"string","value":"error"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"575d3e80ba7e9aa7f15ce70ab62cf01beca37f7e25eb3a53ee6df1b8f2f392e3","byte_start":4335,"byte_end":4354,"decision":"fix","reason":"Preserve each already-generic result value with deep equality instead of allocation identity."},{"index":5,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":123,"end_line":123,"start":4362,"end":4395,"source":"{ output_for_prompt: 'original' }","value":{"kind":"object","value":[{"key":"output_for_prompt","value":{"kind":"string","value":"original"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"46bd1ea3e10cf685a8c346d49b210cff06134cfd83abab1a5dddc8247b86d9f4","byte_start":4362,"byte_end":4395,"decision":"fix","reason":"Preserve each already-generic result value with deep equality instead of allocation identity."},{"index":6,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":124,"end_line":124,"start":4403,"end":4424,"source":"{ signal: 'SIGTERM' }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"string","value":"SIGTERM"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"56bb622d2cf017942f78bf84094474c6fe899c13b173069c79c661cb88d6c842","byte_start":4403,"byte_end":4424,"decision":"fix","reason":"Preserve each already-generic result value with deep equality instead of allocation identity."},{"index":7,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":125,"end_line":125,"start":4432,"end":4451,"source":"{ timed_out: true }","value":{"kind":"object","value":[{"key":"timed_out","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"b04d7a26728827eead1b0a95d6d4e9365fb9f610c62e21f72be332c3796150fb","byte_start":4432,"byte_end":4451,"decision":"fix","reason":"Preserve each already-generic result value with deep equality instead of allocation identity."}],"current_matches":[{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":120,"body_sha256":"9ffaa35d7973a761e837c365a2399984dfe998b5b38ba4d7bfe9e8bee18a1cfd"}],"policy":"Exact literal inputs within this traversal; not additional declared test cases."}],"parameter_groups":[{"id":"src/main/acp/acp-dialects/omp-dialect.test.ts:32:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":32,"end_line":47,"start":1062,"end":1581,"byte_start":1062,"byte_end":1581,"source":"[0, 3]","source_sha256":"7c131fd95efadcf93597f1a2013987488f734db930f130f0e470e3b115b3228a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":32,"end_line":32,"start":1070,"end":1076,"byte_start":1070,"byte_end":1076},"binding":"it.each","resolution":[],"enclosing_case":{"line":32,"title":"keeps an exit %s notice when OMP sent no matching detail"},"affected_case_lines":[32],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":32,"end_line":32,"start":1071,"end":1072,"source":"0","value":{"kind":"number","value":0},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"5feceb66ffc86f38d952786c6d696c79c2dbc239dd4e91b46729d73a27fb57e9","byte_start":1071,"byte_end":1072,"input_label":"0","decision":"keep","reason":"Explicit zero exit is preserved with extracted output."},{"index":2,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":32,"end_line":32,"start":1074,"end":1075,"source":"3","value":{"kind":"number","value":3},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"4e07408562bedb8b60ce05c1decfe3ad16b72230967de01f640b7e4729b49fce","byte_start":1074,"byte_end":1075,"input_label":"3","decision":"keep","reason":"Nonzero exit and trailing exit notice map actual failed result."}],"original_row_count":2}],"body_support_cleanup_loops":[{"id":"src/main/acp/acp-dialects/omp-dialect.test.ts:74:loop","kind":"for-of","path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":74,"end_line":82,"start":2429,"end":2877,"byte_start":2429,"byte_end":2877,"source":"for (const update of [\n command('in_progress', { wallTimeMs: 12 }),\n command('completed', { wallTimeMs: 12, timedOut: true }),\n command('completed', { wallTimeMs: 12, signal: 'SIGTERM' }),\n command('completed', { wallTimeMs: 12, async: { jobId: 'job-1' } }),\n command('completed', { wallTimeMs: 12 }, { command: './run', async: true })\n ]) {\n expect(normalize(update).rawOutput).not.toHaveProperty('exitCode')\n }","source_sha256":"c8600f90569b3cf354ec1c7eda9c2dfa8587acdfdea1e3ef024f1c555f330e7e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const update of [\n command('in_progress', { wallTimeMs: 12 }),\n command('completed', { wallTimeMs: 12, timedOut: true }),\n command('completed', { wallTimeMs: 12, signal: 'SIGTERM' }),\n command('completed', { wallTimeMs: 12, async: { jobId: 'job-1' } }),\n command('completed', { wallTimeMs: 12 }, { command: './run', async: true })\n ]) ","header_sha256":"56c1dd0065d84426705b58e1da3dc634893d15eb6b4c8c13cd724fd5a9e85318","input_position":{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":74,"end_line":80,"start":2450,"end":2795,"byte_start":2450,"byte_end":2795},"binding":"const update","resolution":[],"enclosing_case":{"line":73,"title":"infers no exit code for a command that is running, timed out, signalled or in the background"},"affected_case_lines":[],"classification":"input scenarios","decision":"keep","reason":"Each row must avoid inventing exit 0 under a distinct unfinished or nonforeground condition.","original_inputs":["in_progress","timedOut=true","signal=SIGTERM","async job","rawInput async=true"],"rows":[{"index":1,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":75,"end_line":75,"start":2458,"end":2500,"source":"command('in_progress', { wallTimeMs: 12 })","value":{"kind":"call-source","callee":"command","arguments":[{"kind":"string","value":"in_progress"},{"kind":"object","value":[{"key":"wallTimeMs","value":{"kind":"number","value":12}}]}],"source":"command('in_progress', { wallTimeMs: 12 })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"f60690366b384ab8be7506a56140e39881b69f5ab58df3400ea42a4327b02a60","byte_start":2458,"byte_end":2500,"decision":"keep","reason":"Each row must avoid inventing exit 0 under a distinct unfinished or nonforeground condition."},{"index":2,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":76,"end_line":76,"start":2508,"end":2564,"source":"command('completed', { wallTimeMs: 12, timedOut: true })","value":{"kind":"call-source","callee":"command","arguments":[{"kind":"string","value":"completed"},{"kind":"object","value":[{"key":"wallTimeMs","value":{"kind":"number","value":12}},{"key":"timedOut","value":{"kind":"boolean","value":true}}]}],"source":"command('completed', { wallTimeMs: 12, timedOut: true })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"97379e918a9fc8d1d516b39990f2b74c13cc7b7d1ee20d0257243d51d0bcd4e3","byte_start":2508,"byte_end":2564,"decision":"keep","reason":"Each row must avoid inventing exit 0 under a distinct unfinished or nonforeground condition."},{"index":3,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":77,"end_line":77,"start":2572,"end":2631,"source":"command('completed', { wallTimeMs: 12, signal: 'SIGTERM' })","value":{"kind":"call-source","callee":"command","arguments":[{"kind":"string","value":"completed"},{"kind":"object","value":[{"key":"wallTimeMs","value":{"kind":"number","value":12}},{"key":"signal","value":{"kind":"string","value":"SIGTERM"}}]}],"source":"command('completed', { wallTimeMs: 12, signal: 'SIGTERM' })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"265c116dc7535fd9cf632202894287447d80a4d6a1be8c33634c10c93b776b43","byte_start":2572,"byte_end":2631,"decision":"keep","reason":"Each row must avoid inventing exit 0 under a distinct unfinished or nonforeground condition."},{"index":4,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":78,"end_line":78,"start":2639,"end":2706,"source":"command('completed', { wallTimeMs: 12, async: { jobId: 'job-1' } })","value":{"kind":"call-source","callee":"command","arguments":[{"kind":"string","value":"completed"},{"kind":"object","value":[{"key":"wallTimeMs","value":{"kind":"number","value":12}},{"key":"async","value":{"kind":"object","value":[{"key":"jobId","value":{"kind":"string","value":"job-1"}}]}}]}],"source":"command('completed', { wallTimeMs: 12, async: { jobId: 'job-1' } })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"4bc7ac5db73e1d2346b4ab87ff67b17ceda35266106421b44cf3b3f10a8998ce","byte_start":2639,"byte_end":2706,"decision":"keep","reason":"Each row must avoid inventing exit 0 under a distinct unfinished or nonforeground condition."},{"index":5,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":79,"end_line":79,"start":2714,"end":2789,"source":"command('completed', { wallTimeMs: 12 }, { command: './run', async: true })","value":{"kind":"call-source","callee":"command","arguments":[{"kind":"string","value":"completed"},{"kind":"object","value":[{"key":"wallTimeMs","value":{"kind":"number","value":12}}]},{"kind":"object","value":[{"key":"command","value":{"kind":"string","value":"./run"}},{"key":"async","value":{"kind":"boolean","value":true}}]}],"source":"command('completed', { wallTimeMs: 12 }, { command: './run', async: true })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"8d7598e7aa13b981c883bf08d0e71fb75c682aeaff0855b620fc3f485067ab11","byte_start":2714,"byte_end":2789,"decision":"keep","reason":"Each row must avoid inventing exit 0 under a distinct unfinished or nonforeground condition."}],"current_matches":[{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":76,"body_sha256":"a3e9630ba9830becc9d5918f233982c93dc45af0b2e76f992076cc25ae800cba"}],"policy":"Exact literal inputs within this traversal; not additional declared test cases."},{"id":"src/main/acp/acp-dialects/omp-dialect.test.ts:86:loop","kind":"for-of","path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":86,"end_line":95,"start":2959,"end":3393,"byte_start":2959,"byte_end":3393,"source":"for (const details of [undefined, {}, { signal: null }]) {\n const update = normalize({\n toolCallId: 'call-1',\n status: 'completed',\n rawOutput: { content: [{ type: 'text', text: 'ok' }], ...(details ? { details } : {}) },\n content: [text('$ ./run'), text('ok')]\n })\n expect(update.rawOutput).toMatchObject({ stdout: 'ok' })\n expect(update.rawOutput).not.toHaveProperty('exitCode')\n }","source_sha256":"b603b8095696049dfd8cbb533d8e4e5825ff5c6d6e7a13d19c6127d1d7725c78","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const details of [undefined, {}, { signal: null }]) ","header_sha256":"8734cbee109ab80944b84c41b0b4da20e059462c758de08772385cfdab362d4f","input_position":{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":86,"end_line":86,"start":2981,"end":3014,"byte_start":2981,"byte_end":3014},"binding":"const details","resolution":[],"enclosing_case":{"line":85,"title":"infers no exit code without foreground timing metadata"},"affected_case_lines":[],"classification":"input scenarios","decision":"keep","reason":"Absent timing proof cannot establish command exit, whether details missing, empty or signal=null.","original_inputs":["undefined details","empty details","signal=null without timing"],"rows":[{"index":1,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":86,"end_line":86,"start":2982,"end":2991,"source":"undefined","value":{"kind":"source-expression","source":"undefined"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"eb045d78d273107348b0300c01d29b7552d622abbc6faf81b3ec55359aa9950c","byte_start":2982,"byte_end":2991,"decision":"keep","reason":"Absent timing proof cannot establish command exit, whether details missing, empty or signal=null."},{"index":2,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":86,"end_line":86,"start":2993,"end":2995,"source":"{}","value":{"kind":"object","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a","byte_start":2993,"byte_end":2995,"decision":"keep","reason":"Absent timing proof cannot establish command exit, whether details missing, empty or signal=null."},{"index":3,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":86,"end_line":86,"start":2997,"end":3013,"source":"{ signal: null }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"null","value":null}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"de077e5297d623cda7b38f698e9511363fd18a2eed8cf588375f6b1fef8bba9e","byte_start":2997,"byte_end":3013,"decision":"keep","reason":"Absent timing proof cannot establish command exit, whether details missing, empty or signal=null."}],"current_matches":[{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":88,"body_sha256":"03eaa24bb5a08572e15ae1252bf5ad5a00eecacceed630f4fc40461a5654c54b"}],"policy":"Exact literal inputs within this traversal; not additional declared test cases."},{"id":"src/main/acp/acp-dialects/omp-dialect.test.ts:99:loop","kind":"for-of","path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":99,"end_line":114,"start":3492,"end":4153,"byte_start":3492,"byte_end":4153,"source":"for (const timing of [{}, { wallTimeMs: 12 }]) {\n const update = normalize({\n toolCallId: 'service-call',\n status: 'completed',\n rawOutput: {\n content: [{ type: 'text', text: 'web: running pid=123 ready' }],\n details: {\n ...timing,\n service: { name: 'web', state: 'running', ready: true, timedOut: false, pid: 123 }\n }\n },\n content: [text('$ python3 -m http.server 8765'), text('web: running pid=123 ready')]\n })\n expect(update.rawOutput).toMatchObject({ stdout: 'web: running pid=123 ready' })\n expect(update.rawOutput).not.toHaveProperty('exitCode')\n }","source_sha256":"3eeeb8dec11c894b53ba70b4ce79a32613b0c8d1e9fc03e65ad2f80a2509065e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const timing of [{}, { wallTimeMs: 12 }]) ","header_sha256":"3869b88c1bd8b318a9e2e72701d784dad38af55d8fa3e961cf2a011504da25ac","input_position":{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":99,"end_line":99,"start":3513,"end":3537,"byte_start":3513,"byte_end":3537},"binding":"const timing","resolution":[],"enclosing_case":{"line":98,"title":"does not confuse OMP v18.4 service-start completion with a process exit"},"affected_case_lines":[],"classification":"input scenarios","decision":"keep","reason":"Service output never proves process exit regardless of a timing field.","original_inputs":["no timing","wallTimeMs=12"],"rows":[{"index":1,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":99,"end_line":99,"start":3514,"end":3516,"source":"{}","value":{"kind":"object","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a","byte_start":3514,"byte_end":3516,"decision":"keep","reason":"Service output never proves process exit regardless of a timing field."},{"index":2,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":99,"end_line":99,"start":3518,"end":3536,"source":"{ wallTimeMs: 12 }","value":{"kind":"object","value":[{"key":"wallTimeMs","value":{"kind":"number","value":12}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"a545cc2bf9535087cb1d0fcedf7561f029a64d5b0439a924a4640e3b155d0adf","byte_start":3518,"byte_end":3536,"decision":"keep","reason":"Service output never proves process exit regardless of a timing field."}],"current_matches":[{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":101,"body_sha256":"d79ee470b6c746f4c07db94f6839c9fc4321c303331d48f712c892e03f7b3cd7"}],"policy":"Exact literal inputs within this traversal; not additional declared test cases."},{"id":"src/main/acp/acp-dialects/omp-dialect.test.ts:118:loop","kind":"for-of","path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":118,"end_line":134,"start":4229,"end":4712,"byte_start":4229,"byte_end":4712,"source":"for (const result of [\n { exitCode: 3 },\n { exit_code: 3 },\n { stdout: 'original' },\n { stderr: 'error' },\n { output_for_prompt: 'original' },\n { signal: 'SIGTERM' },\n { timed_out: true }\n ]) {\n const update = command('completed', { wallTimeMs: 12 })\n update.rawOutput = {\n ...result,\n content: [{ type: 'text', text: 'ok' }],\n details: { wallTimeMs: 12 }\n }\n expect(normalize(update)).toBe(update)\n }","source_sha256":"fe05659d6fae56187892f79024c8da8198bebea4b2db247517d4fb86cd71137a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const result of [\n { exitCode: 3 },\n { exit_code: 3 },\n { stdout: 'original' },\n { stderr: 'error' },\n { output_for_prompt: 'original' },\n { signal: 'SIGTERM' },\n { timed_out: true }\n ]) ","header_sha256":"8fcd2f95b368146188524196dcc472ad957cc0c77947f9b5fac47898078b9a24","input_position":{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":118,"end_line":126,"start":4250,"end":4457,"byte_start":4250,"byte_end":4457},"binding":"const result","resolution":[],"enclosing_case":{"line":117,"title":"leaves an existing generic command result intact"},"affected_case_lines":[],"classification":"input scenarios","decision":"fix","reason":"Preserve each already-generic result value with deep equality instead of allocation identity.","original_inputs":["exitCode","exit_code","stdout","stderr","output_for_prompt","signal","timed_out"],"rows":[{"index":1,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":119,"end_line":119,"start":4258,"end":4273,"source":"{ exitCode: 3 }","value":{"kind":"object","value":[{"key":"exitCode","value":{"kind":"number","value":3}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"ba15a99688833ae16844140a6dd4006d9e41a23ae9ded2a4b1cc4bf217a4a263","byte_start":4258,"byte_end":4273,"decision":"fix","reason":"Preserve each already-generic result value with deep equality instead of allocation identity."},{"index":2,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":120,"end_line":120,"start":4281,"end":4297,"source":"{ exit_code: 3 }","value":{"kind":"object","value":[{"key":"exit_code","value":{"kind":"number","value":3}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"54a98e8d8af64a038ac2b8da2af3a8cfc03f52a849229e8a3a3cc68e1ed3970c","byte_start":4281,"byte_end":4297,"decision":"fix","reason":"Preserve each already-generic result value with deep equality instead of allocation identity."},{"index":3,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":121,"end_line":121,"start":4305,"end":4327,"source":"{ stdout: 'original' }","value":{"kind":"object","value":[{"key":"stdout","value":{"kind":"string","value":"original"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"09ea04c783d8988365429031dbc88e95e7dce3499b6ee90f0726d5484ea920ed","byte_start":4305,"byte_end":4327,"decision":"fix","reason":"Preserve each already-generic result value with deep equality instead of allocation identity."},{"index":4,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":122,"end_line":122,"start":4335,"end":4354,"source":"{ stderr: 'error' }","value":{"kind":"object","value":[{"key":"stderr","value":{"kind":"string","value":"error"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"575d3e80ba7e9aa7f15ce70ab62cf01beca37f7e25eb3a53ee6df1b8f2f392e3","byte_start":4335,"byte_end":4354,"decision":"fix","reason":"Preserve each already-generic result value with deep equality instead of allocation identity."},{"index":5,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":123,"end_line":123,"start":4362,"end":4395,"source":"{ output_for_prompt: 'original' }","value":{"kind":"object","value":[{"key":"output_for_prompt","value":{"kind":"string","value":"original"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"46bd1ea3e10cf685a8c346d49b210cff06134cfd83abab1a5dddc8247b86d9f4","byte_start":4362,"byte_end":4395,"decision":"fix","reason":"Preserve each already-generic result value with deep equality instead of allocation identity."},{"index":6,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":124,"end_line":124,"start":4403,"end":4424,"source":"{ signal: 'SIGTERM' }","value":{"kind":"object","value":[{"key":"signal","value":{"kind":"string","value":"SIGTERM"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"56bb622d2cf017942f78bf84094474c6fe899c13b173069c79c661cb88d6c842","byte_start":4403,"byte_end":4424,"decision":"fix","reason":"Preserve each already-generic result value with deep equality instead of allocation identity."},{"index":7,"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":125,"end_line":125,"start":4432,"end":4451,"source":"{ timed_out: true }","value":{"kind":"object","value":[{"key":"timed_out","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"b04d7a26728827eead1b0a95d6d4e9365fb9f610c62e21f72be332c3796150fb","byte_start":4432,"byte_end":4451,"decision":"fix","reason":"Preserve each already-generic result value with deep equality instead of allocation identity."}],"current_matches":[{"path":"src/main/acp/acp-dialects/omp-dialect.test.ts","line":120,"body_sha256":"9ffaa35d7973a761e837c365a2399984dfe998b5b38ba4d7bfe9e8bee18a1cfd"}],"policy":"Exact literal inputs within this traversal; not additional declared test cases."}],"implemented_changes":[{"proposal_id":"acp-main-0001-002","summary":"Expected unchanged normalized payload is copied before calling normalization, permitting returned clones and detecting in-place corruption.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"executed_see_scope_limits","mutation_evidence":["omp-clone","omp-corrupt"]},{"proposal_id":"acp-main-0001-003","summary":"Dollar-prefixed plain output is preserved by value against a pre-call expected snapshot.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"executed_see_scope_limits","mutation_evidence":["omp-clone","omp-corrupt"]},{"proposal_id":"acp-main-0001-004","summary":"All seven generic result field workloads compare complete normalized payloads with pre-call snapshots.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"executed_see_scope_limits","mutation_evidence":["omp-clone","omp-corrupt"]}],"evidence":["src/main/acp/acp-dialects/omp-dialect.ts"],"evidence_sha256":{"src/main/acp/acp-dialects/omp-dialect.ts":"f0be0ff957f30cdcd7c9326e64292f797a54f2da9e5e3c2c6758998819a79d54"},"evidence_source_sha256":{"src/main/acp/acp-dialects/omp-dialect.ts":"f0be0ff957f30cdcd7c9326e64292f797a54f2da9e5e3c2c6758998819a79d54"},"original_evidence_detail":[{"path":"src/main/acp/acp-dialects/omp-dialect.ts","sha256":"f0be0ff957f30cdcd7c9326e64292f797a54f2da9e5e3c2c6758998819a79d54","lines":123,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"OMP tool updates leaves a tool without a command echo as it came","status":"passed"},{"full_name":"OMP tool updates keeps a result that itself starts with \"$ \"","status":"passed"},{"full_name":"OMP tool updates keeps an exit 0 notice when OMP sent no matching detail","status":"passed"},{"full_name":"OMP tool updates keeps an exit 3 notice when OMP sent no matching detail","status":"passed"},{"full_name":"OMP tool updates shows exit 0 for a foreground command that completed, since OMP omits a zero exit","status":"passed"},{"full_name":"OMP tool updates infers no exit code for a command that is running, timed out, signalled or in the background","status":"passed"},{"full_name":"OMP tool updates infers no exit code without foreground timing metadata","status":"passed"},{"full_name":"OMP tool updates does not confuse OMP v18.4 service-start completion with a process exit","status":"passed"},{"full_name":"OMP tool updates leaves an existing generic command result intact","status":"passed"},{"full_name":"OMP tool updates keeps a failed command's reported exit code","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-fixture-privacy.test.ts","sha256":"81636fd9941828b117d54951bf527985f54cacbb831283d2b1647df7e44e8ac8","reviewed_sha256":"a0fe648b12f57662a3ba2cd4c2793c5f9660e6aee2ba4949b2ba3e14df8b4719","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":6,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 1, fix 1. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":2,"original_declarations":2,"final_declarations":2,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":67,"end_line":84,"title":"detects home paths after nested JSON, URL, base64 and byte encoding: %s","decision":"keep","reason":"Six path forms across five raw/URL/base64/byte/nested-JSON encodings validate the actual fixture privacy gate against representative positive leaks. This is test-data-policy infrastructure, not a production privacy feature.","source_body_sha256":"9b68e094a2a2d5a6f98f8c8662e62469b21afee8e6e584722e80f9cd5cae3665","parameter_groups":[{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":67,"source":"[\n '/Users/u',\n '/home/u',\n '/home/é',\n '/Users/private/project',\n '/home/private/project',\n 'C:\\\\Users\\\\private\\\\project'\n ]","decision":"keep","reason":"Each path is run through five independently encoded representations; no separate runtime test is claimed for the inner body loop.","rows":[{"input":"/Users/u","decision":"keep","reason":"Short macOS home path"},{"input":"/home/u","decision":"keep","reason":"Short Linux home path"},{"input":"/home/é","decision":"keep","reason":"Unicode Linux home path"},{"input":"/Users/private/project","decision":"keep","reason":"Nested macOS private path"},{"input":"/home/private/project","decision":"keep","reason":"Nested Linux private path"},{"input":"C:\\Users\\private\\project","decision":"keep","reason":"Windows home path"}],"row_count":6}],"body_loops":[{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":75,"source":"for (const value of [\n path,\n encodeURIComponent(path),\n Buffer.from(path).toString('base64'),\n [...Buffer.from(path)],\n JSON.stringify({ nested: JSON.stringify(path) })\n ]) ","classification":"input scenarios","decision":"keep","reason":"Each platform path is recognized raw, URL-encoded, base64, as byte array, and nested JSON.","inputs":["raw","URI encoding","base64","byte array","nested JSON"]}],"path":"src/main/acp/acp-fixture-privacy.test.ts","start":1920,"end":2465,"byte_start":1920,"byte_end":2466,"source":"it.each([\n '/Users/u',\n '/home/u',\n '/home/é',\n '/Users/private/project',\n '/home/private/project',\n 'C:\\\\Users\\\\private\\\\project'\n ])('detects home paths after nested JSON, URL, base64 and byte encoding: %s', (path) => {\n for (const value of [\n path,\n encodeURIComponent(path),\n Buffer.from(path).toString('base64'),\n [...Buffer.from(path)],\n JSON.stringify({ nested: JSON.stringify(path) })\n ]) {\n expect(decodedStrings(value).some((text) => privateText.test(text))).toBe(true)\n }\n })","source_sha256":"9b68e094a2a2d5a6f98f8c8662e62469b21afee8e6e584722e80f9cd5cae3665","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":67,"title":"detects home paths after nested JSON, URL, base64 and byte encoding: %s","body_sha256":"9b68e094a2a2d5a6f98f8c8662e62469b21afee8e6e584722e80f9cd5cae3665"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-fixture-privacy.test.ts:67:parameter-table","src/main/acp/acp-fixture-privacy.test.ts:75:loop"]},{"line":86,"end_line":100,"title":"contains no personal metadata or home-directory paths in any decoded fixture","decision":"fix","reason":"Actual current fixture JSONL bytes are recursively decoded/scanned for personal metadata; keep the real repository artifact gate while removing an unrelated hard-coded fixture inventory minimum.","source_body_sha256":"c345ee9e9bab5a33fa012561dfb94798fb68c74082138295aed803afa7a63115","proposed_changes":[{"line":89,"decision":"remove","scope":"assertion only","proposal":"Replace names.length >= 6 with a nonempty assertion, or rely on explicit required captured-artifact provenance elsewhere; retain the actual recursive privacy scan.","reason":"The historical count six is copied inventory, independent of fixture privacy."}],"body_loops":[{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":90,"source":"for (const name of names) ","classification":"fixture corpus","decision":"fix","reason":"Traverse every selected capture filename; retain real privacy content checks while replacing historical >=6 inventory with nonempty guard."},{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":92,"source":"for (const [index, line] of content.trim().split('\\n').entries()) ","classification":"fixture corpus","decision":"keep","reason":"Traverse every parsed JSONL frame in every capture and report offending file/line on private material."}],"path":"src/main/acp/acp-fixture-privacy.test.ts","start":2469,"end":3152,"byte_start":2470,"byte_end":3153,"source":"it('contains no personal metadata or home-directory paths in any decoded fixture', async () => {\n const directory = new URL('./fixtures/', import.meta.url)\n const names = (await readdir(directory)).filter((name) => name.endsWith('.jsonl'))\n expect(names.length).toBeGreaterThanOrEqual(6)\n for (const name of names) {\n const content = await readFile(new URL(name, directory), 'utf8')\n for (const [index, line] of content.trim().split('\\n').entries()) {\n const value: unknown = JSON.parse(line)\n expect(\n decodedStrings(value).some((text) => privateText.test(text)),\n `${name}:${index + 1}`\n ).toBe(false)\n }\n }\n })","source_sha256":"c345ee9e9bab5a33fa012561dfb94798fb68c74082138295aed803afa7a63115","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":86,"title":"contains no personal metadata or home-directory paths in any decoded fixture","body_sha256":"b286e5fe62b7c255305cf6584a24cfb86be784ece9d408e9cb1fbc82ea5e1b81"},"proposal_ids":["acp-main-0001-005"],"explicit_input_controls":["src/main/acp/acp-fixture-privacy.test.ts:90:loop","src/main/acp/acp-fixture-privacy.test.ts:92:loop"]}],"explicit_input_controls":[{"id":"src/main/acp/acp-fixture-privacy.test.ts:49:loop","kind":"for-of","path":"src/main/acp/acp-fixture-privacy.test.ts","line":49,"end_line":62,"start":1405,"end":1857,"byte_start":1405,"byte_end":1857,"source":"for (const token of value.match(/[A-Za-z0-9+/_-]{8,}={0,2}/g) ?? []) {\n const decoded = Buffer.from(token, 'base64url').toString('utf8')\n if (\n decoded !== token &&\n !decoded.includes('\\uFFFD') &&\n [...decoded].every(\n (char) =>\n ['\\n', '\\r', '\\t'].includes(char) ||\n (char.charCodeAt(0) >= 32 && char.charCodeAt(0) !== 127)\n )\n ) {\n texts.push(...decodedStrings(decoded, depth + 1))\n }\n }","source_sha256":"590594155a051e24c3c38e97e7ccf8e5b4330e0585c5b2651ad39335de7572ab","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const token of value.match(/[A-Za-z0-9+/_-]{8,}={0,2}/g) ?? []) ","header_sha256":"442860750a725d2d5ebc3874e122216f8d35b2af7d4093e73a660e379ea31607","input_position":{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":49,"end_line":49,"start":1425,"end":1472,"byte_start":1425,"byte_end":1472},"binding":"const token","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"decoding workload","decision":"keep","reason":"Recognizable base64url tokens are decoded recursively with replacement-character/no-change guards; decoding work within one privacy scan.","rows":[],"current_matches":[{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":49,"body_sha256":"5f897c3a55d9466cf868777376dc06070839e9b0493b5e00393f348c1014684f"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-fixture-privacy.test.ts:67:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-fixture-privacy.test.ts","line":67,"end_line":84,"start":1920,"end":2465,"byte_start":1920,"byte_end":2466,"source":"[\n '/Users/u',\n '/home/u',\n '/home/é',\n '/Users/private/project',\n '/home/private/project',\n 'C:\\\\Users\\\\private\\\\project'\n ]","source_sha256":"f589d0af0c6c359413388d1e460cac6890b7dab0269c081eb9250c62c9145840","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":67,"end_line":74,"start":1928,"end":2072,"byte_start":1928,"byte_end":2073},"binding":"it.each","resolution":[],"enclosing_case":{"line":67,"title":"detects home paths after nested JSON, URL, base64 and byte encoding: %s"},"affected_case_lines":[67],"decision":"keep","reason":"Each path is run through five independently encoded representations; no separate runtime test is claimed for the inner body loop.","rows":[{"index":1,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":68,"end_line":68,"start":1934,"end":1944,"source":"'/Users/u'","value":{"kind":"string","value":"/Users/u"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"8f269662bc118fdd9d4a8ce30501844f57ba2180f83fd507fd5e257a9594dcdd","byte_start":1934,"byte_end":1944,"input_label":"/Users/u","decision":"keep","reason":"Short macOS home path"},{"index":2,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":69,"end_line":69,"start":1950,"end":1959,"source":"'/home/u'","value":{"kind":"string","value":"/home/u"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"eb9caee3e843a1434c021efdee8e48d226b215d7e57f420b85d3108315743454","byte_start":1950,"byte_end":1959,"input_label":"/home/u","decision":"keep","reason":"Short Linux home path"},{"index":3,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":70,"end_line":70,"start":1965,"end":1974,"source":"'/home/é'","value":{"kind":"string","value":"/home/é"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"1f1aa156d9ad8e94f7bbc54cbc8546c2eb4066c1179b793307cfa617bec76e01","byte_start":1965,"byte_end":1975,"input_label":"/home/é","decision":"keep","reason":"Unicode Linux home path"},{"index":4,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":71,"end_line":71,"start":1980,"end":2004,"source":"'/Users/private/project'","value":{"kind":"string","value":"/Users/private/project"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"138e5fb8c4f9f133e00ce1b7a20e4d825c3a442da1c00ddb8dda55c96d4e30fd","byte_start":1981,"byte_end":2005,"input_label":"/Users/private/project","decision":"keep","reason":"Nested macOS private path"},{"index":5,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":72,"end_line":72,"start":2010,"end":2033,"source":"'/home/private/project'","value":{"kind":"string","value":"/home/private/project"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"1951fb60de658c3cf179cf5bf34f0005492332a2a1da53cc6d9bf515cad8ff6b","byte_start":2011,"byte_end":2034,"input_label":"/home/private/project","decision":"keep","reason":"Nested Linux private path"},{"index":6,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":73,"end_line":73,"start":2039,"end":2068,"source":"'C:\\\\Users\\\\private\\\\project'","value":{"kind":"string","value":"C:\\Users\\private\\project"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"d4d797a3a15ebf575e04ede88a5adf4271db8677358be50dc0060157a227838e","byte_start":2040,"byte_end":2069,"input_label":"C:\\Users\\private\\project","decision":"keep","reason":"Windows home path"}],"original_row_count":6},{"id":"src/main/acp/acp-fixture-privacy.test.ts:75:loop","kind":"for-of","path":"src/main/acp/acp-fixture-privacy.test.ts","line":75,"end_line":83,"start":2165,"end":2460,"byte_start":2166,"byte_end":2461,"source":"for (const value of [\n path,\n encodeURIComponent(path),\n Buffer.from(path).toString('base64'),\n [...Buffer.from(path)],\n JSON.stringify({ nested: JSON.stringify(path) })\n ]) {\n expect(decodedStrings(value).some((text) => privateText.test(text))).toBe(true)\n }","source_sha256":"3b7c0157244a765cbedabccb44543f31948f21a2ac1bd9227e28dbcd3f4bb7cb","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const value of [\n path,\n encodeURIComponent(path),\n Buffer.from(path).toString('base64'),\n [...Buffer.from(path)],\n JSON.stringify({ nested: JSON.stringify(path) })\n ]) ","header_sha256":"347d68bac6265256b561353ab46f8d7388dc748ee319d28a9c9b7be9a29d829f","input_position":{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":75,"end_line":81,"start":2185,"end":2365,"byte_start":2186,"byte_end":2366},"binding":"const value","resolution":[],"enclosing_case":{"line":67,"title":"detects home paths after nested JSON, URL, base64 and byte encoding: %s"},"affected_case_lines":[],"classification":"input scenarios","decision":"keep","reason":"Each platform path is recognized raw, URL-encoded, base64, as byte array, and nested JSON.","original_inputs":["raw","URI encoding","base64","byte array","nested JSON"],"rows":[{"index":1,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":76,"end_line":76,"start":2193,"end":2197,"source":"path","value":{"kind":"source-expression","source":"path"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"a0af9f865bf637e6736817f4ce552e4cdf7b8c36ea75bc254c1d1f0af744b5bf","byte_start":2194,"byte_end":2198,"decision":"keep","reason":"Each platform path is recognized raw, URL-encoded, base64, as byte array, and nested JSON."},{"index":2,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":77,"end_line":77,"start":2205,"end":2229,"source":"encodeURIComponent(path)","value":{"kind":"call-source","callee":"encodeURIComponent","arguments":[{"kind":"source-expression","source":"path"}],"source":"encodeURIComponent(path)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"cb7e7aa48ea7f0cc94cd460b108ca13f958a7e921dcbd1f625db4d4425725718","byte_start":2206,"byte_end":2230,"decision":"keep","reason":"Each platform path is recognized raw, URL-encoded, base64, as byte array, and nested JSON."},{"index":3,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":78,"end_line":78,"start":2237,"end":2273,"source":"Buffer.from(path).toString('base64')","value":{"kind":"call-source","callee":"Buffer.from(path).toString","arguments":[{"kind":"string","value":"base64"}],"source":"Buffer.from(path).toString('base64')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"c9485170b739280da0dc98849aedf93d51492bc8276709d45fb4949235dc625f","byte_start":2238,"byte_end":2274,"decision":"keep","reason":"Each platform path is recognized raw, URL-encoded, base64, as byte array, and nested JSON."},{"index":4,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":79,"end_line":79,"start":2281,"end":2303,"source":"[...Buffer.from(path)]","value":{"kind":"array","value":[{"kind":"source-expression","source":"...Buffer.from(path)"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"42fa8a2df0d359ea69323823f402daeabc622a5b28fad78285f6685636704670","byte_start":2282,"byte_end":2304,"decision":"keep","reason":"Each platform path is recognized raw, URL-encoded, base64, as byte array, and nested JSON."},{"index":5,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":80,"end_line":80,"start":2311,"end":2359,"source":"JSON.stringify({ nested: JSON.stringify(path) })","value":{"kind":"call-source","callee":"JSON.stringify","arguments":[{"kind":"object","value":[{"key":"nested","value":{"kind":"call-source","callee":"JSON.stringify","arguments":[{"kind":"source-expression","source":"path"}],"source":"JSON.stringify(path)"}}]}],"source":"JSON.stringify({ nested: JSON.stringify(path) })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"f525caed5a931118a36722618c6832e8fef9bc6cf4afaf8a2538e9ed1328f766","byte_start":2312,"byte_end":2360,"decision":"keep","reason":"Each platform path is recognized raw, URL-encoded, base64, as byte array, and nested JSON."}],"current_matches":[{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":75,"body_sha256":"6d46742a855c1845330a60cf33aa0fccf5f1d8161c7d0705eb9f751403268c05"}],"policy":"Exact literal inputs within this traversal; not additional declared test cases."},{"id":"src/main/acp/acp-fixture-privacy.test.ts:90:loop","kind":"for-of","path":"src/main/acp/acp-fixture-privacy.test.ts","line":90,"end_line":99,"start":2770,"end":3147,"byte_start":2771,"byte_end":3148,"source":"for (const name of names) {\n const content = await readFile(new URL(name, directory), 'utf8')\n for (const [index, line] of content.trim().split('\\n').entries()) {\n const value: unknown = JSON.parse(line)\n expect(\n decodedStrings(value).some((text) => privateText.test(text)),\n `${name}:${index + 1}`\n ).toBe(false)\n }\n }","source_sha256":"ee35d62bbb9479810c12e95e5e185c8bd1079d732cfa6b865f462b305eb5fee0","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const name of names) ","header_sha256":"1a581af5f4912568ee7606697e7517dd6afabbec7b322890c7b7362e8c4ffbed","input_position":{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":90,"end_line":90,"start":2789,"end":2794,"byte_start":2790,"byte_end":2795},"binding":"const name","resolution":[{"name":"names","path":"src/main/acp/acp-fixture-privacy.test.ts","line":88,"end_line":88,"start":2638,"end":2714,"source":"(await readdir(directory)).filter((name) => name.endsWith('.jsonl'))"}],"enclosing_case":{"line":86,"title":"contains no personal metadata or home-directory paths in any decoded fixture"},"affected_case_lines":[],"classification":"fixture corpus","decision":"fix","reason":"Traverse every selected capture filename; retain real privacy content checks while replacing historical >=6 inventory with nonempty guard.","rows":[],"current_matches":[{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":90,"body_sha256":"45f4c4bcf860e3f8b5a1629449e56fce2bc757f795de59da9d0a51d5ae091ce5"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-fixture-privacy.test.ts:92:loop","kind":"for-of","path":"src/main/acp/acp-fixture-privacy.test.ts","line":92,"end_line":98,"start":2875,"end":3141,"byte_start":2876,"byte_end":3142,"source":"for (const [index, line] of content.trim().split('\\n').entries()) {\n const value: unknown = JSON.parse(line)\n expect(\n decodedStrings(value).some((text) => privateText.test(text)),\n `${name}:${index + 1}`\n ).toBe(false)\n }","source_sha256":"9962ab9cd92e5fcc826ecb58a0dec84a28e667d703b94494bcdcf335bff9a50e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const [index, line] of content.trim().split('\\n').entries()) ","header_sha256":"8339e40a9b8db204e73c1fcbb276cd44e4d637cd2a2414edea2d39a820765ebc","input_position":{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":92,"end_line":92,"start":2903,"end":2939,"byte_start":2904,"byte_end":2940},"binding":"const [index, line]","resolution":[],"enclosing_case":{"line":86,"title":"contains no personal metadata or home-directory paths in any decoded fixture"},"affected_case_lines":[],"classification":"fixture corpus","decision":"keep","reason":"Traverse every parsed JSONL frame in every capture and report offending file/line on private material.","rows":[],"current_matches":[{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":92,"body_sha256":"42fbfe40376dc9df9c2cc5d3e42f28a7b05366ed32907f1e1c8ace87fda6ff08"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"parameter_groups":[{"id":"src/main/acp/acp-fixture-privacy.test.ts:67:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-fixture-privacy.test.ts","line":67,"end_line":84,"start":1920,"end":2465,"byte_start":1920,"byte_end":2466,"source":"[\n '/Users/u',\n '/home/u',\n '/home/é',\n '/Users/private/project',\n '/home/private/project',\n 'C:\\\\Users\\\\private\\\\project'\n ]","source_sha256":"f589d0af0c6c359413388d1e460cac6890b7dab0269c081eb9250c62c9145840","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":67,"end_line":74,"start":1928,"end":2072,"byte_start":1928,"byte_end":2073},"binding":"it.each","resolution":[],"enclosing_case":{"line":67,"title":"detects home paths after nested JSON, URL, base64 and byte encoding: %s"},"affected_case_lines":[67],"decision":"keep","reason":"Each path is run through five independently encoded representations; no separate runtime test is claimed for the inner body loop.","rows":[{"index":1,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":68,"end_line":68,"start":1934,"end":1944,"source":"'/Users/u'","value":{"kind":"string","value":"/Users/u"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"8f269662bc118fdd9d4a8ce30501844f57ba2180f83fd507fd5e257a9594dcdd","byte_start":1934,"byte_end":1944,"input_label":"/Users/u","decision":"keep","reason":"Short macOS home path"},{"index":2,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":69,"end_line":69,"start":1950,"end":1959,"source":"'/home/u'","value":{"kind":"string","value":"/home/u"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"eb9caee3e843a1434c021efdee8e48d226b215d7e57f420b85d3108315743454","byte_start":1950,"byte_end":1959,"input_label":"/home/u","decision":"keep","reason":"Short Linux home path"},{"index":3,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":70,"end_line":70,"start":1965,"end":1974,"source":"'/home/é'","value":{"kind":"string","value":"/home/é"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"1f1aa156d9ad8e94f7bbc54cbc8546c2eb4066c1179b793307cfa617bec76e01","byte_start":1965,"byte_end":1975,"input_label":"/home/é","decision":"keep","reason":"Unicode Linux home path"},{"index":4,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":71,"end_line":71,"start":1980,"end":2004,"source":"'/Users/private/project'","value":{"kind":"string","value":"/Users/private/project"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"138e5fb8c4f9f133e00ce1b7a20e4d825c3a442da1c00ddb8dda55c96d4e30fd","byte_start":1981,"byte_end":2005,"input_label":"/Users/private/project","decision":"keep","reason":"Nested macOS private path"},{"index":5,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":72,"end_line":72,"start":2010,"end":2033,"source":"'/home/private/project'","value":{"kind":"string","value":"/home/private/project"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"1951fb60de658c3cf179cf5bf34f0005492332a2a1da53cc6d9bf515cad8ff6b","byte_start":2011,"byte_end":2034,"input_label":"/home/private/project","decision":"keep","reason":"Nested Linux private path"},{"index":6,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":73,"end_line":73,"start":2039,"end":2068,"source":"'C:\\\\Users\\\\private\\\\project'","value":{"kind":"string","value":"C:\\Users\\private\\project"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"d4d797a3a15ebf575e04ede88a5adf4271db8677358be50dc0060157a227838e","byte_start":2040,"byte_end":2069,"input_label":"C:\\Users\\private\\project","decision":"keep","reason":"Windows home path"}],"original_row_count":6}],"body_support_cleanup_loops":[{"id":"src/main/acp/acp-fixture-privacy.test.ts:49:loop","kind":"for-of","path":"src/main/acp/acp-fixture-privacy.test.ts","line":49,"end_line":62,"start":1405,"end":1857,"byte_start":1405,"byte_end":1857,"source":"for (const token of value.match(/[A-Za-z0-9+/_-]{8,}={0,2}/g) ?? []) {\n const decoded = Buffer.from(token, 'base64url').toString('utf8')\n if (\n decoded !== token &&\n !decoded.includes('\\uFFFD') &&\n [...decoded].every(\n (char) =>\n ['\\n', '\\r', '\\t'].includes(char) ||\n (char.charCodeAt(0) >= 32 && char.charCodeAt(0) !== 127)\n )\n ) {\n texts.push(...decodedStrings(decoded, depth + 1))\n }\n }","source_sha256":"590594155a051e24c3c38e97e7ccf8e5b4330e0585c5b2651ad39335de7572ab","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const token of value.match(/[A-Za-z0-9+/_-]{8,}={0,2}/g) ?? []) ","header_sha256":"442860750a725d2d5ebc3874e122216f8d35b2af7d4093e73a660e379ea31607","input_position":{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":49,"end_line":49,"start":1425,"end":1472,"byte_start":1425,"byte_end":1472},"binding":"const token","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"decoding workload","decision":"keep","reason":"Recognizable base64url tokens are decoded recursively with replacement-character/no-change guards; decoding work within one privacy scan.","rows":[],"current_matches":[{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":49,"body_sha256":"5f897c3a55d9466cf868777376dc06070839e9b0493b5e00393f348c1014684f"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-fixture-privacy.test.ts:75:loop","kind":"for-of","path":"src/main/acp/acp-fixture-privacy.test.ts","line":75,"end_line":83,"start":2165,"end":2460,"byte_start":2166,"byte_end":2461,"source":"for (const value of [\n path,\n encodeURIComponent(path),\n Buffer.from(path).toString('base64'),\n [...Buffer.from(path)],\n JSON.stringify({ nested: JSON.stringify(path) })\n ]) {\n expect(decodedStrings(value).some((text) => privateText.test(text))).toBe(true)\n }","source_sha256":"3b7c0157244a765cbedabccb44543f31948f21a2ac1bd9227e28dbcd3f4bb7cb","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const value of [\n path,\n encodeURIComponent(path),\n Buffer.from(path).toString('base64'),\n [...Buffer.from(path)],\n JSON.stringify({ nested: JSON.stringify(path) })\n ]) ","header_sha256":"347d68bac6265256b561353ab46f8d7388dc748ee319d28a9c9b7be9a29d829f","input_position":{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":75,"end_line":81,"start":2185,"end":2365,"byte_start":2186,"byte_end":2366},"binding":"const value","resolution":[],"enclosing_case":{"line":67,"title":"detects home paths after nested JSON, URL, base64 and byte encoding: %s"},"affected_case_lines":[],"classification":"input scenarios","decision":"keep","reason":"Each platform path is recognized raw, URL-encoded, base64, as byte array, and nested JSON.","original_inputs":["raw","URI encoding","base64","byte array","nested JSON"],"rows":[{"index":1,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":76,"end_line":76,"start":2193,"end":2197,"source":"path","value":{"kind":"source-expression","source":"path"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"a0af9f865bf637e6736817f4ce552e4cdf7b8c36ea75bc254c1d1f0af744b5bf","byte_start":2194,"byte_end":2198,"decision":"keep","reason":"Each platform path is recognized raw, URL-encoded, base64, as byte array, and nested JSON."},{"index":2,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":77,"end_line":77,"start":2205,"end":2229,"source":"encodeURIComponent(path)","value":{"kind":"call-source","callee":"encodeURIComponent","arguments":[{"kind":"source-expression","source":"path"}],"source":"encodeURIComponent(path)"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"cb7e7aa48ea7f0cc94cd460b108ca13f958a7e921dcbd1f625db4d4425725718","byte_start":2206,"byte_end":2230,"decision":"keep","reason":"Each platform path is recognized raw, URL-encoded, base64, as byte array, and nested JSON."},{"index":3,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":78,"end_line":78,"start":2237,"end":2273,"source":"Buffer.from(path).toString('base64')","value":{"kind":"call-source","callee":"Buffer.from(path).toString","arguments":[{"kind":"string","value":"base64"}],"source":"Buffer.from(path).toString('base64')"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"c9485170b739280da0dc98849aedf93d51492bc8276709d45fb4949235dc625f","byte_start":2238,"byte_end":2274,"decision":"keep","reason":"Each platform path is recognized raw, URL-encoded, base64, as byte array, and nested JSON."},{"index":4,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":79,"end_line":79,"start":2281,"end":2303,"source":"[...Buffer.from(path)]","value":{"kind":"array","value":[{"kind":"source-expression","source":"...Buffer.from(path)"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"42fa8a2df0d359ea69323823f402daeabc622a5b28fad78285f6685636704670","byte_start":2282,"byte_end":2304,"decision":"keep","reason":"Each platform path is recognized raw, URL-encoded, base64, as byte array, and nested JSON."},{"index":5,"path":"src/main/acp/acp-fixture-privacy.test.ts","line":80,"end_line":80,"start":2311,"end":2359,"source":"JSON.stringify({ nested: JSON.stringify(path) })","value":{"kind":"call-source","callee":"JSON.stringify","arguments":[{"kind":"object","value":[{"key":"nested","value":{"kind":"call-source","callee":"JSON.stringify","arguments":[{"kind":"source-expression","source":"path"}],"source":"JSON.stringify(path)"}}]}],"source":"JSON.stringify({ nested: JSON.stringify(path) })"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"f525caed5a931118a36722618c6832e8fef9bc6cf4afaf8a2538e9ed1328f766","byte_start":2312,"byte_end":2360,"decision":"keep","reason":"Each platform path is recognized raw, URL-encoded, base64, as byte array, and nested JSON."}],"current_matches":[{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":75,"body_sha256":"6d46742a855c1845330a60cf33aa0fccf5f1d8161c7d0705eb9f751403268c05"}],"policy":"Exact literal inputs within this traversal; not additional declared test cases."},{"id":"src/main/acp/acp-fixture-privacy.test.ts:90:loop","kind":"for-of","path":"src/main/acp/acp-fixture-privacy.test.ts","line":90,"end_line":99,"start":2770,"end":3147,"byte_start":2771,"byte_end":3148,"source":"for (const name of names) {\n const content = await readFile(new URL(name, directory), 'utf8')\n for (const [index, line] of content.trim().split('\\n').entries()) {\n const value: unknown = JSON.parse(line)\n expect(\n decodedStrings(value).some((text) => privateText.test(text)),\n `${name}:${index + 1}`\n ).toBe(false)\n }\n }","source_sha256":"ee35d62bbb9479810c12e95e5e185c8bd1079d732cfa6b865f462b305eb5fee0","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const name of names) ","header_sha256":"1a581af5f4912568ee7606697e7517dd6afabbec7b322890c7b7362e8c4ffbed","input_position":{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":90,"end_line":90,"start":2789,"end":2794,"byte_start":2790,"byte_end":2795},"binding":"const name","resolution":[{"name":"names","path":"src/main/acp/acp-fixture-privacy.test.ts","line":88,"end_line":88,"start":2638,"end":2714,"source":"(await readdir(directory)).filter((name) => name.endsWith('.jsonl'))"}],"enclosing_case":{"line":86,"title":"contains no personal metadata or home-directory paths in any decoded fixture"},"affected_case_lines":[],"classification":"fixture corpus","decision":"fix","reason":"Traverse every selected capture filename; retain real privacy content checks while replacing historical >=6 inventory with nonempty guard.","rows":[],"current_matches":[{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":90,"body_sha256":"45f4c4bcf860e3f8b5a1629449e56fce2bc757f795de59da9d0a51d5ae091ce5"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-fixture-privacy.test.ts:92:loop","kind":"for-of","path":"src/main/acp/acp-fixture-privacy.test.ts","line":92,"end_line":98,"start":2875,"end":3141,"byte_start":2876,"byte_end":3142,"source":"for (const [index, line] of content.trim().split('\\n').entries()) {\n const value: unknown = JSON.parse(line)\n expect(\n decodedStrings(value).some((text) => privateText.test(text)),\n `${name}:${index + 1}`\n ).toBe(false)\n }","source_sha256":"9962ab9cd92e5fcc826ecb58a0dec84a28e667d703b94494bcdcf335bff9a50e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const [index, line] of content.trim().split('\\n').entries()) ","header_sha256":"8339e40a9b8db204e73c1fcbb276cd44e4d637cd2a2414edea2d39a820765ebc","input_position":{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":92,"end_line":92,"start":2903,"end":2939,"byte_start":2904,"byte_end":2940},"binding":"const [index, line]","resolution":[],"enclosing_case":{"line":86,"title":"contains no personal metadata or home-directory paths in any decoded fixture"},"affected_case_lines":[],"classification":"fixture corpus","decision":"keep","reason":"Traverse every parsed JSONL frame in every capture and report offending file/line on private material.","rows":[],"current_matches":[{"path":"src/main/acp/acp-fixture-privacy.test.ts","line":92,"body_sha256":"42fbfe40376dc9df9c2cc5d3e42f28a7b05366ed32907f1e1c8ace87fda6ff08"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"implemented_changes":[{"proposal_id":"acp-main-0001-005","summary":"Recursive fixture privacy scan remains; corpus inventory threshold is now a nonempty guard.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/acp-scripted-agent.test-support.ts"],"evidence_sha256":{},"evidence_source_sha256":{},"original_evidence_detail":[],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"ACP recording privacy detects home paths after nested JSON, URL, base64 and byte encoding: /Users/u","status":"passed"},{"full_name":"ACP recording privacy detects home paths after nested JSON, URL, base64 and byte encoding: /home/u","status":"passed"},{"full_name":"ACP recording privacy detects home paths after nested JSON, URL, base64 and byte encoding: /home/é","status":"passed"},{"full_name":"ACP recording privacy detects home paths after nested JSON, URL, base64 and byte encoding: /Users/private/project","status":"passed"},{"full_name":"ACP recording privacy detects home paths after nested JSON, URL, base64 and byte encoding: /home/private/project","status":"passed"},{"full_name":"ACP recording privacy detects home paths after nested JSON, URL, base64 and byte encoding: C:\\Users\\private\\project","status":"passed"},{"full_name":"ACP recording privacy contains no personal metadata or home-directory paths in any decoded fixture","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-json-rpc-peer.test.ts","sha256":"15845c76d39862d8fcde746fd096830af54fcd15a5c51cfe09bfb184e8d675e6","reviewed_sha256":"15845c76d39862d8fcde746fd096830af54fcd15a5c51cfe09bfb184e8d675e6","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":7,"decision":"keep","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 18. Retained the reviewed behavioral coverage; final bytes match the pinned original.","declarations":18,"original_declarations":18,"final_declarations":18,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"implementation_status":"reviewed-unchanged","cases":[{"line":29,"end_line":66,"title":"drains only notifications across stdin end while calls and incoming hooks are closed","decision":"keep","reason":"Real peer drains one fragmented final notification while rejecting new outbound/inbound RPC, aborting pending handlers and detaching listeners at final close.","source_body_sha256":"bb94aedc50844a852658394ceac1a84de1fefbfa4d7ac1d1d9d014270acc712e","path":"src/main/acp/acp-json-rpc-peer.test.ts","start":1033,"end":2787,"byte_start":1033,"byte_end":2787,"source":"it('drains only notifications across stdin end while calls and incoming hooks are closed', async () => {\n const entered = deferred()\n const answer = deferred()\n const onRequest = vi.fn>(\n (_method, _params, context) => {\n entered.resolve(context.signal)\n return answer.promise\n }\n )\n const onNotification = vi.fn()\n const onClose = vi.fn()\n const { peer, agent } = fixture({ onRequest, onNotification, onClose })\n const rejected = expect(peer.request('pending', {})).rejects.toBeInstanceOf(\n AcpConnectionClosedError\n )\n void agent.request('before-close', '_question', {})\n const signal = await entered.promise\n agent.stdout.write('{\"jsonrpc\":\"2.0\",\"method\":\"final-outcome\",')\n peer.drainNotifications()\n expect(peer.closed).toBe(true)\n expect(signal.aborted).toBe(true)\n await rejected\n await expect(peer.notify('session/cancel', {})).rejects.toBeInstanceOf(AcpConnectionClosedError)\n await expect(peer.request('new', {})).rejects.toBeInstanceOf(AcpConnectionClosedError)\n agent.stdin.end()\n agent.stdout.write('\"params\":{\"status\":\"cancelled\"}}\\n')\n agent.send({ jsonrpc: '2.0', id: 'after-close', method: '_question', params: {} })\n answer.resolve('too late')\n await tick()\n expect(onNotification).toHaveBeenCalledExactlyOnceWith('final-outcome', { status: 'cancelled' })\n expect(onRequest).toHaveBeenCalledOnce()\n expect(onClose).toHaveBeenCalledOnce()\n peer.close()\n agent.notify('final-outcome', { status: 'cancelled' })\n expect(onNotification).toHaveBeenCalledOnce()\n expect(agent.stdout.listenerCount('data')).toBe(0)\n expect(onClose).toHaveBeenCalledOnce()\n })","source_sha256":"bb94aedc50844a852658394ceac1a84de1fefbfa4d7ac1d1d9d014270acc712e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-json-rpc-peer.test.ts","line":29,"title":"drains only notifications across stdin end while calls and incoming hooks are closed","body_sha256":"bb94aedc50844a852658394ceac1a84de1fefbfa4d7ac1d1d9d014270acc712e"},"proposal_ids":[],"explicit_input_controls":[]},{"line":68,"end_line":88,"title":"routes interleaved requests in both directions without conflating id types","decision":"keep","reason":"Real bidirectional correlation distinguishes numeric/string/null IDs and out-of-order replies; the scripted handler supplies independent wire data.","source_body_sha256":"1559336d3c032fbb783f3e121dfbeb1be0ea0968ae3f8eb2015c4b6ef19f5598","path":"src/main/acp/acp-json-rpc-peer.test.ts","start":2791,"end":3751,"byte_start":2791,"byte_end":3751,"source":"it('routes interleaved requests in both directions without conflating id types', async () => {\n const { peer, agent } = fixture({ onRequest: (method, params) => ({ method, params }) })\n const first = peer.request('first', {})\n const second = peer.request('second', {})\n await tick()\n expect(agent.frames.map((frame) => frame.id)).toEqual([1, 2])\n agent.send({ jsonrpc: '2.0', id: '1', result: 'not the numeric id' })\n const fromAgent = agent.request(1, '_question', { text: 'hello' })\n agent.reply(agent.frames[1], 'second result')\n agent.reply(agent.frames[0], 'first result')\n expect(await second).toBe('second result')\n expect(await first).toBe('first result')\n expect(await fromAgent).toMatchObject({\n id: 1,\n result: { method: '_question', params: { text: 'hello' } }\n })\n expect(await agent.request(null, '_null_id', {})).toMatchObject({\n id: null,\n result: { method: '_null_id' }\n })\n })","source_sha256":"1559336d3c032fbb783f3e121dfbeb1be0ea0968ae3f8eb2015c4b6ef19f5598","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-json-rpc-peer.test.ts","line":68,"title":"routes interleaved requests in both directions without conflating id types","body_sha256":"1559336d3c032fbb783f3e121dfbeb1be0ea0968ae3f8eb2015c4b6ef19f5598"},"proposal_ids":[],"explicit_input_controls":[]},{"line":90,"end_line":111,"title":"returns method-not-found and preserves explicit handler error objects","decision":"keep","reason":"Real error serialization maps absent methods, typed RPC error data and thrown ordinary handler failures to protocol responses.","source_body_sha256":"6961e6ec8cb64405382934bd245b37ce712040ce9ff8942f117c885b332b1f9b","path":"src/main/acp/acp-json-rpc-peer.test.ts","start":3755,"end":4594,"byte_start":3755,"byte_end":4594,"source":"it('returns method-not-found and preserves explicit handler error objects', async () => {\n const { agent } = fixture({\n onRequest: (method) => {\n if (method === '_denied') {\n throw new AcpRpcError(-32005, 'Denied', { reason: 'policy' })\n }\n if (method === '_crash') {\n throw new Error('Handler failed')\n }\n throw new AcpRpcError(-32601, 'Unknown method')\n }\n })\n expect(await agent.request('missing', '_missing', {})).toMatchObject({\n error: { code: -32601 }\n })\n expect(await agent.request('denied', '_denied', {})).toMatchObject({\n error: { code: -32005, message: 'Denied', data: { reason: 'policy' } }\n })\n expect(await agent.request('crash', '_crash', {})).toMatchObject({\n error: { code: -32603, message: 'Handler failed' }\n })\n })","source_sha256":"6961e6ec8cb64405382934bd245b37ce712040ce9ff8942f117c885b332b1f9b","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-json-rpc-peer.test.ts","line":90,"title":"returns method-not-found and preserves explicit handler error objects","body_sha256":"6961e6ec8cb64405382934bd245b37ce712040ce9ff8942f117c885b332b1f9b"},"proposal_ids":[],"explicit_input_controls":[]},{"line":113,"end_line":121,"title":"allows the agent to reuse a request id after receiving its response","decision":"keep","reason":"Real incoming request bookkeeping frees a completed id so a subsequent same-id request succeeds.","source_body_sha256":"84fb748ccf047172a19e07112a3d070c74f799c435ecd1c48baf53fd653f625f","path":"src/main/acp/acp-json-rpc-peer.test.ts","start":4598,"end":4987,"byte_start":4598,"byte_end":4987,"source":"it('allows the agent to reuse a request id after receiving its response', async () => {\n const { agent } = fixture({ onRequest: () => ({ answer: true }) })\n expect(await agent.request('reused', '_question', {})).toMatchObject({\n result: { answer: true }\n })\n expect(await agent.request('reused', '_question', {})).toMatchObject({\n result: { answer: true }\n })\n })","source_sha256":"84fb748ccf047172a19e07112a3d070c74f799c435ecd1c48baf53fd653f625f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-json-rpc-peer.test.ts","line":113,"title":"allows the agent to reuse a request id after receiving its response","body_sha256":"84fb748ccf047172a19e07112a3d070c74f799c435ecd1c48baf53fd653f625f"},"proposal_ids":[],"explicit_input_controls":[]},{"line":123,"end_line":148,"title":"ignores malformed and oversized lines then resumes at the next newline","decision":"keep","reason":"Real NDJSON framing survives malformed/oversized lines and a split UTF8 multibyte codepoint, then resumes a valid request.","source_body_sha256":"b86840ad676f3bb4e7a32b382ee0730cd7d22550876a84bef153176b17730313","body_loops":[{"path":"src/main/acp/acp-json-rpc-peer.test.ts","line":134,"source":"for (let i = 0; i < 20; i++) ","classification":"capacity workload","decision":"keep","reason":"20 chunks of 40 bytes deliberately exceed bounded line without newline; one overflow scenario, not 20 cases."}],"path":"src/main/acp/acp-json-rpc-peer.test.ts","start":4991,"end":6164,"byte_start":4991,"byte_end":6170,"source":"it('ignores malformed and oversized lines then resumes at the next newline', async () => {\n const diagnostics: string[] = []\n const notified: unknown[] = []\n const { peer, agent } = fixture(\n {\n onDiagnostic: (message) => diagnostics.push(message),\n onNotification: (_method, params) => notified.push(params)\n },\n { maxLineBytes: 100 }\n )\n agent.stdout.write('not json\\n[]\\n{\"jsonrpc\":\"1.0\",\"method\":\"bad\"}\\n')\n for (let i = 0; i < 20; i++) {\n agent.stdout.write('x'.repeat(40))\n }\n agent.stdout.write('\\n')\n const data = Buffer.from('{\"jsonrpc\":\"2.0\",\"method\":\"notice\",\"params\":\"✓\"}\\r\\n')\n const split = data.indexOf(Buffer.from('✓')) + 1\n agent.stdout.write(data.subarray(0, split))\n agent.stdout.write(data.subarray(split))\n agent.on('valid', (frame) => agent.reply(frame, 'ok'))\n expect(await peer.request('valid', {})).toBe('ok')\n expect(notified).toEqual(['✓'])\n expect(diagnostics).toContain('Ignored ACP line: invalid-json')\n expect(diagnostics).toContain('Ignored ACP line: line-too-long (unknown)')\n expect(diagnostics).toContain('Ignored invalid ACP JSON-RPC envelope')\n })","source_sha256":"b86840ad676f3bb4e7a32b382ee0730cd7d22550876a84bef153176b17730313","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-json-rpc-peer.test.ts","line":123,"title":"ignores malformed and oversized lines then resumes at the next newline","body_sha256":"b86840ad676f3bb4e7a32b382ee0730cd7d22550876a84bef153176b17730313"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-json-rpc-peer.test.ts:134:loop"]},{"line":150,"end_line":183,"title":"settles whoever was owed a message that exceeded the line limit","decision":"keep","reason":"Oversized response/request/notification/unknown frame classifications settle actual owed work correctly, with unclassifiable matched response forcing close.","source_body_sha256":"f8813e9d47017d86cd391092bae6a23d8a82aefe316d7e93d3d1bb13f899282e","path":"src/main/acp/acp-json-rpc-peer.test.ts","start":6168,"end":7849,"byte_start":6174,"byte_end":7855,"source":"it('settles whoever was owed a message that exceeded the line limit', async () => {\n const diagnostics: string[] = []\n const { peer, agent } = fixture(\n { onDiagnostic: (message) => diagnostics.push(message), onRequest: () => 'unused' },\n { maxLineBytes: 200 }\n )\n const filler = 'x'.repeat(300)\n const big = peer.request('session/load', {})\n agent.stdout.write(`{\"jsonrpc\":\"2.0\",\"id\":1,\"result\":{\"history\":\"${filler}\"}}\\n`)\n const lost = await big.catch((error: unknown) => error)\n expect(lost).toBeInstanceOf(AcpFrameTooLargeError)\n expect(lost).toMatchObject({ method: 'session/load', maxBytes: 200 })\n const answer = new Promise((resolve) => {\n agent.stdin.on('data', (chunk: string) => resolve(JSON.parse(chunk)))\n })\n agent.stdout.write(\n `{\"jsonrpc\":\"2.0\",\"id\":\"q\",\"method\":\"session/request_permission\",\"params\":{\"diff\":\"${filler}\"}}\\n`\n )\n expect(await answer).toMatchObject({ id: 'q', error: { code: -32600 } })\n agent.stdout.write(`{\"jsonrpc\":\"2.0\",\"method\":\"session/update\",\"params\":{\"x\":\"${filler}\"}}\\n`)\n agent.stdout.write(`${filler}\\n`)\n await tick()\n expect(peer.closed).toBe(false)\n expect(diagnostics).toEqual([\n 'Ignored ACP line: line-too-long (response)',\n 'Ignored ACP line: line-too-long (server-request)',\n 'Ignored ACP line: line-too-long (notification)',\n 'Ignored ACP line: line-too-long (unknown)'\n ])\n const stranded = peer.request('session/prompt', {})\n agent.stdout.write(`{\"jsonrpc\":\"2.0\",\"id\":2,\"vendor\":\"${filler}\"}\\n`)\n await expect(stranded).rejects.toBeInstanceOf(AcpFrameTooLargeError)\n expect(peer.closed).toBe(true)\n })","source_sha256":"f8813e9d47017d86cd391092bae6a23d8a82aefe316d7e93d3d1bb13f899282e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-json-rpc-peer.test.ts","line":150,"title":"settles whoever was owed a message that exceeded the line limit","body_sha256":"f8813e9d47017d86cd391092bae6a23d8a82aefe316d7e93d3d1bb13f899282e"},"proposal_ids":[],"explicit_input_controls":[]},{"line":185,"end_line":193,"title":"rejects malformed matching responses instead of leaving calls pending","decision":"keep","reason":"Malformed matching and contradictory result/error envelopes reject pending promises instead of hanging.","source_body_sha256":"b25402678b4e7dda14b93d4e9c05de4984d2c0aa51ff03f24976dc8ce8ea4854","path":"src/main/acp/acp-json-rpc-peer.test.ts","start":7853,"end":8373,"byte_start":7859,"byte_end":8379,"source":"it('rejects malformed matching responses instead of leaving calls pending', async () => {\n const { peer, agent } = fixture()\n const rejected = expect(peer.request('wait', {})).rejects.toMatchObject({ code: -32603 })\n agent.stdout.write('{\"jsonrpc\":\"2.0\",\"id\":1}\\n')\n await rejected\n const contradictory = expect(peer.request('wait', {})).rejects.toMatchObject({ code: -32603 })\n agent.stdout.write('{\"jsonrpc\":\"2.0\",\"id\":2,\"result\":\"x\",\"error\":{\"code\":1,\"message\":\"y\"}}\\n')\n await contradictory\n })","source_sha256":"b25402678b4e7dda14b93d4e9c05de4984d2c0aa51ff03f24976dc8ce8ea4854","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-json-rpc-peer.test.ts","line":185,"title":"rejects malformed matching responses instead of leaving calls pending","body_sha256":"b25402678b4e7dda14b93d4e9c05de4984d2c0aa51ff03f24976dc8ce8ea4854"},"proposal_ids":[],"explicit_input_controls":[]},{"line":195,"end_line":208,"title":"rejects all pending calls on exit and stops accepting requests","decision":"keep","reason":"Actual input end settles all pending requests once and rejects late calls while removing listeners.","source_body_sha256":"bd414dcc2068b81ccfdadee786174a91c864d4ae4fcbe91ed9b38737db83f878","path":"src/main/acp/acp-json-rpc-peer.test.ts","start":8377,"end":9028,"byte_start":8383,"byte_end":9034,"source":"it('rejects all pending calls on exit and stops accepting requests', async () => {\n const onClose = vi.fn()\n const { peer, agent } = fixture({ onClose })\n const first = expect(peer.request('first', {})).rejects.toBeInstanceOf(AcpConnectionClosedError)\n const second = expect(peer.request('second', {})).rejects.toBeInstanceOf(\n AcpConnectionClosedError\n )\n agent.stdout.end()\n await Promise.all([first, second])\n peer.close()\n expect(onClose).toHaveBeenCalledTimes(1)\n expect(agent.stdout.listenerCount('data')).toBe(0)\n await expect(peer.request('late', {})).rejects.toBeInstanceOf(AcpConnectionClosedError)\n })","source_sha256":"bd414dcc2068b81ccfdadee786174a91c864d4ae4fcbe91ed9b38737db83f878","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-json-rpc-peer.test.ts","line":195,"title":"rejects all pending calls on exit and stops accepting requests","body_sha256":"bd414dcc2068b81ccfdadee786174a91c864d4ae4fcbe91ed9b38737db83f878"},"proposal_ids":[],"explicit_input_controls":[]},{"line":210,"end_line":220,"title":"bounds pending calls and frees capacity when a request times out","decision":"keep","reason":"Fake-timed pending-request capacity is released after timeout and actual next wire request succeeds.","source_body_sha256":"fee52d123caca9ce8c90798bacea9c2bd25cd695fdc0904cf44aad1ac43dbfca","path":"src/main/acp/acp-json-rpc-peer.test.ts","start":9032,"end":9671,"byte_start":9038,"byte_end":9677,"source":"it('bounds pending calls and frees capacity when a request times out', async () => {\n vi.useFakeTimers()\n const { peer, agent } = fixture({}, { maxPendingRequests: 1, requestTimeoutMs: 20 })\n const timedOut = expect(peer.request('wait', {})).rejects.toBeInstanceOf(AcpRequestTimeoutError)\n await expect(peer.request('overflow', {})).rejects.toThrow('capacity exceeded')\n await vi.advanceTimersByTimeAsync(20)\n await timedOut\n agent.on('next', (frame) => agent.reply(frame, 'ok'))\n expect(await peer.request('next', {})).toBe('ok')\n expect(agent.frames.map((frame) => frame.method)).toEqual(['wait', 'next'])\n })","source_sha256":"fee52d123caca9ce8c90798bacea9c2bd25cd695fdc0904cf44aad1ac43dbfca","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-json-rpc-peer.test.ts","line":210,"title":"bounds pending calls and frees capacity when a request times out","body_sha256":"fee52d123caca9ce8c90798bacea9c2bd25cd695fdc0904cf44aad1ac43dbfca"},"proposal_ids":[],"explicit_input_controls":[]},{"line":222,"end_line":231,"title":"names the request and its deadline on a timeout, so a failed start can say which stalled","decision":"keep","reason":"Real timeout errors preserve stalled method and deadline metadata used by the owner failure surface.","source_body_sha256":"45cf5815a277a040afc3a8de022d3d2fbb1e7d40270fcf4d919f983889d7fb88","path":"src/main/acp/acp-json-rpc-peer.test.ts","start":9675,"end":10102,"byte_start":9681,"byte_end":10108,"source":"it('names the request and its deadline on a timeout, so a failed start can say which stalled', async () => {\n vi.useFakeTimers()\n const { peer } = fixture()\n const timedOut = peer.request('session/new', {}, { timeoutMs: 300 }).catch((error) => error)\n await vi.advanceTimersByTimeAsync(300)\n expect(providerRequestTimeoutOf(await timedOut)).toEqual({\n method: 'session/new',\n timeoutMs: 300\n })\n })","source_sha256":"45cf5815a277a040afc3a8de022d3d2fbb1e7d40270fcf4d919f983889d7fb88","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-json-rpc-peer.test.ts","line":222,"title":"names the request and its deadline on a timeout, so a failed start can say which stalled","body_sha256":"45cf5815a277a040afc3a8de022d3d2fbb1e7d40270fcf4d919f983889d7fb88"},"proposal_ids":[],"explicit_input_controls":[]},{"line":233,"end_line":256,"title":"bounds incoming requests without expiring user decisions","decision":"keep","reason":"Incoming capacity rejects overflow but deliberately does not timeout an owned user decision, then frees capacity on its real response.","source_body_sha256":"a0e2334d04c6afa2d80391051e1dc1725d4022c2876d7a0b5b7adf21982dde9e","path":"src/main/acp/acp-json-rpc-peer.test.ts","start":10106,"end":11042,"byte_start":10112,"byte_end":11048,"source":"it('bounds incoming requests without expiring user decisions', async () => {\n vi.useFakeTimers()\n const signal = deferred()\n const answer = deferred()\n const { agent } = fixture(\n {\n onRequest: (_method, _params, context) => {\n signal.resolve(context.signal)\n return answer.promise\n }\n },\n { maxIncomingRequests: 1, requestTimeoutMs: 20 }\n )\n const first = agent.request('first', '_question', {})\n const context = await signal.promise\n expect(await agent.request('overflow', '_question', {})).toMatchObject({\n error: { code: -32603 }\n })\n await vi.advanceTimersByTimeAsync(120_001)\n expect(context.aborted).toBe(false)\n answer.resolve({ answer: true })\n expect(await first).toMatchObject({ result: { answer: true } })\n expect(await agent.request('next', '_question', {})).toMatchObject({ result: { answer: true } })\n })","source_sha256":"a0e2334d04c6afa2d80391051e1dc1725d4022c2876d7a0b5b7adf21982dde9e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-json-rpc-peer.test.ts","line":233,"title":"bounds incoming requests without expiring user decisions","body_sha256":"a0e2334d04c6afa2d80391051e1dc1725d4022c2876d7a0b5b7adf21982dde9e"},"proposal_ids":[],"explicit_input_controls":[]},{"line":258,"end_line":274,"title":"aborts an in-flight incoming hook on close and never writes its late response","decision":"keep","reason":"Actual close aborts an in-flight request handler and prevents its later promise result from being written.","source_body_sha256":"7015a6c6fffe917be3f86d3ebc9f0d69c774fd3940bccfa74be856b4aa3b72f9","path":"src/main/acp/acp-json-rpc-peer.test.ts","start":11046,"end":11637,"byte_start":11052,"byte_end":11643,"source":"it('aborts an in-flight incoming hook on close and never writes its late response', async () => {\n const entered = deferred()\n const result = deferred()\n const { peer, agent } = fixture({\n onRequest: (_method, _params, context) => {\n entered.resolve(context.signal)\n return result.promise\n }\n })\n void agent.request('open', '_question', {})\n const signal = await entered.promise\n peer.close()\n expect(signal.aborted).toBe(true)\n result.resolve({ late: true })\n await tick()\n expect(agent.frames).toEqual([])\n })","source_sha256":"7015a6c6fffe917be3f86d3ebc9f0d69c774fd3940bccfa74be856b4aa3b72f9","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-json-rpc-peer.test.ts","line":258,"title":"aborts an in-flight incoming hook on close and never writes its late response","body_sha256":"7015a6c6fffe917be3f86d3ebc9f0d69c774fd3940bccfa74be856b4aa3b72f9"},"proposal_ids":[],"explicit_input_controls":[]},{"line":276,"end_line":305,"title":"serializes writes through backpressure and bounds queued output","decision":"keep","reason":"Real Writable callbacks/backpressure serialize three encoded frames and reject queue-byte overflow.","source_body_sha256":"89b1996ada3be5c5cbb868b253c62f075304044465d214c12607af234de00d8d","path":"src/main/acp/acp-json-rpc-peer.test.ts","start":11641,"end":12684,"byte_start":11647,"byte_end":12690,"source":"it('serializes writes through backpressure and bounds queued output', async () => {\n const writes: string[] = []\n const callbacks: ((error?: Error | null) => void)[] = []\n const output = new Writable({\n highWaterMark: 1,\n write(chunk, _encoding, callback) {\n writes.push(chunk.toString())\n callbacks.push(callback)\n }\n })\n const input = new PassThrough()\n const peer = new AcpJsonRpcPeer(input, output, {}, { maxQueuedWriteBytes: 170 })\n peers.push(peer)\n const first = peer.notify('one', {})\n const second = peer.notify('two', {})\n const third = peer.notify('three', {})\n await expect(peer.notify('overflow', {})).rejects.toThrow('capacity exceeded')\n expect(writes).toHaveLength(1)\n callbacks[0]()\n await first\n expect(writes).toHaveLength(2)\n callbacks[1]()\n await second\n callbacks[2]()\n await third\n expect(writes.map((line) => JSON.parse(line).method)).toEqual(['one', 'two', 'three'])\n peer.close()\n input.destroy()\n output.destroy()\n })","source_sha256":"89b1996ada3be5c5cbb868b253c62f075304044465d214c12607af234de00d8d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-json-rpc-peer.test.ts","line":276,"title":"serializes writes through backpressure and bounds queued output","body_sha256":"89b1996ada3be5c5cbb868b253c62f075304044465d214c12607af234de00d8d"},"proposal_ids":[],"explicit_input_controls":[]},{"line":307,"end_line":317,"title":"rejects active and queued writes when output closes","decision":"keep","reason":"Closing real output rejects both active notification and queued request promises.","source_body_sha256":"6991d7a11038d0952a91bd72f493370aa16e43ccecb194e53b22ee2a8f95a18b","path":"src/main/acp/acp-json-rpc-peer.test.ts","start":12688,"end":13226,"byte_start":12694,"byte_end":13232,"source":"it('rejects active and queued writes when output closes', async () => {\n const input = new PassThrough()\n const output = new Writable({ write(_chunk, _encoding, _callback) {} })\n const peer = new AcpJsonRpcPeer(input, output)\n peers.push(peer)\n const first = expect(peer.notify('one', {})).rejects.toBeInstanceOf(AcpConnectionClosedError)\n const second = expect(peer.request('two', {})).rejects.toBeInstanceOf(AcpConnectionClosedError)\n output.destroy()\n await Promise.all([first, second])\n input.destroy()\n })","source_sha256":"6991d7a11038d0952a91bd72f493370aa16e43ccecb194e53b22ee2a8f95a18b","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-json-rpc-peer.test.ts","line":307,"title":"rejects active and queued writes when output closes","body_sha256":"6991d7a11038d0952a91bd72f493370aa16e43ccecb194e53b22ee2a8f95a18b"},"proposal_ids":[],"explicit_input_controls":[]},{"line":319,"end_line":345,"title":"removes a timed-out queued request before it can reach the agent","decision":"keep","reason":"A fake-timed queued request is removed before backpressure releases, so no unintended frame reaches the peer.","source_body_sha256":"7e3537bda761a2566dcbe4d03569c1fd8d76e608c9eb50d96112b068eb8e8ef5","path":"src/main/acp/acp-json-rpc-peer.test.ts","start":13230,"end":14155,"byte_start":13236,"byte_end":14161,"source":"it('removes a timed-out queued request before it can reach the agent', async () => {\n vi.useFakeTimers()\n const writes: string[] = []\n const callbacks: ((error?: Error | null) => void)[] = []\n const input = new PassThrough()\n const output = new Writable({\n highWaterMark: 1,\n write(chunk, _encoding, callback) {\n writes.push(chunk.toString())\n callbacks.push(callback)\n }\n })\n const peer = new AcpJsonRpcPeer(input, output, {}, { requestTimeoutMs: 20 })\n peers.push(peer)\n const first = peer.notify('hold', {})\n const timedOut = expect(peer.request('must-not-arrive', {})).rejects.toBeInstanceOf(\n AcpRequestTimeoutError\n )\n await vi.advanceTimersByTimeAsync(20)\n await timedOut\n callbacks[0]()\n await first\n expect(writes.map((line) => JSON.parse(line).method)).toEqual(['hold'])\n peer.close()\n input.destroy()\n output.destroy()\n })","source_sha256":"7e3537bda761a2566dcbe4d03569c1fd8d76e608c9eb50d96112b068eb8e8ef5","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-json-rpc-peer.test.ts","line":319,"title":"removes a timed-out queued request before it can reach the agent","body_sha256":"7e3537bda761a2566dcbe4d03569c1fd8d76e608c9eb50d96112b068eb8e8ef5"},"proposal_ids":[],"explicit_input_controls":[]},{"line":347,"end_line":361,"title":"closes when a request times out mid-write, so a cancel never waits behind it","decision":"keep","reason":"Timeout during an active stuck write closes the transport so cancellation cannot remain queued behind it.","source_body_sha256":"0e77207635cecdd44c26bbfaa854c7615e3ab565702e607a8238ce4ddb28b4d5","path":"src/main/acp/acp-json-rpc-peer.test.ts","start":14159,"end":14798,"byte_start":14165,"byte_end":14804,"source":"it('closes when a request times out mid-write, so a cancel never waits behind it', async () => {\n vi.useFakeTimers()\n const input = new PassThrough()\n const output = new Writable({ write() {} })\n const peer = new AcpJsonRpcPeer(input, output, {}, { requestTimeoutMs: 20 })\n peers.push(peer)\n const timedOut = expect(peer.request('stuck', {})).rejects.toBeInstanceOf(\n AcpRequestTimeoutError\n )\n await vi.advanceTimersByTimeAsync(20)\n await timedOut\n expect(peer.closed).toBe(true)\n await expect(peer.notify('session/cancel', {})).rejects.toBeInstanceOf(AcpRequestTimeoutError)\n input.destroy()\n })","source_sha256":"0e77207635cecdd44c26bbfaa854c7615e3ab565702e607a8238ce4ddb28b4d5","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-json-rpc-peer.test.ts","line":347,"title":"closes when a request times out mid-write, so a cancel never waits behind it","body_sha256":"0e77207635cecdd44c26bbfaa854c7615e3ab565702e607a8238ce4ddb28b4d5"},"proposal_ids":[],"explicit_input_controls":[]},{"line":363,"end_line":369,"title":"fails pending requests on an output stream error","decision":"keep","reason":"Real writable error closes the peer and rejects pending requests with the original diagnostic.","source_body_sha256":"945daf3baeecc7464eb67fbcbb8d47e08e5f1bc276c31803aea017c35d74657a","path":"src/main/acp/acp-json-rpc-peer.test.ts","start":14802,"end":15108,"byte_start":14808,"byte_end":15114,"source":"it('fails pending requests on an output stream error', async () => {\n const { peer, agent } = fixture()\n const rejected = expect(peer.request('wait', {})).rejects.toThrow('Broken pipe')\n agent.stdin.emit('error', new Error('Broken pipe'))\n await rejected\n expect(peer.closed).toBe(true)\n })","source_sha256":"945daf3baeecc7464eb67fbcbb8d47e08e5f1bc276c31803aea017c35d74657a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-json-rpc-peer.test.ts","line":363,"title":"fails pending requests on an output stream error","body_sha256":"945daf3baeecc7464eb67fbcbb8d47e08e5f1bc276c31803aea017c35d74657a"},"proposal_ids":[],"explicit_input_controls":[]},{"line":371,"end_line":384,"title":"handles asynchronous write callback errors without an unhandled stream error","decision":"keep","reason":"Asynchronous real Writable callback failure is owned by the stream boundary and rejects work without leaking an unhandled error.","source_body_sha256":"176f43793b3c0a89f9f14acca96680a1a3805919cd4b24deb5b8d6c46f89a380","path":"src/main/acp/acp-json-rpc-peer.test.ts","start":15112,"end":15644,"byte_start":15118,"byte_end":15650,"source":"it('handles asynchronous write callback errors without an unhandled stream error', async () => {\n const input = new PassThrough()\n const output = new Writable({\n write(_chunk, _encoding, callback) {\n setImmediate(() => callback(new Error('Broken pipe from write')))\n }\n })\n const peer = new AcpJsonRpcPeer(input, output)\n peers.push(peer)\n await expect(peer.request('wait', {})).rejects.toThrow('Broken pipe from write')\n await tick()\n expect(peer.closed).toBe(true)\n input.destroy()\n })","source_sha256":"176f43793b3c0a89f9f14acca96680a1a3805919cd4b24deb5b8d6c46f89a380","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-json-rpc-peer.test.ts","line":371,"title":"handles asynchronous write callback errors without an unhandled stream error","body_sha256":"176f43793b3c0a89f9f14acca96680a1a3805919cd4b24deb5b8d6c46f89a380"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-json-rpc-peer.test.ts:134:loop","kind":"counted-loop","path":"src/main/acp/acp-json-rpc-peer.test.ts","line":134,"end_line":136,"start":5450,"end":5527,"byte_start":5450,"byte_end":5527,"source":"for (let i = 0; i < 20; i++) {\n agent.stdout.write('x'.repeat(40))\n }","source_sha256":"f2234b6d19edd61ea431ee901e26b632f5c7ff516392b2398505cf7e630e9f84","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (let i = 0; i < 20; i++) ","header_sha256":"1ccd163967e06a0eb34f0c8df1d7b04ba4116dac8f38ea88df2ccdf3464ac904","input_position":null,"binding":null,"resolution":[],"enclosing_case":{"line":123,"title":"ignores malformed and oversized lines then resumes at the next newline"},"affected_case_lines":[],"classification":"capacity workload","decision":"keep","reason":"20 chunks of 40 bytes deliberately exceed bounded line without newline; one overflow scenario, not 20 cases.","rows":[],"current_matches":[{"path":"src/main/acp/acp-json-rpc-peer.test.ts","line":134,"body_sha256":"5235e7d1d6fcd2f17ba54c1d94cf0f3fec5367882b2f6a016b60f52aa8ae7ac6"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"parameter_groups":[],"body_support_cleanup_loops":[{"id":"src/main/acp/acp-json-rpc-peer.test.ts:134:loop","kind":"counted-loop","path":"src/main/acp/acp-json-rpc-peer.test.ts","line":134,"end_line":136,"start":5450,"end":5527,"byte_start":5450,"byte_end":5527,"source":"for (let i = 0; i < 20; i++) {\n agent.stdout.write('x'.repeat(40))\n }","source_sha256":"f2234b6d19edd61ea431ee901e26b632f5c7ff516392b2398505cf7e630e9f84","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (let i = 0; i < 20; i++) ","header_sha256":"1ccd163967e06a0eb34f0c8df1d7b04ba4116dac8f38ea88df2ccdf3464ac904","input_position":null,"binding":null,"resolution":[],"enclosing_case":{"line":123,"title":"ignores malformed and oversized lines then resumes at the next newline"},"affected_case_lines":[],"classification":"capacity workload","decision":"keep","reason":"20 chunks of 40 bytes deliberately exceed bounded line without newline; one overflow scenario, not 20 cases.","rows":[],"current_matches":[{"path":"src/main/acp/acp-json-rpc-peer.test.ts","line":134,"body_sha256":"5235e7d1d6fcd2f17ba54c1d94cf0f3fec5367882b2f6a016b60f52aa8ae7ac6"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"implemented_changes":[],"evidence":["src/main/acp/acp-json-rpc-peer.ts","src/main/acp/acp-incoming-requests.ts","src/main/acp/acp-write-queue.ts","src/shared/main-process-ndjson-framer.ts"],"evidence_sha256":{"src/main/acp/acp-json-rpc-peer.ts":"30589fd87b6e376ce767a88edf3c4352ba0558dc367731f6d9bc2dd003ff21e0","src/main/acp/acp-incoming-requests.ts":"ff45ead648896b41d1461bfac08ae7fb9bd22a05f64940101f5b22ff9f7a78d8","src/main/acp/acp-write-queue.ts":"56db91ed41a8f9046c1c8c1da7d9ff3d3a08f7d2527d94c462bfcddad3ba7a9a","src/shared/main-process-ndjson-framer.ts":"92bf4b7979adf6b44a24bfebaeeb5d2352f4737eebc34250e6ab70e816774822"},"evidence_source_sha256":{"src/main/acp/acp-json-rpc-peer.ts":"30589fd87b6e376ce767a88edf3c4352ba0558dc367731f6d9bc2dd003ff21e0","src/main/acp/acp-incoming-requests.ts":"ff45ead648896b41d1461bfac08ae7fb9bd22a05f64940101f5b22ff9f7a78d8","src/main/acp/acp-write-queue.ts":"56db91ed41a8f9046c1c8c1da7d9ff3d3a08f7d2527d94c462bfcddad3ba7a9a","src/shared/main-process-ndjson-framer.ts":"92bf4b7979adf6b44a24bfebaeeb5d2352f4737eebc34250e6ab70e816774822"},"original_evidence_detail":[{"path":"src/main/acp/acp-json-rpc-peer.ts","sha256":"30589fd87b6e376ce767a88edf3c4352ba0558dc367731f6d9bc2dd003ff21e0","lines":316,"read_state":"full_body_read"},{"path":"src/main/acp/acp-incoming-requests.ts","sha256":"ff45ead648896b41d1461bfac08ae7fb9bd22a05f64940101f5b22ff9f7a78d8","lines":119,"read_state":"full_body_read"},{"path":"src/main/acp/acp-write-queue.ts","sha256":"56db91ed41a8f9046c1c8c1da7d9ff3d3a08f7d2527d94c462bfcddad3ba7a9a","lines":12,"read_state":"full_body_read"},{"path":"src/shared/main-process-ndjson-framer.ts","sha256":"92bf4b7979adf6b44a24bfebaeeb5d2352f4737eebc34250e6ab70e816774822","lines":330,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"ACP JSON-RPC peer drains only notifications across stdin end while calls and incoming hooks are closed","status":"passed"},{"full_name":"ACP JSON-RPC peer routes interleaved requests in both directions without conflating id types","status":"passed"},{"full_name":"ACP JSON-RPC peer returns method-not-found and preserves explicit handler error objects","status":"passed"},{"full_name":"ACP JSON-RPC peer allows the agent to reuse a request id after receiving its response","status":"passed"},{"full_name":"ACP JSON-RPC peer ignores malformed and oversized lines then resumes at the next newline","status":"passed"},{"full_name":"ACP JSON-RPC peer settles whoever was owed a message that exceeded the line limit","status":"passed"},{"full_name":"ACP JSON-RPC peer rejects malformed matching responses instead of leaving calls pending","status":"passed"},{"full_name":"ACP JSON-RPC peer rejects all pending calls on exit and stops accepting requests","status":"passed"},{"full_name":"ACP JSON-RPC peer bounds pending calls and frees capacity when a request times out","status":"passed"},{"full_name":"ACP JSON-RPC peer names the request and its deadline on a timeout, so a failed start can say which stalled","status":"passed"},{"full_name":"ACP JSON-RPC peer bounds incoming requests without expiring user decisions","status":"passed"},{"full_name":"ACP JSON-RPC peer aborts an in-flight incoming hook on close and never writes its late response","status":"passed"},{"full_name":"ACP JSON-RPC peer serializes writes through backpressure and bounds queued output","status":"passed"},{"full_name":"ACP JSON-RPC peer rejects active and queued writes when output closes","status":"passed"},{"full_name":"ACP JSON-RPC peer removes a timed-out queued request before it can reach the agent","status":"passed"},{"full_name":"ACP JSON-RPC peer closes when a request times out mid-write, so a cancel never waits behind it","status":"passed"},{"full_name":"ACP JSON-RPC peer fails pending requests on an output stream error","status":"passed"},{"full_name":"ACP JSON-RPC peer handles asynchronous write callback errors without an unhandled stream error","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-model-catalog-probe.test.ts","sha256":"b3ef6afa616aee177559c3e5adfa30550d3905d9869d449342da8959ec784544","reviewed_sha256":"031f49ecb81fd11983ff16f99f922c8c263e09505d90e9b1bee35fec8942e998","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":8,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 11, fix 1, consolidate 1. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":13,"original_declarations":13,"final_declarations":12,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":165,"end_line":204,"title":"lists Grok from initialize alone, under its pinned account, and closes the child","decision":"keep","reason":"Real probe obtains Grok models from initialize metadata, maps provider effort IDs/default semantics, pins account/launch env and closes the child without opening a session.","source_body_sha256":"9d65962fe4fede207f18b64edd7fb35a1db8e8452bbc3e647ece170382d0f342","path":"src/main/acp/acp-model-catalog-probe.test.ts","start":5348,"end":6926,"byte_start":5348,"byte_end":6926,"source":"it('lists Grok from initialize alone, under its pinned account, and closes the child', async () => {\n const { agent, deps, launches, closed } = scriptedGrok({ modelState: MODEL_STATE })\n const success = await createAcpModelCatalogProbe(GROK, deps)(GROK_HOME)\n expect(agent.frames.map((frame) => frame.method)).toEqual(['initialize'])\n expect(agent.frames[0]!.params).toMatchObject({\n clientCapabilities: { fs: { readTextFile: false, writeTextFile: false }, terminal: false }\n })\n expect(launches).toEqual([\n expect.objectContaining({\n command: '/opt/grok/bin/grok',\n args: ['agent', 'stdio'],\n env: expect.objectContaining({ GROK_HOME: '/homes/grok-a', XAI_API_KEY: 'from-settings' })\n })\n ])\n expect(closed()).toBe(1)\n expect(success.models).toEqual([\n {\n id: 'grok-build',\n label: 'Grok Build',\n // `initialize`'s currentModelId is not what a session runs, so it names no default.\n isDefault: false,\n // Grok's option ids, which its effort config option takes, and its own default only.\n efforts: [\n { value: 'fast', label: 'Fast' },\n { value: 'deep', label: 'Deep' }\n ],\n defaultEffort: 'deep'\n },\n {\n id: 'grok-mini',\n label: 'Grok Mini',\n isDefault: false,\n efforts: ['minimal', 'low', 'medium', 'high', 'xhigh'].map((value) => ({\n value,\n label: expect.any(String)\n }))\n },\n { id: 'grok-chat', label: 'Grok Chat', isDefault: false, efforts: [] }\n ])\n })","source_sha256":"9d65962fe4fede207f18b64edd7fb35a1db8e8452bbc3e647ece170382d0f342","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-model-catalog-probe.test.ts","line":166,"title":"lists Grok from initialize alone, under its pinned account, and closes the child","body_sha256":"9d65962fe4fede207f18b64edd7fb35a1db8e8452bbc3e647ece170382d0f342"},"proposal_ids":[],"explicit_input_controls":[]},{"line":206,"end_line":215,"title":"falls back to x.ai/models/list and never authenticates or opens a session","decision":"keep","reason":"Actual missing-initialize fallback uses x.ai/models/list and produces mapped model identities without authenticating or opening a chat.","source_body_sha256":"61a5c04b4b8c790466ce34b70066b11ee9670860e4ff0a2636b051480e21d9dc","path":"src/main/acp/acp-model-catalog-probe.test.ts","start":6930,"end":7373,"byte_start":6930,"byte_end":7373,"source":"it('falls back to x.ai/models/list and never authenticates or opens a session', async () => {\n const { agent, deps } = scriptedGrok({})\n const success = await createAcpModelCatalogProbe(GROK, deps)(GROK_HOME)\n expect(agent.frames.map((frame) => frame.method)).toEqual(['initialize', 'x.ai/models/list'])\n expect(success.models.map((model) => model.id)).toEqual([\n 'grok-build',\n 'grok-mini',\n 'grok-chat'\n ])\n })","source_sha256":"61a5c04b4b8c790466ce34b70066b11ee9670860e4ff0a2636b051480e21d9dc","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-model-catalog-probe.test.ts","line":207,"title":"falls back to x.ai/models/list and never authenticates or opens a session","body_sha256":"61a5c04b4b8c790466ce34b70066b11ee9670860e4ff0a2636b051480e21d9dc"},"proposal_ids":[],"explicit_input_controls":[]},{"line":217,"end_line":223,"title":"fails, closing the child, when Grok lists nothing","decision":"keep","reason":"Actual empty/malformed model response rejects and closes the child; no authentication wire request is invented.","source_body_sha256":"4dffc8420113804c3eaf7e3a90554cca34355682fd626d6f47b7d5a252fd24fc","path":"src/main/acp/acp-model-catalog-probe.test.ts","start":7377,"end":7811,"byte_start":7377,"byte_end":7811,"source":"it('fails, closing the child, when Grok lists nothing', async () => {\n const { agent, deps, closed } = scriptedGrok({})\n agent.on('x.ai/models/list', (frame) => agent.reply(frame, { error: 'not signed in' }))\n await expect(createAcpModelCatalogProbe(GROK, deps)(GROK_HOME)).rejects.toThrow(/did not list/)\n expect(closed()).toBe(1)\n expect(agent.frames.some((frame) => frame.method === 'authenticate')).toBe(false)\n })","source_sha256":"4dffc8420113804c3eaf7e3a90554cca34355682fd626d6f47b7d5a252fd24fc","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-model-catalog-probe.test.ts","line":218,"title":"fails, closing the child, when Grok lists nothing","body_sha256":"4dffc8420113804c3eaf7e3a90554cca34355682fd626d6f47b7d5a252fd24fc"},"proposal_ids":[],"explicit_input_controls":[]},{"line":225,"end_line":255,"title":"lists OpenCode with `models --verbose` under its scrubbed launch env, with no ACP call","decision":"keep","reason":"Actual OpenCode1 strategy resolves command/cwd/client env and parses independently supplied verbose stdout into a catalog without ACP.","source_body_sha256":"d1220c55bf73408f33de8e4add29df7c2a4d5b1f1344f194331d25774b47b587","path":"src/main/acp/acp-model-catalog-probe.test.ts","start":7815,"end":9171,"byte_start":7815,"byte_end":9171,"source":"it('lists OpenCode with `models --verbose` under its scrubbed launch env, with no ACP call', async () => {\n const runListing = vi.fn(async () => 'opencode/big-pickle\\n{\\n \"name\": \"Big Pickle\"\\n}\\n')\n const connect = vi.fn()\n const probe = createAcpModelCatalogProbe(OPENCODE, {\n resolveEnvironment: async () => ({ PATH: '/usr/bin', HOME: '/home/user' }),\n dataDirectory: '/orca-data',\n resolveCommand: () => '/opt/opencode/bin/opencode',\n probeVersion: async () => ({ version: '1.18.35' }),\n homePath: '/home/user',\n runListing,\n connect\n })\n const success = await probe(\n { kind: 'opencode', locator: { kind: 'unmanaged' } },\n { workspacePath: '/work/project' }\n )\n expect(connect).not.toHaveBeenCalled()\n expect(runListing).toHaveBeenCalledWith(\n expect.objectContaining({\n command: '/opt/opencode/bin/opencode',\n args: ['models', '--verbose'],\n // Where the project's opencode.json is read, so it lists what a chat there offers.\n cwd: '/work/project',\n env: expect.objectContaining({ OPENCODE_CLIENT: 'acp' })\n }),\n expect.objectContaining({ site: 'opencode-model-catalog-probe' })\n )\n expect(success.models).toEqual([\n { id: 'opencode/big-pickle', label: 'opencode/Big Pickle', isDefault: false, efforts: [] }\n ])\n })","source_sha256":"d1220c55bf73408f33de8e4add29df7c2a4d5b1f1344f194331d25774b47b587","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-model-catalog-probe.test.ts","line":226,"title":"lists OpenCode with `models --verbose` under its scrubbed launch env, with no ACP call","body_sha256":"d1220c55bf73408f33de8e4add29df7c2a4d5b1f1344f194331d25774b47b587"},"proposal_ids":[],"explicit_input_controls":[]},{"line":258,"end_line":278,"title":"lists OpenCode 2.x from a session it opens and deletes, with no listing command","decision":"keep","reason":"Actual OpenCode2 strategy opens/deletes one session and maps its config-option models, using the asking folder rather than a listing command.","source_body_sha256":"e00642e6a2a54fb09135c59fbad49504ddf9ab16a42c994976f15fe549c28f6c","path":"src/main/acp/acp-model-catalog-probe.test.ts","start":9273,"end":10290,"byte_start":9273,"byte_end":10290,"source":"it('lists OpenCode 2.x from a session it opens and deletes, with no listing command', async () => {\n const { agent, deps, launches } = scriptedOpenCode2(true)\n const success = await createAcpModelCatalogProbe(OPENCODE, deps)(\n { kind: 'opencode', locator: { kind: 'unmanaged' } },\n { workspacePath: '/work/project' }\n )\n expect(agent.frames.map((frame) => frame.method)).toEqual([\n 'initialize',\n 'session/new',\n 'session/delete'\n ])\n // In the asking chat's folder, so OpenCode records no project the person never opened.\n expect(agent.frames[1]!.params).toMatchObject({ cwd: '/work/project' })\n expect(agent.frames[2]!.params).toEqual({ sessionId: 'probe-session' })\n expect(launches).toEqual([expect.objectContaining({ args: ['acp'] })])\n expect(deps.runListing).not.toHaveBeenCalled()\n expect(success.models.map((model) => [model.id, model.label])).toEqual([\n ['opencode/big-pickle', 'Big Pickle'],\n ['opencode/exo-free', 'Exo Free']\n ])\n })","source_sha256":"e00642e6a2a54fb09135c59fbad49504ddf9ab16a42c994976f15fe549c28f6c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-model-catalog-probe.test.ts","line":259,"title":"lists OpenCode 2.x from a session it opens and deletes, with no listing command","body_sha256":"e00642e6a2a54fb09135c59fbad49504ddf9ab16a42c994976f15fe549c28f6c"},"proposal_ids":[],"explicit_input_controls":[]},{"line":280,"end_line":289,"title":"opens no session on an OpenCode 2.x that cannot delete one","decision":"keep","reason":"A provider with no delete capability takes the real pre-session refusal path to avoid a persistent orphan chat.","source_body_sha256":"e28bc5a46db9e0cda14211573bb6496cbdac2d94f42526a4849baa3f8be558f4","path":"src/main/acp/acp-model-catalog-probe.test.ts","start":10294,"end":10738,"byte_start":10294,"byte_end":10738,"source":"it('opens no session on an OpenCode 2.x that cannot delete one', async () => {\n const { agent, deps } = scriptedOpenCode2(false)\n await expect(\n createAcpModelCatalogProbe(OPENCODE, deps)(\n { kind: 'opencode', locator: { kind: 'unmanaged' } },\n { workspacePath: '/work/project' }\n )\n ).rejects.toThrow(/cannot delete a session/)\n expect(agent.frames.map((frame) => frame.method)).toEqual(['initialize'])\n })","source_sha256":"e28bc5a46db9e0cda14211573bb6496cbdac2d94f42526a4849baa3f8be558f4","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-model-catalog-probe.test.ts","line":281,"title":"opens no session on an OpenCode 2.x that cannot delete one","body_sha256":"e28bc5a46db9e0cda14211573bb6496cbdac2d94f42526a4849baa3f8be558f4"},"proposal_ids":[],"explicit_input_controls":[]},{"line":292,"end_line":322,"title":"lists OMP from a session kept in a folder it removes, in the chat folder","decision":"keep","reason":"Real OMP temporary session directory is created/removed on disk and models are read from the scripted session; this does not launch an actual OMP binary.","source_body_sha256":"140fe682f4634254af0737a07edb5c3c985e1490f26cd84ead4a5e916bc0ed9e","path":"src/main/acp/acp-model-catalog-probe.test.ts","start":10838,"end":12165,"byte_start":10838,"byte_end":12165,"source":"it('lists OMP from a session kept in a folder it removes, in the chat folder', async () => {\n const { agent, deps, launches } = scriptedOpenCode2(false)\n const dataDirectory = await mkdtemp(join(tmpdir(), 'orca-omp-listing-'))\n try {\n const success = await createAcpModelCatalogProbe(acpLaunchSpecFor('omp')!, {\n ...deps,\n dataDirectory,\n resolveCommand: () => '/opt/omp/bin/omp',\n probeVersion: async () => ({ version: '18.12.2' })\n })(\n { variable: 'PI_CODING_AGENT_DIR', path: '/homes/omp' },\n { workspacePath: '/work/project' }\n )\n expect(agent.frames.map((frame) => frame.method)).toEqual(['initialize', 'session/new'])\n expect(agent.frames[1]!.params).toMatchObject({ cwd: '/work/project' })\n const root = join(dataDirectory, 'acp-listing-sessions', 'omp')\n expect(launches).toEqual([\n expect.objectContaining({\n args: ['acp', '--session-dir', expect.stringMatching(/run-/)]\n })\n ])\n expect(dirname(launches[0]!.args[2]!)).toBe(root)\n expect(await readdir(root)).toEqual([])\n expect(success.models.map((model) => model.id)).toEqual([\n 'opencode/big-pickle',\n 'opencode/exo-free'\n ])\n } finally {\n await rm(dataDirectory, { recursive: true, force: true })\n }\n })","source_sha256":"140fe682f4634254af0737a07edb5c3c985e1490f26cd84ead4a5e916bc0ed9e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-model-catalog-probe.test.ts","line":293,"title":"lists OMP from a session kept in a folder it removes, in the chat folder","body_sha256":"140fe682f4634254af0737a07edb5c3c985e1490f26cd84ead4a5e916bc0ed9e"},"proposal_ids":[],"explicit_input_controls":[]},{"line":324,"end_line":334,"title":"opens no session on OpenCode 2.x without a chat folder, as at a prewarm","decision":"keep","reason":"Folderless OpenCode listing is stopped before launch. Consolidate the later duplicate case that additionally verifies no version probe.","source_body_sha256":"3cb3c63305a90d36874ef65deb40b16564ac2f137280ab0460243af40c5a3667","path":"src/main/acp/acp-model-catalog-probe.test.ts","start":12169,"end":12609,"byte_start":12169,"byte_end":12609,"source":"it('opens no session on OpenCode 2.x without a chat folder, as at a prewarm', async () => {\n const { agent, deps, launches } = scriptedOpenCode2(true)\n await expect(\n createAcpModelCatalogProbe(\n OPENCODE,\n deps\n )({ kind: 'opencode', locator: { kind: 'unmanaged' } })\n ).rejects.toBeInstanceOf(AgentModelCatalogListingStoppedError)\n expect(launches).toEqual([])\n expect(agent.frames).toEqual([])\n })","source_sha256":"3cb3c63305a90d36874ef65deb40b16564ac2f137280ab0460243af40c5a3667","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-model-catalog-probe.test.ts","line":325,"title":"opens no session on OpenCode 2.x without a chat folder, as at a prewarm","body_sha256":"f1304cf7c6d076ac3585d6d37f6a306e9043e1af118646065dd817aad9ef8c3e"},"proposal_ids":[],"explicit_input_controls":[]},{"line":336,"end_line":350,"title":"keeps the models, and says so, when OpenCode 2.x refuses to delete the listing session","decision":"fix","reason":"Failed delete retains successful models and emits the owner warning. Spy restoration must be unconditional if an assertion fails.","source_body_sha256":"64843cb3ab9b0264fed2f90b8841e0ae2026379d46c3fcd96f197394231ebc0c","proposed_changes":[{"line":339,"decision":"fix","scope":"fixture cleanup","proposal":"Restore console.warn in try/finally or the suite afterEach, preserving delete-failure behavior assertions.","reason":"Manual restore after assertions leaks a spy if the test fails."}],"path":"src/main/acp/acp-model-catalog-probe.test.ts","start":12613,"end":13303,"byte_start":12613,"byte_end":13303,"source":"it('keeps the models, and says so, when OpenCode 2.x refuses to delete the listing session', async () => {\n const { agent, deps } = scriptedOpenCode2(true)\n agent.on('session/delete', (frame) => agent.fail(frame, -32603, 'locked'))\n const warn = vi.spyOn(console, 'warn').mockImplementation(() => {})\n const success = await createAcpModelCatalogProbe(OPENCODE, deps)(\n { kind: 'opencode', locator: { kind: 'unmanaged' } },\n { workspacePath: '/work/project' }\n )\n expect(success.models).toHaveLength(2)\n expect(warn).toHaveBeenCalledWith(\n '[acp-model-catalog] opencode kept its listing session:',\n expect.anything()\n )\n warn.mockRestore()\n })","source_sha256":"64843cb3ab9b0264fed2f90b8841e0ae2026379d46c3fcd96f197394231ebc0c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-model-catalog-probe.test.ts","line":339,"title":"keeps the models, and says so, when OpenCode 2.x refuses to delete the listing session","body_sha256":"64843cb3ab9b0264fed2f90b8841e0ae2026379d46c3fcd96f197394231ebc0c"},"proposal_ids":["acp-main-0001-007"],"explicit_input_controls":[]},{"line":353,"end_line":368,"title":"stops a listing cut off while OpenCode 2.x creates its session, without deleting","decision":"keep","reason":"Abort happens only after session/new is observed; actual runner closes child without inventing an id to delete.","source_body_sha256":"4fa1e9137cf99af8a0b66baab7fed6486b0cd230bc8ab7ba68a1d8cf387b75c8","path":"src/main/acp/acp-model-catalog-probe.test.ts","start":13405,"end":14146,"byte_start":13405,"byte_end":14146,"source":"it('stops a listing cut off while OpenCode 2.x creates its session, without deleting', async () => {\n const { agent, deps, closed } = scriptedOpenCode2(true)\n agent.on('session/new', () => {})\n const stop = new AbortController()\n const listing = createAcpModelCatalogProbe(OPENCODE, deps)(\n { kind: 'opencode', locator: { kind: 'unmanaged' } },\n { workspacePath: '/work/project', signal: stop.signal }\n )\n await vi.waitFor(() =>\n expect(agent.frames.map((frame) => frame.method)).toContain('session/new')\n )\n stop.abort()\n await expect(listing).rejects.toThrow(/listing stopped/)\n expect(closed()).toBe(1)\n expect(agent.frames.map((frame) => frame.method)).not.toContain('session/delete')\n })","source_sha256":"4fa1e9137cf99af8a0b66baab7fed6486b0cd230bc8ab7ba68a1d8cf387b75c8","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-model-catalog-probe.test.ts","line":356,"title":"stops a listing cut off while OpenCode 2.x creates its session, without deleting","body_sha256":"4fa1e9137cf99af8a0b66baab7fed6486b0cd230bc8ab7ba68a1d8cf387b75c8"},"proposal_ids":[],"explicit_input_controls":[]},{"line":370,"end_line":382,"title":"asks an OpenCode 2 chat nothing, not even its version, without a chat folder","decision":"keep","reason":"Explicit OpenCode2 definition rejects folderless listing before even a version probe; distinct registered spec from normal OpenCode.","source_body_sha256":"c5ac430a99d11202aebea522d4e8df3f4292a6874fc17a22209dffe6c938dee4","path":"src/main/acp/acp-model-catalog-probe.test.ts","start":14150,"end":14746,"byte_start":14150,"byte_end":14746,"source":"it('asks an OpenCode 2 chat nothing, not even its version, without a chat folder', async () => {\n const { deps, launches } = scriptedOpenCode2(true)\n const probeVersion = vi.fn(deps.probeVersion)\n const spec = { ...acpLaunchSpecFor('opencode2')!, account: OPENCODE.account }\n await expect(\n createAcpModelCatalogProbe(spec, { ...deps, probeVersion })({\n kind: 'opencode',\n locator: { kind: 'unmanaged' }\n })\n ).rejects.toBeInstanceOf(AgentModelCatalogListingStoppedError)\n expect(probeVersion).not.toHaveBeenCalled()\n expect(launches).toEqual([])\n })","source_sha256":"c5ac430a99d11202aebea522d4e8df3f4292a6874fc17a22209dffe6c938dee4","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-model-catalog-probe.test.ts","line":373,"title":"asks an OpenCode 2 chat nothing, not even its version, without a chat folder","body_sha256":"c5ac430a99d11202aebea522d4e8df3f4292a6874fc17a22209dffe6c938dee4"},"proposal_ids":[],"explicit_input_controls":[]},{"line":384,"end_line":400,"title":"lists nothing for a release that runs no structured chat","decision":"keep","reason":"Old incompatible release takes the actual version rejection path before its injected listing boundary can run.","source_body_sha256":"247f3892eb9196ff60dee35367fe96f64c6b8ad25df4b568fd60cb2ff12e8adf","path":"src/main/acp/acp-model-catalog-probe.test.ts","start":14750,"end":15399,"byte_start":14750,"byte_end":15399,"source":"it('lists nothing for a release that runs no structured chat', async () => {\n const runListing = vi.fn()\n const probe = createAcpModelCatalogProbe(OPENCODE, {\n resolveEnvironment: async () => ({ PATH: '/usr/bin' }),\n dataDirectory: '/orca-data',\n resolveCommand: () => '/opt/opencode/bin/opencode',\n probeVersion: async () => ({ version: '1.0.0' }),\n runListing\n })\n await expect(\n probe(\n { kind: 'opencode', locator: { kind: 'unmanaged' } },\n { workspacePath: '/work/project' }\n )\n ).rejects.toThrow(/does not run structured chats/)\n expect(runListing).not.toHaveBeenCalled()\n })","source_sha256":"247f3892eb9196ff60dee35367fe96f64c6b8ad25df4b568fd60cb2ff12e8adf","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-model-catalog-probe.test.ts","line":387,"title":"lists nothing for a release that runs no structured chat","body_sha256":"247f3892eb9196ff60dee35367fe96f64c6b8ad25df4b568fd60cb2ff12e8adf"},"proposal_ids":[],"explicit_input_controls":[]},{"line":403,"end_line":415,"title":"asks `opencode` nothing, not even its version, without a chat folder","decision":"consolidate","reason":"Duplicates the folderless normal-OpenCode guard at line324; transfer stronger no-version assertion to that case and remove this repeated setup/declaration.","source_body_sha256":"54f58c0c324fb888b1da74730fdea833db04d6dcd389d57b768c8c589181e767","proposed_changes":[{"line":403,"decision":"consolidate","proposal":"Merge the probeVersion-not-called assertion into line324, which already checks no child launch or wire frame, then remove this duplicate normal-OpenCode folderless scenario.","reason":"Both call the same OPENCODE spec without workspace and fail at the same initial guard regardless of the unused configured version."}],"path":"src/main/acp/acp-model-catalog-probe.test.ts","start":15500,"end":16099,"byte_start":15500,"byte_end":16099,"source":"it('asks `opencode` nothing, not even its version, without a chat folder', async () => {\n const probeVersion = vi.fn(async () => ({ version: '1.18.35' }))\n const probe = createAcpModelCatalogProbe(OPENCODE, {\n resolveEnvironment: async () => ({ PATH: '/usr/bin' }),\n dataDirectory: '/orca-data',\n resolveCommand: () => '/opt/opencode/bin/opencode',\n probeVersion\n })\n await expect(\n probe({ kind: 'opencode', locator: { kind: 'unmanaged' } })\n ).rejects.toBeInstanceOf(AgentModelCatalogListingStoppedError)\n expect(probeVersion).not.toHaveBeenCalled()\n })","source_sha256":"54f58c0c324fb888b1da74730fdea833db04d6dcd389d57b768c8c589181e767","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"consolidate","implementation":"consolidated","destination":{"path":"src/main/acp/acp-model-catalog-probe.test.ts","line":281,"title":"opens no session on an OpenCode 2.x that cannot delete one","body_sha256":"e28bc5a46db9e0cda14211573bb6496cbdac2d94f42526a4849baa3f8be558f4"},"proposal_ids":["acp-main-0001-006"],"transfer_evidence":"Transferred no-version-probe assertion to the retained folderless normal OpenCode case.","explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-model-catalog-probe.test.ts:51:loop","kind":"for-of","path":"src/main/acp/acp-model-catalog-probe.test.ts","line":51,"end_line":53,"start":1942,"end":2003,"byte_start":1942,"byte_end":2003,"source":"for (const agent of agents.splice(0)) {\n agent.close()\n }","source_sha256":"729e7bbb3472b8924eebd716817e1f3adc0548c9d481ff3aa08b359cf706715d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const agent of agents.splice(0)) ","header_sha256":"7c05a432af5c88a397c694a8a710d9518c0c9719376a63b4887b242209db611f","input_position":{"path":"src/main/acp/acp-model-catalog-probe.test.ts","line":51,"end_line":51,"start":1962,"end":1978,"byte_start":1962,"byte_end":1978},"binding":"const agent","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"cleanup","decision":"keep","reason":"Close all owned scripted peers; no extra declaration.","rows":[],"current_matches":[{"path":"src/main/acp/acp-model-catalog-probe.test.ts","line":52,"body_sha256":"28e709d98636d101cd4157fa8a4a588851f0ef2af98a084159b996be655e73c8"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"parameter_groups":[],"body_support_cleanup_loops":[{"id":"src/main/acp/acp-model-catalog-probe.test.ts:51:loop","kind":"for-of","path":"src/main/acp/acp-model-catalog-probe.test.ts","line":51,"end_line":53,"start":1942,"end":2003,"byte_start":1942,"byte_end":2003,"source":"for (const agent of agents.splice(0)) {\n agent.close()\n }","source_sha256":"729e7bbb3472b8924eebd716817e1f3adc0548c9d481ff3aa08b359cf706715d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const agent of agents.splice(0)) ","header_sha256":"7c05a432af5c88a397c694a8a710d9518c0c9719376a63b4887b242209db611f","input_position":{"path":"src/main/acp/acp-model-catalog-probe.test.ts","line":51,"end_line":51,"start":1962,"end":1978,"byte_start":1962,"byte_end":1978},"binding":"const agent","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"cleanup","decision":"keep","reason":"Close all owned scripted peers; no extra declaration.","rows":[],"current_matches":[{"path":"src/main/acp/acp-model-catalog-probe.test.ts","line":52,"body_sha256":"28e709d98636d101cd4157fa8a4a588851f0ef2af98a084159b996be655e73c8"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"implemented_changes":[{"proposal_id":"acp-main-0001-006","summary":"Duplicate folderless normal OpenCode case is removed after moving no-version-probe assertion to retained no-launch/no-frame case.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"},{"proposal_id":"acp-main-0001-007","summary":"Suite afterEach restores all spies, including console.warn, on assertion failure.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/acp-model-catalog-probe.ts","src/main/acp/acp-structured-launch-resolution.ts","src/main/native-chat/agent-model-catalog/agent-model-catalog-probe-runner.ts"],"evidence_sha256":{"src/main/acp/acp-model-catalog-probe.ts":"4d11da775fb8ffa56b2189ec27500b311d7c449451ae65fe25e495c27013d3c6","src/main/acp/acp-structured-launch-resolution.ts":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","src/main/native-chat/agent-model-catalog/agent-model-catalog-probe-runner.ts":"db5f75c87336f0e4a238a9252369300beb22fba1fed5f2981322a7e17572d83e"},"evidence_source_sha256":{"src/main/acp/acp-model-catalog-probe.ts":"4d11da775fb8ffa56b2189ec27500b311d7c449451ae65fe25e495c27013d3c6","src/main/acp/acp-structured-launch-resolution.ts":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","src/main/native-chat/agent-model-catalog/agent-model-catalog-probe-runner.ts":"db5f75c87336f0e4a238a9252369300beb22fba1fed5f2981322a7e17572d83e"},"original_evidence_detail":[{"path":"src/main/acp/acp-model-catalog-probe.ts","sha256":"4d11da775fb8ffa56b2189ec27500b311d7c449451ae65fe25e495c27013d3c6","lines":185,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-launch-resolution.ts","sha256":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","lines":342,"read_state":"full_body_read"},{"path":"src/main/native-chat/agent-model-catalog/agent-model-catalog-probe-runner.ts","sha256":"db5f75c87336f0e4a238a9252369300beb22fba1fed5f2981322a7e17572d83e","lines":202,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"ACP model catalog probes lists Grok from initialize alone, under its pinned account, and closes the child","status":"passed"},{"full_name":"ACP model catalog probes falls back to x.ai/models/list and never authenticates or opens a session","status":"passed"},{"full_name":"ACP model catalog probes fails, closing the child, when Grok lists nothing","status":"passed"},{"full_name":"ACP model catalog probes lists OpenCode with `models --verbose` under its scrubbed launch env, with no ACP call","status":"passed"},{"full_name":"ACP model catalog probes lists OpenCode 2.x from a session it opens and deletes, with no listing command","status":"passed"},{"full_name":"ACP model catalog probes opens no session on an OpenCode 2.x that cannot delete one","status":"passed"},{"full_name":"ACP model catalog probes lists OMP from a session kept in a folder it removes, in the chat folder","status":"passed"},{"full_name":"ACP model catalog probes opens no session on OpenCode 2.x without a chat folder, as at a prewarm","status":"passed"},{"full_name":"ACP model catalog probes keeps the models, and says so, when OpenCode 2.x refuses to delete the listing session","status":"passed"},{"full_name":"ACP model catalog probes stops a listing cut off while OpenCode 2.x creates its session, without deleting","status":"passed"},{"full_name":"ACP model catalog probes asks an OpenCode 2 chat nothing, not even its version, without a chat folder","status":"passed"},{"full_name":"ACP model catalog probes lists nothing for a release that runs no structured chat","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-permission-requests.test.ts","sha256":"7b23166c5e1f0d1ceb15b40e179cce6a824b5a8cad66c6494b65269d91a96a3e","reviewed_sha256":"7b23166c5e1f0d1ceb15b40e179cce6a824b5a8cad66c6494b65269d91a96a3e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":9,"decision":"keep","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 5. Retained the reviewed behavioral coverage; final bytes match the pinned original.","declarations":5,"original_declarations":5,"final_declarations":5,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"implementation_status":"reviewed-unchanged","cases":[{"line":32,"end_line":49,"title":"delivers a permission with %s to the caller unchanged","decision":"keep","reason":"Three newer provider tool-kind/status/option-kind rows pass the real tolerant permission reader and response serializer without dropping their contract fields.","source_body_sha256":"6c7b07ff6b36d0eeb9bc171a85d9fb55524d3edbff48d219ddc3e8c7ba333f76","parameter_groups":[{"path":"src/main/acp/acp-permission-requests.test.ts","line":32,"source":"[\n ['a newer tool kind', { ...toolCall, kind: 'web_search' }, allow],\n ['a newer tool status', { ...toolCall, status: 'cancelled' }, allow],\n ['a newer option kind', toolCall, { ...allow, kind: 'allow_for_session' }]\n ]","decision":"keep","reason":"","rows":[{"input":"new tool kind web_search","decision":"keep","reason":"Open enum preserves otherwise valid permission request."},{"input":"new tool status cancelled","decision":"keep","reason":"Open status enum preserves otherwise valid permission request."},{"input":"new option kind allow_for_session","decision":"keep","reason":"Open option enum preserves otherwise valid option for handler."}],"row_count":3}],"path":"src/main/acp/acp-permission-requests.test.ts","start":1339,"end":2354,"byte_start":1339,"byte_end":2354,"source":"it.each([\n ['a newer tool kind', { ...toolCall, kind: 'web_search' }, allow],\n ['a newer tool status', { ...toolCall, status: 'cancelled' }, allow],\n ['a newer option kind', toolCall, { ...allow, kind: 'allow_for_session' }]\n ])('delivers a permission with %s to the caller unchanged', async (_label, call, option) => {\n const asked = vi.fn((_request: RequestPermissionRequest) => ({\n outcome: { outcome: 'selected' as const, optionId: option.optionId }\n }))\n const { agent, runtime, diagnostics } = fixture({ onPermission: asked })\n await runtime.start(startOptions)\n void runtime.prompt([{ type: 'text', text: 'hi' }]).catch(() => {})\n const params = { sessionId: 'session-1', toolCall: call, options: [option] }\n expect(await agent.request('p', 'session/request_permission', params)).toMatchObject({\n result: { outcome: { outcome: 'selected', optionId: option.optionId } }\n })\n expect(asked.mock.calls[0][0]).toEqual(params)\n expect(diagnostics).toEqual([])\n })","source_sha256":"6c7b07ff6b36d0eeb9bc171a85d9fb55524d3edbff48d219ddc3e8c7ba333f76","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-permission-requests.test.ts","line":32,"title":"delivers a permission with %s to the caller unchanged","body_sha256":"6c7b07ff6b36d0eeb9bc171a85d9fb55524d3edbff48d219ddc3e8c7ba333f76"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-permission-requests.test.ts:32:parameter-table"]},{"line":51,"end_line":72,"title":"delivers a permission whose other fields are unreadable, dropping only those fields","decision":"keep","reason":"Actual unreadable optional fields are dropped with precise diagnostics while valid permission identity and vendor fields survive.","source_body_sha256":"726892e64be4fc269ec29b93049132b165afef64b40bfb244a4ac451fd9857c6","path":"src/main/acp/acp-permission-requests.test.ts","start":2358,"end":3462,"byte_start":2358,"byte_end":3462,"source":"it('delivers a permission whose other fields are unreadable, dropping only those fields', async () => {\n const asked = vi.fn((_request: RequestPermissionRequest) => ({\n outcome: { outcome: 'cancelled' as const }\n }))\n const { agent, runtime, diagnostics } = fixture({ onPermission: asked })\n await runtime.start(startOptions)\n void runtime.prompt([{ type: 'text', text: 'hi' }]).catch(() => {})\n const content = [{ type: 'content', content: { type: 'reasoning_summary', text: 'x' } }]\n await agent.request('p', 'session/request_permission', {\n sessionId: 'session-1',\n toolCall: { ...toolCall, content, vendor: 'kept' },\n options: [{ optionId: 'allow', kind: 'allow_once' }, { name: 'No id' }]\n })\n expect(asked.mock.calls[0][0]).toEqual({\n sessionId: 'session-1',\n toolCall: { ...toolCall, vendor: 'kept' },\n options: [{ optionId: 'allow', name: 'allow', kind: 'allow_once' }]\n })\n expect(diagnostics).toEqual([\n 'Delivered ACP permission request without unreadable fields: options.0.name, options.1, toolCall.content'\n ])\n })","source_sha256":"726892e64be4fc269ec29b93049132b165afef64b40bfb244a4ac451fd9857c6","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-permission-requests.test.ts","line":51,"title":"delivers a permission whose other fields are unreadable, dropping only those fields","body_sha256":"726892e64be4fc269ec29b93049132b165afef64b40bfb244a4ac451fd9857c6"},"proposal_ids":[],"explicit_input_controls":[]},{"line":74,"end_line":100,"title":"answers cancelled with a diagnostic when %s","decision":"keep","reason":"Thrown and malformed handler replies go through the real handler wrapper and serialize cancelled outcomes with distinct diagnostics.","source_body_sha256":"348e3c2667445348846cffe7eedf5cf593ca7defdbf81da79a327ea5f85df500","parameter_groups":[{"path":"src/main/acp/acp-permission-requests.test.ts","line":74,"source":"[\n [\n 'the handler throws',\n () => {\n throw new Error('renderer gone')\n },\n 'handler failed: Error: renderer gone'\n ],\n // JSON.parse yields an untyped value, so a deliberately malformed reply needs no assertion.\n [\n 'the handler answers nonsense',\n () => JSON.parse('{\"outcome\":\"yes\"}'),\n 'invalid handler response'\n ]\n ]","decision":"keep","reason":"","rows":[{"input":"handler throws","decision":"keep","reason":"Runtime owns thrown handler failure, cancels permission and reports concrete diagnostic."},{"input":"handler answers nonsense","decision":"keep","reason":"Malformed handler reply is rejected/cancelled rather than sent as valid approval."}],"row_count":2}],"path":"src/main/acp/acp-permission-requests.test.ts","start":3466,"end":4491,"byte_start":3466,"byte_end":4491,"source":"it.each<[string, AcpPermissionHandler, string]>([\n [\n 'the handler throws',\n () => {\n throw new Error('renderer gone')\n },\n 'handler failed: Error: renderer gone'\n ],\n // JSON.parse yields an untyped value, so a deliberately malformed reply needs no assertion.\n [\n 'the handler answers nonsense',\n () => JSON.parse('{\"outcome\":\"yes\"}'),\n 'invalid handler response'\n ]\n ])('answers cancelled with a diagnostic when %s', async (_label, onPermission, problem) => {\n const { agent, runtime, diagnostics } = fixture({ onPermission })\n await runtime.start(startOptions)\n void runtime.prompt([{ type: 'text', text: 'hi' }]).catch(() => {})\n expect(\n await agent.request('p', 'session/request_permission', {\n sessionId: 'session-1',\n toolCall,\n options: [allow]\n })\n ).toMatchObject({ result: { outcome: { outcome: 'cancelled' } } })\n expect(diagnostics).toEqual([`Answered ACP permission request cancelled: ${problem}`])\n })","source_sha256":"348e3c2667445348846cffe7eedf5cf593ca7defdbf81da79a327ea5f85df500","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-permission-requests.test.ts","line":74,"title":"answers cancelled with a diagnostic when %s","body_sha256":"348e3c2667445348846cffe7eedf5cf593ca7defdbf81da79a327ea5f85df500"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-permission-requests.test.ts:74:parameter-table"]},{"line":102,"end_line":146,"title":"lets the owner decline a permission after cancel, before the handler starts","decision":"keep","reason":"One actual stdout chunk interleaves permission and notification so synchronous owner cancellation wins before deferred handler execution.","source_body_sha256":"ef28b94f7f9fb06d895df1b7974cbef473995c3776c6b1e484be2b85fc87b44c","path":"src/main/acp/acp-permission-requests.test.ts","start":4495,"end":6041,"byte_start":4495,"byte_end":6041,"source":"it('lets the owner decline a permission after cancel, before the handler starts', async () => {\n let stopping = false\n const asked = vi.fn((_request: RequestPermissionRequest) => ({\n outcome: stopping\n ? { outcome: 'cancelled' as const }\n : { outcome: 'selected' as const, optionId: 'allow' }\n }))\n const { agent, runtime } = fixture({ onPermission: asked })\n await runtime.start(startOptions)\n runtime.subscribe(() => {\n stopping = true\n void runtime.cancel()\n })\n const answer = new Promise((resolve) => {\n agent.stdin.on('data', (chunk: string) => {\n if (chunk.includes('\"id\":5')) {\n resolve(JSON.parse(chunk))\n }\n })\n })\n // One chunk: the permission, then an update whose listener cancels before the handler runs.\n agent.stdout.write(\n [\n {\n jsonrpc: '2.0',\n id: 5,\n method: 'session/request_permission',\n params: { sessionId: 'session-1', toolCall, options: [allow] }\n },\n {\n jsonrpc: '2.0',\n method: 'session/update',\n params: {\n sessionId: 'session-1',\n update: { sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 'x' } }\n }\n }\n ]\n .map((frame) => `${JSON.stringify(frame)}\\n`)\n .join('')\n )\n expect(await answer).toMatchObject({ id: 5, result: { outcome: { outcome: 'cancelled' } } })\n expect(stopping).toBe(true)\n expect(asked).toHaveBeenCalledOnce()\n })","source_sha256":"ef28b94f7f9fb06d895df1b7974cbef473995c3776c6b1e484be2b85fc87b44c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-permission-requests.test.ts","line":102,"title":"lets the owner decline a permission after cancel, before the handler starts","body_sha256":"ef28b94f7f9fb06d895df1b7974cbef473995c3776c6b1e484be2b85fc87b44c"},"proposal_ids":[],"explicit_input_controls":[]},{"line":148,"end_line":170,"title":"keeps an autonomous permission with its owner after session/cancel","decision":"keep","reason":"Autonomous permission remains with its owner across session/cancel; the real signal stays live until owner supplies its eventual decision.","source_body_sha256":"9b66967c7d378757256a475c96cefb8c969b51a22cde6eaf1fd15495ec2016c5","path":"src/main/acp/acp-permission-requests.test.ts","start":6045,"end":6970,"byte_start":6045,"byte_end":6970,"source":"it('keeps an autonomous permission with its owner after session/cancel', async () => {\n const decision = deferred<{ outcome: { outcome: 'cancelled' } }>()\n const asked = deferred()\n const { agent, runtime } = fixture({\n onPermission: (_request, context) => {\n asked.resolve(context.signal)\n return decision.promise\n }\n })\n await runtime.start(startOptions)\n const answer = agent.request('p', 'session/request_permission', {\n sessionId: 'session-1',\n toolCall,\n options: [allow]\n })\n const signal = await asked.promise\n await runtime.cancel()\n expect(signal.aborted).toBe(false)\n decision.resolve({ outcome: { outcome: 'cancelled' } })\n expect(await answer).toMatchObject({ result: { outcome: { outcome: 'cancelled' } } })\n await tick()\n expect(agent.frames.filter((frame) => frame.method === 'session/cancel')).toHaveLength(1)\n })","source_sha256":"9b66967c7d378757256a475c96cefb8c969b51a22cde6eaf1fd15495ec2016c5","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-permission-requests.test.ts","line":148,"title":"keeps an autonomous permission with its owner after session/cancel","body_sha256":"9b66967c7d378757256a475c96cefb8c969b51a22cde6eaf1fd15495ec2016c5"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-permission-requests.test.ts:32:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-permission-requests.test.ts","line":32,"end_line":49,"start":1339,"end":2354,"byte_start":1339,"byte_end":2354,"source":"[\n ['a newer tool kind', { ...toolCall, kind: 'web_search' }, allow],\n ['a newer tool status', { ...toolCall, status: 'cancelled' }, allow],\n ['a newer option kind', toolCall, { ...allow, kind: 'allow_for_session' }]\n ]","source_sha256":"848a6b34cee745d87fb77a56f3bd2369fac86c8fd378d99cd7eed3663e10558a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-permission-requests.test.ts","line":32,"end_line":36,"start":1347,"end":1576,"byte_start":1347,"byte_end":1576},"binding":"it.each","resolution":[],"enclosing_case":{"line":32,"title":"delivers a permission with %s to the caller unchanged"},"affected_case_lines":[32],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-permission-requests.test.ts","line":33,"end_line":33,"start":1353,"end":1418,"source":"['a newer tool kind', { ...toolCall, kind: 'web_search' }, allow]","value":{"kind":"array","value":[{"kind":"string","value":"a newer tool kind"},{"kind":"object","value":[{"source":"...toolCall"},{"key":"kind","value":{"kind":"string","value":"web_search"}}]},{"kind":"reference","source":"allow","resolved_at":{"path":"src/main/acp/acp-permission-requests.test.ts","line":9,"end_line":9,"start":511,"end":567},"resolved":{"kind":"object","value":[{"key":"optionId","value":{"kind":"string","value":"allow"}},{"key":"name","value":{"kind":"string","value":"Allow"}},{"key":"kind","value":{"kind":"string","value":"allow_once"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"9ca6296e96b95c97972953b2703e5fef4477d8a4f87c79e867ba28f1de95fd71","byte_start":1353,"byte_end":1418,"input_label":"new tool kind web_search","decision":"keep","reason":"Open enum preserves otherwise valid permission request."},{"index":2,"path":"src/main/acp/acp-permission-requests.test.ts","line":34,"end_line":34,"start":1424,"end":1492,"source":"['a newer tool status', { ...toolCall, status: 'cancelled' }, allow]","value":{"kind":"array","value":[{"kind":"string","value":"a newer tool status"},{"kind":"object","value":[{"source":"...toolCall"},{"key":"status","value":{"kind":"string","value":"cancelled"}}]},{"kind":"reference","source":"allow","resolved_at":{"path":"src/main/acp/acp-permission-requests.test.ts","line":9,"end_line":9,"start":511,"end":567},"resolved":{"kind":"object","value":[{"key":"optionId","value":{"kind":"string","value":"allow"}},{"key":"name","value":{"kind":"string","value":"Allow"}},{"key":"kind","value":{"kind":"string","value":"allow_once"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"6dae0aa3d32938eec1f80a5ed269a642d62044d92bacd6a4b8904791113df832","byte_start":1424,"byte_end":1492,"input_label":"new tool status cancelled","decision":"keep","reason":"Open status enum preserves otherwise valid permission request."},{"index":3,"path":"src/main/acp/acp-permission-requests.test.ts","line":35,"end_line":35,"start":1498,"end":1572,"source":"['a newer option kind', toolCall, { ...allow, kind: 'allow_for_session' }]","value":{"kind":"array","value":[{"kind":"string","value":"a newer option kind"},{"kind":"reference","source":"toolCall","resolved_at":{"path":"src/main/acp/acp-permission-requests.test.ts","line":10,"end_line":10,"start":585,"end":629},"resolved":{"kind":"object","value":[{"key":"toolCallId","value":{"kind":"string","value":"tool-1"}},{"key":"title","value":{"kind":"string","value":"Edit file"}}]}},{"kind":"object","value":[{"source":"...allow"},{"key":"kind","value":{"kind":"string","value":"allow_for_session"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"4b23b5bb97fa841c932271df11d562e17cb7154c19436cc7d4a220070627c854","byte_start":1498,"byte_end":1572,"input_label":"new option kind allow_for_session","decision":"keep","reason":"Open option enum preserves otherwise valid option for handler."}],"original_row_count":3},{"id":"src/main/acp/acp-permission-requests.test.ts:74:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-permission-requests.test.ts","line":74,"end_line":100,"start":3466,"end":4491,"byte_start":3466,"byte_end":4491,"source":"[\n [\n 'the handler throws',\n () => {\n throw new Error('renderer gone')\n },\n 'handler failed: Error: renderer gone'\n ],\n // JSON.parse yields an untyped value, so a deliberately malformed reply needs no assertion.\n [\n 'the handler answers nonsense',\n () => JSON.parse('{\"outcome\":\"yes\"}'),\n 'invalid handler response'\n ]\n ]","source_sha256":"ae20837c8751834c32be4efe8ac6ff30de1683737207f42d0373717caeea6001","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-permission-requests.test.ts","line":74,"end_line":88,"start":3514,"end":3894,"byte_start":3514,"byte_end":3894},"binding":"it.each","resolution":[],"enclosing_case":{"line":74,"title":"answers cancelled with a diagnostic when %s"},"affected_case_lines":[74],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-permission-requests.test.ts","line":75,"end_line":81,"start":3520,"end":3664,"source":"[\n 'the handler throws',\n () => {\n throw new Error('renderer gone')\n },\n 'handler failed: Error: renderer gone'\n ]","value":{"kind":"array","value":[{"kind":"string","value":"the handler throws"},{"kind":"source-expression","source":"() => {\n throw new Error('renderer gone')\n }"},{"kind":"string","value":"handler failed: Error: renderer gone"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"caaa4e155842001c112b54cae002aacb6bf1ad838a8f1728d393485cad37cdf2","byte_start":3520,"byte_end":3664,"input_label":"handler throws","decision":"keep","reason":"Runtime owns thrown handler failure, cancels permission and reports concrete diagnostic."},{"index":2,"path":"src/main/acp/acp-permission-requests.test.ts","line":83,"end_line":87,"start":3767,"end":3890,"source":"[\n 'the handler answers nonsense',\n () => JSON.parse('{\"outcome\":\"yes\"}'),\n 'invalid handler response'\n ]","value":{"kind":"array","value":[{"kind":"string","value":"the handler answers nonsense"},{"kind":"source-expression","source":"() => JSON.parse('{\"outcome\":\"yes\"}')"},{"kind":"string","value":"invalid handler response"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"df87164824883689789b1f5b1c2da52b4adafff0b488d66831e3ded9be636cbb","byte_start":3767,"byte_end":3890,"input_label":"handler answers nonsense","decision":"keep","reason":"Malformed handler reply is rejected/cancelled rather than sent as valid approval."}],"original_row_count":2}],"parameter_groups":[{"id":"src/main/acp/acp-permission-requests.test.ts:32:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-permission-requests.test.ts","line":32,"end_line":49,"start":1339,"end":2354,"byte_start":1339,"byte_end":2354,"source":"[\n ['a newer tool kind', { ...toolCall, kind: 'web_search' }, allow],\n ['a newer tool status', { ...toolCall, status: 'cancelled' }, allow],\n ['a newer option kind', toolCall, { ...allow, kind: 'allow_for_session' }]\n ]","source_sha256":"848a6b34cee745d87fb77a56f3bd2369fac86c8fd378d99cd7eed3663e10558a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-permission-requests.test.ts","line":32,"end_line":36,"start":1347,"end":1576,"byte_start":1347,"byte_end":1576},"binding":"it.each","resolution":[],"enclosing_case":{"line":32,"title":"delivers a permission with %s to the caller unchanged"},"affected_case_lines":[32],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-permission-requests.test.ts","line":33,"end_line":33,"start":1353,"end":1418,"source":"['a newer tool kind', { ...toolCall, kind: 'web_search' }, allow]","value":{"kind":"array","value":[{"kind":"string","value":"a newer tool kind"},{"kind":"object","value":[{"source":"...toolCall"},{"key":"kind","value":{"kind":"string","value":"web_search"}}]},{"kind":"reference","source":"allow","resolved_at":{"path":"src/main/acp/acp-permission-requests.test.ts","line":9,"end_line":9,"start":511,"end":567},"resolved":{"kind":"object","value":[{"key":"optionId","value":{"kind":"string","value":"allow"}},{"key":"name","value":{"kind":"string","value":"Allow"}},{"key":"kind","value":{"kind":"string","value":"allow_once"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"9ca6296e96b95c97972953b2703e5fef4477d8a4f87c79e867ba28f1de95fd71","byte_start":1353,"byte_end":1418,"input_label":"new tool kind web_search","decision":"keep","reason":"Open enum preserves otherwise valid permission request."},{"index":2,"path":"src/main/acp/acp-permission-requests.test.ts","line":34,"end_line":34,"start":1424,"end":1492,"source":"['a newer tool status', { ...toolCall, status: 'cancelled' }, allow]","value":{"kind":"array","value":[{"kind":"string","value":"a newer tool status"},{"kind":"object","value":[{"source":"...toolCall"},{"key":"status","value":{"kind":"string","value":"cancelled"}}]},{"kind":"reference","source":"allow","resolved_at":{"path":"src/main/acp/acp-permission-requests.test.ts","line":9,"end_line":9,"start":511,"end":567},"resolved":{"kind":"object","value":[{"key":"optionId","value":{"kind":"string","value":"allow"}},{"key":"name","value":{"kind":"string","value":"Allow"}},{"key":"kind","value":{"kind":"string","value":"allow_once"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"6dae0aa3d32938eec1f80a5ed269a642d62044d92bacd6a4b8904791113df832","byte_start":1424,"byte_end":1492,"input_label":"new tool status cancelled","decision":"keep","reason":"Open status enum preserves otherwise valid permission request."},{"index":3,"path":"src/main/acp/acp-permission-requests.test.ts","line":35,"end_line":35,"start":1498,"end":1572,"source":"['a newer option kind', toolCall, { ...allow, kind: 'allow_for_session' }]","value":{"kind":"array","value":[{"kind":"string","value":"a newer option kind"},{"kind":"reference","source":"toolCall","resolved_at":{"path":"src/main/acp/acp-permission-requests.test.ts","line":10,"end_line":10,"start":585,"end":629},"resolved":{"kind":"object","value":[{"key":"toolCallId","value":{"kind":"string","value":"tool-1"}},{"key":"title","value":{"kind":"string","value":"Edit file"}}]}},{"kind":"object","value":[{"source":"...allow"},{"key":"kind","value":{"kind":"string","value":"allow_for_session"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"4b23b5bb97fa841c932271df11d562e17cb7154c19436cc7d4a220070627c854","byte_start":1498,"byte_end":1572,"input_label":"new option kind allow_for_session","decision":"keep","reason":"Open option enum preserves otherwise valid option for handler."}],"original_row_count":3},{"id":"src/main/acp/acp-permission-requests.test.ts:74:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-permission-requests.test.ts","line":74,"end_line":100,"start":3466,"end":4491,"byte_start":3466,"byte_end":4491,"source":"[\n [\n 'the handler throws',\n () => {\n throw new Error('renderer gone')\n },\n 'handler failed: Error: renderer gone'\n ],\n // JSON.parse yields an untyped value, so a deliberately malformed reply needs no assertion.\n [\n 'the handler answers nonsense',\n () => JSON.parse('{\"outcome\":\"yes\"}'),\n 'invalid handler response'\n ]\n ]","source_sha256":"ae20837c8751834c32be4efe8ac6ff30de1683737207f42d0373717caeea6001","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-permission-requests.test.ts","line":74,"end_line":88,"start":3514,"end":3894,"byte_start":3514,"byte_end":3894},"binding":"it.each","resolution":[],"enclosing_case":{"line":74,"title":"answers cancelled with a diagnostic when %s"},"affected_case_lines":[74],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-permission-requests.test.ts","line":75,"end_line":81,"start":3520,"end":3664,"source":"[\n 'the handler throws',\n () => {\n throw new Error('renderer gone')\n },\n 'handler failed: Error: renderer gone'\n ]","value":{"kind":"array","value":[{"kind":"string","value":"the handler throws"},{"kind":"source-expression","source":"() => {\n throw new Error('renderer gone')\n }"},{"kind":"string","value":"handler failed: Error: renderer gone"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"caaa4e155842001c112b54cae002aacb6bf1ad838a8f1728d393485cad37cdf2","byte_start":3520,"byte_end":3664,"input_label":"handler throws","decision":"keep","reason":"Runtime owns thrown handler failure, cancels permission and reports concrete diagnostic."},{"index":2,"path":"src/main/acp/acp-permission-requests.test.ts","line":83,"end_line":87,"start":3767,"end":3890,"source":"[\n 'the handler answers nonsense',\n () => JSON.parse('{\"outcome\":\"yes\"}'),\n 'invalid handler response'\n ]","value":{"kind":"array","value":[{"kind":"string","value":"the handler answers nonsense"},{"kind":"source-expression","source":"() => JSON.parse('{\"outcome\":\"yes\"}')"},{"kind":"string","value":"invalid handler response"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"df87164824883689789b1f5b1c2da52b4adafff0b488d66831e3ded9be636cbb","byte_start":3767,"byte_end":3890,"input_label":"handler answers nonsense","decision":"keep","reason":"Malformed handler reply is rejected/cancelled rather than sent as valid approval."}],"original_row_count":2}],"body_support_cleanup_loops":[],"implemented_changes":[],"evidence":["src/main/acp/acp-session-runtime.ts","src/main/acp/acp-permission-requests.ts"],"evidence_sha256":{"src/main/acp/acp-session-runtime.ts":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b","src/main/acp/acp-permission-requests.ts":"7c5eaaca3e8a5f598f6b8c61686b9f65cdd605d678e3bff9aaebaf2245063327"},"evidence_source_sha256":{"src/main/acp/acp-session-runtime.ts":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b","src/main/acp/acp-permission-requests.ts":"7c5eaaca3e8a5f598f6b8c61686b9f65cdd605d678e3bff9aaebaf2245063327"},"original_evidence_detail":[{"path":"src/main/acp/acp-session-runtime.ts","sha256":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b","lines":323,"read_state":"full_body_read"},{"path":"src/main/acp/acp-permission-requests.ts","sha256":"7c5eaaca3e8a5f598f6b8c61686b9f65cdd605d678e3bff9aaebaf2245063327","lines":144,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"ACP permission requests delivers a permission with a newer tool kind to the caller unchanged","status":"passed"},{"full_name":"ACP permission requests delivers a permission with a newer tool status to the caller unchanged","status":"passed"},{"full_name":"ACP permission requests delivers a permission with a newer option kind to the caller unchanged","status":"passed"},{"full_name":"ACP permission requests delivers a permission whose other fields are unreadable, dropping only those fields","status":"passed"},{"full_name":"ACP permission requests answers cancelled with a diagnostic when the handler throws","status":"passed"},{"full_name":"ACP permission requests answers cancelled with a diagnostic when the handler answers nonsense","status":"passed"},{"full_name":"ACP permission requests lets the owner decline a permission after cancel, before the handler starts","status":"passed"},{"full_name":"ACP permission requests keeps an autonomous permission with its owner after session/cancel","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-prompt-content.test.ts","sha256":"c7c448ef1c219a77d3afb6de1d37d0ec960c58c8c5728b5366d9248347af0f81","reviewed_sha256":"0b607135edd4b9975bed5bc007347d40f190b16c731f9b67eed142ba13e58e7d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":10,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 9, fix 1. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":10,"original_declarations":10,"final_declarations":10,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":32,"end_line":36,"title":"sends text as text blocks","decision":"keep","reason":"Actual prompt builder preserves text content through no-image capability mode.","source_body_sha256":"c15233a3a158ba2cb88bde91aeda5ff18112fa246d0bfa5489fb797d07f4a8d5","path":"src/main/acp/acp-prompt-content.test.ts","start":1141,"end":1332,"byte_start":1141,"byte_end":1332,"source":"it('sends text as text blocks', async () => {\n await expect(acpPromptBlocks(message({ type: 'text', text: 'hi' }), false)).resolves.toEqual([\n { type: 'text', text: 'hi' }\n ])\n })","source_sha256":"c15233a3a158ba2cb88bde91aeda5ff18112fa246d0bfa5489fb797d07f4a8d5","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-prompt-content.test.ts","line":33,"title":"sends text as text blocks","body_sha256":"c15233a3a158ba2cb88bde91aeda5ff18112fa246d0bfa5489fb797d07f4a8d5"},"proposal_ids":[],"explicit_input_controls":[]},{"line":38,"end_line":56,"title":"sends a file or data image as an ACP image block, in order","decision":"keep","reason":"Actual filesystem path, file URL and inline data image encodings produce real base64 payloads in original mixed-block order.","source_body_sha256":"dd9de3690249f90a4117a09f0bf091099e7b259903298e147377c9482b361e01","path":"src/main/acp/acp-prompt-content.test.ts","start":1336,"end":2025,"byte_start":1336,"byte_end":2025,"source":"it('sends a file or data image as an ACP image block, in order', async () => {\n const data = PNG.toString('base64')\n await expect(\n acpPromptBlocks(\n message(\n { type: 'image-ref', path: pngPath },\n { type: 'text', text: 'what is this?' },\n { type: 'image-ref', url: pathToFileURL(pngPath).href },\n { type: 'image-ref', url: `data:image/png;base64,${data}` }\n ),\n true\n )\n ).resolves.toEqual([\n { type: 'image', mimeType: 'image/png', data },\n { type: 'text', text: 'what is this?' },\n { type: 'image', mimeType: 'image/png', data },\n { type: 'image', mimeType: 'image/png', data }\n ])\n })","source_sha256":"dd9de3690249f90a4117a09f0bf091099e7b259903298e147377c9482b361e01","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-prompt-content.test.ts","line":39,"title":"sends a file or data image as an ACP image block, in order","body_sha256":"dd9de3690249f90a4117a09f0bf091099e7b259903298e147377c9482b361e01"},"proposal_ids":[],"explicit_input_controls":[]},{"line":58,"end_line":69,"title":"sends an image's path to an agent that takes none, refusing one with no file","decision":"keep","reason":"Agent without image support receives a quoted host reference; inline-only image takes actual unsupported-type refusal.","source_body_sha256":"7422f8082ef1e00a713d08f4c764b0aa815d5505f57d3ee5a5b02dda3bd97432","path":"src/main/acp/acp-prompt-content.test.ts","start":2029,"end":2596,"byte_start":2029,"byte_end":2596,"source":"it(\"sends an image's path to an agent that takes none, refusing one with no file\", async () => {\n const spaced = join(dir, 'my shot.png')\n await expect(\n acpPromptBlocks(message({ type: 'image-ref', url: pathToFileURL(spaced).href }), false)\n ).resolves.toEqual([{ type: 'text', text: `@\"${spaced}\"` }])\n expect(\n await refusal(\n message({ type: 'image-ref', url: `data:image/png;base64,${PNG.toString('base64')}` }),\n false\n )\n ).toMatchObject({ kind: 'attachmentInvalid', attachment: { reason: 'unsupportedType' } })\n })","source_sha256":"7422f8082ef1e00a713d08f4c764b0aa815d5505f57d3ee5a5b02dda3bd97432","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-prompt-content.test.ts","line":59,"title":"sends an image's path to an agent that takes none, refusing one with no file","body_sha256":"7422f8082ef1e00a713d08f4c764b0aa815d5505f57d3ee5a5b02dda3bd97432"},"proposal_ids":[],"explicit_input_controls":[]},{"line":71,"end_line":81,"title":"refuses invalid sources and pathless formats before anything leaves Orca","decision":"keep","reason":"Relative path, malformed file URL and unsupported inline SVG exercise distinct actual source/type rejection boundaries.","source_body_sha256":"35053684e550846edb43ff63ddbe4ea040c55d77f4c7be684b62fec93aca7f66","path":"src/main/acp/acp-prompt-content.test.ts","start":2600,"end":3154,"byte_start":2600,"byte_end":3154,"source":"it('refuses invalid sources and pathless formats before anything leaves Orca', async () => {\n expect(await refusal(message({ type: 'image-ref', path: 'relative.png' }))).toMatchObject({\n attachment: { reason: 'noSource' }\n })\n expect(await refusal(message({ type: 'image-ref', url: 'file://[' }))).toMatchObject({\n attachment: { reason: 'noSource' }\n })\n expect(\n await refusal(message({ type: 'image-ref', url: 'data:image/svg+xml;base64,PHN2Zz4=' }))\n ).toMatchObject({ attachment: { reason: 'unsupportedType' } })\n })","source_sha256":"35053684e550846edb43ff63ddbe4ea040c55d77f4c7be684b62fec93aca7f66","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-prompt-content.test.ts","line":72,"title":"refuses invalid sources and pathless formats before anything leaves Orca","body_sha256":"35053684e550846edb43ff63ddbe4ea040c55d77f4c7be684b62fec93aca7f66"},"proposal_ids":[],"explicit_input_controls":[]},{"line":83,"end_line":104,"title":"keeps unrepresentable host files as references beside a native image, in order","decision":"keep","reason":"Seven host-file shapes exercise extension, raw-size, missing/empty/regular-file fallbacks while a valid image still becomes native data.","source_body_sha256":"9858d9b68ed177fa0ab2660c94c31c3d4e3439dbe488ef0068f2379885f2a374","path":"src/main/acp/acp-prompt-content.test.ts","start":3158,"end":3905,"byte_start":3158,"byte_end":3905,"source":"it('keeps unrepresentable host files as references beside a native image, in order', async () => {\n const paths = [\n 'a.svg',\n 'a.bmp',\n 'a.ico',\n 'big.png',\n 'missing.png',\n 'empty.png',\n 'folder.png'\n ].map((name) => join(dir, name))\n writeFileSync(paths[3]!, Buffer.alloc(ACP_PROMPT_IMAGE_MAX_BYTES + 1))\n writeFileSync(paths[5]!, '')\n mkdirSync(paths[6]!)\n const blocks = await acpPromptBlocks(\n message(...[...paths, pngPath].map((path) => ({ type: 'image-ref' as const, path }))),\n true\n )\n expect(blocks).toEqual([\n ...paths.map((path) => ({ type: 'text', text: `@${path}` })),\n { type: 'image', mimeType: 'image/png', data: PNG.toString('base64') }\n ])\n })","source_sha256":"9858d9b68ed177fa0ab2660c94c31c3d4e3439dbe488ef0068f2379885f2a374","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-prompt-content.test.ts","line":84,"title":"keeps unrepresentable host files as references beside a native image, in order","body_sha256":"9858d9b68ed177fa0ab2660c94c31c3d4e3439dbe488ef0068f2379885f2a374"},"proposal_ids":[],"explicit_input_controls":[]},{"line":106,"end_line":119,"title":"keeps the twenty-first host image as a reference without reordering","decision":"keep","reason":"Twenty-first repeated file crosses the actual per-message image count and remains a host reference in order.","source_body_sha256":"68d7e83f016e50732a9a6b7ffa547e3a86b4a194c376a9cb32f6f555626649c8","path":"src/main/acp/acp-prompt-content.test.ts","start":3909,"end":4421,"byte_start":3909,"byte_end":4421,"source":"it('keeps the twenty-first host image as a reference without reordering', async () => {\n const blocks = await acpPromptBlocks(\n message(...Array.from({ length: 21 }, () => ({ type: 'image-ref' as const, path: pngPath }))),\n true\n )\n expect(blocks.slice(0, 20)).toEqual(\n Array.from({ length: 20 }, () => ({\n type: 'image',\n mimeType: 'image/png',\n data: PNG.toString('base64')\n }))\n )\n expect(blocks[20]).toEqual({ type: 'text', text: `@${pngPath}` })\n })","source_sha256":"68d7e83f016e50732a9a6b7ffa547e3a86b4a194c376a9cb32f6f555626649c8","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-prompt-content.test.ts","line":107,"title":"keeps the twenty-first host image as a reference without reordering","body_sha256":"68d7e83f016e50732a9a6b7ffa547e3a86b4a194c376a9cb32f6f555626649c8"},"proposal_ids":[],"explicit_input_controls":[]},{"line":121,"end_line":134,"title":"keeps a host path when native encoding would exceed room reserved for later text","decision":"keep","reason":"Actual later text budget prevents oversized native base64 expansion while preserving original host path and text.","source_body_sha256":"bf5c6ebf585c48288e380f627c3539704bed0482beed3b5e173c33d1d94f9d6f","path":"src/main/acp/acp-prompt-content.test.ts","start":4425,"end":5003,"byte_start":4425,"byte_end":5003,"source":"it('keeps a host path when native encoding would exceed room reserved for later text', async () => {\n const path = join(dir, 'encoded.png')\n writeFileSync(path, Buffer.alloc(9 * 1024 * 1024))\n const text = 'x'.repeat(4 * 1024 * 1024)\n const blocks = await acpPromptBlocks(\n message({ type: 'image-ref', path }, { type: 'text', text }),\n true\n )\n expect(blocks).toEqual([\n { type: 'text', text: `@${path}` },\n { type: 'text', text }\n ])\n expect(Buffer.byteLength(JSON.stringify(blocks))).toBeLessThan(16 * 1024 * 1024 - 64 * 1024)\n })","source_sha256":"bf5c6ebf585c48288e380f627c3539704bed0482beed3b5e173c33d1d94f9d6f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-prompt-content.test.ts","line":122,"title":"keeps a host path when native encoding would exceed room reserved for later text","body_sha256":"bf5c6ebf585c48288e380f627c3539704bed0482beed3b5e173c33d1d94f9d6f"},"proposal_ids":[],"explicit_input_controls":[]},{"line":136,"end_line":149,"title":"keeps a message with images within one protocol line","decision":"fix","reason":"Real combined prompt encoding refuses an over-line image message. Remove the independent exported-limit arithmetic assertion.","source_body_sha256":"557fe97636843303dae3e0729ba20f45bb28da9d64eab1d2061b98898b8be3c8","proposed_changes":[{"line":148,"decision":"remove","scope":"assertion only","proposal":"Delete expect(ACP_PROMPT_IMAGE_MAX_BYTES * (4 / 3)).toBeLessThan(...); retain the actual prompt rejection assertion.","reason":"A copied exported constant/formula is independent of whether production enforces the message boundary."}],"path":"src/main/acp/acp-prompt-content.test.ts","start":5007,"end":5596,"byte_start":5007,"byte_end":5596,"source":"it('keeps a message with images within one protocol line', async () => {\n // The images fit their raw limit, but with this much text the prompt would pass the line.\n const text = 'x'.repeat(8 * 1024 * 1024)\n const image = {\n type: 'image-ref' as const,\n url: `data:image/png;base64,${PNG.toString('base64')}`\n }\n expect(\n await refusal(message({ type: 'text', text }, { type: 'text', text }, image))\n ).toMatchObject({\n attachment: { reason: 'totalTooLarge' }\n })\n expect(ACP_PROMPT_IMAGE_MAX_BYTES * (4 / 3)).toBeLessThan(16 * 1024 * 1024)\n })","source_sha256":"557fe97636843303dae3e0729ba20f45bb28da9d64eab1d2061b98898b8be3c8","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-prompt-content.test.ts","line":137,"title":"keeps a message with images within one protocol line","body_sha256":"4f5b4258dd4c0496348516eff7ebd2cb9268642136f5819e224b035adc91c1b5"},"proposal_ids":["acp-main-0001-008"],"explicit_input_controls":[]},{"line":151,"end_line":156,"title":"leaves a text-only message to the agent, however long","decision":"keep","reason":"Large text-only input follows the intentional agent-owned line behavior and is not rejected by image materialization limits.","source_body_sha256":"63e9182fabe044e0585d16050edc930cb47edf2fcf4150daa5f9bbe702a88308","path":"src/main/acp/acp-prompt-content.test.ts","start":5600,"end":5857,"byte_start":5600,"byte_end":5857,"source":"it('leaves a text-only message to the agent, however long', async () => {\n const text = 'x'.repeat(9 * 1024 * 1024)\n await expect(\n acpPromptBlocks(message({ type: 'text', text }, { type: 'text', text }), true)\n ).resolves.toHaveLength(2)\n })","source_sha256":"63e9182fabe044e0585d16050edc930cb47edf2fcf4150daa5f9bbe702a88308","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-prompt-content.test.ts","line":151,"title":"leaves a text-only message to the agent, however long","body_sha256":"63e9182fabe044e0585d16050edc930cb47edf2fcf4150daa5f9bbe702a88308"},"proposal_ids":[],"explicit_input_controls":[]},{"line":158,"end_line":164,"title":"bounds one message's images together","decision":"keep","reason":"Two actual inline images exceed the shared raw budget and return the total-too-large failure with its observed limit.","source_body_sha256":"515768b5b7121a4c62ae50aef7f7bf2a2186c774fd4511fa1ba8b5c130b2cbc5","path":"src/main/acp/acp-prompt-content.test.ts","start":5861,"end":6245,"byte_start":5861,"byte_end":6245,"source":"it(\"bounds one message's images together\", async () => {\n const big = Buffer.alloc(ACP_PROMPT_IMAGE_MAX_BYTES / 2 + 1).toString('base64')\n const image = { type: 'image-ref' as const, url: `data:image/png;base64,${big}` }\n expect(await refusal(message(image, image))).toMatchObject({\n attachment: { reason: 'totalTooLarge', limit: ACP_PROMPT_IMAGE_MAX_BYTES }\n })\n })","source_sha256":"515768b5b7121a4c62ae50aef7f7bf2a2186c774fd4511fa1ba8b5c130b2cbc5","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-prompt-content.test.ts","line":158,"title":"bounds one message's images together","body_sha256":"515768b5b7121a4c62ae50aef7f7bf2a2186c774fd4511fa1ba8b5c130b2cbc5"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[],"parameter_groups":[],"body_support_cleanup_loops":[],"implemented_changes":[{"proposal_id":"acp-main-0001-008","summary":"Removed constant-only image/base64 formula assertion; real oversized image/prompt rejections remain.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"},{"proposal_id":"acp-main-0001-009","summary":"Prompt-content suite removes its owned temp directory through afterAll registered immediately after creation.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/acp-prompt-content.ts","src/shared/node-bounded-file-reader.ts"],"evidence_sha256":{"src/main/acp/acp-prompt-content.ts":"1bb4fa939defd0714251f75fa80b2ca5bca1875f64c4ca63028bd7e021ee037a","src/shared/node-bounded-file-reader.ts":"dd802153afd18e53f9f6466626da47eb3625c0e9d4a8c2ab0e6434ff0e27d141"},"evidence_source_sha256":{"src/main/acp/acp-prompt-content.ts":"1bb4fa939defd0714251f75fa80b2ca5bca1875f64c4ca63028bd7e021ee037a","src/shared/node-bounded-file-reader.ts":"dd802153afd18e53f9f6466626da47eb3625c0e9d4a8c2ab0e6434ff0e27d141"},"original_evidence_detail":[{"path":"src/main/acp/acp-prompt-content.ts","sha256":"1bb4fa939defd0714251f75fa80b2ca5bca1875f64c4ca63028bd7e021ee037a","lines":223,"read_state":"full_body_read"},{"path":"src/shared/node-bounded-file-reader.ts","sha256":"dd802153afd18e53f9f6466626da47eb3625c0e9d4a8c2ab0e6434ff0e27d141","lines":205,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"ACP prompt content sends text as text blocks","status":"passed"},{"full_name":"ACP prompt content sends a file or data image as an ACP image block, in order","status":"passed"},{"full_name":"ACP prompt content sends an image's path to an agent that takes none, refusing one with no file","status":"passed"},{"full_name":"ACP prompt content refuses invalid sources and pathless formats before anything leaves Orca","status":"passed"},{"full_name":"ACP prompt content keeps unrepresentable host files as references beside a native image, in order","status":"passed"},{"full_name":"ACP prompt content keeps the twenty-first host image as a reference without reordering","status":"passed"},{"full_name":"ACP prompt content keeps a host path when native encoding would exceed room reserved for later text","status":"passed"},{"full_name":"ACP prompt content keeps a message with images within one protocol line","status":"passed"},{"full_name":"ACP prompt content leaves a text-only message to the agent, however long","status":"passed"},{"full_name":"ACP prompt content bounds one message's images together","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-recovery-history.test.ts","sha256":"caea413158cf57ac64a54ecb8e45f7b2e128d505de5bb5345937a75f480a0be8","reviewed_sha256":"d9e6d1506d3cf12e8d6005c05daeb3938ba9d5c922008545c11bb3a79c13ff2c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":11,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 8, fix 1. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":9,"original_declarations":9,"final_declarations":9,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":89,"end_line":112,"title":"settles a message the agent recorded after the crash as sent, under its own row","decision":"keep","reason":"Real recovery window and submission reconciler attach the newly stored provider row to the unknown send; the injected store only supplies producer-shaped messages, not the decision.","source_body_sha256":"16b74ffc2606f87d0092c7aab1089a28f5a746e1181ada5019aa4ef3caf1499e","path":"src/main/acp/acp-recovery-history.test.ts","start":2806,"end":3753,"byte_start":2806,"byte_end":3753,"source":"it('settles a message the agent recorded after the crash as sent, under its own row', async () => {\n const load = journal(\n submission('first', 'hello', 'accepted', 100, 110),\n submission('held', 'run the tests', 'unknown', 200)\n )\n const { window, readStoredUserMessages } = await windowFor(load, [\n stored('msg_1', 'hello', 105),\n stored('msg_2', 'run the tests', 205)\n ])\n expect(readStoredUserMessages).toHaveBeenCalledWith(\n expect.objectContaining({ env: launch.env, providerSessionId: 'ses_1' })\n )\n expect(window).toMatchObject({ boundaryConsistent: false, turnInFlight: true })\n expect(\n reconcileSubmissions({ submissions: [...load.state.submissions.values()], history: window! })\n ).toEqual([\n {\n clientMessageId: 'held',\n outcome: 'accepted',\n providerItemId: 'msg_2',\n identity: { provider: 'orca', clientMessageId: 'held' }\n }\n ])\n })","source_sha256":"16b74ffc2606f87d0092c7aab1089a28f5a746e1181ada5019aa4ef3caf1499e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-recovery-history.test.ts","line":89,"title":"settles a message the agent recorded after the crash as sent, under its own row","body_sha256":"16b74ffc2606f87d0092c7aab1089a28f5a746e1181ada5019aa4ef3caf1499e"},"proposal_ids":[],"explicit_input_controls":[]},{"line":114,"end_line":124,"title":"never offers an older identical message as the one in doubt","decision":"keep","reason":"An older identical accepted row is excluded from the current doubtful-send window and cannot falsely confirm delivery.","source_body_sha256":"0c409b0a27c7088383ec70036636597ade59342744a1c14c90ef3e0517cd5e8a","path":"src/main/acp/acp-recovery-history.test.ts","start":3757,"end":4289,"byte_start":3757,"byte_end":4289,"source":"it('never offers an older identical message as the one in doubt', async () => {\n const load = journal(\n submission('first', 'continue', 'accepted', 100, 110),\n submission('held', 'continue', 'unknown', 200)\n )\n const { window } = await windowFor(load, [stored('msg_1', 'continue', 105)])\n expect(window?.items).toEqual([])\n expect(\n reconcileSubmissions({ submissions: [...load.state.submissions.values()], history: window! })\n ).toMatchObject([{ clientMessageId: 'held', outcome: 'unknown' }])\n })","source_sha256":"0c409b0a27c7088383ec70036636597ade59342744a1c14c90ef3e0517cd5e8a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-recovery-history.test.ts","line":114,"title":"never offers an older identical message as the one in doubt","body_sha256":"0c409b0a27c7088383ec70036636597ade59342744a1c14c90ef3e0517cd5e8a"},"proposal_ids":[],"explicit_input_controls":[]},{"line":126,"end_line":134,"title":"lets an accepted send claim its own copy even when the agent stored it after the next send","decision":"keep","reason":"An accepted send reserves its own provider copy even when persisted after the subsequent identical send was submitted; excludes a false confirmation caused by using resolvedAt as the boundary.","source_body_sha256":"821aa8fac0361fd4ed2a1e9caa6a4dde697ad479aea9c623a9114810ebeb248f","path":"src/main/acp/acp-recovery-history.test.ts","start":4293,"end":4767,"byte_start":4293,"byte_end":4767,"source":"it('lets an accepted send claim its own copy even when the agent stored it after the next send', async () => {\n // Accepted at dispatch (r=500) and stored at 505; the identical send behind it was lost.\n const load = journal(\n submission('first', 'continue', 'accepted', 100, 500),\n submission('held', 'continue', 'unknown', 110)\n )\n const { window } = await windowFor(load, [stored('msg_1', 'continue', 505)])\n expect(window?.items).toEqual([])\n })","source_sha256":"821aa8fac0361fd4ed2a1e9caa6a4dde697ad479aea9c623a9114810ebeb248f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-recovery-history.test.ts","line":126,"title":"lets an accepted send claim its own copy even when the agent stored it after the next send","body_sha256":"821aa8fac0361fd4ed2a1e9caa6a4dde697ad479aea9c623a9114810ebeb248f"},"proposal_ids":[],"explicit_input_controls":[]},{"line":136,"end_line":144,"title":"keeps an older unconfirmed send from widening the window over a delivered copy","decision":"keep","reason":"An older unknown send cannot enlarge the history window over an already accepted identical copy.","source_body_sha256":"156bc4e1a311a9c23a1a79de1656f3e3c4738b3028cbfa83d6567f8da53a38e3","path":"src/main/acp/acp-recovery-history.test.ts","start":4771,"end":5171,"byte_start":4771,"byte_end":5171,"source":"it('keeps an older unconfirmed send from widening the window over a delivered copy', async () => {\n const load = journal(\n submission('old', 'yes', 'unknown', 50),\n submission('first', 'yes', 'accepted', 300, 300),\n submission('held', 'yes', 'unknown', 400)\n )\n const { window } = await windowFor(load, [stored('msg_1', 'yes', 303)])\n expect(window?.items).toEqual([])\n })","source_sha256":"156bc4e1a311a9c23a1a79de1656f3e3c4738b3028cbfa83d6567f8da53a38e3","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-recovery-history.test.ts","line":136,"title":"keeps an older unconfirmed send from widening the window over a delivered copy","body_sha256":"156bc4e1a311a9c23a1a79de1656f3e3c4738b3028cbfa83d6567f8da53a38e3"},"proposal_ids":[],"explicit_input_controls":[]},{"line":146,"end_line":158,"title":"confirms the doubted send when both identical copies are stored","decision":"keep","reason":"Two stored identical copies independently resolve the second unknown send to msg_2, guarding one-to-one claiming.","source_body_sha256":"a9d7a6dc2d696b12fd9147b5bf5d2c7bf7566d3c18f3765537fb06490299dae1","path":"src/main/acp/acp-recovery-history.test.ts","start":5175,"end":5731,"byte_start":5175,"byte_end":5731,"source":"it('confirms the doubted send when both identical copies are stored', async () => {\n const load = journal(\n submission('first', 'yes', 'accepted', 300, 300),\n submission('held', 'yes', 'unknown', 400)\n )\n const { window } = await windowFor(load, [\n stored('msg_1', 'yes', 303),\n stored('msg_2', 'yes', 405)\n ])\n expect(\n reconcileSubmissions({ submissions: [...load.state.submissions.values()], history: window! })\n ).toMatchObject([{ clientMessageId: 'held', outcome: 'accepted', providerItemId: 'msg_2' }])\n })","source_sha256":"a9d7a6dc2d696b12fd9147b5bf5d2c7bf7566d3c18f3765537fb06490299dae1","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-recovery-history.test.ts","line":146,"title":"confirms the doubted send when both identical copies are stored","body_sha256":"a9d7a6dc2d696b12fd9147b5bf5d2c7bf7566d3c18f3765537fb06490299dae1"},"proposal_ids":[],"explicit_input_controls":[]},{"line":160,"end_line":165,"title":"reads nothing for a queued card the agent was never handed","decision":"keep","reason":"The pending handover-recorded queued card returns no history without invoking the store reader, exercising the real queued-submission guard.","source_body_sha256":"57a37f46f7aafad55fde43ee78b8aff17a70dbe904db0dfd2ff8d562036c7d65","path":"src/main/acp/acp-recovery-history.test.ts","start":5735,"end":6089,"byte_start":5735,"byte_end":6089,"source":"it('reads nothing for a queued card the agent was never handed', async () => {\n const queued = { ...submission('queued', 'x', 'pending', 1), handoverRecorded: true as const }\n const { window, readStoredUserMessages } = await windowFor(journal(queued), [])\n expect(window).toBeNull()\n expect(readStoredUserMessages).not.toHaveBeenCalled()\n })","source_sha256":"57a37f46f7aafad55fde43ee78b8aff17a70dbe904db0dfd2ff8d562036c7d65","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-recovery-history.test.ts","line":160,"title":"reads nothing for a queued card the agent was never handed","body_sha256":"57a37f46f7aafad55fde43ee78b8aff17a70dbe904db0dfd2ff8d562036c7d65"},"proposal_ids":[],"explicit_input_controls":[]},{"line":167,"end_line":185,"title":"reads nothing with no message in doubt, a damaged journal, or no resumable session","decision":"fix","reason":"Accepted-only, damaged-journal and missing-resume inputs each require null; strengthen the first two to also observe that their injected store reader was never called.","source_body_sha256":"fe3ec80352d7c3dd4e7a9f5e805ab12ec7eca1f402e5d9e0723f291285b12e20","proposed_changes":[{"line":167,"action":"fix","proposal":"Capture readStoredUserMessages for the accepted-only and damaged-journal invocations and assert it was not called, as the title promises. Preserve the three independent early-return guards."}],"path":"src/main/acp/acp-recovery-history.test.ts","start":6093,"end":6916,"byte_start":6093,"byte_end":6916,"source":"it('reads nothing with no message in doubt, a damaged journal, or no resumable session', async () => {\n expect((await windowFor(journal(submission('a', 'x', 'accepted', 1, 2)), [])).window).toBeNull()\n const damaged = journal(submission('held', 'x', 'unknown', 1))\n expect(\n (await windowFor({ ...damaged, damage: { sequence: 3, cause: 'sequence-gap' } }, [])).window\n ).toBeNull()\n const readStoredUserMessages = vi.fn(async () => [])\n await expect(\n readAcpRecoveryHistory(\n {\n spec: { readStoredUserMessages },\n readLaunch: async () => ({ ...launch, resume: null }),\n readJournal: () => journal(submission('held', 'x', 'unknown', 1))\n },\n identity\n )\n ).resolves.toBeNull()\n expect(readStoredUserMessages).not.toHaveBeenCalled()\n })","source_sha256":"fe3ec80352d7c3dd4e7a9f5e805ab12ec7eca1f402e5d9e0723f291285b12e20","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-recovery-history.test.ts","line":167,"title":"reads nothing with no message in doubt, a damaged journal, or no resumable session","body_sha256":"b52f9bb8747e193b38ee1d648ca8d1e9165f654c549a43f8be20e680f1bc4694"},"proposal_ids":["acp-main-0001-010"],"explicit_input_controls":[]},{"line":187,"end_line":198,"title":"reads nothing for an agent whose store Orca does not read","decision":"keep","reason":"A provider with no readable store returns null without manufacturing history; distinct capability branch from unreadable store errors.","source_body_sha256":"597d7e13d69a55d312933d6d70d71929e5d1cc10d565d22269c7026749906b51","path":"src/main/acp/acp-recovery-history.test.ts","start":6920,"end":7260,"byte_start":6920,"byte_end":7260,"source":"it('reads nothing for an agent whose store Orca does not read', async () => {\n await expect(\n readAcpRecoveryHistory(\n {\n spec: {},\n readLaunch: async () => launch,\n readJournal: () => journal(submission('held', 'x', 'unknown', 1))\n },\n identity\n )\n ).resolves.toBeNull()\n })","source_sha256":"597d7e13d69a55d312933d6d70d71929e5d1cc10d565d22269c7026749906b51","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-recovery-history.test.ts","line":192,"title":"reads nothing for an agent whose store Orca does not read","body_sha256":"597d7e13d69a55d312933d6d70d71929e5d1cc10d565d22269c7026749906b51"},"proposal_ids":[],"explicit_input_controls":[]},{"line":200,"end_line":218,"title":"answers null, never throws, when the store cannot be read","decision":"keep","reason":"An actual injected reader rejection is caught and returns null with a warning; not a production database-lock test.","source_body_sha256":"18841e5a779b1e1719e61ef343004cdf89d18a73f11e428a181cfcbe7eec11e8","path":"src/main/acp/acp-recovery-history.test.ts","start":7264,"end":7836,"byte_start":7264,"byte_end":7836,"source":"it('answers null, never throws, when the store cannot be read', async () => {\n const warn = vi.fn()\n await expect(\n readAcpRecoveryHistory(\n {\n spec: {\n readStoredUserMessages: async () => {\n throw new Error('database is locked')\n }\n },\n readLaunch: async () => launch,\n readJournal: () => journal(submission('held', 'x', 'unknown', 1)),\n logger: { warn, error: vi.fn() }\n },\n identity\n )\n ).resolves.toBeNull()\n expect(warn).toHaveBeenCalled()\n })","source_sha256":"18841e5a779b1e1719e61ef343004cdf89d18a73f11e428a181cfcbe7eec11e8","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-recovery-history.test.ts","line":205,"title":"answers null, never throws, when the store cannot be read","body_sha256":"18841e5a779b1e1719e61ef343004cdf89d18a73f11e428a181cfcbe7eec11e8"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-recovery-history.test.ts:49:loop","kind":"for-of","path":"src/main/acp/acp-recovery-history.test.ts","line":49,"end_line":51,"start":1707,"end":1801,"byte_start":1707,"byte_end":1801,"source":"for (const entry of submissions) {\n state.submissions.set(entry.clientMessageId, entry)\n }","source_sha256":"a8b6d4f46b3d3a7fc456ce6de6c65cd983d9a330d7f090e9d2d9325763d5f63b","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const entry of submissions) ","header_sha256":"5918e5a7bdadde61eb0d3c487f680c980770dbaa4016eca4794a6d52d9669496","input_position":{"path":"src/main/acp/acp-recovery-history.test.ts","line":49,"end_line":49,"start":1727,"end":1738,"byte_start":1727,"byte_end":1738},"binding":"const entry","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"fixture construction","decision":"keep","reason":"Seed actual reducer submissions from each scenario; not a behavioral oracle or independent case.","rows":[],"current_matches":[{"path":"src/main/acp/acp-recovery-history.test.ts","line":49,"body_sha256":"1d2c93def78f935874ed93a5f565fd16535e35c72142299edc8619521c8e2620"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"parameter_groups":[],"body_support_cleanup_loops":[{"id":"src/main/acp/acp-recovery-history.test.ts:49:loop","kind":"for-of","path":"src/main/acp/acp-recovery-history.test.ts","line":49,"end_line":51,"start":1707,"end":1801,"byte_start":1707,"byte_end":1801,"source":"for (const entry of submissions) {\n state.submissions.set(entry.clientMessageId, entry)\n }","source_sha256":"a8b6d4f46b3d3a7fc456ce6de6c65cd983d9a330d7f090e9d2d9325763d5f63b","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const entry of submissions) ","header_sha256":"5918e5a7bdadde61eb0d3c487f680c980770dbaa4016eca4794a6d52d9669496","input_position":{"path":"src/main/acp/acp-recovery-history.test.ts","line":49,"end_line":49,"start":1727,"end":1738,"byte_start":1727,"byte_end":1738},"binding":"const entry","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"fixture construction","decision":"keep","reason":"Seed actual reducer submissions from each scenario; not a behavioral oracle or independent case.","rows":[],"current_matches":[{"path":"src/main/acp/acp-recovery-history.test.ts","line":49,"body_sha256":"1d2c93def78f935874ed93a5f565fd16535e35c72142299edc8619521c8e2620"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"implemented_changes":[{"proposal_id":"acp-main-0001-010","summary":"Accepted-only and damaged journal guards explicitly assert reader spy was not called.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"executed_see_scope_limits","mutation_evidence":["recovery-illegal-read"]}],"evidence":["src/main/native-chat/agent-session-journal/journal-submission-reconciler.ts","src/main/acp/acp-recovery-history.ts"],"evidence_sha256":{"src/main/native-chat/agent-session-journal/journal-submission-reconciler.ts":"89faa9ecdb3b764f8e02f088f27d26284b191d49fa0fa7109f41300c8b58ce7f","src/main/acp/acp-recovery-history.ts":"115befc6c6213f337cbc3fe2e18f2a146dad98d68eead194cc3f75d1a48478ef"},"evidence_source_sha256":{"src/main/native-chat/agent-session-journal/journal-submission-reconciler.ts":"89faa9ecdb3b764f8e02f088f27d26284b191d49fa0fa7109f41300c8b58ce7f","src/main/acp/acp-recovery-history.ts":"115befc6c6213f337cbc3fe2e18f2a146dad98d68eead194cc3f75d1a48478ef"},"original_evidence_detail":[{"path":"src/main/native-chat/agent-session-journal/journal-submission-reconciler.ts","sha256":"89faa9ecdb3b764f8e02f088f27d26284b191d49fa0fa7109f41300c8b58ce7f","lines":206,"read_state":"full_body_read"},{"path":"src/main/acp/acp-recovery-history.ts","sha256":"115befc6c6213f337cbc3fe2e18f2a146dad98d68eead194cc3f75d1a48478ef","lines":145,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"ACP restart recovery from the agent store settles a message the agent recorded after the crash as sent, under its own row","status":"passed"},{"full_name":"ACP restart recovery from the agent store never offers an older identical message as the one in doubt","status":"passed"},{"full_name":"ACP restart recovery from the agent store lets an accepted send claim its own copy even when the agent stored it after the next send","status":"passed"},{"full_name":"ACP restart recovery from the agent store keeps an older unconfirmed send from widening the window over a delivered copy","status":"passed"},{"full_name":"ACP restart recovery from the agent store confirms the doubted send when both identical copies are stored","status":"passed"},{"full_name":"ACP restart recovery from the agent store reads nothing for a queued card the agent was never handed","status":"passed"},{"full_name":"ACP restart recovery from the agent store reads nothing with no message in doubt, a damaged journal, or no resumable session","status":"passed"},{"full_name":"ACP restart recovery from the agent store reads nothing for an agent whose store Orca does not read","status":"passed"},{"full_name":"ACP restart recovery from the agent store answers null, never throws, when the store cannot be read","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-scripted-child-runtime.test.ts","sha256":"804856a2f1bf2f37a4431165eb034788f7967daf3d786c8ec28219f3be70e27e","reviewed_sha256":"804856a2f1bf2f37a4431165eb034788f7967daf3d786c8ec28219f3be70e27e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":12,"decision":"keep","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 1. Retained the reviewed behavioral coverage; final bytes match the pinned original.","declarations":1,"original_declarations":1,"final_declarations":1,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"implementation_status":"reviewed-unchanged","cases":[{"line":32,"end_line":87,"title":"attaches and accepts a send while startup is held, then delivers once the protocol session opens","decision":"keep","reason":"For both Grok and OpenCode, the real session runtime/host accepts a send during a held protocol start, delivers it exactly once after release, and closes its owned simulated child; workspace is explicitly folder kind.","source_body_sha256":"e9e1f394cdbd1dcb4fc9c94e8278bf34fb660af7a302a7ed8c5d43cc81f5ce5b","path":"src/main/acp/acp-scripted-child-runtime.test.ts","start":1246,"end":3362,"byte_start":1246,"byte_end":3362,"source":"it('attaches and accepts a send while startup is held, then delivers once the protocol session opens', async () => {\n stateDirectory = await mkdtemp(join(tmpdir(), 'orca-scripted-acp-'))\n const script = acpScriptedChild(agent)()\n const host = await ensureStructuredAgentSessionHost({\n logger: createStructuredAgentSessionLogger(),\n stateDirectory,\n hostId: 'local',\n claimKeyId: 'key-1',\n resolveWorkspacePath: async () => stateDirectory ?? '',\n resolveLaunchArgs: () => [],\n resolveClaudeAuthPolicy: () => ({ account: 'managed' }),\n ...script.deps\n })\n const attach = hostTestAttachParams(null, {\n provider: agent,\n agent,\n providerHandle: undefined,\n location: {\n executionHostId: 'local',\n wslDistro: null,\n workspaceId: 'folder-1',\n workspaceKind: 'folder'\n },\n accountHome:\n agent === 'grok'\n ? { variable: 'GROK_HOME', path: stateDirectory }\n : { kind: 'opencode', locator: { kind: 'unmanaged' } }\n })\n attach.envelope.clientOperationId = operationId()\n const attached = await host.attach(caller, attach)\n expect(attached).toMatchObject({ ok: true })\n if (!attached.ok) {\n throw new Error(JSON.stringify(attached.refusal))\n }\n const body = hostTestMessage('message during startup')\n const sent = await host.send(caller, {\n body,\n envelope: {\n sessionId: HOST_TEST_SESSION,\n clientOperationId: operationId(),\n expectedRuntimeFence: attached.value.fence,\n payloadFingerprint: computeAgentSessionPayloadFingerprint({\n method: 'agentSession.send',\n sessionId: HOST_TEST_SESSION,\n fields: { body }\n })\n }\n })\n expect(sent).toMatchObject({ ok: true })\n expect(script.prompts()).toEqual([])\n await vi.waitFor(() => expect(script.spawns()).toBe(1))\n script.releaseHandshake()\n await vi.waitFor(() => expect(script.prompts()).toEqual(['message during startup']))\n await host.close(HOST_TEST_SESSION, 'user-close')\n expect(script.closes()).toBe(1)\n })","source_sha256":"e9e1f394cdbd1dcb4fc9c94e8278bf34fb660af7a302a7ed8c5d43cc81f5ce5b","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-scripted-child-runtime.test.ts","line":32,"title":"attaches and accepts a send while startup is held, then delivers once the protocol session opens","body_sha256":"e9e1f394cdbd1dcb4fc9c94e8278bf34fb660af7a302a7ed8c5d43cc81f5ce5b"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-scripted-child-runtime.test.ts:31:parameter-table"]}],"explicit_input_controls":[{"id":"src/main/acp/acp-scripted-child-runtime.test.ts:31:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-scripted-child-runtime.test.ts","line":31,"end_line":88,"start":1146,"end":3365,"byte_start":1146,"byte_end":3365,"source":"['grok', 'opencode'] as const","source_sha256":"fb2ef2a211d4752c4cc8d6afd776955313f0e2bfa9dadef7c93887a3f4299c1f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-scripted-child-runtime.test.ts","line":31,"end_line":31,"start":1160,"end":1189,"byte_start":1160,"byte_end":1189},"binding":"describe.each","resolution":[],"enclosing_case":null,"affected_case_lines":[32],"decision":"keep","reason":"describe.each multiplies its one nested source declaration into two collection cases.","rows":[{"index":1,"path":"src/main/acp/acp-scripted-child-runtime.test.ts","line":31,"end_line":31,"start":1161,"end":1167,"source":"'grok'","value":{"kind":"string","value":"grok"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"d3baf8572a12c98af2e0ca919addc8c6e180d524aa8be813d753921d08768880","byte_start":1161,"byte_end":1167,"input_label":"grok","decision":"keep","reason":"Real subprocess fixture Grok launch/protocol/host/journal path."},{"index":2,"path":"src/main/acp/acp-scripted-child-runtime.test.ts","line":31,"end_line":31,"start":1169,"end":1179,"source":"'opencode'","value":{"kind":"string","value":"opencode"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e52f090977516f88e9a87d94dd486ce40fe014c11fdcc92d5d5441fd323bf713","byte_start":1169,"byte_end":1179,"input_label":"opencode","decision":"keep","reason":"Real subprocess fixture OpenCode identity/env/protocol path."}],"original_row_count":2}],"parameter_groups":[{"id":"src/main/acp/acp-scripted-child-runtime.test.ts:31:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-scripted-child-runtime.test.ts","line":31,"end_line":88,"start":1146,"end":3365,"byte_start":1146,"byte_end":3365,"source":"['grok', 'opencode'] as const","source_sha256":"fb2ef2a211d4752c4cc8d6afd776955313f0e2bfa9dadef7c93887a3f4299c1f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-scripted-child-runtime.test.ts","line":31,"end_line":31,"start":1160,"end":1189,"byte_start":1160,"byte_end":1189},"binding":"describe.each","resolution":[],"enclosing_case":null,"affected_case_lines":[32],"decision":"keep","reason":"describe.each multiplies its one nested source declaration into two collection cases.","rows":[{"index":1,"path":"src/main/acp/acp-scripted-child-runtime.test.ts","line":31,"end_line":31,"start":1161,"end":1167,"source":"'grok'","value":{"kind":"string","value":"grok"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"d3baf8572a12c98af2e0ca919addc8c6e180d524aa8be813d753921d08768880","byte_start":1161,"byte_end":1167,"input_label":"grok","decision":"keep","reason":"Real subprocess fixture Grok launch/protocol/host/journal path."},{"index":2,"path":"src/main/acp/acp-scripted-child-runtime.test.ts","line":31,"end_line":31,"start":1169,"end":1179,"source":"'opencode'","value":{"kind":"string","value":"opencode"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e52f090977516f88e9a87d94dd486ce40fe014c11fdcc92d5d5441fd323bf713","byte_start":1169,"byte_end":1179,"input_label":"opencode","decision":"keep","reason":"Real subprocess fixture OpenCode identity/env/protocol path."}],"original_row_count":2}],"body_support_cleanup_loops":[],"implemented_changes":[],"evidence":["src/main/runtime/structured-agent-session-runtime.ts","src/main/acp/acp-scripted-child.test-fixture.ts"],"evidence_sha256":{"src/main/runtime/structured-agent-session-runtime.ts":"1241b8fe56b10bf832373ecd90c150ded63cc2fec07ed0cc3bfead88adf60e70","src/main/acp/acp-scripted-child.test-fixture.ts":"9b97cab8fba48a99bc11dbb8873c4713295357528c82cb82c9cceb50f8055484"},"evidence_source_sha256":{"src/main/runtime/structured-agent-session-runtime.ts":"1241b8fe56b10bf832373ecd90c150ded63cc2fec07ed0cc3bfead88adf60e70","src/main/acp/acp-scripted-child.test-fixture.ts":"9b97cab8fba48a99bc11dbb8873c4713295357528c82cb82c9cceb50f8055484"},"original_evidence_detail":[{"path":"src/main/runtime/structured-agent-session-runtime.ts","sha256":"1241b8fe56b10bf832373ecd90c150ded63cc2fec07ed0cc3bfead88adf60e70","lines":383,"read_state":"stored_not_claimed_read"},{"path":"src/main/acp/acp-scripted-child.test-fixture.ts","sha256":"9b97cab8fba48a99bc11dbb8873c4713295357528c82cb82c9cceb50f8055484","lines":151,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"grok runtime with a scripted ACP child attaches and accepts a send while startup is held, then delivers once the protocol session opens","status":"passed"},{"full_name":"opencode runtime with a scripted ACP child attaches and accepts a send while startup is held, then delivers once the protocol session opens","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-scripted-child.test-fixture.ts","sha256":"9b97cab8fba48a99bc11dbb8873c4713295357528c82cb82c9cceb50f8055484","reviewed_sha256":"9b97cab8fba48a99bc11dbb8873c4713295357528c82cb82c9cceb50f8055484","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":13,"decision":"keep","classification":"auxiliary scripted process fixture","rationale":"Reusable scripted child/connection fixture: its complete body and cleanup/transport role were reviewed. It declares no runnable cases; behavior is exercised by selected real connection/runtime suites.","declarations":0,"original_declarations":0,"final_declarations":0,"signals":["auxiliary"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"implementation_status":"reviewed-unchanged","cases":[],"explicit_input_controls":[],"parameter_groups":[],"body_support_cleanup_loops":[],"implemented_changes":[],"evidence":["src/main/acp/acp-session-runtime.ts"],"evidence_sha256":{"src/main/acp/acp-session-runtime.ts":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b"},"evidence_source_sha256":{"src/main/acp/acp-session-runtime.ts":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b"},"original_evidence_detail":[{"path":"src/main/acp/acp-session-runtime.ts","sha256":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b","lines":323,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":false,"runtime_validation":{"tests":[],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-scripted-connection.test-fixture.ts","sha256":"17c16b7a117268413d65d8e87df5c6159ef22bb329f521703c595721c30b8527","reviewed_sha256":"17c16b7a117268413d65d8e87df5c6159ef22bb329f521703c595721c30b8527","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":14,"decision":"keep","classification":"auxiliary scripted process fixture","rationale":"Reusable scripted child/connection fixture: its complete body and cleanup/transport role were reviewed. It declares no runnable cases; behavior is exercised by selected real connection/runtime suites.","declarations":0,"original_declarations":0,"final_declarations":0,"signals":["auxiliary"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"implementation_status":"reviewed-unchanged","cases":[],"explicit_input_controls":[{"id":"src/main/acp/acp-scripted-connection.test-fixture.ts:80:loop","kind":"for-of","path":"src/main/acp/acp-scripted-connection.test-fixture.ts","line":80,"end_line":82,"start":2893,"end":2979,"byte_start":2893,"byte_end":2979,"source":"for (const listener of this.exitListeners.splice(0)) {\n listener(FAKE_EXIT)\n }","source_sha256":"7da0780b856c3b18049e22d91b7b0c8caec9abda18564d2ae328d5ae48a20add","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const listener of this.exitListeners.splice(0)) ","header_sha256":"307b37d1ef165885dd615dcb65bfd0d29b52b4d26dc5cb574ccb72342a0dc4ac","input_position":{"path":"src/main/acp/acp-scripted-connection.test-fixture.ts","line":80,"end_line":80,"start":2916,"end":2944,"byte_start":2916,"byte_end":2944},"binding":"const listener","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"support delivery","decision":"keep","reason":"Publish fake process exit once to every stored observer; support zero-case file, not an independently tested exit contract.","rows":[],"current_matches":[{"path":"src/main/acp/acp-scripted-connection.test-fixture.ts","line":80,"body_sha256":"b0b999b4b5edf73ceb6944ab202ee791a6120b55e592dde702652dd857e072f1"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"parameter_groups":[],"body_support_cleanup_loops":[{"id":"src/main/acp/acp-scripted-connection.test-fixture.ts:80:loop","kind":"for-of","path":"src/main/acp/acp-scripted-connection.test-fixture.ts","line":80,"end_line":82,"start":2893,"end":2979,"byte_start":2893,"byte_end":2979,"source":"for (const listener of this.exitListeners.splice(0)) {\n listener(FAKE_EXIT)\n }","source_sha256":"7da0780b856c3b18049e22d91b7b0c8caec9abda18564d2ae328d5ae48a20add","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const listener of this.exitListeners.splice(0)) ","header_sha256":"307b37d1ef165885dd615dcb65bfd0d29b52b4d26dc5cb574ccb72342a0dc4ac","input_position":{"path":"src/main/acp/acp-scripted-connection.test-fixture.ts","line":80,"end_line":80,"start":2916,"end":2944,"byte_start":2916,"byte_end":2944},"binding":"const listener","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"support delivery","decision":"keep","reason":"Publish fake process exit once to every stored observer; support zero-case file, not an independently tested exit contract.","rows":[],"current_matches":[{"path":"src/main/acp/acp-scripted-connection.test-fixture.ts","line":80,"body_sha256":"b0b999b4b5edf73ceb6944ab202ee791a6120b55e592dde702652dd857e072f1"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"implemented_changes":[],"evidence":["src/main/acp/acp-agent-connection.ts","src/main/acp/acp-session-runtime.ts"],"evidence_sha256":{"src/main/acp/acp-agent-connection.ts":"342ab3a8803b26d0946055c30a332c05917ce7cefc56af80bb9fe3ec37f7eeaf","src/main/acp/acp-session-runtime.ts":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b"},"evidence_source_sha256":{"src/main/acp/acp-agent-connection.ts":"342ab3a8803b26d0946055c30a332c05917ce7cefc56af80bb9fe3ec37f7eeaf","src/main/acp/acp-session-runtime.ts":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b"},"original_evidence_detail":[{"path":"src/main/acp/acp-agent-connection.ts","sha256":"342ab3a8803b26d0946055c30a332c05917ce7cefc56af80bb9fe3ec37f7eeaf","lines":210,"read_state":"full_body_read"},{"path":"src/main/acp/acp-session-runtime.ts","sha256":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b","lines":323,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":false,"runtime_validation":{"tests":[],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-session-agent-turns.test.ts","sha256":"e41b5fab0fff07e67ee2f8fcca0c2e29645489016f74a5bc4df181a4b057ba2f","reviewed_sha256":"e41b5fab0fff07e67ee2f8fcca0c2e29645489016f74a5bc4df181a4b057ba2f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":15,"decision":"keep","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 5. Retained the reviewed behavioral coverage; final bytes match the pinned original.","declarations":5,"original_declarations":5,"final_declarations":5,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"implementation_status":"reviewed-unchanged","cases":[{"line":26,"end_line":56,"title":"delivers extension notifications in arrival order with session updates","decision":"keep","reason":"Real runtime preserves arrival order across underscored extension notices and ordinary parsed session updates written in one stdout chunk.","source_body_sha256":"48d29940fd6987874087d4adcc49f46ca1f82bca5a165923117570496806232c","path":"src/main/acp/acp-session-agent-turns.test.ts","start":1107,"end":2326,"byte_start":1107,"byte_end":2326,"source":"it('delivers extension notifications in arrival order with session updates', async () => {\n const order: string[] = []\n const { agent, runtime } = fixture({\n onExtensionNotification: (method, params) => order.push(`${method} ${JSON.stringify(params)}`)\n })\n runtime.subscribe((event) => order.push(`update ${event.kind}`))\n await runtime.start(startOptions)\n const completed = { sessionId: 'session-1', update: { type: 'turn_completed', prompt_id: 'p' } }\n agent.stdout.write(\n [\n { jsonrpc: '2.0', method: '_x.ai/session_notification', params: { started: true } },\n {\n jsonrpc: '2.0',\n method: 'session/update',\n params: {\n sessionId: 'session-1',\n update: { sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 'x' } }\n }\n },\n { jsonrpc: '2.0', method: '_x.ai/session_notification', params: completed }\n ]\n .map((frame) => `${JSON.stringify(frame)}\\n`)\n .join('')\n )\n await tick()\n expect(order).toEqual([\n '_x.ai/session_notification {\"started\":true}',\n 'update known',\n `_x.ai/session_notification ${JSON.stringify(completed)}`\n ])\n })","source_sha256":"48d29940fd6987874087d4adcc49f46ca1f82bca5a165923117570496806232c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-agent-turns.test.ts","line":26,"title":"delivers extension notifications in arrival order with session updates","body_sha256":"48d29940fd6987874087d4adcc49f46ca1f82bca5a165923117570496806232c"},"proposal_ids":[],"explicit_input_controls":[]},{"line":58,"end_line":84,"title":"sends session/cancel with no prompt of Orca running, and _meta on every session call","decision":"keep","reason":"Actual outbound JSON-RPC session calls retain caller _meta and permit an agent-owned cancel after an earlier turn completed; loop checks protocol fields rather than mock implementation.","source_body_sha256":"47301f9aa3041a5f451c141c2da677b06c78de494724d7ba946602dd85aca0fe","body_loops":[{"path":"src/main/acp/acp-session-agent-turns.test.ts","line":81,"source":"for (const frame of sent.slice(1)) ","classification":"output census","decision":"keep","reason":"Every actual frame after setup carries real session id and exact supplied prompt metadata across different extension calls."}],"path":"src/main/acp/acp-session-agent-turns.test.ts","start":2330,"end":3547,"byte_start":2330,"byte_end":3547,"source":"it('sends session/cancel with no prompt of Orca running, and _meta on every session call', async () => {\n const { agent, runtime } = fixture()\n agent.on('session/prompt', (frame) => agent.reply(frame, { stopReason: 'end_turn' }))\n agent.on('session/set_mode', (frame) => agent.reply(frame, {}))\n agent.on('session/set_model', (frame) => agent.reply(frame, {}))\n agent.on('session/set_config_option', (frame) => agent.reply(frame, { configOptions: [] }))\n await runtime.start(startOptions)\n const meta = { traceId: 't' }\n await runtime.prompt([...prompt], meta)\n await runtime.setMode('plan', meta)\n await runtime.setModel('model-1', meta)\n await runtime.setConfigOption('effort', 'high', meta)\n await runtime.cancel({ meta })\n await tick()\n const sent = agent.frames.filter((frame) => frame.method?.startsWith('session/'))\n expect(sent.map((frame) => frame.method)).toEqual([\n 'session/new',\n 'session/prompt',\n 'session/set_mode',\n 'session/set_model',\n 'session/set_config_option',\n 'session/cancel'\n ])\n for (const frame of sent.slice(1)) {\n expect(frame.params).toMatchObject({ sessionId: 'session-1', _meta: meta })\n }\n })","source_sha256":"47301f9aa3041a5f451c141c2da677b06c78de494724d7ba946602dd85aca0fe","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-agent-turns.test.ts","line":58,"title":"sends session/cancel with no prompt of Orca running, and _meta on every session call","body_sha256":"47301f9aa3041a5f451c141c2da677b06c78de494724d7ba946602dd85aca0fe"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-session-agent-turns.test.ts:81:loop"]},{"line":86,"end_line":99,"title":"separates the agent's own errors from answers Orca could not read","decision":"keep","reason":"Real response validation distinguishes an agent-authored RPC error/code/data from a malformed successful payload with invalid-response issues.","source_body_sha256":"c94a8142947abe72632da3a60ab1e43f54475f8445c66aedd82c0d549086aa7a","path":"src/main/acp/acp-session-agent-turns.test.ts","start":3551,"end":4478,"byte_start":3551,"byte_end":4478,"source":"it(\"separates the agent's own errors from answers Orca could not read\", async () => {\n const { agent, runtime } = fixture()\n await runtime.start(startOptions)\n agent.on('session/set_mode', (frame) => agent.fail(frame, -32603, 'Agent broke', { why: 1 }))\n const refused = await runtime.setMode('plan').catch((error: unknown) => error)\n expect(refused).toBeInstanceOf(AcpAgentError)\n expect(refused).toMatchObject({ code: -32603, data: { why: 1 } })\n agent.on('session/set_mode', (frame) => agent.reply(frame, 'not-an-object'))\n const unreadable = await runtime.setMode('plan').catch((error: unknown) => error)\n expect(unreadable).toBeInstanceOf(AcpInvalidResponseError)\n expect(unreadable).not.toBeInstanceOf(AcpAgentError)\n expect(unreadable).toMatchObject({ code: -32603, data: 'not-an-object' })\n expect(unreadable instanceof AcpInvalidResponseError && unreadable.issues).toBeTruthy()\n })","source_sha256":"c94a8142947abe72632da3a60ab1e43f54475f8445c66aedd82c0d549086aa7a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-agent-turns.test.ts","line":86,"title":"separates the agent's own errors from answers Orca could not read","body_sha256":"c94a8142947abe72632da3a60ab1e43f54475f8445c66aedd82c0d549086aa7a"},"proposal_ids":[],"explicit_input_controls":[]},{"line":101,"end_line":106,"title":"completes a turn whose stop reason is newer than this schema","decision":"keep","reason":"An additive stop-reason value survives the generated open enum and completes a real prompt.","source_body_sha256":"88b787d80c8a1dcdf0bbdde3514542e8e6df39ced98b74c5fcab56668fd9faa8","path":"src/main/acp/acp-session-agent-turns.test.ts","start":4482,"end":4836,"byte_start":4482,"byte_end":4836,"source":"it('completes a turn whose stop reason is newer than this schema', async () => {\n const { agent, runtime } = fixture()\n agent.on('session/prompt', (frame) => agent.reply(frame, { stopReason: 'context_exhausted' }))\n await runtime.start(startOptions)\n expect(await runtime.prompt([...prompt])).toEqual({ stopReason: 'context_exhausted' })\n })","source_sha256":"88b787d80c8a1dcdf0bbdde3514542e8e6df39ced98b74c5fcab56668fd9faa8","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-agent-turns.test.ts","line":101,"title":"completes a turn whose stop reason is newer than this schema","body_sha256":"88b787d80c8a1dcdf0bbdde3514542e8e6df39ced98b74c5fcab56668fd9faa8"},"proposal_ids":[],"explicit_input_controls":[]},{"line":108,"end_line":147,"title":"retries a cancel whose write failed instead of returning the stale failure","decision":"keep","reason":"Actual PassThrough backpressure fills the write queue, rejects the first cancel, then allows a fresh cancel after resume and settles the held turn; demonstrates stale-failure retry through the real peer.","source_body_sha256":"37223ec323c1b7161528272c1a587eb70dccea8c9db84f76322d91fcc5b1ffa2","path":"src/main/acp/acp-session-agent-turns.test.ts","start":4840,"end":6496,"byte_start":4840,"byte_end":6496,"source":"it('retries a cancel whose write failed instead of returning the stale failure', async () => {\n const agent = new AcpScriptedAgent()\n const stdin = new PassThrough({ highWaterMark: 1 })\n const runtime = new AcpSessionRuntime(agent.stdout, stdin, {\n peer: { maxQueuedWriteBytes: 1000 }\n })\n opened.push(agent, runtime)\n const frames: FakeFrame[] = []\n let promptFrame: FakeFrame | undefined\n let buffer = ''\n stdin.setEncoding('utf8').on('data', (chunk: string) => {\n buffer += chunk\n let newline: number\n while ((newline = buffer.indexOf('\\n')) !== -1) {\n const frame: FakeFrame = JSON.parse(buffer.slice(0, newline))\n buffer = buffer.slice(newline + 1)\n frames.push(frame)\n if (frame.method === 'initialize') {\n agent.reply(frame, { protocolVersion: 1 })\n } else if (frame.method === 'session/new') {\n agent.reply(frame, { sessionId: 'session-1' })\n } else if (frame.method === 'session/prompt') {\n promptFrame = frame\n stdin.pause()\n } else if (frame.method === 'session/cancel' && promptFrame) {\n agent.reply(promptFrame, { stopReason: 'cancelled' })\n }\n }\n })\n await runtime.start(startOptions)\n const turn = runtime.prompt([...prompt])\n await tick()\n void runtime.setMode('y'.repeat(850)).catch(() => {})\n await expect(runtime.cancel()).rejects.toThrow(/capacity/)\n stdin.resume()\n await tick()\n await runtime.cancel()\n expect(await turn).toEqual({ stopReason: 'cancelled' })\n expect(frames.filter((frame) => frame.method === 'session/cancel')).toHaveLength(1)\n })","source_sha256":"37223ec323c1b7161528272c1a587eb70dccea8c9db84f76322d91fcc5b1ffa2","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-agent-turns.test.ts","line":108,"title":"retries a cancel whose write failed instead of returning the stale failure","body_sha256":"37223ec323c1b7161528272c1a587eb70dccea8c9db84f76322d91fcc5b1ffa2"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-session-agent-turns.test.ts:81:loop","kind":"for-of","path":"src/main/acp/acp-session-agent-turns.test.ts","line":81,"end_line":83,"start":3418,"end":3542,"byte_start":3418,"byte_end":3542,"source":"for (const frame of sent.slice(1)) {\n expect(frame.params).toMatchObject({ sessionId: 'session-1', _meta: meta })\n }","source_sha256":"f2c362e567a222146cec113cdc17d4cbfcd15b5e417b8d8fd1f3312171c0f928","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const frame of sent.slice(1)) ","header_sha256":"8423d83292076de8757c0059599daf7ac22e8dcffda2d94e7d140efbd93a21e1","input_position":{"path":"src/main/acp/acp-session-agent-turns.test.ts","line":81,"end_line":81,"start":3438,"end":3451,"byte_start":3438,"byte_end":3451},"binding":"const frame","resolution":[{"name":"sent","path":"src/main/acp/acp-session-agent-turns.test.ts","line":72,"end_line":72,"start":3119,"end":3194,"source":"agent.frames.filter((frame) => frame.method?.startsWith('session/'))"}],"enclosing_case":{"line":58,"title":"sends session/cancel with no prompt of Orca running, and _meta on every session call"},"affected_case_lines":[],"classification":"output census","decision":"keep","reason":"Every actual frame after setup carries real session id and exact supplied prompt metadata across different extension calls.","rows":[],"current_matches":[{"path":"src/main/acp/acp-session-agent-turns.test.ts","line":81,"body_sha256":"e5062270a022afb2e842acfd4bbf9be837011d56d55fc2c1cde3bf10253a8be0"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"parameter_groups":[],"body_support_cleanup_loops":[{"id":"src/main/acp/acp-session-agent-turns.test.ts:81:loop","kind":"for-of","path":"src/main/acp/acp-session-agent-turns.test.ts","line":81,"end_line":83,"start":3418,"end":3542,"byte_start":3418,"byte_end":3542,"source":"for (const frame of sent.slice(1)) {\n expect(frame.params).toMatchObject({ sessionId: 'session-1', _meta: meta })\n }","source_sha256":"f2c362e567a222146cec113cdc17d4cbfcd15b5e417b8d8fd1f3312171c0f928","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const frame of sent.slice(1)) ","header_sha256":"8423d83292076de8757c0059599daf7ac22e8dcffda2d94e7d140efbd93a21e1","input_position":{"path":"src/main/acp/acp-session-agent-turns.test.ts","line":81,"end_line":81,"start":3438,"end":3451,"byte_start":3438,"byte_end":3451},"binding":"const frame","resolution":[{"name":"sent","path":"src/main/acp/acp-session-agent-turns.test.ts","line":72,"end_line":72,"start":3119,"end":3194,"source":"agent.frames.filter((frame) => frame.method?.startsWith('session/'))"}],"enclosing_case":{"line":58,"title":"sends session/cancel with no prompt of Orca running, and _meta on every session call"},"affected_case_lines":[],"classification":"output census","decision":"keep","reason":"Every actual frame after setup carries real session id and exact supplied prompt metadata across different extension calls.","rows":[],"current_matches":[{"path":"src/main/acp/acp-session-agent-turns.test.ts","line":81,"body_sha256":"e5062270a022afb2e842acfd4bbf9be837011d56d55fc2c1cde3bf10253a8be0"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"implemented_changes":[],"evidence":["src/main/acp/acp-json-rpc-peer.ts","src/main/acp/acp-session-runtime.ts","src/main/acp/acp-response-settlement.ts"],"evidence_sha256":{"src/main/acp/acp-json-rpc-peer.ts":"30589fd87b6e376ce767a88edf3c4352ba0558dc367731f6d9bc2dd003ff21e0","src/main/acp/acp-session-runtime.ts":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b","src/main/acp/acp-response-settlement.ts":"99d1ffabb3e804614650b720f88ca8047ced63024ab80c907932619f928722d2"},"evidence_source_sha256":{"src/main/acp/acp-json-rpc-peer.ts":"30589fd87b6e376ce767a88edf3c4352ba0558dc367731f6d9bc2dd003ff21e0","src/main/acp/acp-session-runtime.ts":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b","src/main/acp/acp-response-settlement.ts":"99d1ffabb3e804614650b720f88ca8047ced63024ab80c907932619f928722d2"},"original_evidence_detail":[{"path":"src/main/acp/acp-json-rpc-peer.ts","sha256":"30589fd87b6e376ce767a88edf3c4352ba0558dc367731f6d9bc2dd003ff21e0","lines":316,"read_state":"full_body_read"},{"path":"src/main/acp/acp-session-runtime.ts","sha256":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b","lines":323,"read_state":"full_body_read"},{"path":"src/main/acp/acp-response-settlement.ts","sha256":"99d1ffabb3e804614650b720f88ca8047ced63024ab80c907932619f928722d2","lines":63,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"ACP turns the agent begins and the runtime contract around them delivers extension notifications in arrival order with session updates","status":"passed"},{"full_name":"ACP turns the agent begins and the runtime contract around them sends session/cancel with no prompt of Orca running, and _meta on every session call","status":"passed"},{"full_name":"ACP turns the agent begins and the runtime contract around them separates the agent's own errors from answers Orca could not read","status":"passed"},{"full_name":"ACP turns the agent begins and the runtime contract around them completes a turn whose stop reason is newer than this schema","status":"passed"},{"full_name":"ACP turns the agent begins and the runtime contract around them retries a cancel whose write failed instead of returning the stale failure","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-session-events.test.ts","sha256":"08a2f6a4878e9eb4438af6c9316c09bd7974553c6f63e166ae3093882300e2a3","reviewed_sha256":"5c9068eb210a0bb813aab0898a3a36762328c6ee79b80911521a96109ce3fd08","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":16,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: fix 1, keep 3. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":4,"original_declarations":4,"final_declarations":4,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":8,"end_line":38,"title":"matches the runtime parser across the captured session updates","decision":"fix","reason":"Differential check compares compiled production validation with the independent generated Zod reference across captured inputs and detects mutation; preserve the parser oracle but replace arbitrary >500 inventory threshold with nonempty evidence.","source_body_sha256":"5acc1b3b6ab9703603e0db6541f36f52ff9cc31f7291df354788f8e4823e7125","proposed_changes":[{"line":37,"action":"fix","proposal":"Replace compared >500 with compared >0; retain every captured input, differential result and input immutability check. A copied fixture-count threshold is unrelated to parsing behavior."}],"body_loops":[{"path":"src/main/acp/acp-session-events.test.ts","line":11,"source":"for (const file of files) ","classification":"fixture corpus","decision":"keep","reason":"Discover all captured protocol .jsonl files while excluding journal/render formats; no runtime tests dynamically declared."},{"path":"src/main/acp/acp-session-events.test.ts","line":20,"source":"for (const frame of frames) ","classification":"fixture corpus","decision":"fix","reason":"For every actual session/update compare compiled production result with independent uncompiled schema and prove input unchanged; replace >500 inventory threshold with nonempty."}],"path":"src/main/acp/acp-session-events.test.ts","start":354,"end":1472,"byte_start":354,"byte_end":1472,"source":"it('matches the runtime parser across the captured session updates', async () => {\n const files = await readdir(new URL('./fixtures/', import.meta.url))\n let compared = 0\n for (const file of files) {\n if (\n !file.endsWith('.jsonl') ||\n file.endsWith('.journal.jsonl') ||\n file.endsWith('.render.jsonl')\n ) {\n continue\n }\n const frames = await readAcpFixture(file.slice(0, -'.jsonl'.length))\n for (const frame of frames) {\n if (frame.message.method !== 'session/update') {\n continue\n }\n const params = frame.message.params\n const snapshot = structuredClone(params)\n const original = SessionNotificationSchema.safeParse(params)\n const event = readAcpSessionEvent(params)\n if (original.success) {\n expect(event).toEqual({ kind: 'known', notification: original.data })\n } else {\n expect(event).toMatchObject({ kind: 'unrecognized', raw: params })\n }\n expect(params).toEqual(snapshot)\n compared++\n }\n }\n expect(compared).toBeGreaterThan(500)\n })","source_sha256":"5acc1b3b6ab9703603e0db6541f36f52ff9cc31f7291df354788f8e4823e7125","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-session-events.test.ts","line":8,"title":"matches the runtime parser across the captured session updates","body_sha256":"793e834aadf9f06486107dbdae85f4e3279fe1b829dbf348d115c05fbbbd8fe5"},"proposal_ids":["acp-main-0001-011"],"explicit_input_controls":["src/main/acp/acp-session-events.test.ts:11:loop","src/main/acp/acp-session-events.test.ts:20:loop"]},{"line":40,"end_line":56,"title":"preserves additive fields and open enum values without mutating the input","decision":"keep","reason":"Explicit additive fields and future tool kind remain intact without mutating input, with a concrete expected preserved shape.","source_body_sha256":"3594e696ff06b3b54f982b9349488afc7c5f973e8924306e1747a3ff704aedd5","path":"src/main/acp/acp-session-events.test.ts","start":1476,"end":2023,"byte_start":1476,"byte_end":2023,"source":"it('preserves additive fields and open enum values without mutating the input', () => {\n const params = {\n sessionId: 'session-1',\n update: {\n sessionUpdate: 'tool_call',\n toolCallId: 'tool-1',\n title: 'Search',\n kind: 'future-tool-kind',\n content: [],\n vendor: { retained: true }\n },\n vendor: true\n }\n const original = structuredClone(params)\n expect(readAcpSessionEvent(params)).toEqual({ kind: 'known', notification: original })\n expect(params).toEqual(original)\n })","source_sha256":"3594e696ff06b3b54f982b9349488afc7c5f973e8924306e1747a3ff704aedd5","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-events.test.ts","line":40,"title":"preserves additive fields and open enum values without mutating the input","body_sha256":"3594e696ff06b3b54f982b9349488afc7c5f973e8924306e1747a3ff704aedd5"},"proposal_ids":[],"explicit_input_controls":[]},{"line":58,"end_line":68,"title":"keeps unknown and malformed known updates for the dialect (%j)","decision":"keep","reason":"Two inputs distinguish unknown update discriminator from malformed content of a known update; each remains available to a dialect rather than being discarded.","source_body_sha256":"9ec19032e12bcd1d7726a8fa49714c60b46b17163838bb104431c9d7cf5f6c91","parameter_groups":[{"path":"src/main/acp/acp-session-events.test.ts","line":58,"source":"[\n { sessionUpdate: 'vendor_usage', tokens: 1 },\n { sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 42 } }\n ]","decision":"keep","reason":"","rows":[{"input":"vendor_usage","decision":"keep","reason":"Valid envelope with unknown update remains unrecognized."},{"input":"agent_message_chunk text=42","decision":"keep","reason":"Malformed known payload remains unrecognized instead of throwing or typed acceptance."}],"row_count":2}],"path":"src/main/acp/acp-session-events.test.ts","start":2027,"end":2459,"byte_start":2027,"byte_end":2459,"source":"it.each([\n { sessionUpdate: 'vendor_usage', tokens: 1 },\n { sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 42 } }\n ])('keeps unknown and malformed known updates for the dialect (%j)', (update) => {\n const params = { sessionId: 'session-1', update, vendor: true }\n expect(readAcpSessionEvent(params)).toEqual({\n kind: 'unrecognized',\n sessionId: 'session-1',\n raw: params\n })\n })","source_sha256":"9ec19032e12bcd1d7726a8fa49714c60b46b17163838bb104431c9d7cf5f6c91","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-events.test.ts","line":58,"title":"keeps unknown and malformed known updates for the dialect (%j)","body_sha256":"9ec19032e12bcd1d7726a8fa49714c60b46b17163838bb104431c9d7cf5f6c91"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-session-events.test.ts:58:parameter-table"]},{"line":70,"end_line":73,"title":"rejects malformed notification envelopes (%j)","decision":"keep","reason":"Three genuinely malformed envelope inputs each fail the real envelope validator and return null.","source_body_sha256":"7baf9fd30980b6c7e78b72964340451113f5c0e1bf2b686dedeb3d4a250ef976","parameter_groups":[{"path":"src/main/acp/acp-session-events.test.ts","line":70,"source":"[null, {}, { sessionId: 'session-1', update: {} }]","decision":"keep","reason":"","rows":[{"input":"null","decision":"keep","reason":"No object envelope"},{"input":"{}","decision":"keep","reason":"Missing session and update"},{"input":"session-1 + empty update","decision":"keep","reason":"Missing string update discriminator"}],"row_count":3}],"path":"src/main/acp/acp-session-events.test.ts","start":2463,"end":2643,"byte_start":2463,"byte_end":2643,"source":"it.each([null, {}, { sessionId: 'session-1', update: {} }])(\n 'rejects malformed notification envelopes (%j)',\n (params) => expect(readAcpSessionEvent(params)).toBeNull()\n )","source_sha256":"7baf9fd30980b6c7e78b72964340451113f5c0e1bf2b686dedeb3d4a250ef976","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-events.test.ts","line":70,"title":"rejects malformed notification envelopes (%j)","body_sha256":"7baf9fd30980b6c7e78b72964340451113f5c0e1bf2b686dedeb3d4a250ef976"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-session-events.test.ts:70:parameter-table"]}],"explicit_input_controls":[{"id":"src/main/acp/acp-session-events.test.ts:11:loop","kind":"for-of","path":"src/main/acp/acp-session-events.test.ts","line":11,"end_line":36,"start":535,"end":1425,"byte_start":535,"byte_end":1425,"source":"for (const file of files) {\n if (\n !file.endsWith('.jsonl') ||\n file.endsWith('.journal.jsonl') ||\n file.endsWith('.render.jsonl')\n ) {\n continue\n }\n const frames = await readAcpFixture(file.slice(0, -'.jsonl'.length))\n for (const frame of frames) {\n if (frame.message.method !== 'session/update') {\n continue\n }\n const params = frame.message.params\n const snapshot = structuredClone(params)\n const original = SessionNotificationSchema.safeParse(params)\n const event = readAcpSessionEvent(params)\n if (original.success) {\n expect(event).toEqual({ kind: 'known', notification: original.data })\n } else {\n expect(event).toMatchObject({ kind: 'unrecognized', raw: params })\n }\n expect(params).toEqual(snapshot)\n compared++\n }\n }","source_sha256":"97d5f942eab2b603c0660bcd4da4625cea2cce7c5787d006f6a12e09dce0e59b","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const file of files) ","header_sha256":"6a96406b70a64a06211eba85d213532ffc20926bccdecee183ee50e2777f26c7","input_position":{"path":"src/main/acp/acp-session-events.test.ts","line":11,"end_line":11,"start":554,"end":559,"byte_start":554,"byte_end":559},"binding":"const file","resolution":[{"name":"files","path":"src/main/acp/acp-session-events.test.ts","line":9,"end_line":9,"start":447,"end":509,"source":"await readdir(new URL('./fixtures/', import.meta.url))"}],"enclosing_case":{"line":8,"title":"matches the runtime parser across the captured session updates"},"affected_case_lines":[],"classification":"fixture corpus","decision":"keep","reason":"Discover all captured protocol .jsonl files while excluding journal/render formats; no runtime tests dynamically declared.","rows":[],"current_matches":[{"path":"src/main/acp/acp-session-events.test.ts","line":11,"body_sha256":"84536427b9fff93c677031b9aa638898d76b056f2c200610ede7831fa2d065ee"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-session-events.test.ts:20:loop","kind":"for-of","path":"src/main/acp/acp-session-events.test.ts","line":20,"end_line":35,"start":808,"end":1419,"byte_start":808,"byte_end":1419,"source":"for (const frame of frames) {\n if (frame.message.method !== 'session/update') {\n continue\n }\n const params = frame.message.params\n const snapshot = structuredClone(params)\n const original = SessionNotificationSchema.safeParse(params)\n const event = readAcpSessionEvent(params)\n if (original.success) {\n expect(event).toEqual({ kind: 'known', notification: original.data })\n } else {\n expect(event).toMatchObject({ kind: 'unrecognized', raw: params })\n }\n expect(params).toEqual(snapshot)\n compared++\n }","source_sha256":"c51251bfff2f3858c7d096b57f6e7da4d1c2b740f4bd7d74228893545a4d3f38","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const frame of frames) ","header_sha256":"c33977b2e955c677fe4ffb3f9c4b2af04c3cf5191bc6c7c2710aac93a0d03516","input_position":{"path":"src/main/acp/acp-session-events.test.ts","line":20,"end_line":20,"start":828,"end":834,"byte_start":828,"byte_end":834},"binding":"const frame","resolution":[{"name":"frames","path":"src/main/acp/acp-session-events.test.ts","line":19,"end_line":19,"start":739,"end":801,"source":"await readAcpFixture(file.slice(0, -'.jsonl'.length))"}],"enclosing_case":{"line":8,"title":"matches the runtime parser across the captured session updates"},"affected_case_lines":[],"classification":"fixture corpus","decision":"fix","reason":"For every actual session/update compare compiled production result with independent uncompiled schema and prove input unchanged; replace >500 inventory threshold with nonempty.","rows":[],"current_matches":[{"path":"src/main/acp/acp-session-events.test.ts","line":20,"body_sha256":"f126b413bc2f5aa4b4590b31c36496989ac19c9298cc614ccae94210384e710b"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-session-events.test.ts:58:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-session-events.test.ts","line":58,"end_line":68,"start":2027,"end":2459,"byte_start":2027,"byte_end":2459,"source":"[\n { sessionUpdate: 'vendor_usage', tokens: 1 },\n { sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 42 } }\n ]","source_sha256":"94b1c3ede90edab567dc672afd415fdac7b777995fadfa1b6a08ca84cc391183","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-session-events.test.ts","line":58,"end_line":61,"start":2035,"end":2172,"byte_start":2035,"byte_end":2172},"binding":"it.each","resolution":[],"enclosing_case":{"line":58,"title":"keeps unknown and malformed known updates for the dialect (%j)"},"affected_case_lines":[58],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-session-events.test.ts","line":59,"end_line":59,"start":2041,"end":2085,"source":"{ sessionUpdate: 'vendor_usage', tokens: 1 }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"vendor_usage"}},{"key":"tokens","value":{"kind":"number","value":1}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"5269d65085f5786ce95fd5189e43835b254e0cc370a32b5c8d8ae19ab6040908","byte_start":2041,"byte_end":2085,"input_label":"vendor_usage","decision":"keep","reason":"Valid envelope with unknown update remains unrecognized."},{"index":2,"path":"src/main/acp/acp-session-events.test.ts","line":60,"end_line":60,"start":2091,"end":2168,"source":"{ sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 42 } }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"agent_message_chunk"}},{"key":"content","value":{"kind":"object","value":[{"key":"type","value":{"kind":"string","value":"text"}},{"key":"text","value":{"kind":"number","value":42}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"6cc36a747144c90655407c553364a7e4f2700780a7fa79856fb8b3aa27dfab56","byte_start":2091,"byte_end":2168,"input_label":"agent_message_chunk text=42","decision":"keep","reason":"Malformed known payload remains unrecognized instead of throwing or typed acceptance."}],"original_row_count":2},{"id":"src/main/acp/acp-session-events.test.ts:70:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-session-events.test.ts","line":70,"end_line":73,"start":2463,"end":2643,"byte_start":2463,"byte_end":2643,"source":"[null, {}, { sessionId: 'session-1', update: {} }]","source_sha256":"c84d749de0ae602bad2b53379ffed072be076fe3eddf01c7afe745109721093c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-session-events.test.ts","line":70,"end_line":70,"start":2471,"end":2521,"byte_start":2471,"byte_end":2521},"binding":"it.each","resolution":[],"enclosing_case":{"line":70,"title":"rejects malformed notification envelopes (%j)"},"affected_case_lines":[70],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-session-events.test.ts","line":70,"end_line":70,"start":2472,"end":2476,"source":"null","value":{"kind":"null","value":null},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"74234e98afe7498fb5daf1f36ac2d78acc339464f950703b8c019892f982b90b","byte_start":2472,"byte_end":2476,"input_label":"null","decision":"keep","reason":"No object envelope"},{"index":2,"path":"src/main/acp/acp-session-events.test.ts","line":70,"end_line":70,"start":2478,"end":2480,"source":"{}","value":{"kind":"object","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a","byte_start":2478,"byte_end":2480,"input_label":"{}","decision":"keep","reason":"Missing session and update"},{"index":3,"path":"src/main/acp/acp-session-events.test.ts","line":70,"end_line":70,"start":2482,"end":2520,"source":"{ sessionId: 'session-1', update: {} }","value":{"kind":"object","value":[{"key":"sessionId","value":{"kind":"string","value":"session-1"}},{"key":"update","value":{"kind":"object","value":[]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"2d9aeaf5a7a25bcf657f00de3eb62647662f19824079df55b1f9de90cf6197f3","byte_start":2482,"byte_end":2520,"input_label":"session-1 + empty update","decision":"keep","reason":"Missing string update discriminator"}],"original_row_count":3}],"parameter_groups":[{"id":"src/main/acp/acp-session-events.test.ts:58:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-session-events.test.ts","line":58,"end_line":68,"start":2027,"end":2459,"byte_start":2027,"byte_end":2459,"source":"[\n { sessionUpdate: 'vendor_usage', tokens: 1 },\n { sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 42 } }\n ]","source_sha256":"94b1c3ede90edab567dc672afd415fdac7b777995fadfa1b6a08ca84cc391183","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-session-events.test.ts","line":58,"end_line":61,"start":2035,"end":2172,"byte_start":2035,"byte_end":2172},"binding":"it.each","resolution":[],"enclosing_case":{"line":58,"title":"keeps unknown and malformed known updates for the dialect (%j)"},"affected_case_lines":[58],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-session-events.test.ts","line":59,"end_line":59,"start":2041,"end":2085,"source":"{ sessionUpdate: 'vendor_usage', tokens: 1 }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"vendor_usage"}},{"key":"tokens","value":{"kind":"number","value":1}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"5269d65085f5786ce95fd5189e43835b254e0cc370a32b5c8d8ae19ab6040908","byte_start":2041,"byte_end":2085,"input_label":"vendor_usage","decision":"keep","reason":"Valid envelope with unknown update remains unrecognized."},{"index":2,"path":"src/main/acp/acp-session-events.test.ts","line":60,"end_line":60,"start":2091,"end":2168,"source":"{ sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 42 } }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"agent_message_chunk"}},{"key":"content","value":{"kind":"object","value":[{"key":"type","value":{"kind":"string","value":"text"}},{"key":"text","value":{"kind":"number","value":42}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"6cc36a747144c90655407c553364a7e4f2700780a7fa79856fb8b3aa27dfab56","byte_start":2091,"byte_end":2168,"input_label":"agent_message_chunk text=42","decision":"keep","reason":"Malformed known payload remains unrecognized instead of throwing or typed acceptance."}],"original_row_count":2},{"id":"src/main/acp/acp-session-events.test.ts:70:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-session-events.test.ts","line":70,"end_line":73,"start":2463,"end":2643,"byte_start":2463,"byte_end":2643,"source":"[null, {}, { sessionId: 'session-1', update: {} }]","source_sha256":"c84d749de0ae602bad2b53379ffed072be076fe3eddf01c7afe745109721093c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-session-events.test.ts","line":70,"end_line":70,"start":2471,"end":2521,"byte_start":2471,"byte_end":2521},"binding":"it.each","resolution":[],"enclosing_case":{"line":70,"title":"rejects malformed notification envelopes (%j)"},"affected_case_lines":[70],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-session-events.test.ts","line":70,"end_line":70,"start":2472,"end":2476,"source":"null","value":{"kind":"null","value":null},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"74234e98afe7498fb5daf1f36ac2d78acc339464f950703b8c019892f982b90b","byte_start":2472,"byte_end":2476,"input_label":"null","decision":"keep","reason":"No object envelope"},{"index":2,"path":"src/main/acp/acp-session-events.test.ts","line":70,"end_line":70,"start":2478,"end":2480,"source":"{}","value":{"kind":"object","value":[]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a","byte_start":2478,"byte_end":2480,"input_label":"{}","decision":"keep","reason":"Missing session and update"},{"index":3,"path":"src/main/acp/acp-session-events.test.ts","line":70,"end_line":70,"start":2482,"end":2520,"source":"{ sessionId: 'session-1', update: {} }","value":{"kind":"object","value":[{"key":"sessionId","value":{"kind":"string","value":"session-1"}},{"key":"update","value":{"kind":"object","value":[]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"2d9aeaf5a7a25bcf657f00de3eb62647662f19824079df55b1f9de90cf6197f3","byte_start":2482,"byte_end":2520,"input_label":"session-1 + empty update","decision":"keep","reason":"Missing string update discriminator"}],"original_row_count":3}],"body_support_cleanup_loops":[{"id":"src/main/acp/acp-session-events.test.ts:11:loop","kind":"for-of","path":"src/main/acp/acp-session-events.test.ts","line":11,"end_line":36,"start":535,"end":1425,"byte_start":535,"byte_end":1425,"source":"for (const file of files) {\n if (\n !file.endsWith('.jsonl') ||\n file.endsWith('.journal.jsonl') ||\n file.endsWith('.render.jsonl')\n ) {\n continue\n }\n const frames = await readAcpFixture(file.slice(0, -'.jsonl'.length))\n for (const frame of frames) {\n if (frame.message.method !== 'session/update') {\n continue\n }\n const params = frame.message.params\n const snapshot = structuredClone(params)\n const original = SessionNotificationSchema.safeParse(params)\n const event = readAcpSessionEvent(params)\n if (original.success) {\n expect(event).toEqual({ kind: 'known', notification: original.data })\n } else {\n expect(event).toMatchObject({ kind: 'unrecognized', raw: params })\n }\n expect(params).toEqual(snapshot)\n compared++\n }\n }","source_sha256":"97d5f942eab2b603c0660bcd4da4625cea2cce7c5787d006f6a12e09dce0e59b","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const file of files) ","header_sha256":"6a96406b70a64a06211eba85d213532ffc20926bccdecee183ee50e2777f26c7","input_position":{"path":"src/main/acp/acp-session-events.test.ts","line":11,"end_line":11,"start":554,"end":559,"byte_start":554,"byte_end":559},"binding":"const file","resolution":[{"name":"files","path":"src/main/acp/acp-session-events.test.ts","line":9,"end_line":9,"start":447,"end":509,"source":"await readdir(new URL('./fixtures/', import.meta.url))"}],"enclosing_case":{"line":8,"title":"matches the runtime parser across the captured session updates"},"affected_case_lines":[],"classification":"fixture corpus","decision":"keep","reason":"Discover all captured protocol .jsonl files while excluding journal/render formats; no runtime tests dynamically declared.","rows":[],"current_matches":[{"path":"src/main/acp/acp-session-events.test.ts","line":11,"body_sha256":"84536427b9fff93c677031b9aa638898d76b056f2c200610ede7831fa2d065ee"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-session-events.test.ts:20:loop","kind":"for-of","path":"src/main/acp/acp-session-events.test.ts","line":20,"end_line":35,"start":808,"end":1419,"byte_start":808,"byte_end":1419,"source":"for (const frame of frames) {\n if (frame.message.method !== 'session/update') {\n continue\n }\n const params = frame.message.params\n const snapshot = structuredClone(params)\n const original = SessionNotificationSchema.safeParse(params)\n const event = readAcpSessionEvent(params)\n if (original.success) {\n expect(event).toEqual({ kind: 'known', notification: original.data })\n } else {\n expect(event).toMatchObject({ kind: 'unrecognized', raw: params })\n }\n expect(params).toEqual(snapshot)\n compared++\n }","source_sha256":"c51251bfff2f3858c7d096b57f6e7da4d1c2b740f4bd7d74228893545a4d3f38","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const frame of frames) ","header_sha256":"c33977b2e955c677fe4ffb3f9c4b2af04c3cf5191bc6c7c2710aac93a0d03516","input_position":{"path":"src/main/acp/acp-session-events.test.ts","line":20,"end_line":20,"start":828,"end":834,"byte_start":828,"byte_end":834},"binding":"const frame","resolution":[{"name":"frames","path":"src/main/acp/acp-session-events.test.ts","line":19,"end_line":19,"start":739,"end":801,"source":"await readAcpFixture(file.slice(0, -'.jsonl'.length))"}],"enclosing_case":{"line":8,"title":"matches the runtime parser across the captured session updates"},"affected_case_lines":[],"classification":"fixture corpus","decision":"fix","reason":"For every actual session/update compare compiled production result with independent uncompiled schema and prove input unchanged; replace >500 inventory threshold with nonempty.","rows":[],"current_matches":[{"path":"src/main/acp/acp-session-events.test.ts","line":20,"body_sha256":"f126b413bc2f5aa4b4590b31c36496989ac19c9298cc614ccae94210384e710b"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"implemented_changes":[{"proposal_id":"acp-main-0001-011","summary":"Every captured input still compares the compiled parser with the independent generated schema, including input preservation; inventory threshold is nonempty.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/generated/acp-protocol.generated.ts","src/main/acp/acp-session-events.ts","src/main/zod-schema-compilation.ts"],"evidence_sha256":{"src/main/acp/generated/acp-protocol.generated.ts":"3931af3ed2611b14929eec2d0b2b66804dfe06ef9553d0247f5fa67e732ee666","src/main/acp/acp-session-events.ts":"0512e6bc51f71faca5f347f5b42e70036facc7f40219c5ab122db2e292ae9a0a","src/main/zod-schema-compilation.ts":"d3ea8fe5b174bf607e50e99eb396f6bc0adf6cd37c86f3512868d6d0c420c3c2"},"evidence_source_sha256":{"src/main/acp/generated/acp-protocol.generated.ts":"3931af3ed2611b14929eec2d0b2b66804dfe06ef9553d0247f5fa67e732ee666","src/main/acp/acp-session-events.ts":"0512e6bc51f71faca5f347f5b42e70036facc7f40219c5ab122db2e292ae9a0a","src/main/zod-schema-compilation.ts":"d3ea8fe5b174bf607e50e99eb396f6bc0adf6cd37c86f3512868d6d0c420c3c2"},"original_evidence_detail":[{"path":"src/main/acp/generated/acp-protocol.generated.ts","sha256":"3931af3ed2611b14929eec2d0b2b66804dfe06ef9553d0247f5fa67e732ee666","lines":1405,"read_state":"targeted_ranges_read","ranges":[[680,735],[800,1010],[1020,1240]],"purpose":"Session option/new-session, content/tool/open-enum/session-update and permission request/response schema contracts. Other generated declarations were stored but not read."},{"path":"src/main/acp/acp-session-events.ts","sha256":"0512e6bc51f71faca5f347f5b42e70036facc7f40219c5ab122db2e292ae9a0a","lines":27,"read_state":"full_body_read"},{"path":"src/main/zod-schema-compilation.ts","sha256":"d3ea8fe5b174bf607e50e99eb396f6bc0adf6cd37c86f3512868d6d0c420c3c2","lines":15,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"compiled ACP session notifications matches the runtime parser across the captured session updates","status":"passed"},{"full_name":"compiled ACP session notifications preserves additive fields and open enum values without mutating the input","status":"passed"},{"full_name":"compiled ACP session notifications keeps unknown and malformed known updates for the dialect ({\"sessionUpdate\":\"vendor_usage\",\"tokens\":1})","status":"passed"},{"full_name":"compiled ACP session notifications keeps unknown and malformed known updates for the dialect ({\"sessionUpdate\":\"agent_message_chunk\",\"content\":{\"type\":\"text\",\"text\":42}})","status":"passed"},{"full_name":"compiled ACP session notifications rejects malformed notification envelopes (null)","status":"passed"},{"full_name":"compiled ACP session notifications rejects malformed notification envelopes ({})","status":"passed"},{"full_name":"compiled ACP session notifications rejects malformed notification envelopes ({\"sessionId\":\"session-1\",\"update\":{}})","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-session-lifecycle.test.ts","sha256":"d86a63a1204e86143f6ad997127581e31283939d8b4d1d33dca02cd389b872e2","reviewed_sha256":"082a7a9ea2cf3d989422715ec357ddb641fbde1390907c49e2adc87c2b624c2c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":17,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 14, fix 1. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":15,"original_declarations":15,"final_declarations":15,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":34,"end_line":63,"title":"keeps permission requests open beyond two minutes and delivers the late user decision","decision":"keep","reason":"Fake time passes two minutes while the real incoming permission request remains pending; late user decision is delivered over the real peer.","source_body_sha256":"e1c01c7f973acbede5d2b0b22d88ee18d133e938cf1ede273993da650c036d3e","path":"src/main/acp/acp-session-lifecycle.test.ts","start":1432,"end":2627,"byte_start":1432,"byte_end":2627,"source":"it('keeps permission requests open beyond two minutes and delivers the late user decision', async () => {\n vi.useFakeTimers()\n const entered = deferred()\n const decision = deferred()\n const { agent, runtime } = fixture({\n onPermission: (_request, context) => {\n entered.resolve(context.signal)\n return decision.promise\n }\n })\n agent.on('session/prompt', () => {})\n await runtime.start(startOptions)\n const pending = runtime.prompt([...prompt])\n const rejected = expect(pending).rejects.toBeInstanceOf(AcpConnectionClosedError)\n let answered = false\n const response = agent.request('permission', 'session/request_permission', permission)\n void response.then(() => {\n answered = true\n })\n const signal = await entered.promise\n await vi.advanceTimersByTimeAsync(120_001)\n expect(signal.aborted).toBe(false)\n expect(answered).toBe(false)\n decision.resolve({ outcome: { outcome: 'selected', optionId: 'allow' } })\n expect(await response).toMatchObject({\n result: { outcome: { outcome: 'selected', optionId: 'allow' } }\n })\n runtime.close()\n await rejected\n })","source_sha256":"e1c01c7f973acbede5d2b0b22d88ee18d133e938cf1ede273993da650c036d3e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":33,"title":"keeps permission requests open beyond two minutes and delivers the late user decision","body_sha256":"e1c01c7f973acbede5d2b0b22d88ee18d133e938cf1ede273993da650c036d3e"},"proposal_ids":[],"explicit_input_controls":[]},{"line":65,"end_line":98,"title":"lets a streaming turn run beyond thirty minutes and keeps the session usable","decision":"keep","reason":"Fake time passes thirty minutes without completing a held prompt, while notification delivery and independent setMode remain usable, then real prompt reply completes it.","source_body_sha256":"91f055dae150badf3642140123c2e154802666c4c6d8a0c6a9facabfc9724840","path":"src/main/acp/acp-session-lifecycle.test.ts","start":2631,"end":3956,"byte_start":2631,"byte_end":3956,"source":"it('lets a streaming turn run beyond thirty minutes and keeps the session usable', async () => {\n vi.useFakeTimers()\n const onClose = vi.fn()\n const event = vi.fn()\n const { agent, runtime } = fixture({ onClose })\n runtime.subscribe(event)\n agent.on('session/prompt', () => {})\n agent.on('session/set_mode', (frame) => agent.reply(frame, {}))\n await runtime.start(startOptions)\n let finished = false\n const pending = runtime.prompt([...prompt])\n void pending.then(() => {\n finished = true\n })\n await vi.advanceTimersByTimeAsync(30 * 60_000 + 1)\n agent.notify('session/update', {\n sessionId: 'session-1',\n update: {\n sessionUpdate: 'agent_message_chunk',\n content: { type: 'text', text: 'Still working' }\n }\n })\n expect(event).toHaveBeenCalledTimes(1)\n expect(finished).toBe(false)\n expect(onClose).not.toHaveBeenCalled()\n expect(agent.frames.some((frame) => frame.method === 'session/cancel')).toBe(false)\n await expect(runtime.setMode('plan')).resolves.toEqual({})\n const frame = agent.frames.find((frame) => frame.method === 'session/prompt')\n expect(frame).toBeDefined()\n if (frame) {\n agent.reply(frame, { stopReason: 'end_turn' })\n }\n await expect(pending).resolves.toEqual({ stopReason: 'end_turn' })\n })","source_sha256":"91f055dae150badf3642140123c2e154802666c4c6d8a0c6a9facabfc9724840","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":64,"title":"lets a streaming turn run beyond thirty minutes and keeps the session usable","body_sha256":"91f055dae150badf3642140123c2e154802666c4c6d8a0c6a9facabfc9724840"},"proposal_ids":[],"explicit_input_controls":[]},{"line":100,"end_line":116,"title":"surfaces $id authentication without choosing it for the caller","decision":"keep","reason":"Four advertised authentication shapes each surface auth-required and leave the agent authenticate method uncalled, preserving user choice.","source_body_sha256":"87bf194045ac9775bc97d012f379fe0b26f0b67b93c85dc5e75521500fe79b69","parameter_groups":[{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":100,"source":"[\n { id: 'key', name: 'API key', type: 'env_var', vars: [{ name: 'X_API_KEY' }] },\n { id: 'browser', name: 'Browser login', type: 'agent' },\n { id: 'default', name: 'Default login' },\n { id: 'terminal', name: 'Terminal login', type: 'terminal' }\n ]","decision":"keep","reason":"","rows":[{"input":"key/env_var","decision":"keep","reason":"Surface API-key auth shape without choosing it."},{"input":"browser/agent","decision":"keep","reason":"Surface browser auth shape without automatic login."},{"input":"default/no type","decision":"keep","reason":"Preserve legacy untyped auth shape."},{"input":"terminal/terminal","decision":"keep","reason":"Never automatically choose interactive terminal auth."}],"row_count":4}],"path":"src/main/acp/acp-session-lifecycle.test.ts","start":3960,"end":4805,"byte_start":3960,"byte_end":4805,"source":"it.each([\n { id: 'key', name: 'API key', type: 'env_var', vars: [{ name: 'X_API_KEY' }] },\n { id: 'browser', name: 'Browser login', type: 'agent' },\n { id: 'default', name: 'Default login' },\n { id: 'terminal', name: 'Terminal login', type: 'terminal' }\n ])('surfaces $id authentication without choosing it for the caller', async (method) => {\n const { agent, runtime } = fixture()\n agent.on('initialize', (frame) =>\n agent.reply(frame, { protocolVersion: 1, authMethods: [method] })\n )\n agent.on('session/new', (frame) => agent.fail(frame, -32000, 'Authentication required'))\n await expect(runtime.start(startOptions)).rejects.toMatchObject({\n name: 'AcpAuthRequiredError',\n authMethods: [method]\n })\n expect(agent.frames.map((frame) => frame.method)).toEqual(['initialize', 'session/new'])\n })","source_sha256":"87bf194045ac9775bc97d012f379fe0b26f0b67b93c85dc5e75521500fe79b69","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":99,"title":"surfaces $id authentication without choosing it for the caller","body_sha256":"87bf194045ac9775bc97d012f379fe0b26f0b67b93c85dc5e75521500fe79b69"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-session-lifecycle.test.ts:100:parameter-table"]},{"line":118,"end_line":144,"title":"rejects %s before start through its promise","decision":"keep","reason":"Five public session operations each reject through their Promise before start and never throw synchronously.","source_body_sha256":"a34c7d7f0edf39bb5236b1e04fdf0c2477171cd66afedc79d090396d7e800e8a","parameter_groups":[{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":118,"source":"['prompt', 'cancel', 'setMode', 'setModel', 'setConfigOption'] as const","decision":"keep","reason":"","rows":[{"input":"prompt","decision":"keep","reason":"Pre-start prompt rejects via Promise without a synchronous throw."},{"input":"cancel","decision":"keep","reason":"Pre-start cancel rejects via Promise without a synchronous throw."},{"input":"setMode","decision":"keep","reason":"Pre-start setMode rejects via Promise without a synchronous throw."},{"input":"setModel","decision":"keep","reason":"Pre-start setModel rejects via Promise without a synchronous throw."},{"input":"setConfigOption","decision":"keep","reason":"Pre-start setConfigOption rejects via Promise without a synchronous throw."}],"row_count":5}],"path":"src/main/acp/acp-session-lifecycle.test.ts","start":4809,"end":5690,"byte_start":4809,"byte_end":5690,"source":"it.each(['prompt', 'cancel', 'setMode', 'setModel', 'setConfigOption'] as const)(\n 'rejects %s before start through its promise',\n async (method) => {\n const { runtime } = fixture()\n let pending: Promise | undefined\n expect(() => {\n switch (method) {\n case 'prompt':\n pending = runtime.prompt([...prompt])\n break\n case 'cancel':\n pending = runtime.cancel()\n break\n case 'setMode':\n pending = runtime.setMode('plan')\n break\n case 'setModel':\n pending = runtime.setModel('model')\n break\n case 'setConfigOption':\n pending = runtime.setConfigOption('thinking', 'high')\n break\n }\n }).not.toThrow()\n await expect(pending).rejects.toThrow('ACP session has not started')\n }\n )","source_sha256":"a34c7d7f0edf39bb5236b1e04fdf0c2477171cd66afedc79d090396d7e800e8a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":117,"title":"rejects %s before start through its promise","body_sha256":"a34c7d7f0edf39bb5236b1e04fdf0c2477171cd66afedc79d090396d7e800e8a"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-session-lifecycle.test.ts:118:parameter-table"]},{"line":146,"end_line":151,"title":"answers a handled void vendor request with null","decision":"keep","reason":"A handled vendor request whose callback returns void is serialized as JSON-RPC null rather than left unanswered.","source_body_sha256":"3871f806a949455bc403ff5f14c4de8958d3634662397677f612b97f9ca5a225","path":"src/main/acp/acp-session-lifecycle.test.ts","start":5694,"end":5986,"byte_start":5694,"byte_end":5986,"source":"it('answers a handled void vendor request with null', async () => {\n const handler = vi.fn()\n const { agent } = fixture({ onRequest: handler })\n expect(await agent.request(7, '_vendor/ack', {})).toMatchObject({ id: 7, result: null })\n expect(handler).toHaveBeenCalledTimes(1)\n })","source_sha256":"3871f806a949455bc403ff5f14c4de8958d3634662397677f612b97f9ca5a225","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":145,"title":"answers a handled void vendor request with null","body_sha256":"3871f806a949455bc403ff5f14c4de8958d3634662397677f612b97f9ca5a225"},"proposal_ids":[],"explicit_input_controls":[]},{"line":153,"end_line":170,"title":"ignores duplicate incoming ids without answering the original request","decision":"keep","reason":"A duplicated incoming id does not invoke the handler twice or pre-answer the original; the eventual result is sent once.","source_body_sha256":"87e60aa47338a52aa4bcc70336168dca042d6f093ce697c5dd63be1f3273c2df","path":"src/main/acp/acp-session-lifecycle.test.ts","start":5990,"end":6810,"byte_start":5990,"byte_end":6810,"source":"it('ignores duplicate incoming ids without answering the original request', async () => {\n const answer = deferred()\n const handler = vi.fn(() => answer.promise)\n const diagnostics: string[] = []\n const { agent } = fixture({\n onRequest: handler,\n onDiagnostic: (message) => diagnostics.push(message)\n })\n const original = agent.request(5, '_vendor/question', {})\n agent.send({ jsonrpc: '2.0', id: 5, method: '_vendor/question', params: {} })\n await tick()\n expect(agent.frames).toEqual([])\n expect(handler).toHaveBeenCalledTimes(1)\n expect(diagnostics).toContain('Ignored duplicate ACP incoming request id')\n answer.resolve({ answer: true })\n expect(await original).toMatchObject({ id: 5, result: { answer: true } })\n expect(agent.frames).toHaveLength(1)\n })","source_sha256":"87e60aa47338a52aa4bcc70336168dca042d6f093ce697c5dd63be1f3273c2df","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":152,"title":"ignores duplicate incoming ids without answering the original request","body_sha256":"87e60aa47338a52aa4bcc70336168dca042d6f093ce697c5dd63be1f3273c2df"},"proposal_ids":[],"explicit_input_controls":[]},{"line":172,"end_line":181,"title":"rejects a malformed error reply immediately with its raw error: %j","decision":"keep","reason":"Three malformed error envelopes each settle immediately as invalid RPC errors retaining raw data.","source_body_sha256":"44e2eee741992f86f437108f2a04ab0c64a049232af87bbb498d95b666fdc769","parameter_groups":[{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":172,"source":"[{ code: 'E1', message: 'boom' }, { code: -1, message: null }, null]","decision":"keep","reason":"","rows":[{"input":"code string E1","decision":"keep","reason":"Malformed error code rejects retaining raw envelope."},{"input":"message null","decision":"keep","reason":"Malformed error text rejects retaining raw envelope."},{"input":"null","decision":"keep","reason":"Null error rejects retaining raw envelope."}],"row_count":3}],"path":"src/main/acp/acp-session-lifecycle.test.ts","start":6814,"end":7278,"byte_start":6814,"byte_end":7278,"source":"it.each([{ code: 'E1', message: 'boom' }, { code: -1, message: null }, null])(\n 'rejects a malformed error reply immediately with its raw error: %j',\n async (error) => {\n const { agent, runtime } = fixture()\n agent.on('initialize', (frame) => {\n agent.stdout.write(`${JSON.stringify({ jsonrpc: '2.0', id: frame.id, error })}\\n`)\n })\n await expect(runtime.initialize()).rejects.toMatchObject({ code: -32603, data: error })\n }\n )","source_sha256":"44e2eee741992f86f437108f2a04ab0c64a049232af87bbb498d95b666fdc769","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":171,"title":"rejects a malformed error reply immediately with its raw error: %j","body_sha256":"44e2eee741992f86f437108f2a04ab0c64a049232af87bbb498d95b666fdc769"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-session-lifecycle.test.ts:172:parameter-table"]},{"line":183,"end_line":199,"title":"maps authentication-required and retries only the explicitly chosen advertised method once","decision":"keep","reason":"A caller-selected advertised login is attempted once, setup retries once, and repeated auth failure remains surfaced with advertised methods.","source_body_sha256":"396a765452da246a485e0e1fd807f3cadb4dbd0e4bbac795a25cfaf09f3608a8","path":"src/main/acp/acp-session-lifecycle.test.ts","start":7282,"end":8062,"byte_start":7282,"byte_end":8062,"source":"it('maps authentication-required and retries only the explicitly chosen advertised method once', async () => {\n const { agent, runtime } = fixture()\n const authMethods = [{ id: 'login', name: 'Login' }]\n agent.on('initialize', (frame) => agent.reply(frame, { protocolVersion: 1, authMethods }))\n agent.on('session/new', (frame) => agent.fail(frame, -32000, 'Authentication required'))\n agent.on('authenticate', (frame) => agent.reply(frame, {}))\n await expect(runtime.start({ ...startOptions, authMethodId: 'login' })).rejects.toMatchObject({\n name: 'AcpAuthRequiredError',\n authMethods\n })\n expect(agent.frames.map((frame) => frame.method)).toEqual([\n 'initialize',\n 'session/new',\n 'authenticate',\n 'session/new'\n ])\n })","source_sha256":"396a765452da246a485e0e1fd807f3cadb4dbd0e4bbac795a25cfaf09f3608a8","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":182,"title":"maps authentication-required and retries only the explicitly chosen advertised method once","body_sha256":"396a765452da246a485e0e1fd807f3cadb4dbd0e4bbac795a25cfaf09f3608a8"},"proposal_ids":[],"explicit_input_controls":[]},{"line":201,"end_line":220,"title":"rejects overflowing peer timeouts and supports an explicit unlimited wait","decision":"keep","reason":"Rejects timeout values above Node duration range and leaves an explicit unlimited peer request pending over a huge fake-time advance.","source_body_sha256":"07804e292bf314bd221864ae6dbffc00b148687039dc00051c287c43e4042364","path":"src/main/acp/acp-session-lifecycle.test.ts","start":8066,"end":8983,"byte_start":8066,"byte_end":8983,"source":"it('rejects overflowing peer timeouts and supports an explicit unlimited wait', async () => {\n vi.useFakeTimers()\n const agent = new AcpScriptedAgent()\n opened.push(agent)\n expect(\n () => new AcpJsonRpcPeer(agent.stdout, agent.stdin, {}, { requestTimeoutMs: 3_000_000_000 })\n ).toThrow('timer durations')\n const peer = new AcpJsonRpcPeer(agent.stdout, agent.stdin, {}, { requestTimeoutMs: 20 })\n opened.push(peer)\n await expect(peer.request('overflow', {}, { timeoutMs: 3_000_000_000 })).rejects.toThrow(\n 'timer durations'\n )\n const pending = peer.request('wait', {}, { timeoutMs: null })\n const rejected = expect(pending).rejects.toBeInstanceOf(AcpConnectionClosedError)\n await vi.advanceTimersByTimeAsync(3_000_000_000)\n expect(peer.closed).toBe(false)\n expect(agent.frames.map((frame) => frame.method)).toEqual(['wait'])\n peer.close()\n await rejected\n })","source_sha256":"07804e292bf314bd221864ae6dbffc00b148687039dc00051c287c43e4042364","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":200,"title":"rejects overflowing peer timeouts and supports an explicit unlimited wait","body_sha256":"07804e292bf314bd221864ae6dbffc00b148687039dc00051c287c43e4042364"},"proposal_ids":[],"explicit_input_controls":[]},{"line":222,"end_line":240,"title":"bounds each start step on its own, never by the peer default","decision":"keep","reason":"Initialize, authenticate and session setup each use their own budgets despite a 20ms peer default; actual held replies and a setup timeout distinguish the boundaries.","source_body_sha256":"6db5f63e5b956d0af5b93af4968e6701c29fd6eec708058dcb47eba40cf3a246","path":"src/main/acp/acp-session-lifecycle.test.ts","start":8987,"end":9796,"byte_start":8987,"byte_end":9796,"source":"it('bounds each start step on its own, never by the peer default', async () => {\n vi.useFakeTimers()\n const { agent, runtime } = fixture({ peer: { requestTimeoutMs: 20 } })\n agent.on('initialize', () => {})\n const initialized = runtime.initialize()\n await vi.advanceTimersByTimeAsync(59_000)\n agent.reply(agent.frames[0], { protocolVersion: 1 })\n await initialized\n const authenticated = runtime.authenticate('caller-chosen')\n await vi.advanceTimersByTimeAsync(119_000)\n agent.reply(agent.frames[1], {})\n await expect(authenticated).resolves.toEqual({})\n agent.on('session/new', () => {})\n const started = expect(runtime.start(startOptions)).rejects.toBeInstanceOf(\n AcpRequestTimeoutError\n )\n await vi.advanceTimersByTimeAsync(300_000)\n await started\n })","source_sha256":"6db5f63e5b956d0af5b93af4968e6701c29fd6eec708058dcb47eba40cf3a246","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":221,"title":"bounds each start step on its own, never by the peer default","body_sha256":"6db5f63e5b956d0af5b93af4968e6701c29fd6eec708058dcb47eba40cf3a246"},"proposal_ids":[],"explicit_input_controls":[]},{"line":242,"end_line":274,"title":"lets request owners withdraw vendor hooks after cancel","decision":"keep","reason":"After cancel, hook owners may return error/success cancellation replies or remain silent; actual wire responses are respectively delivered once or absent.","source_body_sha256":"c10c556288d97d7f57edae811c1a503a4bc21cabbba9f7276dffebc000929e6d","path":"src/main/acp/acp-session-lifecycle.test.ts","start":9800,"end":11231,"byte_start":9800,"byte_end":11231,"source":"it('lets request owners withdraw vendor hooks after cancel', async () => {\n const withdrawal = new AbortController()\n const { agent, runtime } = fixture({\n onRequest: (method) =>\n new Promise((resolve, reject) => {\n // '_vendor/silent' ignores the abort: the runtime never answers for it.\n if (method !== '_vendor/silent') {\n withdrawal.signal.addEventListener('abort', () =>\n method === '_vendor/plan'\n ? resolve({ outcome: 'abandoned' })\n : reject(new AcpRpcError(-32800, 'stop'))\n )\n }\n })\n })\n agent.on('session/prompt', (frame) =>\n agent.on('session/cancel', () => agent.reply(frame, { stopReason: 'cancelled' }))\n )\n await runtime.start(startOptions)\n const pending = runtime.prompt([...prompt])\n const question = agent.request('question', '_vendor/question', {})\n const plan = agent.request('plan', '_vendor/plan', {})\n void agent.request('silent', '_vendor/silent', {})\n await tick()\n await runtime.cancel()\n withdrawal.abort()\n expect(await question).toMatchObject({ error: { code: -32800 } })\n expect(await plan).toMatchObject({ result: { outcome: 'abandoned' } })\n await pending\n await tick()\n expect(agent.frames.filter((frame) => frame.id === 'plan')).toHaveLength(1)\n expect(agent.frames.some((frame) => frame.id === 'silent')).toBe(false)\n })","source_sha256":"c10c556288d97d7f57edae811c1a503a4bc21cabbba9f7276dffebc000929e6d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":241,"title":"lets request owners withdraw vendor hooks after cancel","body_sha256":"c10c556288d97d7f57edae811c1a503a4bc21cabbba9f7276dffebc000929e6d"},"proposal_ids":[],"explicit_input_controls":[]},{"line":276,"end_line":312,"title":"keeps a handler answer that finishes saving after its owner withdraws requests","decision":"fix","reason":"Preserve late owner answers across withdrawal, but real readFile I/O does not deterministically prove a save finished after withdrawal; replace it with controlled completion gates.","source_body_sha256":"b2549436e77666145fc62589f2016031ce7f9ebc4ae744fb998fdb1271482a14","proposed_changes":[{"line":276,"action":"fix","proposal":"Replace unrelated readFile(import.meta.filename) saves with deferred gates. Observe each handler save has started, cancel/withdraw, prove no response before releasing the save, then release and assert the approved/abandoned responses each occur once. Current I/O timing does not guarantee the title ordering."}],"path":"src/main/acp/acp-session-lifecycle.test.ts","start":11235,"end":12948,"byte_start":11235,"byte_end":12948,"source":"it('keeps a handler answer that finishes saving after its owner withdraws requests', async () => {\n const withdrawal = new AbortController()\n // A real I/O hop, the shape of a journal write the handler commits before replying.\n const save = (): Promise => readFile(import.meta.filename).then(() => undefined)\n const userAnswer = deferred()\n const { agent, runtime } = fixture({\n onRequest: (method) =>\n new Promise((resolve) => {\n if (method === '_vendor/plan') {\n // The user already approved; the save started before the stop and replies after it.\n void userAnswer.promise.then(save).then(() => resolve({ outcome: 'approved' }))\n } else {\n withdrawal.signal.addEventListener(\n 'abort',\n () => void save().then(() => resolve({ outcome: 'abandoned' }))\n )\n }\n })\n })\n agent.on('session/prompt', (frame) =>\n agent.on('session/cancel', () => agent.reply(frame, { stopReason: 'cancelled' }))\n )\n await runtime.start(startOptions)\n const pending = runtime.prompt([...prompt])\n const plan = agent.request('plan', '_vendor/plan', {})\n const question = agent.request('question', '_vendor/question', {})\n await tick()\n userAnswer.resolve()\n await runtime.cancel()\n withdrawal.abort()\n expect(await plan).toMatchObject({ result: { outcome: 'approved' } })\n expect(await question).toMatchObject({ result: { outcome: 'abandoned' } })\n await pending\n await tick()\n expect(agent.frames.filter((frame) => frame.id === 'plan')).toHaveLength(1)\n expect(agent.frames.filter((frame) => frame.id === 'question')).toHaveLength(1)\n })","source_sha256":"b2549436e77666145fc62589f2016031ce7f9ebc4ae744fb998fdb1271482a14","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":275,"title":"keeps a handler answer that finishes saving after its owner withdraws requests","body_sha256":"7a852c792a45b4499bcc62ad1e2a99bd138ec5f46c873c59ef0f02ce4dcf9d3a"},"proposal_ids":["acp-main-0001-012"],"explicit_input_controls":[]},{"line":314,"end_line":323,"title":"settles stream-level requests on close even if stdout stays open","decision":"keep","reason":"Explicit runtime close rejects a stream-level pending request while stdout stays open, separating closure from readable EOF.","source_body_sha256":"d546585e5b7128d48824c34fcfd28cb69d79047f7b7eabfb53407bd6642bd69d","path":"src/main/acp/acp-session-lifecycle.test.ts","start":12952,"end":13416,"byte_start":12952,"byte_end":13416,"source":"it('settles stream-level requests on close even if stdout stays open', async () => {\n const { agent, runtime } = fixture()\n agent.on('session/prompt', () => {})\n await runtime.start(startOptions)\n const rejected = expect(runtime.prompt([...prompt])).rejects.toThrow('Agent exited')\n expect(agent.stdout.readableEnded).toBe(false)\n runtime.close(new Error('Agent exited'))\n await rejected\n expect(agent.stdout.readableEnded).toBe(false)\n })","source_sha256":"d546585e5b7128d48824c34fcfd28cb69d79047f7b7eabfb53407bd6642bd69d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":325,"title":"settles stream-level requests on close even if stdout stays open","body_sha256":"d546585e5b7128d48824c34fcfd28cb69d79047f7b7eabfb53407bd6642bd69d"},"proposal_ids":[],"explicit_input_controls":[]},{"line":324,"end_line":356,"title":"keeps a permission pending after prompt completion until caller %s","decision":"keep","reason":"Both answer/close actions keep a permission pending after prompt completion; user answer is delivered or full runtime close aborts its context.","source_body_sha256":"75e173ec7eb0ddc192689dc770c6e9acc713412c9c2ef305ed816ad228c4fb72","parameter_groups":[{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":324,"source":"['answer', 'close'] as const","decision":"keep","reason":"","rows":[{"input":"answer","decision":"keep","reason":"Prompt completion leaves permission answerable; late user decision travels over wire."},{"input":"close","decision":"keep","reason":"Prompt completion leaves permission pending until explicit runtime close aborts it."}],"row_count":2}],"path":"src/main/acp/acp-session-lifecycle.test.ts","start":13419,"end":14697,"byte_start":13419,"byte_end":14697,"source":"it.each(['answer', 'close'] as const)(\n 'keeps a permission pending after prompt completion until caller %s',\n async (action) => {\n const decision = deferred()\n const entered = deferred()\n const { agent, runtime } = fixture({\n onPermission: (_request, context) => {\n entered.resolve(context.signal)\n return decision.promise\n }\n })\n agent.on('session/prompt', () => {})\n await runtime.start(startOptions)\n const pending = runtime.prompt([...prompt])\n const response = agent.request('permission', 'session/request_permission', permission)\n const signal = await entered.promise\n const frame = agent.frames.find((candidate) => candidate.method === 'session/prompt')\n if (frame) {\n agent.reply(frame, { stopReason: 'end_turn' })\n }\n await pending\n expect(signal.aborted).toBe(false)\n if (action === 'answer') {\n decision.resolve({ outcome: { outcome: 'selected', optionId: 'allow' } })\n expect(await response).toMatchObject({\n result: { outcome: { outcome: 'selected', optionId: 'allow' } }\n })\n } else {\n runtime.close()\n expect(signal.aborted).toBe(true)\n }\n }\n )","source_sha256":"75e173ec7eb0ddc192689dc770c6e9acc713412c9c2ef305ed816ad228c4fb72","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":335,"title":"keeps a permission pending after prompt completion until caller %s","body_sha256":"75e173ec7eb0ddc192689dc770c6e9acc713412c9c2ef305ed816ad228c4fb72"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-session-lifecycle.test.ts:324:parameter-table"]},{"line":358,"end_line":367,"title":"writes cancel independently of the agent settling the prompt with an error","decision":"keep","reason":"Cancel notification resolves independently while the agent subsequently settles the prompt with RPC cancellation failure.","source_body_sha256":"7996f1a3137ec57d06f137d94ef3746628424c696dcb626892069c855f7cf3b3","path":"src/main/acp/acp-session-lifecycle.test.ts","start":14701,"end":15193,"byte_start":14701,"byte_end":15193,"source":"it('writes cancel independently of the agent settling the prompt with an error', async () => {\n const { agent, runtime } = fixture()\n agent.on('session/prompt', (frame) => {\n agent.on('session/cancel', () => agent.fail(frame, -32800, 'Request cancelled'))\n })\n await runtime.start(startOptions)\n const rejected = expect(runtime.prompt([...prompt])).rejects.toMatchObject({ code: -32800 })\n await expect(runtime.cancel()).resolves.toBeUndefined()\n await rejected\n })","source_sha256":"7996f1a3137ec57d06f137d94ef3746628424c696dcb626892069c855f7cf3b3","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":369,"title":"writes cancel independently of the agent settling the prompt with an error","body_sha256":"7996f1a3137ec57d06f137d94ef3746628424c696dcb626892069c855f7cf3b3"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-session-lifecycle.test.ts:100:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-session-lifecycle.test.ts","line":100,"end_line":116,"start":3960,"end":4805,"byte_start":3960,"byte_end":4805,"source":"[\n { id: 'key', name: 'API key', type: 'env_var', vars: [{ name: 'X_API_KEY' }] },\n { id: 'browser', name: 'Browser login', type: 'agent' },\n { id: 'default', name: 'Default login' },\n { id: 'terminal', name: 'Terminal login', type: 'terminal' }\n ]","source_sha256":"44f76b77d010c185e0e87c671542e07c84a641ef7291df787059f8717026105f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":100,"end_line":105,"start":3968,"end":4229,"byte_start":3968,"byte_end":4229},"binding":"it.each","resolution":[],"enclosing_case":{"line":100,"title":"surfaces $id authentication without choosing it for the caller"},"affected_case_lines":[100],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":101,"end_line":101,"start":3974,"end":4052,"source":"{ id: 'key', name: 'API key', type: 'env_var', vars: [{ name: 'X_API_KEY' }] }","value":{"kind":"object","value":[{"key":"id","value":{"kind":"string","value":"key"}},{"key":"name","value":{"kind":"string","value":"API key"}},{"key":"type","value":{"kind":"string","value":"env_var"}},{"key":"vars","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"X_API_KEY"}}]}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"ef59e1de9bbe701fc4dd4473b57613616df104fd4fdc66280d74709ba4c31d38","byte_start":3974,"byte_end":4052,"input_label":"key/env_var","decision":"keep","reason":"Surface API-key auth shape without choosing it."},{"index":2,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":102,"end_line":102,"start":4058,"end":4113,"source":"{ id: 'browser', name: 'Browser login', type: 'agent' }","value":{"kind":"object","value":[{"key":"id","value":{"kind":"string","value":"browser"}},{"key":"name","value":{"kind":"string","value":"Browser login"}},{"key":"type","value":{"kind":"string","value":"agent"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"c4c17c51199084127ba56b87b33d165cc88f15369804683d8139bd7dca6946e5","byte_start":4058,"byte_end":4113,"input_label":"browser/agent","decision":"keep","reason":"Surface browser auth shape without automatic login."},{"index":3,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":103,"end_line":103,"start":4119,"end":4159,"source":"{ id: 'default', name: 'Default login' }","value":{"kind":"object","value":[{"key":"id","value":{"kind":"string","value":"default"}},{"key":"name","value":{"kind":"string","value":"Default login"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"012ae2773d29005291adb9442c54921483fe7642e512ccf3bb86f401da26fa5f","byte_start":4119,"byte_end":4159,"input_label":"default/no type","decision":"keep","reason":"Preserve legacy untyped auth shape."},{"index":4,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":104,"end_line":104,"start":4165,"end":4225,"source":"{ id: 'terminal', name: 'Terminal login', type: 'terminal' }","value":{"kind":"object","value":[{"key":"id","value":{"kind":"string","value":"terminal"}},{"key":"name","value":{"kind":"string","value":"Terminal login"}},{"key":"type","value":{"kind":"string","value":"terminal"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"fbcf1e03c4b17cb137415cb403103f8750894ea4c4bc7bde77d2474841f2bcaa","byte_start":4165,"byte_end":4225,"input_label":"terminal/terminal","decision":"keep","reason":"Never automatically choose interactive terminal auth."}],"original_row_count":4},{"id":"src/main/acp/acp-session-lifecycle.test.ts:118:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-session-lifecycle.test.ts","line":118,"end_line":144,"start":4809,"end":5690,"byte_start":4809,"byte_end":5690,"source":"['prompt', 'cancel', 'setMode', 'setModel', 'setConfigOption'] as const","source_sha256":"71e20b79f8d4bc7a42ac6b6965c553a650d2a55a4485a9c2692ff4afcc6fd809","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":118,"end_line":118,"start":4817,"end":4888,"byte_start":4817,"byte_end":4888},"binding":"it.each","resolution":[],"enclosing_case":{"line":118,"title":"rejects %s before start through its promise"},"affected_case_lines":[118],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":118,"end_line":118,"start":4818,"end":4826,"source":"'prompt'","value":{"kind":"string","value":"prompt"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"3396a3baa6ad6a55297081068ef35e69467d14c50598df7df07c7da00d69af1c","byte_start":4818,"byte_end":4826,"input_label":"prompt","decision":"keep","reason":"Pre-start prompt rejects via Promise without a synchronous throw."},{"index":2,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":118,"end_line":118,"start":4828,"end":4836,"source":"'cancel'","value":{"kind":"string","value":"cancel"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"63847afb1c96124415b20eb865ae539b932ccecf19162c2b452b7069eccc7511","byte_start":4828,"byte_end":4836,"input_label":"cancel","decision":"keep","reason":"Pre-start cancel rejects via Promise without a synchronous throw."},{"index":3,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":118,"end_line":118,"start":4838,"end":4847,"source":"'setMode'","value":{"kind":"string","value":"setMode"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"6b122a1a33d754ee029d8d28e52410bd05732b8648e30166aadbef481f286f25","byte_start":4838,"byte_end":4847,"input_label":"setMode","decision":"keep","reason":"Pre-start setMode rejects via Promise without a synchronous throw."},{"index":4,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":118,"end_line":118,"start":4849,"end":4859,"source":"'setModel'","value":{"kind":"string","value":"setModel"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"0eb39f5407a4386e364ee61e24a4b8085318f3d8e2139a31c29dc72c216da6dd","byte_start":4849,"byte_end":4859,"input_label":"setModel","decision":"keep","reason":"Pre-start setModel rejects via Promise without a synchronous throw."},{"index":5,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":118,"end_line":118,"start":4861,"end":4878,"source":"'setConfigOption'","value":{"kind":"string","value":"setConfigOption"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"0ccac0997e13a1b4b1c4cddf69076d907f84119158098d20b032e6311d3c4229","byte_start":4861,"byte_end":4878,"input_label":"setConfigOption","decision":"keep","reason":"Pre-start setConfigOption rejects via Promise without a synchronous throw."}],"original_row_count":5},{"id":"src/main/acp/acp-session-lifecycle.test.ts:172:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-session-lifecycle.test.ts","line":172,"end_line":181,"start":6814,"end":7278,"byte_start":6814,"byte_end":7278,"source":"[{ code: 'E1', message: 'boom' }, { code: -1, message: null }, null]","source_sha256":"4be845feb78938b13b113d0261c8959f5f6227ee0564a352e3828fc0cfda6a5d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":172,"end_line":172,"start":6822,"end":6890,"byte_start":6822,"byte_end":6890},"binding":"it.each","resolution":[],"enclosing_case":{"line":172,"title":"rejects a malformed error reply immediately with its raw error: %j"},"affected_case_lines":[172],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":172,"end_line":172,"start":6823,"end":6854,"source":"{ code: 'E1', message: 'boom' }","value":{"kind":"object","value":[{"key":"code","value":{"kind":"string","value":"E1"}},{"key":"message","value":{"kind":"string","value":"boom"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"0808343072bf6849586a2f30408553c81794ed4fdfaff0bc7a78a7834bec67a5","byte_start":6823,"byte_end":6854,"input_label":"code string E1","decision":"keep","reason":"Malformed error code rejects retaining raw envelope."},{"index":2,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":172,"end_line":172,"start":6856,"end":6883,"source":"{ code: -1, message: null }","value":{"kind":"object","value":[{"key":"code","value":{"kind":"source-expression","source":"-1"}},{"key":"message","value":{"kind":"null","value":null}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"be24f4b7e57f7e5085725ad411177c8b6ccda9e29056fa98e8acf7059a2dc54a","byte_start":6856,"byte_end":6883,"input_label":"message null","decision":"keep","reason":"Malformed error text rejects retaining raw envelope."},{"index":3,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":172,"end_line":172,"start":6885,"end":6889,"source":"null","value":{"kind":"null","value":null},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"74234e98afe7498fb5daf1f36ac2d78acc339464f950703b8c019892f982b90b","byte_start":6885,"byte_end":6889,"input_label":"null","decision":"keep","reason":"Null error rejects retaining raw envelope."}],"original_row_count":3},{"id":"src/main/acp/acp-session-lifecycle.test.ts:324:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-session-lifecycle.test.ts","line":324,"end_line":356,"start":13419,"end":14697,"byte_start":13419,"byte_end":14697,"source":"['answer', 'close'] as const","source_sha256":"3ffde733f259326689803725e8caa925e0730e84e9a9a2f7bb5df2bf780b88a2","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":324,"end_line":324,"start":13427,"end":13455,"byte_start":13427,"byte_end":13455},"binding":"it.each","resolution":[],"enclosing_case":{"line":324,"title":"keeps a permission pending after prompt completion until caller %s"},"affected_case_lines":[324],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":324,"end_line":324,"start":13428,"end":13436,"source":"'answer'","value":{"kind":"string","value":"answer"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"1ab1bd16fa3a3158e69098f5ef6873750ca9e2232bf92d9e4154dcf6167a9cab","byte_start":13428,"byte_end":13436,"input_label":"answer","decision":"keep","reason":"Prompt completion leaves permission answerable; late user decision travels over wire."},{"index":2,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":324,"end_line":324,"start":13438,"end":13445,"source":"'close'","value":{"kind":"string","value":"close"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"dd4a67fe900f81aebb0fe03336c561063b9be657fd70cde682edf8d33ee8b43a","byte_start":13438,"byte_end":13445,"input_label":"close","decision":"keep","reason":"Prompt completion leaves permission pending until explicit runtime close aborts it."}],"original_row_count":2}],"parameter_groups":[{"id":"src/main/acp/acp-session-lifecycle.test.ts:100:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-session-lifecycle.test.ts","line":100,"end_line":116,"start":3960,"end":4805,"byte_start":3960,"byte_end":4805,"source":"[\n { id: 'key', name: 'API key', type: 'env_var', vars: [{ name: 'X_API_KEY' }] },\n { id: 'browser', name: 'Browser login', type: 'agent' },\n { id: 'default', name: 'Default login' },\n { id: 'terminal', name: 'Terminal login', type: 'terminal' }\n ]","source_sha256":"44f76b77d010c185e0e87c671542e07c84a641ef7291df787059f8717026105f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":100,"end_line":105,"start":3968,"end":4229,"byte_start":3968,"byte_end":4229},"binding":"it.each","resolution":[],"enclosing_case":{"line":100,"title":"surfaces $id authentication without choosing it for the caller"},"affected_case_lines":[100],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":101,"end_line":101,"start":3974,"end":4052,"source":"{ id: 'key', name: 'API key', type: 'env_var', vars: [{ name: 'X_API_KEY' }] }","value":{"kind":"object","value":[{"key":"id","value":{"kind":"string","value":"key"}},{"key":"name","value":{"kind":"string","value":"API key"}},{"key":"type","value":{"kind":"string","value":"env_var"}},{"key":"vars","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"name","value":{"kind":"string","value":"X_API_KEY"}}]}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"ef59e1de9bbe701fc4dd4473b57613616df104fd4fdc66280d74709ba4c31d38","byte_start":3974,"byte_end":4052,"input_label":"key/env_var","decision":"keep","reason":"Surface API-key auth shape without choosing it."},{"index":2,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":102,"end_line":102,"start":4058,"end":4113,"source":"{ id: 'browser', name: 'Browser login', type: 'agent' }","value":{"kind":"object","value":[{"key":"id","value":{"kind":"string","value":"browser"}},{"key":"name","value":{"kind":"string","value":"Browser login"}},{"key":"type","value":{"kind":"string","value":"agent"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"c4c17c51199084127ba56b87b33d165cc88f15369804683d8139bd7dca6946e5","byte_start":4058,"byte_end":4113,"input_label":"browser/agent","decision":"keep","reason":"Surface browser auth shape without automatic login."},{"index":3,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":103,"end_line":103,"start":4119,"end":4159,"source":"{ id: 'default', name: 'Default login' }","value":{"kind":"object","value":[{"key":"id","value":{"kind":"string","value":"default"}},{"key":"name","value":{"kind":"string","value":"Default login"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"012ae2773d29005291adb9442c54921483fe7642e512ccf3bb86f401da26fa5f","byte_start":4119,"byte_end":4159,"input_label":"default/no type","decision":"keep","reason":"Preserve legacy untyped auth shape."},{"index":4,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":104,"end_line":104,"start":4165,"end":4225,"source":"{ id: 'terminal', name: 'Terminal login', type: 'terminal' }","value":{"kind":"object","value":[{"key":"id","value":{"kind":"string","value":"terminal"}},{"key":"name","value":{"kind":"string","value":"Terminal login"}},{"key":"type","value":{"kind":"string","value":"terminal"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"fbcf1e03c4b17cb137415cb403103f8750894ea4c4bc7bde77d2474841f2bcaa","byte_start":4165,"byte_end":4225,"input_label":"terminal/terminal","decision":"keep","reason":"Never automatically choose interactive terminal auth."}],"original_row_count":4},{"id":"src/main/acp/acp-session-lifecycle.test.ts:118:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-session-lifecycle.test.ts","line":118,"end_line":144,"start":4809,"end":5690,"byte_start":4809,"byte_end":5690,"source":"['prompt', 'cancel', 'setMode', 'setModel', 'setConfigOption'] as const","source_sha256":"71e20b79f8d4bc7a42ac6b6965c553a650d2a55a4485a9c2692ff4afcc6fd809","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":118,"end_line":118,"start":4817,"end":4888,"byte_start":4817,"byte_end":4888},"binding":"it.each","resolution":[],"enclosing_case":{"line":118,"title":"rejects %s before start through its promise"},"affected_case_lines":[118],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":118,"end_line":118,"start":4818,"end":4826,"source":"'prompt'","value":{"kind":"string","value":"prompt"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"3396a3baa6ad6a55297081068ef35e69467d14c50598df7df07c7da00d69af1c","byte_start":4818,"byte_end":4826,"input_label":"prompt","decision":"keep","reason":"Pre-start prompt rejects via Promise without a synchronous throw."},{"index":2,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":118,"end_line":118,"start":4828,"end":4836,"source":"'cancel'","value":{"kind":"string","value":"cancel"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"63847afb1c96124415b20eb865ae539b932ccecf19162c2b452b7069eccc7511","byte_start":4828,"byte_end":4836,"input_label":"cancel","decision":"keep","reason":"Pre-start cancel rejects via Promise without a synchronous throw."},{"index":3,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":118,"end_line":118,"start":4838,"end":4847,"source":"'setMode'","value":{"kind":"string","value":"setMode"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"6b122a1a33d754ee029d8d28e52410bd05732b8648e30166aadbef481f286f25","byte_start":4838,"byte_end":4847,"input_label":"setMode","decision":"keep","reason":"Pre-start setMode rejects via Promise without a synchronous throw."},{"index":4,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":118,"end_line":118,"start":4849,"end":4859,"source":"'setModel'","value":{"kind":"string","value":"setModel"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"0eb39f5407a4386e364ee61e24a4b8085318f3d8e2139a31c29dc72c216da6dd","byte_start":4849,"byte_end":4859,"input_label":"setModel","decision":"keep","reason":"Pre-start setModel rejects via Promise without a synchronous throw."},{"index":5,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":118,"end_line":118,"start":4861,"end":4878,"source":"'setConfigOption'","value":{"kind":"string","value":"setConfigOption"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"0ccac0997e13a1b4b1c4cddf69076d907f84119158098d20b032e6311d3c4229","byte_start":4861,"byte_end":4878,"input_label":"setConfigOption","decision":"keep","reason":"Pre-start setConfigOption rejects via Promise without a synchronous throw."}],"original_row_count":5},{"id":"src/main/acp/acp-session-lifecycle.test.ts:172:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-session-lifecycle.test.ts","line":172,"end_line":181,"start":6814,"end":7278,"byte_start":6814,"byte_end":7278,"source":"[{ code: 'E1', message: 'boom' }, { code: -1, message: null }, null]","source_sha256":"4be845feb78938b13b113d0261c8959f5f6227ee0564a352e3828fc0cfda6a5d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":172,"end_line":172,"start":6822,"end":6890,"byte_start":6822,"byte_end":6890},"binding":"it.each","resolution":[],"enclosing_case":{"line":172,"title":"rejects a malformed error reply immediately with its raw error: %j"},"affected_case_lines":[172],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":172,"end_line":172,"start":6823,"end":6854,"source":"{ code: 'E1', message: 'boom' }","value":{"kind":"object","value":[{"key":"code","value":{"kind":"string","value":"E1"}},{"key":"message","value":{"kind":"string","value":"boom"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"0808343072bf6849586a2f30408553c81794ed4fdfaff0bc7a78a7834bec67a5","byte_start":6823,"byte_end":6854,"input_label":"code string E1","decision":"keep","reason":"Malformed error code rejects retaining raw envelope."},{"index":2,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":172,"end_line":172,"start":6856,"end":6883,"source":"{ code: -1, message: null }","value":{"kind":"object","value":[{"key":"code","value":{"kind":"source-expression","source":"-1"}},{"key":"message","value":{"kind":"null","value":null}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"be24f4b7e57f7e5085725ad411177c8b6ccda9e29056fa98e8acf7059a2dc54a","byte_start":6856,"byte_end":6883,"input_label":"message null","decision":"keep","reason":"Malformed error text rejects retaining raw envelope."},{"index":3,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":172,"end_line":172,"start":6885,"end":6889,"source":"null","value":{"kind":"null","value":null},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"74234e98afe7498fb5daf1f36ac2d78acc339464f950703b8c019892f982b90b","byte_start":6885,"byte_end":6889,"input_label":"null","decision":"keep","reason":"Null error rejects retaining raw envelope."}],"original_row_count":3},{"id":"src/main/acp/acp-session-lifecycle.test.ts:324:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-session-lifecycle.test.ts","line":324,"end_line":356,"start":13419,"end":14697,"byte_start":13419,"byte_end":14697,"source":"['answer', 'close'] as const","source_sha256":"3ffde733f259326689803725e8caa925e0730e84e9a9a2f7bb5df2bf780b88a2","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-session-lifecycle.test.ts","line":324,"end_line":324,"start":13427,"end":13455,"byte_start":13427,"byte_end":13455},"binding":"it.each","resolution":[],"enclosing_case":{"line":324,"title":"keeps a permission pending after prompt completion until caller %s"},"affected_case_lines":[324],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":324,"end_line":324,"start":13428,"end":13436,"source":"'answer'","value":{"kind":"string","value":"answer"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"1ab1bd16fa3a3158e69098f5ef6873750ca9e2232bf92d9e4154dcf6167a9cab","byte_start":13428,"byte_end":13436,"input_label":"answer","decision":"keep","reason":"Prompt completion leaves permission answerable; late user decision travels over wire."},{"index":2,"path":"src/main/acp/acp-session-lifecycle.test.ts","line":324,"end_line":324,"start":13438,"end":13445,"source":"'close'","value":{"kind":"string","value":"close"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"dd4a67fe900f81aebb0fe03336c561063b9be657fd70cde682edf8d33ee8b43a","byte_start":13438,"byte_end":13445,"input_label":"close","decision":"keep","reason":"Prompt completion leaves permission pending until explicit runtime close aborts it."}],"original_row_count":2}],"body_support_cleanup_loops":[],"implemented_changes":[{"proposal_id":"acp-main-0001-012","summary":"Entered/release gates hold both vendor save handlers across cancel/withdraw; no replies precede release and each eventual response appears once.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/acp-json-rpc-peer.ts","src/main/acp/acp-session-runtime.ts","src/main/acp/acp-session-setup.ts","src/main/acp/acp-response-settlement.ts"],"evidence_sha256":{"src/main/acp/acp-json-rpc-peer.ts":"30589fd87b6e376ce767a88edf3c4352ba0558dc367731f6d9bc2dd003ff21e0","src/main/acp/acp-session-runtime.ts":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b","src/main/acp/acp-session-setup.ts":"96de2c002e8dcbc126d30b52abbfc43b7ab640745a558fcdd892806dd282af39","src/main/acp/acp-response-settlement.ts":"99d1ffabb3e804614650b720f88ca8047ced63024ab80c907932619f928722d2"},"evidence_source_sha256":{"src/main/acp/acp-json-rpc-peer.ts":"30589fd87b6e376ce767a88edf3c4352ba0558dc367731f6d9bc2dd003ff21e0","src/main/acp/acp-session-runtime.ts":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b","src/main/acp/acp-session-setup.ts":"96de2c002e8dcbc126d30b52abbfc43b7ab640745a558fcdd892806dd282af39","src/main/acp/acp-response-settlement.ts":"99d1ffabb3e804614650b720f88ca8047ced63024ab80c907932619f928722d2"},"original_evidence_detail":[{"path":"src/main/acp/acp-json-rpc-peer.ts","sha256":"30589fd87b6e376ce767a88edf3c4352ba0558dc367731f6d9bc2dd003ff21e0","lines":316,"read_state":"full_body_read"},{"path":"src/main/acp/acp-session-runtime.ts","sha256":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b","lines":323,"read_state":"full_body_read"},{"path":"src/main/acp/acp-session-setup.ts","sha256":"96de2c002e8dcbc126d30b52abbfc43b7ab640745a558fcdd892806dd282af39","lines":85,"read_state":"full_body_read"},{"path":"src/main/acp/acp-response-settlement.ts","sha256":"99d1ffabb3e804614650b720f88ca8047ced63024ab80c907932619f928722d2","lines":63,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"ACP caller-owned waits keeps permission requests open beyond two minutes and delivers the late user decision","status":"passed"},{"full_name":"ACP caller-owned waits lets a streaming turn run beyond thirty minutes and keeps the session usable","status":"passed"},{"full_name":"ACP caller-owned waits surfaces key authentication without choosing it for the caller","status":"passed"},{"full_name":"ACP caller-owned waits surfaces browser authentication without choosing it for the caller","status":"passed"},{"full_name":"ACP caller-owned waits surfaces default authentication without choosing it for the caller","status":"passed"},{"full_name":"ACP caller-owned waits surfaces terminal authentication without choosing it for the caller","status":"passed"},{"full_name":"ACP caller-owned waits rejects prompt before start through its promise","status":"passed"},{"full_name":"ACP caller-owned waits rejects cancel before start through its promise","status":"passed"},{"full_name":"ACP caller-owned waits rejects setMode before start through its promise","status":"passed"},{"full_name":"ACP caller-owned waits rejects setModel before start through its promise","status":"passed"},{"full_name":"ACP caller-owned waits rejects setConfigOption before start through its promise","status":"passed"},{"full_name":"ACP caller-owned waits answers a handled void vendor request with null","status":"passed"},{"full_name":"ACP caller-owned waits ignores duplicate incoming ids without answering the original request","status":"passed"},{"full_name":"ACP caller-owned waits rejects a malformed error reply immediately with its raw error: {\"code\":\"E1\",\"message\":\"boom\"}","status":"passed"},{"full_name":"ACP caller-owned waits rejects a malformed error reply immediately with its raw error: {\"code\":-1,\"message\":null}","status":"passed"},{"full_name":"ACP caller-owned waits rejects a malformed error reply immediately with its raw error: null","status":"passed"},{"full_name":"ACP caller-owned waits maps authentication-required and retries only the explicitly chosen advertised method once","status":"passed"},{"full_name":"ACP caller-owned waits rejects overflowing peer timeouts and supports an explicit unlimited wait","status":"passed"},{"full_name":"ACP caller-owned waits bounds each start step on its own, never by the peer default","status":"passed"},{"full_name":"ACP caller-owned waits lets request owners withdraw vendor hooks after cancel","status":"passed"},{"full_name":"ACP caller-owned waits keeps a handler answer that finishes saving after its owner withdraws requests","status":"passed"},{"full_name":"ACP caller-owned waits settles stream-level requests on close even if stdout stays open","status":"passed"},{"full_name":"ACP caller-owned waits keeps a permission pending after prompt completion until caller answer","status":"passed"},{"full_name":"ACP caller-owned waits keeps a permission pending after prompt completion until caller close","status":"passed"},{"full_name":"ACP caller-owned waits writes cancel independently of the agent settling the prompt with an error","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-session-notifications.test.ts","sha256":"99439a6976af2e8a302fff6423a0bd65ff1f81f9299724d892916de9a24ff1ee","reviewed_sha256":"99439a6976af2e8a302fff6423a0bd65ff1f81f9299724d892916de9a24ff1ee","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":18,"decision":"keep","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 4. Retained the reviewed behavioral coverage; final bytes match the pinned original.","declarations":4,"original_declarations":4,"final_declarations":4,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"implementation_status":"reviewed-unchanged","cases":[{"line":25,"end_line":60,"title":"delivers %s updates without losing their original fields (%j)","decision":"keep","reason":"Six updates exercise ordinary/future enum cases versus unknown discriminators/content; two deliveries survive while anomalous diagnostics publish once per runtime.","source_body_sha256":"c10a84abb50abea2d554b37c53c518cfb92fb5108035c265f3a0da970de11102","parameter_groups":[{"path":"src/main/acp/acp-session-notifications.test.ts","line":25,"source":"[\n ['known', { sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 'hi' } }],\n // Unfamiliar enum values stay typed: the generated enums are open.\n ['known', { sessionUpdate: 'tool_call', toolCallId: 't', title: 'Search', kind: 'web_search' }],\n ['known', { sessionUpdate: 'tool_call_update', toolCallId: 't', status: 'cancelled' }],\n [\n 'known',\n {\n sessionUpdate: 'plan',\n entries: [{ content: 'Ship', priority: 'urgent', status: 'blocked' }]\n }\n ],\n ['unrecognized', { sessionUpdate: 'vendor_usage', tokens: 1 }],\n [\n 'unrecognized',\n { sessionUpdate: 'agent_message_chunk', content: { type: 'reasoning_summary', text: 'x' } }\n ]\n ] as const","decision":"keep","reason":"","rows":[{"input":"known/agent_message_chunk","decision":"keep","reason":"Standard text shape is delivered typed."},{"input":"known/tool_call web_search","decision":"keep","reason":"Future tool kind is still known because enum is open."},{"input":"known/tool_call_update cancelled","decision":"keep","reason":"Future tool status stays typed."},{"input":"known/plan urgent blocked","decision":"keep","reason":"Future priority/status enums stay typed."},{"input":"unrecognized/vendor_usage","decision":"keep","reason":"Unknown update discriminator reaches tolerant event boundary."},{"input":"unrecognized/reasoning_summary content","decision":"keep","reason":"Unknown content discriminator reaches unrecognized boundary."}],"row_count":6}],"path":"src/main/acp/acp-session-notifications.test.ts","start":896,"end":2426,"byte_start":896,"byte_end":2426,"source":"it.each([\n ['known', { sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 'hi' } }],\n // Unfamiliar enum values stay typed: the generated enums are open.\n ['known', { sessionUpdate: 'tool_call', toolCallId: 't', title: 'Search', kind: 'web_search' }],\n ['known', { sessionUpdate: 'tool_call_update', toolCallId: 't', status: 'cancelled' }],\n [\n 'known',\n {\n sessionUpdate: 'plan',\n entries: [{ content: 'Ship', priority: 'urgent', status: 'blocked' }]\n }\n ],\n ['unrecognized', { sessionUpdate: 'vendor_usage', tokens: 1 }],\n [\n 'unrecognized',\n { sessionUpdate: 'agent_message_chunk', content: { type: 'reasoning_summary', text: 'x' } }\n ]\n ] as const)(\n 'delivers %s updates without losing their original fields (%j)',\n async (kind, update) => {\n const { agent, runtime, diagnostic } = fixture()\n const events: AcpSessionEvent[] = []\n runtime.subscribe((event) => events.push(event))\n await runtime.start({ cwd: '/runtime/project', mcpServers: [] })\n const notification = { sessionId: 'session-1', update, vendor: 'retained' }\n agent.notify('session/update', notification)\n agent.notify('session/update', notification)\n expect(events).toHaveLength(2)\n expect(events[0]).toEqual(\n kind === 'known'\n ? { kind, notification }\n : { kind, sessionId: 'session-1', raw: notification }\n )\n expect(diagnostic).toHaveBeenCalledTimes(kind === 'known' ? 0 : 1)\n }\n )","source_sha256":"c10a84abb50abea2d554b37c53c518cfb92fb5108035c265f3a0da970de11102","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-notifications.test.ts","line":25,"title":"delivers %s updates without losing their original fields (%j)","body_sha256":"c10a84abb50abea2d554b37c53c518cfb92fb5108035c265f3a0da970de11102"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-session-notifications.test.ts:25:parameter-table"]},{"line":62,"end_line":70,"title":"rejects only envelopes missing the session id or update discriminator","decision":"keep","reason":"Missing session id and missing update discriminator are both rejected without observer delivery.","source_body_sha256":"b2661c8d61f3c21d0b7da5902d6ad6c4ce5df012f80b090272e484a4f8a36afe","path":"src/main/acp/acp-session-notifications.test.ts","start":2430,"end":2890,"byte_start":2430,"byte_end":2890,"source":"it('rejects only envelopes missing the session id or update discriminator', async () => {\n const { agent, runtime } = fixture()\n const received = vi.fn()\n runtime.subscribe(received)\n await runtime.start({ cwd: '/runtime/project', mcpServers: [] })\n agent.notify('session/update', { update: { sessionUpdate: 'vendor' } })\n agent.notify('session/update', { sessionId: 'session-1', update: {} })\n expect(received).not.toHaveBeenCalled()\n })","source_sha256":"b2661c8d61f3c21d0b7da5902d6ad6c4ce5df012f80b090272e484a4f8a36afe","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-notifications.test.ts","line":62,"title":"rejects only envelopes missing the session id or update discriminator","body_sha256":"b2661c8d61f3c21d0b7da5902d6ad6c4ce5df012f80b090272e484a4f8a36afe"},"proposal_ids":[],"explicit_input_controls":[]},{"line":72,"end_line":84,"title":"preserves extra session fields and exposes legacy model state as typed data","decision":"keep","reason":"An actual parsed new-session reply preserves legacy model data and additive vendor fields.","source_body_sha256":"da1c5bdc67441a695ef8f586e99273d2318ec6157724d60d4ef75f771bd183d1","path":"src/main/acp/acp-session-notifications.test.ts","start":2894,"end":3494,"byte_start":2894,"byte_end":3494,"source":"it('preserves extra session fields and exposes legacy model state as typed data', async () => {\n const { agent, runtime } = fixture()\n const models = {\n currentModelId: 'model-1',\n availableModels: [{ modelId: 'model-1', name: 'Model one' }]\n }\n agent.on('session/new', (frame) =>\n agent.reply(frame, { sessionId: 'session-1', models, vendor: true })\n )\n const started = await runtime.start({ cwd: '/runtime/project', mcpServers: [] })\n expect(started.response.models?.availableModels[0].modelId).toBe('model-1')\n expect(started.response.vendor).toBe(true)\n })","source_sha256":"da1c5bdc67441a695ef8f586e99273d2318ec6157724d60d4ef75f771bd183d1","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-notifications.test.ts","line":72,"title":"preserves extra session fields and exposes legacy model state as typed data","body_sha256":"da1c5bdc67441a695ef8f586e99273d2318ec6157724d60d4ef75f771bd183d1"},"proposal_ids":[],"explicit_input_controls":[]},{"line":85,"end_line":105,"title":"delivers updates even if diagnostic and earlier event callbacks throw","decision":"keep","reason":"Throwing diagnostics and earlier update subscribers cannot prevent delivery to a later subscriber.","source_body_sha256":"464aea7e65c88dac8188a8b79e4d7994efe54d04745d09b93ffeed9bb29d110e","path":"src/main/acp/acp-session-notifications.test.ts","start":3497,"end":4233,"byte_start":3497,"byte_end":4233,"source":"it('delivers updates even if diagnostic and earlier event callbacks throw', async () => {\n const agent = new AcpScriptedAgent()\n const runtime = new AcpSessionRuntime(agent.stdout, agent.stdin, {\n onDiagnostic: () => {\n throw new Error('Diagnostic failed')\n }\n })\n opened.push(agent, runtime)\n runtime.subscribe(() => {\n throw new Error('Listener failed')\n })\n const received = vi.fn()\n runtime.subscribe(received)\n const notification = { sessionId: 'session-1', update: { sessionUpdate: 'vendor' } }\n agent.notify('session/update', notification)\n expect(received).toHaveBeenCalledWith({\n kind: 'unrecognized',\n sessionId: 'session-1',\n raw: notification\n })\n })","source_sha256":"464aea7e65c88dac8188a8b79e4d7994efe54d04745d09b93ffeed9bb29d110e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-notifications.test.ts","line":85,"title":"delivers updates even if diagnostic and earlier event callbacks throw","body_sha256":"464aea7e65c88dac8188a8b79e4d7994efe54d04745d09b93ffeed9bb29d110e"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-session-notifications.test.ts:25:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-session-notifications.test.ts","line":25,"end_line":60,"start":896,"end":2426,"byte_start":896,"byte_end":2426,"source":"[\n ['known', { sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 'hi' } }],\n // Unfamiliar enum values stay typed: the generated enums are open.\n ['known', { sessionUpdate: 'tool_call', toolCallId: 't', title: 'Search', kind: 'web_search' }],\n ['known', { sessionUpdate: 'tool_call_update', toolCallId: 't', status: 'cancelled' }],\n [\n 'known',\n {\n sessionUpdate: 'plan',\n entries: [{ content: 'Ship', priority: 'urgent', status: 'blocked' }]\n }\n ],\n ['unrecognized', { sessionUpdate: 'vendor_usage', tokens: 1 }],\n [\n 'unrecognized',\n { sessionUpdate: 'agent_message_chunk', content: { type: 'reasoning_summary', text: 'x' } }\n ]\n ] as const","source_sha256":"2cc914533b80793a38fcd23820d10f6cfdbd9d950e4c9c3bf53ffdea6bdc718c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-session-notifications.test.ts","line":25,"end_line":42,"start":904,"end":1632,"byte_start":904,"byte_end":1632},"binding":"it.each","resolution":[],"enclosing_case":{"line":25,"title":"delivers %s updates without losing their original fields (%j)"},"affected_case_lines":[25],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-session-notifications.test.ts","line":26,"end_line":26,"start":910,"end":1000,"source":"['known', { sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 'hi' } }]","value":{"kind":"array","value":[{"kind":"string","value":"known"},{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"agent_message_chunk"}},{"key":"content","value":{"kind":"object","value":[{"key":"type","value":{"kind":"string","value":"text"}},{"key":"text","value":{"kind":"string","value":"hi"}}]}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"04175a4384a7874bfd20aaf361459c4ec2516c335fc15569e4c4a8edf44de579","byte_start":910,"byte_end":1000,"input_label":"known/agent_message_chunk","decision":"keep","reason":"Standard text shape is delivered typed."},{"index":2,"path":"src/main/acp/acp-session-notifications.test.ts","line":28,"end_line":28,"start":1078,"end":1173,"source":"['known', { sessionUpdate: 'tool_call', toolCallId: 't', title: 'Search', kind: 'web_search' }]","value":{"kind":"array","value":[{"kind":"string","value":"known"},{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"tool_call"}},{"key":"toolCallId","value":{"kind":"string","value":"t"}},{"key":"title","value":{"kind":"string","value":"Search"}},{"key":"kind","value":{"kind":"string","value":"web_search"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e32cce398b9b6f60690a66e276a071d2eaac024b18b33a62f614fcfb5162aa2a","byte_start":1078,"byte_end":1173,"input_label":"known/tool_call web_search","decision":"keep","reason":"Future tool kind is still known because enum is open."},{"index":3,"path":"src/main/acp/acp-session-notifications.test.ts","line":29,"end_line":29,"start":1179,"end":1265,"source":"['known', { sessionUpdate: 'tool_call_update', toolCallId: 't', status: 'cancelled' }]","value":{"kind":"array","value":[{"kind":"string","value":"known"},{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"tool_call_update"}},{"key":"toolCallId","value":{"kind":"string","value":"t"}},{"key":"status","value":{"kind":"string","value":"cancelled"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"f6f90fefc36459f857b81e213374a41ff136001e402df9cde89f339c3f1d428e","byte_start":1179,"byte_end":1265,"input_label":"known/tool_call_update cancelled","decision":"keep","reason":"Future tool status stays typed."},{"index":4,"path":"src/main/acp/acp-session-notifications.test.ts","line":30,"end_line":36,"start":1271,"end":1418,"source":"[\n 'known',\n {\n sessionUpdate: 'plan',\n entries: [{ content: 'Ship', priority: 'urgent', status: 'blocked' }]\n }\n ]","value":{"kind":"array","value":[{"kind":"string","value":"known"},{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"plan"}},{"key":"entries","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"content","value":{"kind":"string","value":"Ship"}},{"key":"priority","value":{"kind":"string","value":"urgent"}},{"key":"status","value":{"kind":"string","value":"blocked"}}]}]}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"2d6476804d66a6a90cbb07297848ea43c171973570c50308aaf081e992f11bfd","byte_start":1271,"byte_end":1418,"input_label":"known/plan urgent blocked","decision":"keep","reason":"Future priority/status enums stay typed."},{"index":5,"path":"src/main/acp/acp-session-notifications.test.ts","line":37,"end_line":37,"start":1424,"end":1486,"source":"['unrecognized', { sessionUpdate: 'vendor_usage', tokens: 1 }]","value":{"kind":"array","value":[{"kind":"string","value":"unrecognized"},{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"vendor_usage"}},{"key":"tokens","value":{"kind":"number","value":1}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"53ac05b451bb9ac73632dc49c2477e9e680faee36728fed79c0f5c61fd43fe2a","byte_start":1424,"byte_end":1486,"input_label":"unrecognized/vendor_usage","decision":"keep","reason":"Unknown update discriminator reaches tolerant event boundary."},{"index":6,"path":"src/main/acp/acp-session-notifications.test.ts","line":38,"end_line":41,"start":1492,"end":1619,"source":"[\n 'unrecognized',\n { sessionUpdate: 'agent_message_chunk', content: { type: 'reasoning_summary', text: 'x' } }\n ]","value":{"kind":"array","value":[{"kind":"string","value":"unrecognized"},{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"agent_message_chunk"}},{"key":"content","value":{"kind":"object","value":[{"key":"type","value":{"kind":"string","value":"reasoning_summary"}},{"key":"text","value":{"kind":"string","value":"x"}}]}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"4f36a7549b8afcc60547963d4895e358bb3660de5f9a62f7ddb80172748783cd","byte_start":1492,"byte_end":1619,"input_label":"unrecognized/reasoning_summary content","decision":"keep","reason":"Unknown content discriminator reaches unrecognized boundary."}],"original_row_count":6}],"parameter_groups":[{"id":"src/main/acp/acp-session-notifications.test.ts:25:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-session-notifications.test.ts","line":25,"end_line":60,"start":896,"end":2426,"byte_start":896,"byte_end":2426,"source":"[\n ['known', { sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 'hi' } }],\n // Unfamiliar enum values stay typed: the generated enums are open.\n ['known', { sessionUpdate: 'tool_call', toolCallId: 't', title: 'Search', kind: 'web_search' }],\n ['known', { sessionUpdate: 'tool_call_update', toolCallId: 't', status: 'cancelled' }],\n [\n 'known',\n {\n sessionUpdate: 'plan',\n entries: [{ content: 'Ship', priority: 'urgent', status: 'blocked' }]\n }\n ],\n ['unrecognized', { sessionUpdate: 'vendor_usage', tokens: 1 }],\n [\n 'unrecognized',\n { sessionUpdate: 'agent_message_chunk', content: { type: 'reasoning_summary', text: 'x' } }\n ]\n ] as const","source_sha256":"2cc914533b80793a38fcd23820d10f6cfdbd9d950e4c9c3bf53ffdea6bdc718c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-session-notifications.test.ts","line":25,"end_line":42,"start":904,"end":1632,"byte_start":904,"byte_end":1632},"binding":"it.each","resolution":[],"enclosing_case":{"line":25,"title":"delivers %s updates without losing their original fields (%j)"},"affected_case_lines":[25],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-session-notifications.test.ts","line":26,"end_line":26,"start":910,"end":1000,"source":"['known', { sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 'hi' } }]","value":{"kind":"array","value":[{"kind":"string","value":"known"},{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"agent_message_chunk"}},{"key":"content","value":{"kind":"object","value":[{"key":"type","value":{"kind":"string","value":"text"}},{"key":"text","value":{"kind":"string","value":"hi"}}]}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"04175a4384a7874bfd20aaf361459c4ec2516c335fc15569e4c4a8edf44de579","byte_start":910,"byte_end":1000,"input_label":"known/agent_message_chunk","decision":"keep","reason":"Standard text shape is delivered typed."},{"index":2,"path":"src/main/acp/acp-session-notifications.test.ts","line":28,"end_line":28,"start":1078,"end":1173,"source":"['known', { sessionUpdate: 'tool_call', toolCallId: 't', title: 'Search', kind: 'web_search' }]","value":{"kind":"array","value":[{"kind":"string","value":"known"},{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"tool_call"}},{"key":"toolCallId","value":{"kind":"string","value":"t"}},{"key":"title","value":{"kind":"string","value":"Search"}},{"key":"kind","value":{"kind":"string","value":"web_search"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e32cce398b9b6f60690a66e276a071d2eaac024b18b33a62f614fcfb5162aa2a","byte_start":1078,"byte_end":1173,"input_label":"known/tool_call web_search","decision":"keep","reason":"Future tool kind is still known because enum is open."},{"index":3,"path":"src/main/acp/acp-session-notifications.test.ts","line":29,"end_line":29,"start":1179,"end":1265,"source":"['known', { sessionUpdate: 'tool_call_update', toolCallId: 't', status: 'cancelled' }]","value":{"kind":"array","value":[{"kind":"string","value":"known"},{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"tool_call_update"}},{"key":"toolCallId","value":{"kind":"string","value":"t"}},{"key":"status","value":{"kind":"string","value":"cancelled"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"f6f90fefc36459f857b81e213374a41ff136001e402df9cde89f339c3f1d428e","byte_start":1179,"byte_end":1265,"input_label":"known/tool_call_update cancelled","decision":"keep","reason":"Future tool status stays typed."},{"index":4,"path":"src/main/acp/acp-session-notifications.test.ts","line":30,"end_line":36,"start":1271,"end":1418,"source":"[\n 'known',\n {\n sessionUpdate: 'plan',\n entries: [{ content: 'Ship', priority: 'urgent', status: 'blocked' }]\n }\n ]","value":{"kind":"array","value":[{"kind":"string","value":"known"},{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"plan"}},{"key":"entries","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"content","value":{"kind":"string","value":"Ship"}},{"key":"priority","value":{"kind":"string","value":"urgent"}},{"key":"status","value":{"kind":"string","value":"blocked"}}]}]}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"2d6476804d66a6a90cbb07297848ea43c171973570c50308aaf081e992f11bfd","byte_start":1271,"byte_end":1418,"input_label":"known/plan urgent blocked","decision":"keep","reason":"Future priority/status enums stay typed."},{"index":5,"path":"src/main/acp/acp-session-notifications.test.ts","line":37,"end_line":37,"start":1424,"end":1486,"source":"['unrecognized', { sessionUpdate: 'vendor_usage', tokens: 1 }]","value":{"kind":"array","value":[{"kind":"string","value":"unrecognized"},{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"vendor_usage"}},{"key":"tokens","value":{"kind":"number","value":1}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"53ac05b451bb9ac73632dc49c2477e9e680faee36728fed79c0f5c61fd43fe2a","byte_start":1424,"byte_end":1486,"input_label":"unrecognized/vendor_usage","decision":"keep","reason":"Unknown update discriminator reaches tolerant event boundary."},{"index":6,"path":"src/main/acp/acp-session-notifications.test.ts","line":38,"end_line":41,"start":1492,"end":1619,"source":"[\n 'unrecognized',\n { sessionUpdate: 'agent_message_chunk', content: { type: 'reasoning_summary', text: 'x' } }\n ]","value":{"kind":"array","value":[{"kind":"string","value":"unrecognized"},{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"agent_message_chunk"}},{"key":"content","value":{"kind":"object","value":[{"key":"type","value":{"kind":"string","value":"reasoning_summary"}},{"key":"text","value":{"kind":"string","value":"x"}}]}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"4f36a7549b8afcc60547963d4895e358bb3660de5f9a62f7ddb80172748783cd","byte_start":1492,"byte_end":1619,"input_label":"unrecognized/reasoning_summary content","decision":"keep","reason":"Unknown content discriminator reaches unrecognized boundary."}],"original_row_count":6}],"body_support_cleanup_loops":[],"implemented_changes":[],"evidence":["src/main/acp/acp-session-runtime.ts","src/main/acp/acp-session-events.ts"],"evidence_sha256":{"src/main/acp/acp-session-runtime.ts":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b","src/main/acp/acp-session-events.ts":"0512e6bc51f71faca5f347f5b42e70036facc7f40219c5ab122db2e292ae9a0a"},"evidence_source_sha256":{"src/main/acp/acp-session-runtime.ts":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b","src/main/acp/acp-session-events.ts":"0512e6bc51f71faca5f347f5b42e70036facc7f40219c5ab122db2e292ae9a0a"},"original_evidence_detail":[{"path":"src/main/acp/acp-session-runtime.ts","sha256":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b","lines":323,"read_state":"full_body_read"},{"path":"src/main/acp/acp-session-events.ts","sha256":"0512e6bc51f71faca5f347f5b42e70036facc7f40219c5ab122db2e292ae9a0a","lines":27,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"ACP session update compatibility delivers known updates without losing their original fields ({\"sessionUpdate\":\"agent_message_chunk\",\"content\":{\"type\":\"text\",\"text\":\"hi\"}})","status":"passed"},{"full_name":"ACP session update compatibility delivers known updates without losing their original fields ({\"sessionUpdate\":\"tool_call\",\"toolCallId\":\"t\",\"title\":\"Search\",\"kind\":\"web_search\"})","status":"passed"},{"full_name":"ACP session update compatibility delivers known updates without losing their original fields ({\"sessionUpdate\":\"tool_call_update\",\"toolCallId\":\"t\",\"status\":\"cancelled\"})","status":"passed"},{"full_name":"ACP session update compatibility delivers known updates without losing their original fields ({\"sessionUpdate\":\"plan\",\"entries\":[{\"content\":\"Ship\",\"priority\":\"urgent\",\"status\":\"blocked\"}]})","status":"passed"},{"full_name":"ACP session update compatibility delivers unrecognized updates without losing their original fields ({\"sessionUpdate\":\"vendor_usage\",\"tokens\":1})","status":"passed"},{"full_name":"ACP session update compatibility delivers unrecognized updates without losing their original fields ({\"sessionUpdate\":\"agent_message_chunk\",\"content\":{\"type\":\"reasoning_summary\",\"text\":\"x\"}})","status":"passed"},{"full_name":"ACP session update compatibility rejects only envelopes missing the session id or update discriminator","status":"passed"},{"full_name":"ACP session update compatibility preserves extra session fields and exposes legacy model state as typed data","status":"passed"},{"full_name":"ACP session update compatibility delivers updates even if diagnostic and earlier event callbacks throw","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-session-runtime.test.ts","sha256":"968834fb417f523022d5631f99574adb232066811fa0556f3937834d3eae742f","reviewed_sha256":"d1e525e52cb7df71f2fd3632e4740c0e7078b7acdea6a6442db67d59120ae87e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":19,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 14, remove 1, fix 1. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":16,"original_declarations":16,"final_declarations":15,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":45,"end_line":59,"title":"uses raw underscored extension methods and bounds control requests without closing the session","decision":"keep","reason":"Underscored vendor control reaches the peer and times out under fake time without closing its session; missing underscore is refused by the real API guard.","source_body_sha256":"6e7367d3ca88e26aa8774bd78e95f47aa3409b6debfd46ddd9cd8d7ad10c7cbf","path":"src/main/acp/acp-session-runtime.test.ts","start":1808,"end":2581,"byte_start":1808,"byte_end":2581,"source":"it('uses raw underscored extension methods and bounds control requests without closing the session', async () => {\n const { runtime, agent } = fixture()\n await runtime.initialize()\n await runtime.start(startOptions)\n agent.on('_x.ai/subagent/cancel', (frame) => {\n expect(frame.params).toEqual({ subagentId: 'child' })\n })\n vi.useFakeTimers({ toFake: ['setTimeout', 'clearTimeout'] })\n const call = runtime.requestExtension('_x.ai/subagent/cancel', { subagentId: 'child' })\n const rejected = expect(call).rejects.toThrow(/timed out|timeout/i)\n await vi.advanceTimersByTimeAsync(30_000)\n await rejected\n expect(runtime.closed).toBe(false)\n expect(() => runtime.requestExtension('x.ai/subagent/cancel', {})).toThrow('underscore')\n })","source_sha256":"6e7367d3ca88e26aa8774bd78e95f47aa3409b6debfd46ddd9cd8d7ad10c7cbf","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-runtime.test.ts","line":45,"title":"uses raw underscored extension methods and bounds control requests without closing the session","body_sha256":"6e7367d3ca88e26aa8774bd78e95f47aa3409b6debfd46ddd9cd8d7ad10c7cbf"},"proposal_ids":[],"explicit_input_controls":[]},{"line":60,"end_line":103,"title":"initializes once, starts a session, streams typed updates, and completes the turn","decision":"keep","reason":"Concurrent initialize coalesces, new session fields serialize correctly, eleven real update variants stream and a prompt completes; preserve this API-level integration case.","source_body_sha256":"0a51ee15c102ade70e8c7f855fe0aba48f1e43ba5dfea534285bd0f0a80d2912","body_loops":[{"path":"src/main/acp/acp-session-runtime.test.ts","line":81,"source":"for (const update of updates) ","classification":"input workload","decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."}],"path":"src/main/acp/acp-session-runtime.test.ts","start":2584,"end":4934,"byte_start":2584,"byte_end":4934,"source":"it('initializes once, starts a session, streams typed updates, and completes the turn', async () => {\n const { runtime, agent } = fixture()\n const events: AcpSessionEvent[] = []\n const unsubscribe = runtime.subscribe((event) => events.push(event))\n const updates = [\n { sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 'Hello' } },\n { sessionUpdate: 'agent_thought_chunk', content: { type: 'text', text: 'Thinking' } },\n { sessionUpdate: 'user_message_chunk', content: { type: 'text', text: 'hello' } },\n { sessionUpdate: 'tool_call', toolCallId: 'tool-1', title: 'Read file' },\n { sessionUpdate: 'tool_call_update', toolCallId: 'tool-1', status: 'completed' },\n {\n sessionUpdate: 'plan',\n entries: [{ content: 'Read', priority: 'medium', status: 'completed' }]\n },\n { sessionUpdate: 'usage_update', used: 12, size: 100 },\n { sessionUpdate: 'available_commands_update', availableCommands: [] },\n { sessionUpdate: 'current_mode_update', currentModeId: 'plan' },\n { sessionUpdate: 'config_option_update', configOptions: [] },\n { sessionUpdate: 'session_info_update', title: 'Test session' }\n ]\n agent.on('session/prompt', (frame) => {\n for (const update of updates) {\n agent.notify('session/update', { sessionId: 'session-1', update })\n }\n agent.reply(frame, { stopReason: 'end_turn' })\n })\n await Promise.all([runtime.initialize(), runtime.initialize()])\n expect(await runtime.start(startOptions)).toMatchObject({ kind: 'new', sessionId: 'session-1' })\n expect(await runtime.prompt([...textPrompt])).toEqual({ stopReason: 'end_turn' })\n expect(\n events.map((event) => (event.kind === 'known' ? event.notification.update : event.raw.update))\n ).toEqual(updates)\n expect(agent.frames.filter((frame) => frame.method === 'initialize')).toHaveLength(1)\n expect(agent.frames[0].params).toEqual({\n protocolVersion: 1,\n clientCapabilities: { fs: { readTextFile: false, writeTextFile: false }, terminal: false }\n })\n expect(agent.frames.find((frame) => frame.method === 'session/new')?.params).toEqual(\n startOptions\n )\n unsubscribe()\n agent.notify('session/update', { sessionId: 'session-1', update: updates[0] })\n expect(events).toHaveLength(updates.length)\n })","source_sha256":"0a51ee15c102ade70e8c7f855fe0aba48f1e43ba5dfea534285bd0f0a80d2912","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-runtime.test.ts","line":60,"title":"initializes once, starts a session, streams typed updates, and completes the turn","body_sha256":"0a51ee15c102ade70e8c7f855fe0aba48f1e43ba5dfea534285bd0f0a80d2912"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-session-runtime.test.ts:81:loop"]},{"line":105,"end_line":126,"title":"selects supported activation (%j, %s)","decision":"keep","reason":"Five capability/preference combinations choose real load/resume wire methods and retain the requested old session id.","source_body_sha256":"79f9d56e84acfa67071e2ac87e5c0cc799109951b8450e792f12ac3b5d323cd9","parameter_groups":[{"path":"src/main/acp/acp-session-runtime.test.ts","line":105,"source":"[\n [{ loadSession: true }, undefined, 'load'],\n [{ sessionCapabilities: { resume: {} } }, undefined, 'resume'],\n [{ loadSession: true, sessionCapabilities: { resume: {} } }, undefined, 'load'],\n [{ loadSession: true, sessionCapabilities: { resume: {} } }, 'resume', 'resume'],\n [{ loadSession: true, sessionCapabilities: { resume: null } }, 'resume', 'load']\n ] as const","decision":"keep","reason":"","rows":[{"input":"loadSession, no preference","decision":"keep","reason":"Load route when only load is supported."},{"input":"resume only","decision":"keep","reason":"Resume route when only resume is supported."},{"input":"load+resume, default","decision":"keep","reason":"Default route prefers load."},{"input":"load+resume, resume preference","decision":"keep","reason":"Explicit preference chooses supported resume."},{"input":"load+resume=null, resume preference","decision":"keep","reason":"Null capability does not establish resume; fallback load."}],"row_count":5}],"path":"src/main/acp/acp-session-runtime.test.ts","start":4938,"end":5861,"byte_start":4938,"byte_end":5861,"source":"it.each([\n [{ loadSession: true }, undefined, 'load'],\n [{ sessionCapabilities: { resume: {} } }, undefined, 'resume'],\n [{ loadSession: true, sessionCapabilities: { resume: {} } }, undefined, 'load'],\n [{ loadSession: true, sessionCapabilities: { resume: {} } }, 'resume', 'resume'],\n [{ loadSession: true, sessionCapabilities: { resume: null } }, 'resume', 'load']\n ] as const)(\n 'selects supported activation (%j, %s)',\n async (capabilities, preference, expected) => {\n const { runtime, agent } = fixture(capabilities)\n const result = await runtime.start({\n ...startOptions,\n sessionId: 'old',\n resumePreference: preference\n })\n expect(result).toMatchObject({ kind: expected, sessionId: 'old' })\n expect(agent.frames.at(-1)).toMatchObject({\n method: `session/${expected}`,\n params: { ...startOptions, sessionId: 'old' }\n })\n }\n )","source_sha256":"79f9d56e84acfa67071e2ac87e5c0cc799109951b8450e792f12ac3b5d323cd9","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-runtime.test.ts","line":105,"title":"selects supported activation (%j, %s)","body_sha256":"79f9d56e84acfa67071e2ac87e5c0cc799109951b8450e792f12ac3b5d323cd9"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-session-runtime.test.ts:105:parameter-table"]},{"line":128,"end_line":134,"title":"refuses unsupported restoration without silently creating a different session","decision":"keep","reason":"Unsupported restoration rejects before any session/new fallback is sent.","source_body_sha256":"65bf98278242d13020b9acb5c0ecb2783ddfe13b1f1c6a138ea322771e517be9","path":"src/main/acp/acp-session-runtime.test.ts","start":5865,"end":6248,"byte_start":5865,"byte_end":6248,"source":"it('refuses unsupported restoration without silently creating a different session', async () => {\n const { runtime, agent } = fixture({ sessionCapabilities: { resume: null } })\n await expect(runtime.start({ ...startOptions, sessionId: 'old' })).rejects.toMatchObject({\n code: -32601\n })\n expect(agent.frames.map((frame) => frame.method)).toEqual(['initialize'])\n })","source_sha256":"65bf98278242d13020b9acb5c0ecb2783ddfe13b1f1c6a138ea322771e517be9","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-runtime.test.ts","line":128,"title":"refuses unsupported restoration without silently creating a different session","body_sha256":"65bf98278242d13020b9acb5c0ecb2783ddfe13b1f1c6a138ea322771e517be9"},"proposal_ids":[],"explicit_input_controls":[]},{"line":136,"end_line":173,"title":"round-trips permission and vendor requests while prompt is pending","decision":"keep","reason":"Permission and supported/unsupported vendor requests round-trip actual JSON-RPC responses during a held prompt.","source_body_sha256":"05d655b971f2d69eecb0ac2eb5e66152731e89380322208a7e56a05ee6331a42","path":"src/main/acp/acp-session-runtime.test.ts","start":6252,"end":7687,"byte_start":6252,"byte_end":7687,"source":"it('round-trips permission and vendor requests while prompt is pending', async () => {\n const permitted = deferred()\n const { runtime, agent } = fixture(\n {},\n {\n onPermission: (request) => {\n expect(request.toolCall.toolCallId).toBe('tool-1')\n return { outcome: { outcome: 'selected', optionId: 'allow' } }\n },\n onRequest: (method, params) =>\n method === '_vendor/question'\n ? { answer: params }\n : (() => {\n throw new AcpRpcError(-32601, 'Unknown method')\n })()\n }\n )\n agent.on('session/prompt', (frame) => {\n void agent.request('agent-id', 'session/request_permission', permission).then((response) => {\n permitted.resolve(response.result)\n agent.reply(frame, { stopReason: 'end_turn' })\n })\n })\n await runtime.start(startOptions)\n const prompt = runtime.prompt([...textPrompt])\n expect(await permitted.promise).toEqual({ outcome: { outcome: 'selected', optionId: 'allow' } })\n await prompt\n expect(await agent.request(1, '_vendor/question', 'yes')).toMatchObject({\n id: 1,\n result: { answer: 'yes' }\n })\n expect(await agent.request('unknown', '_vendor/unknown', {})).toMatchObject({\n error: { code: -32601 }\n })\n expect(await agent.request('fs', 'fs/read_text_file', {})).toMatchObject({\n error: { code: -32601 }\n })\n })","source_sha256":"05d655b971f2d69eecb0ac2eb5e66152731e89380322208a7e56a05ee6331a42","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-runtime.test.ts","line":136,"title":"round-trips permission and vendor requests while prompt is pending","body_sha256":"05d655b971f2d69eecb0ac2eb5e66152731e89380322208a7e56a05ee6331a42"},"proposal_ids":[],"explicit_input_controls":[]},{"line":175,"end_line":204,"title":"leaves open and late permission decisions with their owner after cancel","decision":"keep","reason":"Cancel leaves permission ownership intact, and both open/late decisions can still return while the turn later settles.","source_body_sha256":"89f4a3ecf8e1731ffdfa69ed8e80aaef326c286491a18cba720a17e05dfac820","path":"src/main/acp/acp-session-runtime.test.ts","start":7691,"end":8951,"byte_start":7691,"byte_end":8951,"source":"it('leaves open and late permission decisions with their owner after cancel', async () => {\n const requested = deferred()\n const decision = deferred()\n const { runtime, agent } = fixture(\n {},\n {\n onPermission: (_request, context) => {\n requested.resolve(context.signal)\n return decision.promise\n }\n }\n )\n agent.on('session/prompt', () => {})\n await runtime.start(startOptions)\n const prompt = runtime.prompt([...textPrompt])\n const open = agent.request('open', 'session/request_permission', permission)\n const signal = await requested.promise\n await runtime.cancel()\n expect(signal.aborted).toBe(false)\n const late = agent.request('late', 'session/request_permission', permission)\n decision.resolve({ outcome: { outcome: 'cancelled' } })\n expect(await open).toMatchObject({ result: { outcome: { outcome: 'cancelled' } } })\n expect(await late).toMatchObject({ result: { outcome: { outcome: 'cancelled' } } })\n const frame = agent.frames.find((frame) => frame.method === 'session/prompt')\n if (!frame) {\n throw new Error('missing prompt')\n }\n agent.reply(frame, { stopReason: 'cancelled' })\n await prompt\n })","source_sha256":"89f4a3ecf8e1731ffdfa69ed8e80aaef326c286491a18cba720a17e05dfac820","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-runtime.test.ts","line":175,"title":"leaves open and late permission decisions with their owner after cancel","body_sha256":"89f4a3ecf8e1731ffdfa69ed8e80aaef326c286491a18cba720a17e05dfac820"},"proposal_ids":[],"explicit_input_controls":[]},{"line":206,"end_line":216,"title":"surfaces authentication-required errors with code and data","decision":"keep","reason":"Auth-required agent failures retain their code/data in the mapped public error type.","source_body_sha256":"b5f77c7d32a5d3395f047e0d89f5211d303403cf072d52900ba0fc7a3ab23c4e","path":"src/main/acp/acp-session-runtime.test.ts","start":8955,"end":9419,"byte_start":8955,"byte_end":9419,"source":"it('surfaces authentication-required errors with code and data', async () => {\n const { runtime, agent } = fixture()\n agent.on('session/new', (frame) =>\n agent.fail(frame, -32000, 'Login required', { detail: 'Sign in' })\n )\n await expect(runtime.start(startOptions)).rejects.toBeInstanceOf(AcpAuthRequiredError)\n await expect(runtime.start(startOptions)).rejects.toMatchObject({\n code: -32000,\n data: { detail: 'Sign in' }\n })\n })","source_sha256":"b5f77c7d32a5d3395f047e0d89f5211d303403cf072d52900ba0fc7a3ab23c4e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-runtime.test.ts","line":206,"title":"surfaces authentication-required errors with code and data","body_sha256":"b5f77c7d32a5d3395f047e0d89f5211d303403cf072d52900ba0fc7a3ab23c4e"},"proposal_ids":[],"explicit_input_controls":[]},{"line":218,"end_line":241,"title":"authenticates once with a configured agent method and retries session setup","decision":"keep","reason":"A caller-chosen advertised auth method succeeds once and setup actually opens the new session on retry.","source_body_sha256":"69a2919809de10b11d1028ec5e6c073ae6cdc4bee4fcbb6954daf7a1d4b550b5","path":"src/main/acp/acp-session-runtime.test.ts","start":9423,"end":10303,"byte_start":9423,"byte_end":10303,"source":"it('authenticates once with a configured agent method and retries session setup', async () => {\n const { runtime, agent } = fixture()\n let authenticated = false\n agent.on('initialize', (frame) =>\n agent.reply(frame, { protocolVersion: 1, authMethods: [{ id: 'login', name: 'Login' }] })\n )\n agent.on('session/new', (frame) =>\n authenticated\n ? agent.reply(frame, { sessionId: 'session-1' })\n : agent.fail(frame, -32000, 'Login required')\n )\n agent.on('authenticate', (frame) => {\n authenticated = true\n agent.reply(frame, {})\n })\n await runtime.start({ ...startOptions, authMethodId: 'login' })\n expect(agent.frames.map((frame) => frame.method)).toEqual([\n 'initialize',\n 'session/new',\n 'authenticate',\n 'session/new'\n ])\n expect(agent.frames[2].params).toEqual({ methodId: 'login' })\n })","source_sha256":"69a2919809de10b11d1028ec5e6c073ae6cdc4bee4fcbb6954daf7a1d4b550b5","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-runtime.test.ts","line":218,"title":"authenticates once with a configured agent method and retries session setup","body_sha256":"69a2919809de10b11d1028ec5e6c073ae6cdc4bee4fcbb6954daf7a1d4b550b5"},"proposal_ids":[],"explicit_input_controls":[]},{"line":243,"end_line":253,"title":"leaves advertised authentication methods for the caller to choose","decision":"keep","reason":"Multiple advertised methods are surfaced together for caller choice and no authenticate call is sent.","source_body_sha256":"c3a0769bee2ce07e236c9e8aff9c14da14c416498f0abef797ad4e15952930b6","path":"src/main/acp/acp-session-runtime.test.ts","start":10307,"end":10941,"byte_start":10307,"byte_end":10941,"source":"it('leaves advertised authentication methods for the caller to choose', async () => {\n const { runtime, agent } = fixture()\n const authMethods = [\n { id: 'terminal', name: 'Interactive login', type: 'terminal' },\n { id: 'agent', name: 'Agent login' }\n ]\n agent.on('initialize', (frame) => agent.reply(frame, { protocolVersion: 1, authMethods }))\n agent.on('session/new', (frame) => agent.fail(frame, -32000, 'Login required'))\n await expect(runtime.start(startOptions)).rejects.toMatchObject({ authMethods })\n expect(agent.frames.map((frame) => frame.method)).toEqual(['initialize', 'session/new'])\n })","source_sha256":"c3a0769bee2ce07e236c9e8aff9c14da14c416498f0abef797ad4e15952930b6","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-runtime.test.ts","line":243,"title":"leaves advertised authentication methods for the caller to choose","body_sha256":"c3a0769bee2ce07e236c9e8aff9c14da14c416498f0abef797ad4e15952930b6"},"proposal_ids":[],"explicit_input_controls":[]},{"line":255,"end_line":286,"title":"does not retry authentication indefinitely or start an interactive login","decision":"remove","reason":"Both sub-scenarios duplicate lifecycle coverage: terminal no-auto-auth is a lifecycle auth-table row, and selected auth retry failure is lifecycle line183. Remove this duplicate declaration.","source_body_sha256":"a154211c50097244179e6c684d29eb3df633490b16713558d453cf9a23510d01","proposed_changes":[{"line":255,"action":"remove","proposal":"Remove both duplicated auth sub-scenarios. Lifecycle line100 terminal row preserves no interactive auto-login; lifecycle line183 preserves one explicitly chosen login and one failed retry with exact method sequence."}],"path":"src/main/acp/acp-session-runtime.test.ts","start":10945,"end":12242,"byte_start":10945,"byte_end":12242,"source":"it('does not retry authentication indefinitely or start an interactive login', async () => {\n const { runtime, agent } = fixture()\n agent.on('initialize', (frame) =>\n agent.reply(frame, {\n protocolVersion: 1,\n authMethods: [{ id: 'terminal', name: 'Interactive login', type: 'terminal' }]\n })\n )\n agent.on('session/new', (frame) => agent.fail(frame, -32000, 'Login required'))\n await expect(runtime.start(startOptions)).rejects.toBeInstanceOf(AcpAuthRequiredError)\n expect(agent.frames.map((frame) => frame.method)).toEqual(['initialize', 'session/new'])\n const retry = fixture()\n retry.agent.on('initialize', (frame) =>\n retry.agent.reply(frame, {\n protocolVersion: 1,\n authMethods: [{ id: 'agent', name: 'Agent login' }]\n })\n )\n retry.agent.on('authenticate', (frame) => retry.agent.reply(frame, {}))\n retry.agent.on('session/new', (frame) =>\n retry.agent.fail(frame, -32000, 'Still requires login')\n )\n await expect(\n retry.runtime.start({ ...startOptions, authMethodId: 'agent' })\n ).rejects.toBeInstanceOf(AcpAuthRequiredError)\n expect(retry.agent.frames.map((frame) => frame.method)).toEqual([\n 'initialize',\n 'session/new',\n 'authenticate',\n 'session/new'\n ])\n })","source_sha256":"a154211c50097244179e6c684d29eb3df633490b16713558d453cf9a23510d01","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"remove","implementation":"removed","destination":null,"proposal_ids":["acp-main-0001-013"],"preservation":"Both sub-scenarios duplicate lifecycle coverage: terminal no-auto-auth is a lifecycle auth-table row, and selected auth retry failure is lifecycle line183. Remove this duplicate declaration.","explicit_input_controls":[]},{"line":288,"end_line":312,"title":"sends mode, model, and config changes to the active session","decision":"keep","reason":"Actual mode/model/string config outbound fields and boolean config type tag are checked, rather than only that a mock was called.","source_body_sha256":"4b71e017ade38ad55371db350f3953875d56e9c63e0df29ced6fff6fcfd06e2a","path":"src/main/acp/acp-session-runtime.test.ts","start":12246,"end":13305,"byte_start":12246,"byte_end":13305,"source":"it('sends mode, model, and config changes to the active session', async () => {\n const { runtime, agent } = fixture()\n agent.on('session/set_mode', (frame) => agent.reply(frame, {}))\n agent.on('session/set_model', (frame) => agent.reply(frame, {}))\n agent.on('session/set_config_option', (frame) => {\n SetSessionConfigOptionRequestSchema.parse(frame.params)\n agent.reply(frame, { configOptions: [] })\n })\n await runtime.start(startOptions)\n await runtime.setMode('plan')\n await runtime.setModel('model-1')\n await runtime.setConfigOption('thinking', 'high')\n expect(agent.frames.slice(-3).map((frame) => frame.params)).toEqual([\n { sessionId: 'session-1', modeId: 'plan' },\n { sessionId: 'session-1', modelId: 'model-1' },\n { sessionId: 'session-1', configId: 'thinking', value: 'high' }\n ])\n await runtime.setConfigOption('enabled', true)\n expect(agent.frames.at(-1)?.params).toEqual({\n sessionId: 'session-1',\n configId: 'enabled',\n value: true,\n type: 'boolean'\n })\n })","source_sha256":"4b71e017ade38ad55371db350f3953875d56e9c63e0df29ced6fff6fcfd06e2a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-runtime.test.ts","line":255,"title":"sends mode, model, and config changes to the active session","body_sha256":"4b71e017ade38ad55371db350f3953875d56e9c63e0df29ced6fff6fcfd06e2a"},"proposal_ids":[],"explicit_input_controls":[]},{"line":314,"end_line":322,"title":"rejects an unsupported protocol and malformed session responses","decision":"keep","reason":"Unsupported protocol rejects at initialize and malformed new-session result rejects at response validation.","source_body_sha256":"0021d21a1c362d3eabaec311a71a3be4afeaa75e43950686ac45678e55a58463","path":"src/main/acp/acp-session-runtime.test.ts","start":13309,"end":13895,"byte_start":13309,"byte_end":13895,"source":"it('rejects an unsupported protocol and malformed session responses', async () => {\n const { runtime, agent } = fixture()\n agent.on('initialize', (frame) => agent.reply(frame, { protocolVersion: 2 }))\n await expect(runtime.start(startOptions)).rejects.toMatchObject({ code: -32602 })\n expect(agent.frames.map((frame) => frame.method)).toEqual(['initialize'])\n const malformed = fixture()\n malformed.agent.on('session/new', (frame) => malformed.agent.reply(frame, {}))\n await expect(malformed.runtime.start(startOptions)).rejects.toMatchObject({ code: -32603 })\n })","source_sha256":"0021d21a1c362d3eabaec311a71a3be4afeaa75e43950686ac45678e55a58463","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-runtime.test.ts","line":281,"title":"rejects an unsupported protocol and malformed session responses","body_sha256":"0021d21a1c362d3eabaec311a71a3be4afeaa75e43950686ac45678e55a58463"},"proposal_ids":[],"explicit_input_controls":[]},{"line":324,"end_line":353,"title":"rejects unroutable permission requests and answers an unavailable selection cancelled","decision":"keep","reason":"Invalid permission envelope/options fail the validator, unavailable selection is answered cancelled, and the existing prompt remains active.","source_body_sha256":"b9e56fab1b74e823db4b6b684cbbfe28d4557480f7bf3c52c4e9c0c6a4db2941","path":"src/main/acp/acp-session-runtime.test.ts","start":13899,"end":15235,"byte_start":13899,"byte_end":15235,"source":"it('rejects unroutable permission requests and answers an unavailable selection cancelled', async () => {\n const diagnostics: string[] = []\n const { runtime, agent } = fixture(\n {},\n {\n onPermission: () => ({ outcome: { outcome: 'selected', optionId: 'not-offered' } }),\n onDiagnostic: (message) => diagnostics.push(message)\n }\n )\n agent.on('session/prompt', () => {})\n await runtime.start(startOptions)\n void runtime.prompt([...textPrompt]).catch(() => {})\n expect(await agent.request('invalid', 'session/request_permission', {})).toMatchObject({\n error: { code: -32602 }\n })\n expect(\n await agent.request('no-options', 'session/request_permission', {\n ...permission,\n options: [{ name: 'No id', kind: 'allow_once' }]\n })\n ).toMatchObject({ error: { code: -32602 } })\n expect(\n await agent.request('bad-selection', 'session/request_permission', permission)\n ).toMatchObject({ result: { outcome: { outcome: 'cancelled' } } })\n expect(diagnostics).toContain(\n 'Answered ACP permission request cancelled: handler selected an unavailable option'\n )\n // The session stays usable: a local permission failure is not a protocol failure.\n await expect(runtime.prompt([...textPrompt])).rejects.toThrow('already in progress')\n })","source_sha256":"b9e56fab1b74e823db4b6b684cbbfe28d4557480f7bf3c52c4e9c0c6a4db2941","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-runtime.test.ts","line":291,"title":"rejects unroutable permission requests and answers an unavailable selection cancelled","body_sha256":"b9e56fab1b74e823db4b6b684cbbfe28d4557480f7bf3c52c4e9c0c6a4db2941"},"proposal_ids":[],"explicit_input_controls":[]},{"line":355,"end_line":383,"title":"preserves unrecognized updates and isolates event listener failures","decision":"keep","reason":"Unrecognized then valid vendor-bearing updates reach later listeners despite an earlier listener throw, with diagnostic publication.","source_body_sha256":"d53608595b734c45feddabcd21f48ca358cf6f3ed06a74bafd46a1bd8720a9ac","path":"src/main/acp/acp-session-runtime.test.ts","start":15239,"end":16449,"byte_start":15239,"byte_end":16449,"source":"it('preserves unrecognized updates and isolates event listener failures', async () => {\n const diagnostics: string[] = []\n const { runtime, agent } = fixture({}, { onDiagnostic: (message) => diagnostics.push(message) })\n const updates: AcpSessionEvent[] = []\n runtime.subscribe(() => {\n throw new Error('Consumer failed')\n })\n runtime.subscribe((event) => updates.push(event))\n await runtime.start(startOptions)\n agent.notify('session/update', {\n sessionId: 'session-1',\n update: { sessionUpdate: 'agent_message_chunk', content: {} }\n })\n agent.notify('session/update', {\n sessionId: 'session-1',\n update: {\n sessionUpdate: 'agent_message_chunk',\n content: { type: 'text', text: 'valid', _meta: { vendor: true } }\n }\n })\n expect(updates).toHaveLength(2)\n expect(updates[0]).toMatchObject({ kind: 'unrecognized' })\n expect(updates[1]).toMatchObject({\n kind: 'known',\n notification: { update: { content: { _meta: { vendor: true } } } }\n })\n expect(diagnostics).toContain('Forwarded unrecognized ACP session update')\n expect(diagnostics.some((message) => message.includes('Consumer failed'))).toBe(true)\n })","source_sha256":"d53608595b734c45feddabcd21f48ca358cf6f3ed06a74bafd46a1bd8720a9ac","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-runtime.test.ts","line":322,"title":"preserves unrecognized updates and isolates event listener failures","body_sha256":"d53608595b734c45feddabcd21f48ca358cf6f3ed06a74bafd46a1bd8720a9ac"},"proposal_ids":[],"explicit_input_controls":[]},{"line":385,"end_line":407,"title":"rejects pending calls and aborts permission hooks when the agent exits","decision":"fix","reason":"Input stdout EOF actually closes this stream-level runtime and aborts permission hooks; rename the agent-exit claim because no OS process exit is injected here.","source_body_sha256":"ec6fde8f0ee7ffbeddbf6997e5861459981b58c96dd2f1c0226a79b0fe3c80f0","proposed_changes":[{"line":385,"action":"fix","proposal":"Rename to protocol input end/stream closure; setup calls agent.stdout.end(), not child exit. The separate AcpAgentConnection tests own process-exit/EOF distinction."}],"path":"src/main/acp/acp-session-runtime.test.ts","start":16453,"end":17323,"byte_start":16453,"byte_end":17323,"source":"it('rejects pending calls and aborts permission hooks when the agent exits', async () => {\n const requested = deferred()\n const { runtime, agent } = fixture(\n {},\n {\n onPermission: (_request, context) => {\n requested.resolve(context.signal)\n return new Promise(() => {})\n }\n }\n )\n agent.on('session/prompt', () => {\n void agent.request('permission', 'session/request_permission', permission)\n })\n await runtime.start(startOptions)\n const pending = runtime.prompt([...textPrompt])\n const rejected = expect(pending).rejects.toBeInstanceOf(AcpConnectionClosedError)\n const signal = await requested.promise\n agent.stdout.end()\n await rejected\n expect(signal.aborted).toBe(true)\n await expect(runtime.setMode('plan')).rejects.toBeInstanceOf(AcpConnectionClosedError)\n })","source_sha256":"ec6fde8f0ee7ffbeddbf6997e5861459981b58c96dd2f1c0226a79b0fe3c80f0","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-session-runtime.test.ts","line":352,"title":"rejects pending calls and aborts permission hooks when protocol input ends","body_sha256":"4dfa636c9b5e200c91c3b55484c3b6d83c70fabb86d11cb82b60049d4a05c49d"},"proposal_ids":["acp-main-0001-014"],"explicit_input_controls":[]},{"line":409,"end_line":428,"title":"writes cancel immediately without waiting, coalescing, timing out, or closing","decision":"keep","reason":"Two cancel notifications serialize independently with no timeout, keep prompt ownership until its reply, then allow a new successful prompt.","source_body_sha256":"ee7129aa03ddf3661a8eb408acc64894f7b9a2af04e0b79897f76249f012aa28","path":"src/main/acp/acp-session-runtime.test.ts","start":17327,"end":18405,"byte_start":17327,"byte_end":18405,"source":"it('writes cancel immediately without waiting, coalescing, timing out, or closing', async () => {\n vi.useFakeTimers()\n const { runtime, agent } = fixture()\n const frame = deferred[0]>()\n agent.on('session/prompt', (prompt) => frame.resolve(prompt))\n await runtime.start(startOptions)\n const prompt = runtime.prompt([...textPrompt])\n const sent = await frame.promise\n await runtime.cancel()\n await runtime.cancel()\n expect(agent.frames.filter((frame) => frame.method === 'session/cancel')).toHaveLength(2)\n expect(vi.getTimerCount()).toBe(0)\n await vi.advanceTimersByTimeAsync(120_000)\n expect(runtime.closed).toBe(false)\n await expect(runtime.prompt([...textPrompt])).rejects.toThrow('already in progress')\n agent.reply(sent, { stopReason: 'cancelled' })\n expect(await prompt).toEqual({ stopReason: 'cancelled' })\n agent.on('session/prompt', (next) => agent.reply(next, { stopReason: 'end_turn' }))\n expect(await runtime.prompt([...textPrompt])).toEqual({ stopReason: 'end_turn' })\n })","source_sha256":"ee7129aa03ddf3661a8eb408acc64894f7b9a2af04e0b79897f76249f012aa28","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-session-runtime.test.ts","line":376,"title":"writes cancel immediately without waiting, coalescing, timing out, or closing","body_sha256":"ee7129aa03ddf3661a8eb408acc64894f7b9a2af04e0b79897f76249f012aa28"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-session-runtime.test.ts:37:loop","kind":"for-of","path":"src/main/acp/acp-session-runtime.test.ts","line":37,"end_line":40,"start":1646,"end":1740,"byte_start":1646,"byte_end":1740,"source":"for (const { runtime, agent } of opened.splice(0)) {\n runtime.close()\n agent.close()\n }","source_sha256":"c6d7ee585153fbb8a04021faef3ad0b215437a9d2d64d19d8954106122b77286","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const { runtime, agent } of opened.splice(0)) ","header_sha256":"547597d6ddaf25d16c9c5e4bb533e86af8855ff1f1e335c077fb44ec0c4be658","input_position":{"path":"src/main/acp/acp-session-runtime.test.ts","line":37,"end_line":37,"start":1679,"end":1695,"byte_start":1679,"byte_end":1695},"binding":"const { runtime, agent }","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"cleanup","decision":"keep","reason":"Close runtime and peer for each owned fixture; no additional case.","rows":[],"current_matches":[{"path":"src/main/acp/acp-session-runtime.test.ts","line":37,"body_sha256":"54cac25d4ce2d2b661e14f5c4e4f949738a521e9ad1657de170ab6c7b46fb7e3"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-session-runtime.test.ts:81:loop","kind":"for-of","path":"src/main/acp/acp-session-runtime.test.ts","line":81,"end_line":83,"start":3835,"end":3949,"byte_start":3835,"byte_end":3949,"source":"for (const update of updates) {\n agent.notify('session/update', { sessionId: 'session-1', update })\n }","source_sha256":"c3320de9f9394e86a8a7325f08a16e4537ac78eac7dfe46b33c00653b0b16901","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const update of updates) ","header_sha256":"157c68a0c3fc2214a04ae4239b832d792172bc8968d248fbe6619d76a7c22a1c","input_position":{"path":"src/main/acp/acp-session-runtime.test.ts","line":81,"end_line":81,"start":3856,"end":3863,"byte_start":3856,"byte_end":3863},"binding":"const update","resolution":[{"name":"updates","path":"src/main/acp/acp-session-runtime.test.ts","line":64,"end_line":79,"start":2851,"end":3784,"source":"[\n { sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 'Hello' } },\n { sessionUpdate: 'agent_thought_chunk', content: { type: 'text', text: 'Thinking' } },\n { sessionUpdate: 'user_message_chunk', content: { type: 'text', text: 'hello' } },\n { sessionUpdate: 'tool_call', toolCallId: 'tool-1', title: 'Read file' },\n { sessionUpdate: 'tool_call_update', toolCallId: 'tool-1', status: 'completed' },\n {\n sessionUpdate: 'plan',\n entries: [{ content: 'Read', priority: 'medium', status: 'completed' }]\n },\n { sessionUpdate: 'usage_update', used: 12, size: 100 },\n { sessionUpdate: 'available_commands_update', availableCommands: [] },\n { sessionUpdate: 'current_mode_update', currentModeId: 'plan' },\n { sessionUpdate: 'config_option_update', configOptions: [] },\n { sessionUpdate: 'session_info_update', title: 'Test session' }\n ]"}],"enclosing_case":{"line":60,"title":"initializes once, starts a session, streams typed updates, and completes the turn"},"affected_case_lines":[],"classification":"input workload","decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered.","rows":[{"index":1,"path":"src/main/acp/acp-session-runtime.test.ts","line":65,"end_line":65,"start":2869,"end":2951,"source":"{ sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 'Hello' } }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"agent_message_chunk"}},{"key":"content","value":{"kind":"object","value":[{"key":"type","value":{"kind":"string","value":"text"}},{"key":"text","value":{"kind":"string","value":"Hello"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"78e68aa42f2d28942594e4c2b9e95c2a14e1efb0d8ddd439ba00c70ed8a24938","byte_start":2869,"byte_end":2951,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."},{"index":2,"path":"src/main/acp/acp-session-runtime.test.ts","line":66,"end_line":66,"start":2959,"end":3044,"source":"{ sessionUpdate: 'agent_thought_chunk', content: { type: 'text', text: 'Thinking' } }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"agent_thought_chunk"}},{"key":"content","value":{"kind":"object","value":[{"key":"type","value":{"kind":"string","value":"text"}},{"key":"text","value":{"kind":"string","value":"Thinking"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"22e7765d33fafdec7166c710c83bf20ca9c3cdde22d3aa405a11def51c8fd931","byte_start":2959,"byte_end":3044,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."},{"index":3,"path":"src/main/acp/acp-session-runtime.test.ts","line":67,"end_line":67,"start":3052,"end":3133,"source":"{ sessionUpdate: 'user_message_chunk', content: { type: 'text', text: 'hello' } }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"user_message_chunk"}},{"key":"content","value":{"kind":"object","value":[{"key":"type","value":{"kind":"string","value":"text"}},{"key":"text","value":{"kind":"string","value":"hello"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"176bd79764a7df7d67e0facf11567bb27a2b02f74bf46bc04daef0b857e55dcf","byte_start":3052,"byte_end":3133,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."},{"index":4,"path":"src/main/acp/acp-session-runtime.test.ts","line":68,"end_line":68,"start":3141,"end":3213,"source":"{ sessionUpdate: 'tool_call', toolCallId: 'tool-1', title: 'Read file' }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"tool_call"}},{"key":"toolCallId","value":{"kind":"string","value":"tool-1"}},{"key":"title","value":{"kind":"string","value":"Read file"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"dc49dc41a9b1c2d811e552342a9c681a0762a224e66c1fd531b26c41af10ef94","byte_start":3141,"byte_end":3213,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."},{"index":5,"path":"src/main/acp/acp-session-runtime.test.ts","line":69,"end_line":69,"start":3221,"end":3301,"source":"{ sessionUpdate: 'tool_call_update', toolCallId: 'tool-1', status: 'completed' }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"tool_call_update"}},{"key":"toolCallId","value":{"kind":"string","value":"tool-1"}},{"key":"status","value":{"kind":"string","value":"completed"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"c95eb78bb9e09082cf97ab126a4ef0562b285b0db05279e45c2e46abb3eae028","byte_start":3221,"byte_end":3301,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."},{"index":6,"path":"src/main/acp/acp-session-runtime.test.ts","line":70,"end_line":73,"start":3309,"end":3429,"source":"{\n sessionUpdate: 'plan',\n entries: [{ content: 'Read', priority: 'medium', status: 'completed' }]\n }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"plan"}},{"key":"entries","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"content","value":{"kind":"string","value":"Read"}},{"key":"priority","value":{"kind":"string","value":"medium"}},{"key":"status","value":{"kind":"string","value":"completed"}}]}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e281bfb68ca31e1bb8dfa9f183dd69deca4bf3b66545d8cafe8dcda8f9d4c30e","byte_start":3309,"byte_end":3429,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."},{"index":7,"path":"src/main/acp/acp-session-runtime.test.ts","line":74,"end_line":74,"start":3437,"end":3491,"source":"{ sessionUpdate: 'usage_update', used: 12, size: 100 }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"usage_update"}},{"key":"used","value":{"kind":"number","value":12}},{"key":"size","value":{"kind":"number","value":100}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"c7bfa6a0e3eee9379c9af8a7952bd1cc90a7d7209e3dcb4fb47bae65361655af","byte_start":3437,"byte_end":3491,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."},{"index":8,"path":"src/main/acp/acp-session-runtime.test.ts","line":75,"end_line":75,"start":3499,"end":3568,"source":"{ sessionUpdate: 'available_commands_update', availableCommands: [] }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"available_commands_update"}},{"key":"availableCommands","value":{"kind":"array","value":[]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"d7425155cae66c9aa250f429213d01570211711c61c0313e2ffe0f864773e982","byte_start":3499,"byte_end":3568,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."},{"index":9,"path":"src/main/acp/acp-session-runtime.test.ts","line":76,"end_line":76,"start":3576,"end":3639,"source":"{ sessionUpdate: 'current_mode_update', currentModeId: 'plan' }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"current_mode_update"}},{"key":"currentModeId","value":{"kind":"string","value":"plan"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"a6ab0ce0d6d15c326e4a460d0fd31b4a95a1d7b49bfdf30f1c22c1cb88f2917e","byte_start":3576,"byte_end":3639,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."},{"index":10,"path":"src/main/acp/acp-session-runtime.test.ts","line":77,"end_line":77,"start":3647,"end":3707,"source":"{ sessionUpdate: 'config_option_update', configOptions: [] }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"config_option_update"}},{"key":"configOptions","value":{"kind":"array","value":[]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"70277afd38b78cf6bfd03bdc931719bb0e32cc8b9dd46dd686f3a195c82f3eb9","byte_start":3647,"byte_end":3707,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."},{"index":11,"path":"src/main/acp/acp-session-runtime.test.ts","line":78,"end_line":78,"start":3715,"end":3778,"source":"{ sessionUpdate: 'session_info_update', title: 'Test session' }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"session_info_update"}},{"key":"title","value":{"kind":"string","value":"Test session"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"3b45243f06d84424f8b5c6685133823d2f7c83bbe39b741807d9c9ad723fb044","byte_start":3715,"byte_end":3778,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."}],"current_matches":[{"path":"src/main/acp/acp-session-runtime.test.ts","line":81,"body_sha256":"c19a7cd0f1f42f3644472a0ef1439b3c85bef1743c02737dde7a536fd661f297"}],"policy":"Exact literal inputs within this traversal; not additional declared test cases."},{"id":"src/main/acp/acp-session-runtime.test.ts:105:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-session-runtime.test.ts","line":105,"end_line":126,"start":4938,"end":5861,"byte_start":4938,"byte_end":5861,"source":"[\n [{ loadSession: true }, undefined, 'load'],\n [{ sessionCapabilities: { resume: {} } }, undefined, 'resume'],\n [{ loadSession: true, sessionCapabilities: { resume: {} } }, undefined, 'load'],\n [{ loadSession: true, sessionCapabilities: { resume: {} } }, 'resume', 'resume'],\n [{ loadSession: true, sessionCapabilities: { resume: null } }, 'resume', 'load']\n ] as const","source_sha256":"a54883552e19df90d62a4521fbfc306a77de709d4c5b21760fbf9be86a79da9e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-session-runtime.test.ts","line":105,"end_line":111,"start":4946,"end":5332,"byte_start":4946,"byte_end":5332},"binding":"it.each","resolution":[],"enclosing_case":{"line":105,"title":"selects supported activation (%j, %s)"},"affected_case_lines":[105],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-session-runtime.test.ts","line":106,"end_line":106,"start":4952,"end":4994,"source":"[{ loadSession: true }, undefined, 'load']","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"loadSession","value":{"kind":"boolean","value":true}}]},{"kind":"source-expression","source":"undefined"},{"kind":"string","value":"load"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"84e324032e5a70e998f933ce9815d9b0f8e5492c807fa6ba4d7071e3e7fe8c8c","byte_start":4952,"byte_end":4994,"input_label":"loadSession, no preference","decision":"keep","reason":"Load route when only load is supported."},{"index":2,"path":"src/main/acp/acp-session-runtime.test.ts","line":107,"end_line":107,"start":5000,"end":5062,"source":"[{ sessionCapabilities: { resume: {} } }, undefined, 'resume']","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"sessionCapabilities","value":{"kind":"object","value":[{"key":"resume","value":{"kind":"object","value":[]}}]}}]},{"kind":"source-expression","source":"undefined"},{"kind":"string","value":"resume"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e197d5d4a27045a80c86bd098db83151b60023dd3c641e9b4e7ebfb1169c3290","byte_start":5000,"byte_end":5062,"input_label":"resume only","decision":"keep","reason":"Resume route when only resume is supported."},{"index":3,"path":"src/main/acp/acp-session-runtime.test.ts","line":108,"end_line":108,"start":5068,"end":5147,"source":"[{ loadSession: true, sessionCapabilities: { resume: {} } }, undefined, 'load']","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"loadSession","value":{"kind":"boolean","value":true}},{"key":"sessionCapabilities","value":{"kind":"object","value":[{"key":"resume","value":{"kind":"object","value":[]}}]}}]},{"kind":"source-expression","source":"undefined"},{"kind":"string","value":"load"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"b3310df904f566b59d9ac798fd825d0be6966751a0eee92f76ddb19b36faadb2","byte_start":5068,"byte_end":5147,"input_label":"load+resume, default","decision":"keep","reason":"Default route prefers load."},{"index":4,"path":"src/main/acp/acp-session-runtime.test.ts","line":109,"end_line":109,"start":5153,"end":5233,"source":"[{ loadSession: true, sessionCapabilities: { resume: {} } }, 'resume', 'resume']","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"loadSession","value":{"kind":"boolean","value":true}},{"key":"sessionCapabilities","value":{"kind":"object","value":[{"key":"resume","value":{"kind":"object","value":[]}}]}}]},{"kind":"string","value":"resume"},{"kind":"string","value":"resume"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"3c283d42bf7684c813b3cc4d14042290a29d412b64a7833387da8a14eda5febe","byte_start":5153,"byte_end":5233,"input_label":"load+resume, resume preference","decision":"keep","reason":"Explicit preference chooses supported resume."},{"index":5,"path":"src/main/acp/acp-session-runtime.test.ts","line":110,"end_line":110,"start":5239,"end":5319,"source":"[{ loadSession: true, sessionCapabilities: { resume: null } }, 'resume', 'load']","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"loadSession","value":{"kind":"boolean","value":true}},{"key":"sessionCapabilities","value":{"kind":"object","value":[{"key":"resume","value":{"kind":"null","value":null}}]}}]},{"kind":"string","value":"resume"},{"kind":"string","value":"load"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"a6dcf43b525ffe936089d6fda2875681c83bc51a3d4d3a881207c5343b56759a","byte_start":5239,"byte_end":5319,"input_label":"load+resume=null, resume preference","decision":"keep","reason":"Null capability does not establish resume; fallback load."}],"original_row_count":5}],"parameter_groups":[{"id":"src/main/acp/acp-session-runtime.test.ts:105:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-session-runtime.test.ts","line":105,"end_line":126,"start":4938,"end":5861,"byte_start":4938,"byte_end":5861,"source":"[\n [{ loadSession: true }, undefined, 'load'],\n [{ sessionCapabilities: { resume: {} } }, undefined, 'resume'],\n [{ loadSession: true, sessionCapabilities: { resume: {} } }, undefined, 'load'],\n [{ loadSession: true, sessionCapabilities: { resume: {} } }, 'resume', 'resume'],\n [{ loadSession: true, sessionCapabilities: { resume: null } }, 'resume', 'load']\n ] as const","source_sha256":"a54883552e19df90d62a4521fbfc306a77de709d4c5b21760fbf9be86a79da9e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-session-runtime.test.ts","line":105,"end_line":111,"start":4946,"end":5332,"byte_start":4946,"byte_end":5332},"binding":"it.each","resolution":[],"enclosing_case":{"line":105,"title":"selects supported activation (%j, %s)"},"affected_case_lines":[105],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-session-runtime.test.ts","line":106,"end_line":106,"start":4952,"end":4994,"source":"[{ loadSession: true }, undefined, 'load']","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"loadSession","value":{"kind":"boolean","value":true}}]},{"kind":"source-expression","source":"undefined"},{"kind":"string","value":"load"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"84e324032e5a70e998f933ce9815d9b0f8e5492c807fa6ba4d7071e3e7fe8c8c","byte_start":4952,"byte_end":4994,"input_label":"loadSession, no preference","decision":"keep","reason":"Load route when only load is supported."},{"index":2,"path":"src/main/acp/acp-session-runtime.test.ts","line":107,"end_line":107,"start":5000,"end":5062,"source":"[{ sessionCapabilities: { resume: {} } }, undefined, 'resume']","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"sessionCapabilities","value":{"kind":"object","value":[{"key":"resume","value":{"kind":"object","value":[]}}]}}]},{"kind":"source-expression","source":"undefined"},{"kind":"string","value":"resume"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e197d5d4a27045a80c86bd098db83151b60023dd3c641e9b4e7ebfb1169c3290","byte_start":5000,"byte_end":5062,"input_label":"resume only","decision":"keep","reason":"Resume route when only resume is supported."},{"index":3,"path":"src/main/acp/acp-session-runtime.test.ts","line":108,"end_line":108,"start":5068,"end":5147,"source":"[{ loadSession: true, sessionCapabilities: { resume: {} } }, undefined, 'load']","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"loadSession","value":{"kind":"boolean","value":true}},{"key":"sessionCapabilities","value":{"kind":"object","value":[{"key":"resume","value":{"kind":"object","value":[]}}]}}]},{"kind":"source-expression","source":"undefined"},{"kind":"string","value":"load"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"b3310df904f566b59d9ac798fd825d0be6966751a0eee92f76ddb19b36faadb2","byte_start":5068,"byte_end":5147,"input_label":"load+resume, default","decision":"keep","reason":"Default route prefers load."},{"index":4,"path":"src/main/acp/acp-session-runtime.test.ts","line":109,"end_line":109,"start":5153,"end":5233,"source":"[{ loadSession: true, sessionCapabilities: { resume: {} } }, 'resume', 'resume']","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"loadSession","value":{"kind":"boolean","value":true}},{"key":"sessionCapabilities","value":{"kind":"object","value":[{"key":"resume","value":{"kind":"object","value":[]}}]}}]},{"kind":"string","value":"resume"},{"kind":"string","value":"resume"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"3c283d42bf7684c813b3cc4d14042290a29d412b64a7833387da8a14eda5febe","byte_start":5153,"byte_end":5233,"input_label":"load+resume, resume preference","decision":"keep","reason":"Explicit preference chooses supported resume."},{"index":5,"path":"src/main/acp/acp-session-runtime.test.ts","line":110,"end_line":110,"start":5239,"end":5319,"source":"[{ loadSession: true, sessionCapabilities: { resume: null } }, 'resume', 'load']","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"loadSession","value":{"kind":"boolean","value":true}},{"key":"sessionCapabilities","value":{"kind":"object","value":[{"key":"resume","value":{"kind":"null","value":null}}]}}]},{"kind":"string","value":"resume"},{"kind":"string","value":"load"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"a6dcf43b525ffe936089d6fda2875681c83bc51a3d4d3a881207c5343b56759a","byte_start":5239,"byte_end":5319,"input_label":"load+resume=null, resume preference","decision":"keep","reason":"Null capability does not establish resume; fallback load."}],"original_row_count":5}],"body_support_cleanup_loops":[{"id":"src/main/acp/acp-session-runtime.test.ts:37:loop","kind":"for-of","path":"src/main/acp/acp-session-runtime.test.ts","line":37,"end_line":40,"start":1646,"end":1740,"byte_start":1646,"byte_end":1740,"source":"for (const { runtime, agent } of opened.splice(0)) {\n runtime.close()\n agent.close()\n }","source_sha256":"c6d7ee585153fbb8a04021faef3ad0b215437a9d2d64d19d8954106122b77286","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const { runtime, agent } of opened.splice(0)) ","header_sha256":"547597d6ddaf25d16c9c5e4bb533e86af8855ff1f1e335c077fb44ec0c4be658","input_position":{"path":"src/main/acp/acp-session-runtime.test.ts","line":37,"end_line":37,"start":1679,"end":1695,"byte_start":1679,"byte_end":1695},"binding":"const { runtime, agent }","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"cleanup","decision":"keep","reason":"Close runtime and peer for each owned fixture; no additional case.","rows":[],"current_matches":[{"path":"src/main/acp/acp-session-runtime.test.ts","line":37,"body_sha256":"54cac25d4ce2d2b661e14f5c4e4f949738a521e9ad1657de170ab6c7b46fb7e3"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-session-runtime.test.ts:81:loop","kind":"for-of","path":"src/main/acp/acp-session-runtime.test.ts","line":81,"end_line":83,"start":3835,"end":3949,"byte_start":3835,"byte_end":3949,"source":"for (const update of updates) {\n agent.notify('session/update', { sessionId: 'session-1', update })\n }","source_sha256":"c3320de9f9394e86a8a7325f08a16e4537ac78eac7dfe46b33c00653b0b16901","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const update of updates) ","header_sha256":"157c68a0c3fc2214a04ae4239b832d792172bc8968d248fbe6619d76a7c22a1c","input_position":{"path":"src/main/acp/acp-session-runtime.test.ts","line":81,"end_line":81,"start":3856,"end":3863,"byte_start":3856,"byte_end":3863},"binding":"const update","resolution":[{"name":"updates","path":"src/main/acp/acp-session-runtime.test.ts","line":64,"end_line":79,"start":2851,"end":3784,"source":"[\n { sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 'Hello' } },\n { sessionUpdate: 'agent_thought_chunk', content: { type: 'text', text: 'Thinking' } },\n { sessionUpdate: 'user_message_chunk', content: { type: 'text', text: 'hello' } },\n { sessionUpdate: 'tool_call', toolCallId: 'tool-1', title: 'Read file' },\n { sessionUpdate: 'tool_call_update', toolCallId: 'tool-1', status: 'completed' },\n {\n sessionUpdate: 'plan',\n entries: [{ content: 'Read', priority: 'medium', status: 'completed' }]\n },\n { sessionUpdate: 'usage_update', used: 12, size: 100 },\n { sessionUpdate: 'available_commands_update', availableCommands: [] },\n { sessionUpdate: 'current_mode_update', currentModeId: 'plan' },\n { sessionUpdate: 'config_option_update', configOptions: [] },\n { sessionUpdate: 'session_info_update', title: 'Test session' }\n ]"}],"enclosing_case":{"line":60,"title":"initializes once, starts a session, streams typed updates, and completes the turn"},"affected_case_lines":[],"classification":"input workload","decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered.","rows":[{"index":1,"path":"src/main/acp/acp-session-runtime.test.ts","line":65,"end_line":65,"start":2869,"end":2951,"source":"{ sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 'Hello' } }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"agent_message_chunk"}},{"key":"content","value":{"kind":"object","value":[{"key":"type","value":{"kind":"string","value":"text"}},{"key":"text","value":{"kind":"string","value":"Hello"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"78e68aa42f2d28942594e4c2b9e95c2a14e1efb0d8ddd439ba00c70ed8a24938","byte_start":2869,"byte_end":2951,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."},{"index":2,"path":"src/main/acp/acp-session-runtime.test.ts","line":66,"end_line":66,"start":2959,"end":3044,"source":"{ sessionUpdate: 'agent_thought_chunk', content: { type: 'text', text: 'Thinking' } }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"agent_thought_chunk"}},{"key":"content","value":{"kind":"object","value":[{"key":"type","value":{"kind":"string","value":"text"}},{"key":"text","value":{"kind":"string","value":"Thinking"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"22e7765d33fafdec7166c710c83bf20ca9c3cdde22d3aa405a11def51c8fd931","byte_start":2959,"byte_end":3044,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."},{"index":3,"path":"src/main/acp/acp-session-runtime.test.ts","line":67,"end_line":67,"start":3052,"end":3133,"source":"{ sessionUpdate: 'user_message_chunk', content: { type: 'text', text: 'hello' } }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"user_message_chunk"}},{"key":"content","value":{"kind":"object","value":[{"key":"type","value":{"kind":"string","value":"text"}},{"key":"text","value":{"kind":"string","value":"hello"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"176bd79764a7df7d67e0facf11567bb27a2b02f74bf46bc04daef0b857e55dcf","byte_start":3052,"byte_end":3133,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."},{"index":4,"path":"src/main/acp/acp-session-runtime.test.ts","line":68,"end_line":68,"start":3141,"end":3213,"source":"{ sessionUpdate: 'tool_call', toolCallId: 'tool-1', title: 'Read file' }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"tool_call"}},{"key":"toolCallId","value":{"kind":"string","value":"tool-1"}},{"key":"title","value":{"kind":"string","value":"Read file"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"dc49dc41a9b1c2d811e552342a9c681a0762a224e66c1fd531b26c41af10ef94","byte_start":3141,"byte_end":3213,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."},{"index":5,"path":"src/main/acp/acp-session-runtime.test.ts","line":69,"end_line":69,"start":3221,"end":3301,"source":"{ sessionUpdate: 'tool_call_update', toolCallId: 'tool-1', status: 'completed' }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"tool_call_update"}},{"key":"toolCallId","value":{"kind":"string","value":"tool-1"}},{"key":"status","value":{"kind":"string","value":"completed"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"c95eb78bb9e09082cf97ab126a4ef0562b285b0db05279e45c2e46abb3eae028","byte_start":3221,"byte_end":3301,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."},{"index":6,"path":"src/main/acp/acp-session-runtime.test.ts","line":70,"end_line":73,"start":3309,"end":3429,"source":"{\n sessionUpdate: 'plan',\n entries: [{ content: 'Read', priority: 'medium', status: 'completed' }]\n }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"plan"}},{"key":"entries","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"content","value":{"kind":"string","value":"Read"}},{"key":"priority","value":{"kind":"string","value":"medium"}},{"key":"status","value":{"kind":"string","value":"completed"}}]}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e281bfb68ca31e1bb8dfa9f183dd69deca4bf3b66545d8cafe8dcda8f9d4c30e","byte_start":3309,"byte_end":3429,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."},{"index":7,"path":"src/main/acp/acp-session-runtime.test.ts","line":74,"end_line":74,"start":3437,"end":3491,"source":"{ sessionUpdate: 'usage_update', used: 12, size: 100 }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"usage_update"}},{"key":"used","value":{"kind":"number","value":12}},{"key":"size","value":{"kind":"number","value":100}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"c7bfa6a0e3eee9379c9af8a7952bd1cc90a7d7209e3dcb4fb47bae65361655af","byte_start":3437,"byte_end":3491,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."},{"index":8,"path":"src/main/acp/acp-session-runtime.test.ts","line":75,"end_line":75,"start":3499,"end":3568,"source":"{ sessionUpdate: 'available_commands_update', availableCommands: [] }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"available_commands_update"}},{"key":"availableCommands","value":{"kind":"array","value":[]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"d7425155cae66c9aa250f429213d01570211711c61c0313e2ffe0f864773e982","byte_start":3499,"byte_end":3568,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."},{"index":9,"path":"src/main/acp/acp-session-runtime.test.ts","line":76,"end_line":76,"start":3576,"end":3639,"source":"{ sessionUpdate: 'current_mode_update', currentModeId: 'plan' }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"current_mode_update"}},{"key":"currentModeId","value":{"kind":"string","value":"plan"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"a6ab0ce0d6d15c326e4a460d0fd31b4a95a1d7b49bfdf30f1c22c1cb88f2917e","byte_start":3576,"byte_end":3639,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."},{"index":10,"path":"src/main/acp/acp-session-runtime.test.ts","line":77,"end_line":77,"start":3647,"end":3707,"source":"{ sessionUpdate: 'config_option_update', configOptions: [] }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"config_option_update"}},{"key":"configOptions","value":{"kind":"array","value":[]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"70277afd38b78cf6bfd03bdc931719bb0e32cc8b9dd46dd686f3a195c82f3eb9","byte_start":3647,"byte_end":3707,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."},{"index":11,"path":"src/main/acp/acp-session-runtime.test.ts","line":78,"end_line":78,"start":3715,"end":3778,"source":"{ sessionUpdate: 'session_info_update', title: 'Test session' }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"session_info_update"}},{"key":"title","value":{"kind":"string","value":"Test session"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"3b45243f06d84424f8b5c6685133823d2f7c83bbe39b741807d9c9ad723fb044","byte_start":3715,"byte_end":3778,"decision":"keep","reason":"Emit complete standard update corpus into one subscription scenario; known values and open-enum values remain delivered."}],"current_matches":[{"path":"src/main/acp/acp-session-runtime.test.ts","line":81,"body_sha256":"c19a7cd0f1f42f3644472a0ef1439b3c85bef1743c02737dde7a536fd661f297"}],"policy":"Exact literal inputs within this traversal; not additional declared test cases."}],"implemented_changes":[{"proposal_id":"acp-main-0001-013","summary":"Removed duplicate authentication retry declaration; retained lifecycle cases exercise terminal/noninteractive methods and one explicit retry.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"},{"proposal_id":"acp-main-0001-014","summary":"Title now accurately describes protocol input ending, matching the stream event used.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/acp-session-runtime.ts","src/main/acp/acp-permission-requests.ts","src/main/acp/acp-session-setup.ts"],"evidence_sha256":{"src/main/acp/acp-session-runtime.ts":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b","src/main/acp/acp-permission-requests.ts":"7c5eaaca3e8a5f598f6b8c61686b9f65cdd605d678e3bff9aaebaf2245063327","src/main/acp/acp-session-setup.ts":"96de2c002e8dcbc126d30b52abbfc43b7ab640745a558fcdd892806dd282af39"},"evidence_source_sha256":{"src/main/acp/acp-session-runtime.ts":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b","src/main/acp/acp-permission-requests.ts":"7c5eaaca3e8a5f598f6b8c61686b9f65cdd605d678e3bff9aaebaf2245063327","src/main/acp/acp-session-setup.ts":"96de2c002e8dcbc126d30b52abbfc43b7ab640745a558fcdd892806dd282af39"},"original_evidence_detail":[{"path":"src/main/acp/acp-session-runtime.ts","sha256":"e874a57c3778e6412cbfca1e9b53c8731a826cdbbc9ed93e1370d2d687230e8b","lines":323,"read_state":"full_body_read"},{"path":"src/main/acp/acp-permission-requests.ts","sha256":"7c5eaaca3e8a5f598f6b8c61686b9f65cdd605d678e3bff9aaebaf2245063327","lines":144,"read_state":"full_body_read"},{"path":"src/main/acp/acp-session-setup.ts","sha256":"96de2c002e8dcbc126d30b52abbfc43b7ab640745a558fcdd892806dd282af39","lines":85,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"ACP session runtime uses raw underscored extension methods and bounds control requests without closing the session","status":"passed"},{"full_name":"ACP session runtime initializes once, starts a session, streams typed updates, and completes the turn","status":"passed"},{"full_name":"ACP session runtime selects supported activation ({\"loadSession\":true}, undefined)","status":"passed"},{"full_name":"ACP session runtime selects supported activation ({\"sessionCapabilities\":{\"resume\":{}}}, undefined)","status":"passed"},{"full_name":"ACP session runtime selects supported activation ({\"loadSession\":true,\"sessionCapabilities\":{\"resume\":{}}}, undefined)","status":"passed"},{"full_name":"ACP session runtime selects supported activation ({\"loadSession\":true,\"sessionCapabilities\":{\"resume\":{}}}, resume)","status":"passed"},{"full_name":"ACP session runtime selects supported activation ({\"loadSession\":true,\"sessionCapabilities\":{\"resume\":null}}, resume)","status":"passed"},{"full_name":"ACP session runtime refuses unsupported restoration without silently creating a different session","status":"passed"},{"full_name":"ACP session runtime round-trips permission and vendor requests while prompt is pending","status":"passed"},{"full_name":"ACP session runtime leaves open and late permission decisions with their owner after cancel","status":"passed"},{"full_name":"ACP session runtime surfaces authentication-required errors with code and data","status":"passed"},{"full_name":"ACP session runtime authenticates once with a configured agent method and retries session setup","status":"passed"},{"full_name":"ACP session runtime leaves advertised authentication methods for the caller to choose","status":"passed"},{"full_name":"ACP session runtime sends mode, model, and config changes to the active session","status":"passed"},{"full_name":"ACP session runtime rejects an unsupported protocol and malformed session responses","status":"passed"},{"full_name":"ACP session runtime rejects unroutable permission requests and answers an unavailable selection cancelled","status":"passed"},{"full_name":"ACP session runtime preserves unrecognized updates and isolates event listener failures","status":"passed"},{"full_name":"ACP session runtime rejects pending calls and aborts permission hooks when protocol input ends","status":"passed"},{"full_name":"ACP session runtime writes cancel immediately without waiting, coalescing, timing out, or closing","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-antigravity.test.ts","sha256":"1b44303eaf2a6dd61b44f0fc755584c0aeaa49b61c9b857a968ce32d51c2a062","reviewed_sha256":"ff6fc7c8995f74a768b3c31033ec99712aa6d49fd63983dfe646ad8881292d9f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":20,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 3, fix 2. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":5,"original_declarations":5,"final_declarations":5,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":38,"end_line":81,"title":"signs a first chat in, asks in default mode, and answers a question with one of its choices","decision":"keep","reason":"Recorded 1.3.0 handshake/permission traffic drives the real adapter journal, explicit OAuth choice/default mode and actual selected-option response; the scripted peer gates new-session until authenticate rather than fabricating the adapter decision.","source_body_sha256":"53a968f822e3bd3780bff19eb2bcaafba2c6caaa0cfea22dfea9bd819d460da3","path":"src/main/acp/acp-structured-antigravity.test.ts","start":1663,"end":3708,"byte_start":1663,"byte_end":3708,"source":"it('signs a first chat in, asks in default mode, and answers a question with one of its choices', async () => {\n const [initialized, opened, ...turn] = await readAcpFixture('antigravity-v1-question')\n const replay = new GrokFixtureReplay(turn)\n const rig = await openAcpAdapterRig({\n spec: ANTIGRAVITY,\n initialize: result(initialized),\n script: (agent) => {\n replay.attach(agent)\n // A fresh folder names no sign-in method until a client picks one.\n agent.on('session/new', (frame) =>\n agent.frames.some((sent) => sent.method === 'authenticate')\n ? agent.reply(frame, { ...result(opened), sessionId: PROVIDER_SESSION })\n : agent.fail(frame, -32000, 'Authentication required')\n )\n agent.on('authenticate', (frame) => agent.reply(frame, {}))\n }\n })\n await rig.acquire()\n expect(rig.sent('authenticate')[0]?.params).toEqual({ methodId: 'oauth-personal' })\n expect(rig.sent('session/set_config_option')[0]?.params).toMatchObject({ value: 'default' })\n await sendHello(rig, 'send-1')\n const question = await waitFor(async () => {\n const found = (await rig.rig.rows()).find((row) => row.body.kind === 'question')\n expect(found && replay.awaiting).toBe('reply')\n return found!\n })\n expect(question.body).toMatchObject({ options: [{ label: 'red' }, { id: '2', label: 'blue' }] })\n await rig.adapter.answerPrompt({\n sessionId: SESSION,\n itemId: question.itemId,\n kind: 'question',\n response: { kind: 'answers', answers: [{ questionId: 'q1', optionIds: ['2'] }] },\n fence: 1,\n commit: async () => {}\n })\n await waitFor(() => expect(replay.awaiting).toBeNull())\n const reply = rig.child().agent.frames.find((frame) => !frame.method && frame.id === 2)\n expect(reply?.result).toEqual({ outcome: { outcome: 'selected', optionId: '2' } })\n await waitFor(async () =>\n expect((await rig.rig.rows()).flatMap((row) => readAgentJournalTurn(row.body) ?? [])).toEqual([\n expect.objectContaining({ state: 'completed', outcome: 'success' })\n ])\n )\n})","source_sha256":"53a968f822e3bd3780bff19eb2bcaafba2c6caaa0cfea22dfea9bd819d460da3","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-antigravity.test.ts","line":38,"title":"signs a first chat in, asks in default mode, and answers a question with one of its choices","body_sha256":"53a968f822e3bd3780bff19eb2bcaafba2c6caaa0cfea22dfea9bd819d460da3"},"proposal_ids":[],"explicit_input_controls":[]},{"line":83,"end_line":115,"title":"launches on its own private folder with file sign-in and no other Google credentials","decision":"fix","reason":"Real launch/account preparation isolates private directories and credential variables; mode checks are appropriately POSIX-only. Ensure the owned temp directory is removed on failure as well as success.","source_body_sha256":"8d393f93660cc1146393844650216aef122311a0698c0684bae8df2c34e2b1a0","proposed_changes":[{"line":83,"action":"fix","proposal":"Register temp-directory cleanup immediately or use try/finally; rm currently runs only after all assertions."}],"body_loops":[{"path":"src/main/acp/acp-structured-antigravity.test.ts","line":111,"source":"for (const mode of await Promise.all(modes)) ","classification":"filesystem observations","decision":"keep","reason":"Check permissions on both owned private temp directories, with runtime Windows permission guard; preserve actual cleanup observations."}],"path":"src/main/acp/acp-structured-antigravity.test.ts","start":3710,"end":5245,"byte_start":3710,"byte_end":5245,"source":"it('launches on its own private folder with file sign-in and no other Google credentials', async () => {\n const stateDirectory = await mkdtemp(join(tmpdir(), 'orca-antigravity-'))\n const folder = join(stateDirectory, 'antigravity-chat')\n const user = {\n GEMINI_HOME: '/data/.gemini',\n GOOGLE_API_KEY: 'k',\n AGY_ACP_FORCE_FILE_STORAGE: '0'\n }\n const home = await ANTIGRAVITY.account.resolve({ launchEnv: user, stateDirectory })\n const { command, env, envToDelete } = await resolveAcpLaunchInvocation(ANTIGRAVITY, home, {\n resolveEnvironment: async () => ({ ...user, PATH: '' }),\n resolveCommandSettings: () => ({ agentCmdOverrides: { antigravity: '/missing/agy' } }),\n inheritedEnv: { GEMINI_API_KEY: 'k', ANTIGRAVITY_HARNESS_PATH: '/x', GCLOUD_PROJECT: 'p' },\n dataDirectory: stateDirectory\n })\n expect(command).toBe(ANTIGRAVITY.command)\n expect(env).toMatchObject({ GEMINI_HOME: folder, AGY_ACP_FORCE_FILE_STORAGE: '1' })\n // A key deleted at spawn beats its overlay, so the file sign-in must not be among them.\n expect(envToDelete.sort()).toEqual([\n 'ANTIGRAVITY_HARNESS_PATH',\n 'GCLOUD_PROJECT',\n 'GEMINI_API_KEY',\n 'GOOGLE_API_KEY'\n ])\n await ANTIGRAVITY.account.prepare?.(env)\n const modes = [folder, join(folder, 'antigravity-acp')].map(\n async (path) => (await stat(path)).mode\n )\n for (const mode of await Promise.all(modes)) {\n expect(process.platform === 'win32' || (mode & 0o777) === 0o700).toBe(true)\n }\n await rm(stateDirectory, { recursive: true, force: true })\n})","source_sha256":"8d393f93660cc1146393844650216aef122311a0698c0684bae8df2c34e2b1a0","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-antigravity.test.ts","line":83,"title":"launches on its own private folder with file sign-in and no other Google credentials","body_sha256":"e92c54a2703621fce9bb2d0ef64f1d858a684c252eab2bd3efb3b772ca11f7f7"},"proposal_ids":["acp-main-0001-015"],"explicit_input_controls":["src/main/acp/acp-structured-antigravity.test.ts:111:loop"]},{"line":117,"end_line":168,"title":"runs the chat permission mode picked mid-chat as the server mode on the next send","decision":"keep","reason":"Two mid-chat permission-mode changes replace the old child before the next actual prompt, then serialize auto_edit/yolo on the new provider session.","source_body_sha256":"5ad87361216b5f323f6dfd634897c2cd93e676cacb2457fe3b089b4d01ed08a8","body_loops":[{"path":"src/main/acp/acp-structured-antigravity.test.ts","line":144,"source":"for (const value of ['accept-edits', 'full-access']) ","classification":"input scenarios","decision":"keep","reason":"Actual host permission-mode writes exercise accept-edits then full-access through wire config and durable choices.","inputs":["accept-edits","full-access"]}],"path":"src/main/acp/acp-structured-antigravity.test.ts","start":5247,"end":7332,"byte_start":5247,"byte_end":7332,"source":"it('runs the chat permission mode picked mid-chat as the server mode on the next send', async () => {\n let resumed = false\n const { rig, host, fence, ready } = await openHostRig({\n spec: ANTIGRAVITY,\n initialize: RESUMES,\n script: (agent) => {\n agent.on('session/resume', (frame) => agent.reply(frame, {}))\n agent.on('session/prompt', (frame) => agent.reply(frame, { stopReason: 'end_turn' }))\n },\n deps: {\n resolveLaunch: async () => ({\n ...(await launch(() => resumed, ANTIGRAVITY)()),\n env: { GEMINI_HOME: join(tmpdir(), 'antigravity-chat') }\n })\n }\n })\n const attach = hostTestAttachParams(null, {\n provider: 'antigravity',\n agent: 'antigravity',\n accountHome: { variable: 'GEMINI_HOME', path: '/data/antigravity-chat' },\n providerHandle: undefined\n })\n expect(await host.attach(CALLER, attach)).toMatchObject({ ok: true })\n await ready()\n resumed = true\n const modes: unknown[] = []\n let child = rig.child()\n for (const value of ['accept-edits', 'full-access']) {\n const fields = { key: 'permissionMode', value }\n const fingerprint = { method: 'agentSession.setOption', sessionId: HOST_TEST_SESSION, fields }\n const envelope = {\n sessionId: HOST_TEST_SESSION,\n clientOperationId: hostTestOperationId(),\n expectedRuntimeFence: fence(),\n payloadFingerprint: computeAgentSessionPayloadFingerprint(fingerprint)\n }\n expect(await host.setOption(CALLER, { envelope, ...fields })).toMatchObject({ ok: true })\n await send(host, value)\n // The child launched with the earlier mode is replaced before the send reaches it.\n const previous = child\n child = await waitFor(() => {\n expect(rig.child()).not.toBe(previous)\n expect(framesOf(rig.child(), 'session/prompt')).toHaveLength(1)\n return rig.child()\n })\n modes.push(framesOf(child, 'session/set_config_option')[0]?.params)\n }\n expect(modes).toEqual([\n expect.objectContaining({ configId: 'mode', value: 'auto_edit' }),\n expect.objectContaining({ configId: 'mode', value: 'yolo' })\n ])\n})","source_sha256":"5ad87361216b5f323f6dfd634897c2cd93e676cacb2457fe3b089b4d01ed08a8","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-antigravity.test.ts","line":117,"title":"runs the chat permission mode picked mid-chat as the server mode on the next send","body_sha256":"5ad87361216b5f323f6dfd634897c2cd93e676cacb2457fe3b089b4d01ed08a8"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-antigravity.test.ts:144:loop"]},{"line":170,"end_line":210,"title":"refuses a new start while its sign-in changes, and stops one already starting","decision":"fix","reason":"Global account-change gate aborts an in-progress start, refuses another acquisition, waits a late start to leave, and suppresses operation work when stop fails; release all held gates even if assertions fail.","source_body_sha256":"026e214299831ee60e0ea59eeba95df03d1a897872c62d388fee94f1548786bd","proposed_changes":[{"line":170,"action":"fix","proposal":"Always resolve signIn and leave lateStart in finally/cleanup so a failed assertion cannot retain the shared launch gate and poison subsequent tests."}],"path":"src/main/acp/acp-structured-antigravity.test.ts","start":7334,"end":8546,"byte_start":7334,"byte_end":8546,"source":"it('refuses a new start while its sign-in changes, and stops one already starting', async () => {\n const gate = ANTIGRAVITY.launchGate!\n const rig = await openAcpAdapterRig({\n spec: ANTIGRAVITY,\n script: (agent) => agent.on('session/new', () => {})\n })\n const starting = rig.acquire()\n await rig.frame('session/new')\n const signIn = deferred()\n const operation = gate.run(\n async () => {},\n () => signIn.promise\n )\n await starting\n expect(rig.openFailure()).toMatchObject({ name: 'AcpConnectionClosedError' })\n expect(rig.child().exited).toBe(true)\n await expect(rig.acquire()).rejects.toMatchObject({ reason: 'accountSwitchInProgress' })\n signIn.resolve()\n await operation\n\n const lateStart = gate.enter(undefined)\n let left = false\n let stopped = false\n let worked = false\n const failedOperation = gate.run(\n async () => {\n expect(left).toBe(true)\n stopped = true\n throw new Error('stop failed')\n },\n async () => {\n worked = true\n }\n )\n expect(lateStart.signal.aborted).toBe(true)\n expect(stopped).toBe(false)\n left = true\n lateStart.leave()\n await expect(failedOperation).rejects.toThrow('stop failed')\n expect(worked).toBe(false)\n})","source_sha256":"026e214299831ee60e0ea59eeba95df03d1a897872c62d388fee94f1548786bd","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-antigravity.test.ts","line":170,"title":"refuses a new start while its sign-in changes, and stops one already starting","body_sha256":"995272987e925c0441503e03d130cf6e6c97c09cd14dba85e67f17577cd42217"},"proposal_ids":["acp-main-0001-016"],"explicit_input_controls":[]},{"line":212,"end_line":233,"title":"stops a chat that has left the gate but is not loaded yet before the operation runs","decision":"keep","reason":"An acquired child between gate exit and loaded-host registration is closed before an account operation runs, observing actual simulated process liveness rather than only gate flags.","source_body_sha256":"75e6910ce369d76e8ab4138e79cb10a32e3a48d55c0d723bd33efc00d42f1dcc","path":"src/main/acp/acp-structured-antigravity.test.ts","start":8548,"end":9341,"byte_start":8548,"byte_end":9341,"source":"it('stops a chat that has left the gate but is not loaded yet before the operation runs', async () => {\n const [initialized, opened] = await readAcpFixture('antigravity-v1-question')\n const rig = await openAcpAdapterRig({\n spec: ANTIGRAVITY,\n initialize: result(initialized),\n script: (agent) =>\n agent.on('session/new', (frame) =>\n agent.reply(frame, { ...result(opened), sessionId: PROVIDER_SESSION })\n )\n })\n // Its start returned, so the gate has no start to abort and no loaded chat lists it yet.\n await rig.acquire()\n const child = rig.child()\n let ranOverLiveChild: boolean | null = null\n await ANTIGRAVITY.launchGate!.run(\n async () => {},\n async () => {\n ranOverLiveChild = !child.exited\n }\n )\n expect(ranOverLiveChild).toBe(false)\n})","source_sha256":"75e6910ce369d76e8ab4138e79cb10a32e3a48d55c0d723bd33efc00d42f1dcc","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-antigravity.test.ts","line":218,"title":"stops a chat that has left the gate but is not loaded yet before the operation runs","body_sha256":"75e6910ce369d76e8ab4138e79cb10a32e3a48d55c0d723bd33efc00d42f1dcc"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-structured-antigravity.test.ts:111:loop","kind":"for-of","path":"src/main/acp/acp-structured-antigravity.test.ts","line":111,"end_line":113,"start":5051,"end":5181,"byte_start":5051,"byte_end":5181,"source":"for (const mode of await Promise.all(modes)) {\n expect(process.platform === 'win32' || (mode & 0o777) === 0o700).toBe(true)\n }","source_sha256":"948542866eee0137eb54f84e06dabbdda0ce53ac149d1d212cd0566e8626ae98","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const mode of await Promise.all(modes)) ","header_sha256":"bcfb45fd2f75d4c61a671cd06bf8074952a06c1769681365313184af4268b6a7","input_position":{"path":"src/main/acp/acp-structured-antigravity.test.ts","line":111,"end_line":111,"start":5070,"end":5094,"byte_start":5070,"byte_end":5094},"binding":"const mode","resolution":[],"enclosing_case":{"line":83,"title":"launches on its own private folder with file sign-in and no other Google credentials"},"affected_case_lines":[],"classification":"filesystem observations","decision":"keep","reason":"Check permissions on both owned private temp directories, with runtime Windows permission guard; preserve actual cleanup observations.","rows":[],"current_matches":[{"path":"src/main/acp/acp-structured-antigravity.test.ts","line":112,"body_sha256":"f21a3861043c9798949f6f343b99eae8425fc71c203f900235c9ac5b6dc18b34"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-structured-antigravity.test.ts:144:loop","kind":"for-of","path":"src/main/acp/acp-structured-antigravity.test.ts","line":144,"end_line":163,"start":6236,"end":7162,"byte_start":6236,"byte_end":7162,"source":"for (const value of ['accept-edits', 'full-access']) {\n const fields = { key: 'permissionMode', value }\n const fingerprint = { method: 'agentSession.setOption', sessionId: HOST_TEST_SESSION, fields }\n const envelope = {\n sessionId: HOST_TEST_SESSION,\n clientOperationId: hostTestOperationId(),\n expectedRuntimeFence: fence(),\n payloadFingerprint: computeAgentSessionPayloadFingerprint(fingerprint)\n }\n expect(await host.setOption(CALLER, { envelope, ...fields })).toMatchObject({ ok: true })\n await send(host, value)\n // The child launched with the earlier mode is replaced before the send reaches it.\n const previous = child\n child = await waitFor(() => {\n expect(rig.child()).not.toBe(previous)\n expect(framesOf(rig.child(), 'session/prompt')).toHaveLength(1)\n return rig.child()\n })\n modes.push(framesOf(child, 'session/set_config_option')[0]?.params)\n }","source_sha256":"928922b19d3ba14193043f61cbd0433180edcf342db8f6a97673996c16b366e6","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const value of ['accept-edits', 'full-access']) ","header_sha256":"f67038be5585185d3f2cc74bd4fa58001d578ab0ffb5fb3c76641c748df0bc3b","input_position":{"path":"src/main/acp/acp-structured-antigravity.test.ts","line":144,"end_line":144,"start":6256,"end":6287,"byte_start":6256,"byte_end":6287},"binding":"const value","resolution":[],"enclosing_case":{"line":117,"title":"runs the chat permission mode picked mid-chat as the server mode on the next send"},"affected_case_lines":[],"classification":"input scenarios","decision":"keep","reason":"Actual host permission-mode writes exercise accept-edits then full-access through wire config and durable choices.","original_inputs":["accept-edits","full-access"],"rows":[{"index":1,"path":"src/main/acp/acp-structured-antigravity.test.ts","line":144,"end_line":144,"start":6257,"end":6271,"source":"'accept-edits'","value":{"kind":"string","value":"accept-edits"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"ffd022d0776c3deecacc8add55a002617155b8c6dfc1b05ea7df3b4ae824346f","byte_start":6257,"byte_end":6271,"decision":"keep","reason":"Actual host permission-mode writes exercise accept-edits then full-access through wire config and durable choices."},{"index":2,"path":"src/main/acp/acp-structured-antigravity.test.ts","line":144,"end_line":144,"start":6273,"end":6286,"source":"'full-access'","value":{"kind":"string","value":"full-access"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"8441239497b87b74de39add30011e7292faf063e509299c88dbaad81df173789","byte_start":6273,"byte_end":6286,"decision":"keep","reason":"Actual host permission-mode writes exercise accept-edits then full-access through wire config and durable choices."}],"current_matches":[{"path":"src/main/acp/acp-structured-antigravity.test.ts","line":144,"body_sha256":"9102d123eeafe5b3ca480baa6a54c4e3f509fd90f98a300701d2627bcdd7ade4"}],"policy":"Exact literal inputs within this traversal; not additional declared test cases."}],"parameter_groups":[],"body_support_cleanup_loops":[{"id":"src/main/acp/acp-structured-antigravity.test.ts:111:loop","kind":"for-of","path":"src/main/acp/acp-structured-antigravity.test.ts","line":111,"end_line":113,"start":5051,"end":5181,"byte_start":5051,"byte_end":5181,"source":"for (const mode of await Promise.all(modes)) {\n expect(process.platform === 'win32' || (mode & 0o777) === 0o700).toBe(true)\n }","source_sha256":"948542866eee0137eb54f84e06dabbdda0ce53ac149d1d212cd0566e8626ae98","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const mode of await Promise.all(modes)) ","header_sha256":"bcfb45fd2f75d4c61a671cd06bf8074952a06c1769681365313184af4268b6a7","input_position":{"path":"src/main/acp/acp-structured-antigravity.test.ts","line":111,"end_line":111,"start":5070,"end":5094,"byte_start":5070,"byte_end":5094},"binding":"const mode","resolution":[],"enclosing_case":{"line":83,"title":"launches on its own private folder with file sign-in and no other Google credentials"},"affected_case_lines":[],"classification":"filesystem observations","decision":"keep","reason":"Check permissions on both owned private temp directories, with runtime Windows permission guard; preserve actual cleanup observations.","rows":[],"current_matches":[{"path":"src/main/acp/acp-structured-antigravity.test.ts","line":112,"body_sha256":"f21a3861043c9798949f6f343b99eae8425fc71c203f900235c9ac5b6dc18b34"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-structured-antigravity.test.ts:144:loop","kind":"for-of","path":"src/main/acp/acp-structured-antigravity.test.ts","line":144,"end_line":163,"start":6236,"end":7162,"byte_start":6236,"byte_end":7162,"source":"for (const value of ['accept-edits', 'full-access']) {\n const fields = { key: 'permissionMode', value }\n const fingerprint = { method: 'agentSession.setOption', sessionId: HOST_TEST_SESSION, fields }\n const envelope = {\n sessionId: HOST_TEST_SESSION,\n clientOperationId: hostTestOperationId(),\n expectedRuntimeFence: fence(),\n payloadFingerprint: computeAgentSessionPayloadFingerprint(fingerprint)\n }\n expect(await host.setOption(CALLER, { envelope, ...fields })).toMatchObject({ ok: true })\n await send(host, value)\n // The child launched with the earlier mode is replaced before the send reaches it.\n const previous = child\n child = await waitFor(() => {\n expect(rig.child()).not.toBe(previous)\n expect(framesOf(rig.child(), 'session/prompt')).toHaveLength(1)\n return rig.child()\n })\n modes.push(framesOf(child, 'session/set_config_option')[0]?.params)\n }","source_sha256":"928922b19d3ba14193043f61cbd0433180edcf342db8f6a97673996c16b366e6","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const value of ['accept-edits', 'full-access']) ","header_sha256":"f67038be5585185d3f2cc74bd4fa58001d578ab0ffb5fb3c76641c748df0bc3b","input_position":{"path":"src/main/acp/acp-structured-antigravity.test.ts","line":144,"end_line":144,"start":6256,"end":6287,"byte_start":6256,"byte_end":6287},"binding":"const value","resolution":[],"enclosing_case":{"line":117,"title":"runs the chat permission mode picked mid-chat as the server mode on the next send"},"affected_case_lines":[],"classification":"input scenarios","decision":"keep","reason":"Actual host permission-mode writes exercise accept-edits then full-access through wire config and durable choices.","original_inputs":["accept-edits","full-access"],"rows":[{"index":1,"path":"src/main/acp/acp-structured-antigravity.test.ts","line":144,"end_line":144,"start":6257,"end":6271,"source":"'accept-edits'","value":{"kind":"string","value":"accept-edits"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"ffd022d0776c3deecacc8add55a002617155b8c6dfc1b05ea7df3b4ae824346f","byte_start":6257,"byte_end":6271,"decision":"keep","reason":"Actual host permission-mode writes exercise accept-edits then full-access through wire config and durable choices."},{"index":2,"path":"src/main/acp/acp-structured-antigravity.test.ts","line":144,"end_line":144,"start":6273,"end":6286,"source":"'full-access'","value":{"kind":"string","value":"full-access"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"8441239497b87b74de39add30011e7292faf063e509299c88dbaad81df173789","byte_start":6273,"byte_end":6286,"decision":"keep","reason":"Actual host permission-mode writes exercise accept-edits then full-access through wire config and durable choices."}],"current_matches":[{"path":"src/main/acp/acp-structured-antigravity.test.ts","line":144,"body_sha256":"9102d123eeafe5b3ca480baa6a54c4e3f509fd90f98a300701d2627bcdd7ade4"}],"policy":"Exact literal inputs within this traversal; not additional declared test cases."}],"implemented_changes":[{"proposal_id":"acp-main-0001-015","summary":"Antigravity temp-root cleanup is registered immediately with onTestFinished.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"},{"proposal_id":"acp-main-0001-016","summary":"Failure-safe hooks release signIn and lateStart; cleanup sets left before releasing lateStart and observes failed operation rejection.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/acp-launch-specs.ts","src/main/acp/acp-structured-launch-resolution.ts","src/main/acp/acp-structured-fixture-replay.test-support.ts","src/main/acp/acp-structured-host.test-support.ts","src/main/acp/acp-structured-session-adapter.ts"],"evidence_sha256":{"src/main/acp/acp-launch-specs.ts":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","src/main/acp/acp-structured-launch-resolution.ts":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","src/main/acp/acp-structured-fixture-replay.test-support.ts":"18ca0b27aec30b6ae51b5df5899eee5d614c5e88af6c799bed9248a861b54eb9","src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"evidence_source_sha256":{"src/main/acp/acp-launch-specs.ts":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","src/main/acp/acp-structured-launch-resolution.ts":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","src/main/acp/acp-structured-fixture-replay.test-support.ts":"18ca0b27aec30b6ae51b5df5899eee5d614c5e88af6c799bed9248a861b54eb9","src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"original_evidence_detail":[{"path":"src/main/acp/acp-launch-specs.ts","sha256":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","lines":352,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-launch-resolution.ts","sha256":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","lines":342,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-fixture-replay.test-support.ts","sha256":"18ca0b27aec30b6ae51b5df5899eee5d614c5e88af6c799bed9248a861b54eb9","lines":105,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-host.test-support.ts","sha256":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","lines":234,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-session-adapter.ts","sha256":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e","lines":345,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"signs a first chat in, asks in default mode, and answers a question with one of its choices","status":"passed"},{"full_name":"launches on its own private folder with file sign-in and no other Google credentials","status":"passed"},{"full_name":"runs the chat permission mode picked mid-chat as the server mode on the next send","status":"passed"},{"full_name":"refuses a new start while its sign-in changes, and stops one already starting","status":"passed"},{"full_name":"stops a chat that has left the gate but is not loaded yet before the operation runs","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-auth.test.ts","sha256":"3abc35ac429d0d1fb652f047525dd0c2fa95008a4473a1945747b05427d85905","reviewed_sha256":"708a86e98fcce5ec241d2d5dfb82bcfaf137b8cae5c905f69bd1defc2a996142","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":21,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 3, fix 1. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":4,"original_declarations":4,"final_declarations":4,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":68,"end_line":75,"title":"uses the API key in Grok's launch environment when Grok offers that method","decision":"keep","reason":"Actual adapter opens only after choosing the advertised API-key method from the launch environment; origin-created result proves successful session setup beyond a mock call.","source_body_sha256":"9fde66c877b72b91840dc974ec3722a3fdb8309250c0e5d970b88a9385d20ddc","path":"src/main/acp/acp-structured-auth.test.ts","start":2213,"end":2546,"byte_start":2213,"byte_end":2546,"source":"it(\"uses the API key in Grok's launch environment when Grok offers that method\", async () => {\n const { acquired, methods } = await signInWith({\n env: { XAI_API_KEY: 'xai-1' },\n authMethods: BOTH\n })\n expect(methods).toEqual(['xai.api_key'])\n expect(acquired).toMatchObject({ link: { origin: 'created' } })\n })","source_sha256":"9fde66c877b72b91840dc974ec3722a3fdb8309250c0e5d970b88a9385d20ddc","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-auth.test.ts","line":68,"title":"uses the API key in Grok's launch environment when Grok offers that method","body_sha256":"9fde66c877b72b91840dc974ec3722a3fdb8309250c0e5d970b88a9385d20ddc"},"proposal_ids":[],"explicit_input_controls":[]},{"line":77,"end_line":86,"title":"uses the cached sign-in without a key, or when Grok does not offer the key method","decision":"fix","reason":"No-key chooses cached sign-in and proves successful open; key-present-but-method-unavailable chooses the same fallback but currently does not assert that its acquisition actually succeeded.","source_body_sha256":"71c3a17713bf58867460bbd515f77a47d6a70029288ae1c71ef258e4424ca022","proposed_changes":[{"line":77,"action":"fix","proposal":"For keyNotOffered, assert acquired.link.origin is created as for noKey; current fallback half only asserts the outbound authenticate method and could pass if subsequent setup failed."}],"path":"src/main/acp/acp-structured-auth.test.ts","start":2550,"end":3066,"byte_start":2550,"byte_end":3066,"source":"it('uses the cached sign-in without a key, or when Grok does not offer the key method', async () => {\n const noKey = await signInWith({ env: {}, authMethods: BOTH })\n expect(noKey.methods).toEqual(['cached_token'])\n expect(noKey.acquired).toMatchObject({ link: { origin: 'created' } })\n const keyNotOffered = await signInWith({\n env: { XAI_API_KEY: 'xai-1' },\n authMethods: [{ id: 'cached_token', name: 'Cached sign-in' }]\n })\n expect(keyNotOffered.methods).toEqual(['cached_token'])\n })","source_sha256":"71c3a17713bf58867460bbd515f77a47d6a70029288ae1c71ef258e4424ca022","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-auth.test.ts","line":77,"title":"uses the cached sign-in without a key, or when Grok does not offer the key method","body_sha256":"41e29107b819d7d3cba81d7eea45c6a0b2f75705dd15a5c6ade4d53c0de53ead"},"proposal_ids":["acp-main-0001-017"],"explicit_input_controls":[]},{"line":88,"end_line":95,"title":"reports Grok signed out when it offers neither, sending no sign-in","decision":"keep","reason":"An unsupported advertised browser method yields the public notSignedIn failure and no authenticate request.","source_body_sha256":"0b06bb1800ca654accc18caa6a8c22208d50869ee72646572feeac369b272b8c","path":"src/main/acp/acp-structured-auth.test.ts","start":3070,"end":3408,"byte_start":3070,"byte_end":3408,"source":"it('reports Grok signed out when it offers neither, sending no sign-in', async () => {\n const { acquired, methods } = await signInWith({\n env: { XAI_API_KEY: 'xai-1' },\n authMethods: [{ id: 'browser', name: 'Browser' }]\n })\n expect(methods).toEqual([])\n expect(acquired).toMatchObject({ reason: 'notSignedIn' })\n })","source_sha256":"0b06bb1800ca654accc18caa6a8c22208d50869ee72646572feeac369b272b8c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-auth.test.ts","line":89,"title":"reports Grok signed out when it offers neither, sending no sign-in","body_sha256":"0b06bb1800ca654accc18caa6a8c22208d50869ee72646572feeac369b272b8c"},"proposal_ids":[],"explicit_input_controls":[]},{"line":97,"end_line":106,"title":"signs in the same way when it reopens a saved session","decision":"keep","reason":"Resume uses the same environment-driven API-key choice, succeeds with resumed link origin, and never sends session/new.","source_body_sha256":"b0fe7ce8c8b9831c6e6f756541d079dd5333d9b85d9e821806d155da923f610f","path":"src/main/acp/acp-structured-auth.test.ts","start":3412,"end":3797,"byte_start":3412,"byte_end":3797,"source":"it('signs in the same way when it reopens a saved session', async () => {\n const { rig, acquired, methods } = await signInWith({\n env: { XAI_API_KEY: 'xai-1' },\n authMethods: BOTH,\n resume: true\n })\n expect(methods).toEqual(['xai.api_key'])\n expect(acquired).toMatchObject({ link: { origin: 'resumed' } })\n expect(rig.sent('session/new')).toEqual([])\n })","source_sha256":"b0fe7ce8c8b9831c6e6f756541d079dd5333d9b85d9e821806d155da923f610f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-auth.test.ts","line":98,"title":"signs in the same way when it reopens a saved session","body_sha256":"b0fe7ce8c8b9831c6e6f756541d079dd5333d9b85d9e821806d155da923f610f"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[],"parameter_groups":[],"body_support_cleanup_loops":[],"implemented_changes":[{"proposal_id":"acp-main-0001-017","summary":"Cached fallback when key method is absent also requires created-session link success.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/acp-launch-specs.ts","src/main/acp/acp-session-setup.ts","src/main/acp/acp-structured-session-adapter.ts"],"evidence_sha256":{"src/main/acp/acp-launch-specs.ts":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","src/main/acp/acp-session-setup.ts":"96de2c002e8dcbc126d30b52abbfc43b7ab640745a558fcdd892806dd282af39","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"evidence_source_sha256":{"src/main/acp/acp-launch-specs.ts":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","src/main/acp/acp-session-setup.ts":"96de2c002e8dcbc126d30b52abbfc43b7ab640745a558fcdd892806dd282af39","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"original_evidence_detail":[{"path":"src/main/acp/acp-launch-specs.ts","sha256":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","lines":352,"read_state":"full_body_read"},{"path":"src/main/acp/acp-session-setup.ts","sha256":"96de2c002e8dcbc126d30b52abbfc43b7ab640745a558fcdd892806dd282af39","lines":85,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-session-adapter.ts","sha256":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e","lines":345,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"Grok sign-in on its own machine uses the API key in Grok's launch environment when Grok offers that method","status":"passed"},{"full_name":"Grok sign-in on its own machine uses the cached sign-in without a key, or when Grok does not offer the key method","status":"passed"},{"full_name":"Grok sign-in on its own machine reports Grok signed out when it offers neither, sending no sign-in","status":"passed"},{"full_name":"Grok sign-in on its own machine signs in the same way when it reopens a saved session","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","sha256":"6438759563b4f715801705bb59cf6508fb775c93b7a502e6668964e72d8f3665","reviewed_sha256":"21c18bf11301ca497d8c8e4bd369e4b62bb10a2c81b2c802d4906cae09127d62","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":22,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 10, fix 1. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":11,"original_declarations":11,"final_declarations":11,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":122,"end_line":129,"title":"reads %j as %s","decision":"keep","reason":"Four explicit protocol replies map killed/already-exited/not-found/refusal through the actual typed decoder, providing fast boundary-specific failures before host integration.","source_body_sha256":"438ceff3686d1d838c76d6374955a5c7046fa64d2410e394343e5c3249ee0bd0","parameter_groups":[{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":122,"source":"[\n [{ result: { taskId: 'task', outcome: 'killed' } }, 'killed'],\n [{ result: { taskId: 'task', outcome: 'already_exited' } }, 'gone'],\n [{ result: { taskId: 'task', outcome: 'not_found' } }, 'gone'],\n [{ result: null, error: 'session not found' }, 'refused']\n ]","decision":"keep","reason":"","rows":[{"input":"task/killed","decision":"keep","reason":"Acknowledged matching task kill maps killed."},{"input":"task/already_exited","decision":"keep","reason":"Known gone maps gone."},{"input":"task/not_found","decision":"keep","reason":"Absent task maps gone."},{"input":"result=null + session-not-found error","decision":"keep","reason":"Provider refusal maps refused."}],"row_count":4}],"path":"src/main/acp/acp-structured-background-task-stop.test.ts","start":4238,"end":4640,"byte_start":4238,"byte_end":4640,"source":"it.each([\n [{ result: { taskId: 'task', outcome: 'killed' } }, 'killed'],\n [{ result: { taskId: 'task', outcome: 'already_exited' } }, 'gone'],\n [{ result: { taskId: 'task', outcome: 'not_found' } }, 'gone'],\n [{ result: null, error: 'session not found' }, 'refused']\n ])('reads %j as %s', (reply, outcome) => {\n expect(grokBackgroundTaskStop.response(reply, 'task')).toBe(outcome)\n })","source_sha256":"438ceff3686d1d838c76d6374955a5c7046fa64d2410e394343e5c3249ee0bd0","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":123,"title":"reads %j as %s","body_sha256":"438ceff3686d1d838c76d6374955a5c7046fa64d2410e394343e5c3249ee0bd0"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-background-task-stop.test.ts:122:parameter-table"]},{"line":131,"end_line":141,"title":"rejects a malformed or mismatched reply: %j","decision":"keep","reason":"Five malformed/mismatched responses actually throw at the decoder, including future/missing outcomes, absent result and legacy wrong shape.","source_body_sha256":"1611536db7331f5ec112b332ecf9c2cd0ec09c6a91e0552335bd0d343398a123","parameter_groups":[{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":131,"source":"[\n { result: { taskId: 'other', outcome: 'killed' } },\n { result: { taskId: 'task', outcome: 'future_outcome' } },\n { result: { taskId: 'task' } },\n { result: null },\n { killed: true }\n ]","decision":"keep","reason":"","rows":[{"input":"other/killed","decision":"keep","reason":"Wrong task identity cannot acknowledge requested stop."},{"input":"task/future_outcome","decision":"keep","reason":"Unknown outcome cannot establish cancellation."},{"input":"task/missing outcome","decision":"keep","reason":"Absent outcome cannot establish cancellation."},{"input":"result=null","decision":"keep","reason":"Null result cannot establish cancellation."},{"input":"legacy killed=true","decision":"keep","reason":"Unwrapped legacy-shaped boolean cannot establish target-specific acknowledgement."}],"row_count":5}],"path":"src/main/acp/acp-structured-background-task-stop.test.ts","start":4644,"end":5047,"byte_start":4644,"byte_end":5047,"source":"it.each([\n { result: { taskId: 'other', outcome: 'killed' } },\n { result: { taskId: 'task', outcome: 'future_outcome' } },\n { result: { taskId: 'task' } },\n { result: null },\n { killed: true }\n ])('rejects a malformed or mismatched reply: %j', (reply) => {\n expect(() => grokBackgroundTaskStop.response(reply, 'task')).toThrow(\n 'invalid background task kill response'\n )\n })","source_sha256":"1611536db7331f5ec112b332ecf9c2cd0ec09c6a91e0552335bd0d343398a123","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":132,"title":"rejects a malformed or mismatched reply: %j","body_sha256":"1611536db7331f5ec112b332ecf9c2cd0ec09c6a91e0552335bd0d343398a123"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-background-task-stop.test.ts:131:parameter-table"]},{"line":145,"end_line":163,"title":"lists a backgrounded command with its own Stop and removes it when Grok says it ended","decision":"keep","reason":"Real host readers publish a backgrounded command, retain it after parent completion, then remove it and settle the durable row from provider completion.","source_body_sha256":"377dcd512258552bf070ecfe89205f17f76896e81d2283e9869a13a48ee499c0","path":"src/main/acp/acp-structured-background-task-stop.test.ts","start":5129,"end":5932,"byte_start":5129,"byte_end":5932,"source":"it('lists a backgrounded command with its own Stop and removes it when Grok says it ended', async () => {\n const f = await fixture()\n await f.background()\n expect(await f.strip()).toMatchObject({\n supportsTaskStop: true,\n supportsStopAll: false,\n tasks: [{ id: CHILD, kind: 'command', description: 'Run the dev server', stoppable: true }]\n })\n expect(f.childWork.views()).toMatchObject([\n { providerId: CHILD, kind: 'command', membership: 'live' }\n ])\n f.agent.reply(f.prompt, { stopReason: 'end_turn' })\n await f.rows()\n expect((await f.strip())?.tasks).toMatchObject([{ id: CHILD }])\n await f.complete({ exit_code: 0 })\n expect(await f.strip()).toBeNull()\n expect(f.childWork.views()).toEqual([])\n expect(await f.rowState()).toBe('done')\n })","source_sha256":"377dcd512258552bf070ecfe89205f17f76896e81d2283e9869a13a48ee499c0","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":146,"title":"lists a backgrounded command with its own Stop and removes it when Grok says it ended","body_sha256":"377dcd512258552bf070ecfe89205f17f76896e81d2283e9869a13a48ee499c0"},"proposal_ids":[],"explicit_input_controls":[]},{"line":165,"end_line":172,"title":"lists a monitor as monitoring","decision":"keep","reason":"Monitor-specific notification produces monitoring child-work evidence and a monitor strip row.","source_body_sha256":"d95a92f6cebb779019789a34f98961dacec33352313fa51eead72df61b5a8a29","path":"src/main/acp/acp-structured-background-task-stop.test.ts","start":5936,"end":6320,"byte_start":5936,"byte_end":6320,"source":"it('lists a monitor as monitoring', async () => {\n const f = await fixture()\n await f.background(TASK, { monitor_description: 'Watch the build log' })\n expect((await f.strip())?.tasks).toMatchObject([\n { id: CHILD, kind: 'monitor', description: 'Watch the build log', stoppable: true }\n ])\n expect(f.childWork.views()).toMatchObject([{ state: 'monitoring' }])\n })","source_sha256":"d95a92f6cebb779019789a34f98961dacec33352313fa51eead72df61b5a8a29","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":166,"title":"lists a monitor as monitoring","body_sha256":"d95a92f6cebb779019789a34f98961dacec33352313fa51eead72df61b5a8a29"},"proposal_ids":[],"explicit_input_controls":[]},{"line":174,"end_line":193,"title":"kills only the named task, and the row leaves on Grok's own completion","decision":"keep","reason":"A targeted actual kill addresses only one task; no session/cancel or process close occurs, its row remains until a completion notice, and sibling stays present.","source_body_sha256":"69a6919730c8ba8a2411ce5c6ace5259e602ddd85065f20fd9613d15c3df38aa","path":"src/main/acp/acp-structured-background-task-stop.test.ts","start":6324,"end":7389,"byte_start":6324,"byte_end":7389,"source":"it(\"kills only the named task, and the row leaves on Grok's own completion\", async () => {\n const f = await fixture()\n await f.background()\n await f.background('sibling-task')\n f.agent.on('_x.ai/task/kill', (frame) =>\n f.agent.reply(frame, { result: { taskId: TASK, outcome: 'killed' } })\n )\n expect(await f.targetedStop(CHILD)).toMatchObject({ ok: true, value: { cancelled: true } })\n expect(f.kills().at(-1)?.params).toEqual({ sessionId: PROVIDER_SESSION, taskId: TASK })\n expect(f.agent.frames.filter((frame) => frame.method === 'session/cancel')).toEqual([])\n expect(f.rig.child().closed).toBe(false)\n // Held until Grok's own ending arrives, so the strip keeps the row in its stopping state.\n expect((await f.strip())?.tasks?.map((task) => task.id)).toEqual([\n CHILD,\n 'acp-task:sibling-task'\n ])\n await f.complete({ signal: 'killed', explicitly_killed: true })\n expect((await f.strip())?.tasks?.map((task) => task.id)).toEqual(['acp-task:sibling-task'])\n expect(await f.rowState()).toBe('idle')\n })","source_sha256":"69a6919730c8ba8a2411ce5c6ace5259e602ddd85065f20fd9613d15c3df38aa","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":175,"title":"kills only the named task, and the row leaves on Grok's own completion","body_sha256":"69a6919730c8ba8a2411ce5c6ace5259e602ddd85065f20fd9613d15c3df38aa"},"proposal_ids":[],"explicit_input_controls":[]},{"line":195,"end_line":212,"title":"treats %s as gone: the transcript row settles, and a restated live task stays gone","decision":"keep","reason":"Both already-exited and not-found results settle unknown ownership, remove the task, and prevent later live restatements from reviving it.","source_body_sha256":"dccaf3d48044fa2e51b558b4b00b67a1803787eca2556a99065c78dd4480040e","parameter_groups":[{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":195,"source":"['already_exited', 'not_found']","decision":"keep","reason":"","rows":[{"input":"already_exited","decision":"keep","reason":"Provider ended task settles transcript ownership and prevents resurrection."},{"input":"not_found","decision":"keep","reason":"Provider lacks task settles unknown ownership without fabricating result."}],"row_count":2}],"path":"src/main/acp/acp-structured-background-task-stop.test.ts","start":7393,"end":8148,"byte_start":7393,"byte_end":8148,"source":"it.each(['already_exited', 'not_found'])(\n 'treats %s as gone: the transcript row settles, and a restated live task stays gone',\n async (outcome) => {\n const f = await fixture()\n await f.background()\n f.agent.on('_x.ai/task/kill', (frame) =>\n f.agent.reply(frame, { result: { taskId: TASK, outcome } })\n )\n expect(await f.targetedStop(CHILD)).toMatchObject({ ok: true, value: { cancelled: true } })\n expect(await f.rowState()).toBe('unverifiable')\n expect(await f.strip()).toBeNull()\n expect(f.childWork.views()).toEqual([])\n await f.background()\n expect(await f.rowState()).toBe('unverifiable')\n expect(await f.strip()).toBeNull()\n expect(f.childWork.views()).toEqual([])\n }\n )","source_sha256":"dccaf3d48044fa2e51b558b4b00b67a1803787eca2556a99065c78dd4480040e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":196,"title":"treats %s as gone: the transcript row settles, and a restated live task stays gone","body_sha256":"dccaf3d48044fa2e51b558b4b00b67a1803787eca2556a99065c78dd4480040e"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-background-task-stop.test.ts:195:parameter-table"]},{"line":214,"end_line":225,"title":"still writes Grok's result when its completion follows already_exited","decision":"keep","reason":"A later authoritative completion improves an already-exited/unverifiable transcript row to done without restoring running membership.","source_body_sha256":"8f186b1817ad82810db930afbfca255bd3654462bfbb642a1d77fb65960bcf31","path":"src/main/acp/acp-structured-background-task-stop.test.ts","start":8152,"end":8706,"byte_start":8152,"byte_end":8706,"source":"it(\"still writes Grok's result when its completion follows already_exited\", async () => {\n const f = await fixture()\n await f.background()\n f.agent.on('_x.ai/task/kill', (frame) =>\n f.agent.reply(frame, { result: { taskId: TASK, outcome: 'already_exited' } })\n )\n expect(await f.targetedStop(CHILD)).toMatchObject({ ok: true, value: { cancelled: true } })\n expect(await f.rowState()).toBe('unverifiable')\n await f.complete({ exit_code: 0 })\n expect(await f.rowState()).toBe('done')\n expect(await f.strip()).toBeNull()\n })","source_sha256":"8f186b1817ad82810db930afbfca255bd3654462bfbb642a1d77fb65960bcf31","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":215,"title":"still writes Grok's result when its completion follows already_exited","body_sha256":"8f186b1817ad82810db930afbfca255bd3654462bfbb642a1d77fb65960bcf31"},"proposal_ids":[],"explicit_input_controls":[]},{"line":228,"end_line":247,"title":"refuses /clear while a background command runs","decision":"keep","reason":"A real host clear request is refused with backgroundTasksRunning while the command remains active after the parent turn ended.","source_body_sha256":"ae8aef7bd6691c725c108d100f7c3f9eeb67610836ee9eedf92e1ed7bdacdec9","path":"src/main/acp/acp-structured-background-task-stop.test.ts","start":8808,"end":9461,"byte_start":8808,"byte_end":9461,"source":"it('refuses /clear while a background command runs', async () => {\n const f = await fixture()\n await f.background()\n f.agent.reply(f.prompt, { stopReason: 'end_turn' })\n await f.rows()\n const fields = { command: 'clear' as const }\n expect(\n await f.host.conversationCommand(CALLER, {\n ...fields,\n envelope: envelope('agentSession.conversationCommand', fields)\n })\n ).toMatchObject({\n ok: false,\n refusal: {\n code: 'agent_session_operation_invalid',\n message: 'Stop background tasks before using this command.',\n details: { reason: 'backgroundTasksRunning' }\n }\n })\n })","source_sha256":"ae8aef7bd6691c725c108d100f7c3f9eeb67610836ee9eedf92e1ed7bdacdec9","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":229,"title":"refuses /clear while a background command runs","body_sha256":"ae8aef7bd6691c725c108d100f7c3f9eeb67610836ee9eedf92e1ed7bdacdec9"},"proposal_ids":[],"explicit_input_controls":[]},{"line":251,"end_line":275,"title":"keeps the row after a %s","decision":"keep","reason":"RPC error, envelope refusal and wrong-id success preserve the task, return cancelled false and produce the distinct visible failure note without closing the parent.","source_body_sha256":"bdacf6e4ff44c538e1863837c079bdbbd5a211529fddf5bae8ed980932989483","parameter_groups":[{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":251,"source":"[\n ['rpc-error', \"The background task wasn't stopped.\"],\n ['envelope-error', \"The background task wasn't stopped.\"],\n ['mismatched-id', 'Cancellation was not confirmed.']\n ] as const","decision":"keep","reason":"","rows":[{"input":"rpc-error","decision":"keep","reason":"Real RPC refusal leaves live row and produces not-stopped note."},{"input":"envelope-error","decision":"keep","reason":"Provider result refusal leaves live row and produces not-stopped note."},{"input":"mismatched-id","decision":"keep","reason":"Wrong success identity leaves live row and produces not-confirmed note."}],"row_count":3}],"path":"src/main/acp/acp-structured-background-task-stop.test.ts","start":9620,"end":10697,"byte_start":9620,"byte_end":10697,"source":"it.each([\n ['rpc-error', \"The background task wasn't stopped.\"],\n ['envelope-error', \"The background task wasn't stopped.\"],\n ['mismatched-id', 'Cancellation was not confirmed.']\n ] as const)('keeps the row after a %s', async (failure, note) => {\n const f = await fixture()\n await f.background()\n f.agent.on('_x.ai/task/kill', (frame) => {\n if (failure === 'rpc-error') {\n f.agent.fail(frame, -32603, 'Internal error')\n } else if (failure === 'envelope-error') {\n f.agent.reply(frame, { result: null, error: 'session actor died' })\n } else {\n f.agent.reply(frame, { result: { taskId: 'other', outcome: 'killed' } })\n }\n })\n expect(await f.targetedStop(CHILD)).toMatchObject({ ok: true, value: { cancelled: false } })\n expect(\n (await f.rows()).flatMap((row) =>\n row.body.kind === 'status' && row.body.failure ? [row.body.text] : []\n )\n ).toEqual([note])\n expect((await f.strip())?.tasks).toMatchObject([{ id: CHILD, stoppable: true }])\n expect(f.rig.child().closed).toBe(false)\n })","source_sha256":"bdacf6e4ff44c538e1863837c079bdbbd5a211529fddf5bae8ed980932989483","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":252,"title":"keeps the row after a %s","body_sha256":"bdacf6e4ff44c538e1863837c079bdbbd5a211529fddf5bae8ed980932989483"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-background-task-stop.test.ts:251:parameter-table"]},{"line":295,"end_line":309,"title":"hides Stop only when Grok names the route unknown, and still lists the command","decision":"keep","reason":"Unknown-method probe hides only the command kill route, preserves the listed command, and makes a real targeted stop reject without another kill request.","source_body_sha256":"e0dc7b38f2668728252bc4c854625ccacf9e158d6ae019bc9d6065fbfa20ba47","path":"src/main/acp/acp-structured-background-task-stop.test.ts","start":11419,"end":12197,"byte_start":11419,"byte_end":12197,"source":"it('hides Stop only when Grok names the route unknown, and still lists the command', async () => {\n const { rig, evidence } = await checked((agent, frame) => {\n expect(frame.params).toEqual({})\n agent.fail(frame, -32601, 'Method not found')\n })\n // The session still offers Stop for its subagents, whose route answered.\n expect(rig.adapter.backgroundTaskStops(ADAPTER_SESSION)?.supportsTaskStop).toBe(true)\n expect(evidence).toMatchObject([\n { type: 'live', child: { handle: { id: CHILD }, kind: 'command', stoppable: false } }\n ])\n await expect(\n rig.adapter.stopBackgroundTasks({ sessionId: ADAPTER_SESSION, fence: 1, taskIds: [CHILD] })\n ).rejects.toThrow('unavailable')\n expect(rig.sent('_x.ai/task/kill')).toHaveLength(1)\n })","source_sha256":"e0dc7b38f2668728252bc4c854625ccacf9e158d6ae019bc9d6065fbfa20ba47","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":301,"title":"hides Stop only when Grok names the route unknown, and still lists the command","body_sha256":"e0dc7b38f2668728252bc4c854625ccacf9e158d6ae019bc9d6065fbfa20ba47"},"proposal_ids":[],"explicit_input_controls":[]},{"line":311,"end_line":320,"title":"leaves Stop to answer for itself after %s","decision":"fix","reason":"Other-refusal/no-answer route checks currently assert only a stoppable evidence flag; strengthen to perform an actual targeted operation after the probe and observe command/acknowledgement.","source_body_sha256":"ce04a03b4926046f875754a558ed4c242943cba24e23aa05f02e20753e77af32","proposed_changes":[{"line":311,"action":"fix","proposal":"After each optimistic probe case, issue a real targeted stop with the actual task id and assert that the kill request is delivered and its independent valid response is handled. A stoppable flag alone does not show the offered operation works; keep no-answer timing controlled if the probe timeout is awaited."}],"parameter_groups":[{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":311,"source":"[\n [\n 'another refusal',\n (agent: AcpScriptedAgent, frame: FakeFrame) => agent.fail(frame, -32603, 'Internal error')\n ],\n ['no answer', () => {}]\n ]","decision":"fix","reason":"","rows":[{"input":"another refusal","decision":"fix","reason":"Optimistic probe currently checks flag only; follow with actual targeted delivery and acknowledged reply."},{"input":"no answer","decision":"fix","reason":"Drive 2s probe bound by fake time, then deliver/acknowledge actual targeted stop."}],"row_count":2}],"path":"src/main/acp/acp-structured-background-task-stop.test.ts","start":12201,"end":12586,"byte_start":12201,"byte_end":12586,"source":"it.each([\n [\n 'another refusal',\n (agent: AcpScriptedAgent, frame: FakeFrame) => agent.fail(frame, -32603, 'Internal error')\n ],\n ['no answer', () => {}]\n ])('leaves Stop to answer for itself after %s', async (_label, answer) => {\n const { evidence } = await checked(answer)\n expect(evidence).toMatchObject([{ type: 'live', child: { stoppable: true } }])\n })","source_sha256":"ce04a03b4926046f875754a558ed4c242943cba24e23aa05f02e20753e77af32","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":317,"title":"leaves Stop to answer for itself after %s","body_sha256":"382a016d0fb46d8d269630657c75238353223664eb8295e9e1995a30b5258e6a"},"proposal_ids":["acp-main-0001-018"],"explicit_input_controls":["src/main/acp/acp-structured-background-task-stop.test.ts:311:parameter-table"]}],"explicit_input_controls":[{"id":"src/main/acp/acp-structured-background-task-stop.test.ts:27:loop","kind":"for-of","path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":27,"end_line":29,"start":1250,"end":1312,"byte_start":1250,"byte_end":1312,"source":"for (const close of cleanup.splice(0)) {\n await close()\n }","source_sha256":"a52a638c3d4a1e3402c6346adf7d924066ec724d400b6457383536fb4f583936","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const close of cleanup.splice(0)) ","header_sha256":"dab5dcb0e524c97576d760263cd26838cf4e8c502450e7b784c86ffe87ac0f0f","input_position":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":27,"end_line":27,"start":1270,"end":1287,"byte_start":1270,"byte_end":1287},"binding":"const close","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"cleanup","decision":"keep","reason":"Run registered fake-provider/host cleanup operations for this test.","rows":[],"current_matches":[{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":28,"body_sha256":"9e65e919a9364536b5eda12797ebb9ef047e4f36e4376a2e403616bc093e8542"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-structured-background-task-stop.test.ts:122:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":122,"end_line":129,"start":4238,"end":4640,"byte_start":4238,"byte_end":4640,"source":"[\n [{ result: { taskId: 'task', outcome: 'killed' } }, 'killed'],\n [{ result: { taskId: 'task', outcome: 'already_exited' } }, 'gone'],\n [{ result: { taskId: 'task', outcome: 'not_found' } }, 'gone'],\n [{ result: null, error: 'session not found' }, 'refused']\n ]","source_sha256":"e8a377009b3f1159850e76c43cdde9f9396bc332b6f0ccf9ca778ca637ef3ad6","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":122,"end_line":127,"start":4246,"end":4521,"byte_start":4246,"byte_end":4521},"binding":"it.each","resolution":[],"enclosing_case":{"line":122,"title":"reads %j as %s"},"affected_case_lines":[122],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":123,"end_line":123,"start":4252,"end":4313,"source":"[{ result: { taskId: 'task', outcome: 'killed' } }, 'killed']","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"result","value":{"kind":"object","value":[{"key":"taskId","value":{"kind":"string","value":"task"}},{"key":"outcome","value":{"kind":"string","value":"killed"}}]}}]},{"kind":"string","value":"killed"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"ec721dda4d4bd4407d9843d34acfab6b72c7819232c7815d0c4ac6f7348c73bf","byte_start":4252,"byte_end":4313,"input_label":"task/killed","decision":"keep","reason":"Acknowledged matching task kill maps killed."},{"index":2,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":124,"end_line":124,"start":4319,"end":4386,"source":"[{ result: { taskId: 'task', outcome: 'already_exited' } }, 'gone']","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"result","value":{"kind":"object","value":[{"key":"taskId","value":{"kind":"string","value":"task"}},{"key":"outcome","value":{"kind":"string","value":"already_exited"}}]}}]},{"kind":"string","value":"gone"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"c2131059d2b31c1cc51af558f603824a879e08f9e1fff2933f33a98843ae51a8","byte_start":4319,"byte_end":4386,"input_label":"task/already_exited","decision":"keep","reason":"Known gone maps gone."},{"index":3,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":125,"end_line":125,"start":4392,"end":4454,"source":"[{ result: { taskId: 'task', outcome: 'not_found' } }, 'gone']","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"result","value":{"kind":"object","value":[{"key":"taskId","value":{"kind":"string","value":"task"}},{"key":"outcome","value":{"kind":"string","value":"not_found"}}]}}]},{"kind":"string","value":"gone"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"6c07801a0ad4d811a8919a4dd3d8402d5bdcf92292209a18954ab47c01703490","byte_start":4392,"byte_end":4454,"input_label":"task/not_found","decision":"keep","reason":"Absent task maps gone."},{"index":4,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":126,"end_line":126,"start":4460,"end":4517,"source":"[{ result: null, error: 'session not found' }, 'refused']","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"result","value":{"kind":"null","value":null}},{"key":"error","value":{"kind":"string","value":"session not found"}}]},{"kind":"string","value":"refused"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"9a5972892c38772a145eb3dfe62dd7527abb043de3910244e32a0834d69c22bd","byte_start":4460,"byte_end":4517,"input_label":"result=null + session-not-found error","decision":"keep","reason":"Provider refusal maps refused."}],"original_row_count":4},{"id":"src/main/acp/acp-structured-background-task-stop.test.ts:131:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":131,"end_line":141,"start":4644,"end":5047,"byte_start":4644,"byte_end":5047,"source":"[\n { result: { taskId: 'other', outcome: 'killed' } },\n { result: { taskId: 'task', outcome: 'future_outcome' } },\n { result: { taskId: 'task' } },\n { result: null },\n { killed: true }\n ]","source_sha256":"6e1178e96a4c3c0ed3208d1aeeb0d16fa1559dfbfec4b32c2c29d029c9aff35b","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":131,"end_line":137,"start":4652,"end":4855,"byte_start":4652,"byte_end":4855},"binding":"it.each","resolution":[],"enclosing_case":{"line":131,"title":"rejects a malformed or mismatched reply: %j"},"affected_case_lines":[131],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":132,"end_line":132,"start":4658,"end":4708,"source":"{ result: { taskId: 'other', outcome: 'killed' } }","value":{"kind":"object","value":[{"key":"result","value":{"kind":"object","value":[{"key":"taskId","value":{"kind":"string","value":"other"}},{"key":"outcome","value":{"kind":"string","value":"killed"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"91977392d52487fa78fbc95ccab4b47830651521be3069444ea76e8b59b71d3c","byte_start":4658,"byte_end":4708,"input_label":"other/killed","decision":"keep","reason":"Wrong task identity cannot acknowledge requested stop."},{"index":2,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":133,"end_line":133,"start":4714,"end":4771,"source":"{ result: { taskId: 'task', outcome: 'future_outcome' } }","value":{"kind":"object","value":[{"key":"result","value":{"kind":"object","value":[{"key":"taskId","value":{"kind":"string","value":"task"}},{"key":"outcome","value":{"kind":"string","value":"future_outcome"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"c1dcbb14be0b76f8b9116874907eed1955bc11a0b4f1db47fc7a2625f5036107","byte_start":4714,"byte_end":4771,"input_label":"task/future_outcome","decision":"keep","reason":"Unknown outcome cannot establish cancellation."},{"index":3,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":134,"end_line":134,"start":4777,"end":4807,"source":"{ result: { taskId: 'task' } }","value":{"kind":"object","value":[{"key":"result","value":{"kind":"object","value":[{"key":"taskId","value":{"kind":"string","value":"task"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"5515cd262c0f3ba1ef37fe8dbe9f42b928456d609ff4c1a7c03e40774d55966c","byte_start":4777,"byte_end":4807,"input_label":"task/missing outcome","decision":"keep","reason":"Absent outcome cannot establish cancellation."},{"index":4,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":135,"end_line":135,"start":4813,"end":4829,"source":"{ result: null }","value":{"kind":"object","value":[{"key":"result","value":{"kind":"null","value":null}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"fbf79a56cb1441db860f9e30a190cc19ffa02bf003cd43be814917b83079aed9","byte_start":4813,"byte_end":4829,"input_label":"result=null","decision":"keep","reason":"Null result cannot establish cancellation."},{"index":5,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":136,"end_line":136,"start":4835,"end":4851,"source":"{ killed: true }","value":{"kind":"object","value":[{"key":"killed","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"b8ce4f66f30a57f7f3c7e093ce9c8b8fadc2c863e0e485141d67f98bcc2dc63a","byte_start":4835,"byte_end":4851,"input_label":"legacy killed=true","decision":"keep","reason":"Unwrapped legacy-shaped boolean cannot establish target-specific acknowledgement."}],"original_row_count":5},{"id":"src/main/acp/acp-structured-background-task-stop.test.ts:195:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":195,"end_line":212,"start":7393,"end":8148,"byte_start":7393,"byte_end":8148,"source":"['already_exited', 'not_found']","source_sha256":"46aa9e0963883be11a2eb3c26f92f8e9d5c40a5d06635890406ca25c19ce6298","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":195,"end_line":195,"start":7401,"end":7432,"byte_start":7401,"byte_end":7432},"binding":"it.each","resolution":[],"enclosing_case":{"line":195,"title":"treats %s as gone: the transcript row settles, and a restated live task stays gone"},"affected_case_lines":[195],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":195,"end_line":195,"start":7402,"end":7418,"source":"'already_exited'","value":{"kind":"string","value":"already_exited"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"22ab651fa8650aebf6ea6adaedfcc9bea10b3454b391f84dd2ffbe6a5a61fdc2","byte_start":7402,"byte_end":7418,"input_label":"already_exited","decision":"keep","reason":"Provider ended task settles transcript ownership and prevents resurrection."},{"index":2,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":195,"end_line":195,"start":7420,"end":7431,"source":"'not_found'","value":{"kind":"string","value":"not_found"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e9e54269d714611fe418e1c1cd147e074343e43d3544589d5ce700d1685b9188","byte_start":7420,"byte_end":7431,"input_label":"not_found","decision":"keep","reason":"Provider lacks task settles unknown ownership without fabricating result."}],"original_row_count":2},{"id":"src/main/acp/acp-structured-background-task-stop.test.ts:251:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":251,"end_line":275,"start":9620,"end":10697,"byte_start":9620,"byte_end":10697,"source":"[\n ['rpc-error', \"The background task wasn't stopped.\"],\n ['envelope-error', \"The background task wasn't stopped.\"],\n ['mismatched-id', 'Cancellation was not confirmed.']\n ] as const","source_sha256":"49f124b62d7855f168d8b00b708b1fe450586059dbacffd28556dc46441c73c3","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":251,"end_line":255,"start":9628,"end":9820,"byte_start":9628,"byte_end":9820},"binding":"it.each","resolution":[],"enclosing_case":{"line":251,"title":"keeps the row after a %s"},"affected_case_lines":[251],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":252,"end_line":252,"start":9634,"end":9686,"source":"['rpc-error', \"The background task wasn't stopped.\"]","value":{"kind":"array","value":[{"kind":"string","value":"rpc-error"},{"kind":"string","value":"The background task wasn't stopped."}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e7739aa7e8033e447f74c4f5358823f71b81cf892454c8c41c5060eb98a5a45c","byte_start":9634,"byte_end":9686,"input_label":"rpc-error","decision":"keep","reason":"Real RPC refusal leaves live row and produces not-stopped note."},{"index":2,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":253,"end_line":253,"start":9692,"end":9749,"source":"['envelope-error', \"The background task wasn't stopped.\"]","value":{"kind":"array","value":[{"kind":"string","value":"envelope-error"},{"kind":"string","value":"The background task wasn't stopped."}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"9aca2e428cabde363c312c577a43778e67800056f912fa6022d7776588a6d5bc","byte_start":9692,"byte_end":9749,"input_label":"envelope-error","decision":"keep","reason":"Provider result refusal leaves live row and produces not-stopped note."},{"index":3,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":254,"end_line":254,"start":9755,"end":9807,"source":"['mismatched-id', 'Cancellation was not confirmed.']","value":{"kind":"array","value":[{"kind":"string","value":"mismatched-id"},{"kind":"string","value":"Cancellation was not confirmed."}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"d6bdeda8293169d8b41becd937ac7427cf9048eb9e0e677def72fe51466039b7","byte_start":9755,"byte_end":9807,"input_label":"mismatched-id","decision":"keep","reason":"Wrong success identity leaves live row and produces not-confirmed note."}],"original_row_count":3},{"id":"src/main/acp/acp-structured-background-task-stop.test.ts:311:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":311,"end_line":320,"start":12201,"end":12586,"byte_start":12201,"byte_end":12586,"source":"[\n [\n 'another refusal',\n (agent: AcpScriptedAgent, frame: FakeFrame) => agent.fail(frame, -32603, 'Internal error')\n ],\n ['no answer', () => {}]\n ]","source_sha256":"a9592e4209f65be4ed494e3598c4724cc714ad2473dd50aa54b82bb2b1645c8d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":311,"end_line":317,"start":12209,"end":12377,"byte_start":12209,"byte_end":12377},"binding":"it.each","resolution":[],"enclosing_case":{"line":311,"title":"leaves Stop to answer for itself after %s"},"affected_case_lines":[311],"decision":"fix","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":312,"end_line":315,"start":12215,"end":12344,"source":"[\n 'another refusal',\n (agent: AcpScriptedAgent, frame: FakeFrame) => agent.fail(frame, -32603, 'Internal error')\n ]","value":{"kind":"array","value":[{"kind":"string","value":"another refusal"},{"kind":"source-expression","source":"(agent: AcpScriptedAgent, frame: FakeFrame) => agent.fail(frame, -32603, 'Internal error')"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"0eaf337ac610b6ed93de693b3e9a505f190c578a51d7230606c25e86ebb16624","byte_start":12215,"byte_end":12344,"input_label":"another refusal","decision":"fix","reason":"Optimistic probe currently checks flag only; follow with actual targeted delivery and acknowledged reply."},{"index":2,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":316,"end_line":316,"start":12350,"end":12373,"source":"['no answer', () => {}]","value":{"kind":"array","value":[{"kind":"string","value":"no answer"},{"kind":"source-expression","source":"() => {}"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"0fdb1281a0486cef1468698365b55e4b86c9b28c8e5e39ca871c1b0f881e7d53","byte_start":12350,"byte_end":12373,"input_label":"no answer","decision":"fix","reason":"Drive 2s probe bound by fake time, then deliver/acknowledge actual targeted stop."}],"original_row_count":2}],"parameter_groups":[{"id":"src/main/acp/acp-structured-background-task-stop.test.ts:122:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":122,"end_line":129,"start":4238,"end":4640,"byte_start":4238,"byte_end":4640,"source":"[\n [{ result: { taskId: 'task', outcome: 'killed' } }, 'killed'],\n [{ result: { taskId: 'task', outcome: 'already_exited' } }, 'gone'],\n [{ result: { taskId: 'task', outcome: 'not_found' } }, 'gone'],\n [{ result: null, error: 'session not found' }, 'refused']\n ]","source_sha256":"e8a377009b3f1159850e76c43cdde9f9396bc332b6f0ccf9ca778ca637ef3ad6","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":122,"end_line":127,"start":4246,"end":4521,"byte_start":4246,"byte_end":4521},"binding":"it.each","resolution":[],"enclosing_case":{"line":122,"title":"reads %j as %s"},"affected_case_lines":[122],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":123,"end_line":123,"start":4252,"end":4313,"source":"[{ result: { taskId: 'task', outcome: 'killed' } }, 'killed']","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"result","value":{"kind":"object","value":[{"key":"taskId","value":{"kind":"string","value":"task"}},{"key":"outcome","value":{"kind":"string","value":"killed"}}]}}]},{"kind":"string","value":"killed"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"ec721dda4d4bd4407d9843d34acfab6b72c7819232c7815d0c4ac6f7348c73bf","byte_start":4252,"byte_end":4313,"input_label":"task/killed","decision":"keep","reason":"Acknowledged matching task kill maps killed."},{"index":2,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":124,"end_line":124,"start":4319,"end":4386,"source":"[{ result: { taskId: 'task', outcome: 'already_exited' } }, 'gone']","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"result","value":{"kind":"object","value":[{"key":"taskId","value":{"kind":"string","value":"task"}},{"key":"outcome","value":{"kind":"string","value":"already_exited"}}]}}]},{"kind":"string","value":"gone"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"c2131059d2b31c1cc51af558f603824a879e08f9e1fff2933f33a98843ae51a8","byte_start":4319,"byte_end":4386,"input_label":"task/already_exited","decision":"keep","reason":"Known gone maps gone."},{"index":3,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":125,"end_line":125,"start":4392,"end":4454,"source":"[{ result: { taskId: 'task', outcome: 'not_found' } }, 'gone']","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"result","value":{"kind":"object","value":[{"key":"taskId","value":{"kind":"string","value":"task"}},{"key":"outcome","value":{"kind":"string","value":"not_found"}}]}}]},{"kind":"string","value":"gone"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"6c07801a0ad4d811a8919a4dd3d8402d5bdcf92292209a18954ab47c01703490","byte_start":4392,"byte_end":4454,"input_label":"task/not_found","decision":"keep","reason":"Absent task maps gone."},{"index":4,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":126,"end_line":126,"start":4460,"end":4517,"source":"[{ result: null, error: 'session not found' }, 'refused']","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"result","value":{"kind":"null","value":null}},{"key":"error","value":{"kind":"string","value":"session not found"}}]},{"kind":"string","value":"refused"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"9a5972892c38772a145eb3dfe62dd7527abb043de3910244e32a0834d69c22bd","byte_start":4460,"byte_end":4517,"input_label":"result=null + session-not-found error","decision":"keep","reason":"Provider refusal maps refused."}],"original_row_count":4},{"id":"src/main/acp/acp-structured-background-task-stop.test.ts:131:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":131,"end_line":141,"start":4644,"end":5047,"byte_start":4644,"byte_end":5047,"source":"[\n { result: { taskId: 'other', outcome: 'killed' } },\n { result: { taskId: 'task', outcome: 'future_outcome' } },\n { result: { taskId: 'task' } },\n { result: null },\n { killed: true }\n ]","source_sha256":"6e1178e96a4c3c0ed3208d1aeeb0d16fa1559dfbfec4b32c2c29d029c9aff35b","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":131,"end_line":137,"start":4652,"end":4855,"byte_start":4652,"byte_end":4855},"binding":"it.each","resolution":[],"enclosing_case":{"line":131,"title":"rejects a malformed or mismatched reply: %j"},"affected_case_lines":[131],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":132,"end_line":132,"start":4658,"end":4708,"source":"{ result: { taskId: 'other', outcome: 'killed' } }","value":{"kind":"object","value":[{"key":"result","value":{"kind":"object","value":[{"key":"taskId","value":{"kind":"string","value":"other"}},{"key":"outcome","value":{"kind":"string","value":"killed"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"91977392d52487fa78fbc95ccab4b47830651521be3069444ea76e8b59b71d3c","byte_start":4658,"byte_end":4708,"input_label":"other/killed","decision":"keep","reason":"Wrong task identity cannot acknowledge requested stop."},{"index":2,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":133,"end_line":133,"start":4714,"end":4771,"source":"{ result: { taskId: 'task', outcome: 'future_outcome' } }","value":{"kind":"object","value":[{"key":"result","value":{"kind":"object","value":[{"key":"taskId","value":{"kind":"string","value":"task"}},{"key":"outcome","value":{"kind":"string","value":"future_outcome"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"c1dcbb14be0b76f8b9116874907eed1955bc11a0b4f1db47fc7a2625f5036107","byte_start":4714,"byte_end":4771,"input_label":"task/future_outcome","decision":"keep","reason":"Unknown outcome cannot establish cancellation."},{"index":3,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":134,"end_line":134,"start":4777,"end":4807,"source":"{ result: { taskId: 'task' } }","value":{"kind":"object","value":[{"key":"result","value":{"kind":"object","value":[{"key":"taskId","value":{"kind":"string","value":"task"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"5515cd262c0f3ba1ef37fe8dbe9f42b928456d609ff4c1a7c03e40774d55966c","byte_start":4777,"byte_end":4807,"input_label":"task/missing outcome","decision":"keep","reason":"Absent outcome cannot establish cancellation."},{"index":4,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":135,"end_line":135,"start":4813,"end":4829,"source":"{ result: null }","value":{"kind":"object","value":[{"key":"result","value":{"kind":"null","value":null}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"fbf79a56cb1441db860f9e30a190cc19ffa02bf003cd43be814917b83079aed9","byte_start":4813,"byte_end":4829,"input_label":"result=null","decision":"keep","reason":"Null result cannot establish cancellation."},{"index":5,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":136,"end_line":136,"start":4835,"end":4851,"source":"{ killed: true }","value":{"kind":"object","value":[{"key":"killed","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"b8ce4f66f30a57f7f3c7e093ce9c8b8fadc2c863e0e485141d67f98bcc2dc63a","byte_start":4835,"byte_end":4851,"input_label":"legacy killed=true","decision":"keep","reason":"Unwrapped legacy-shaped boolean cannot establish target-specific acknowledgement."}],"original_row_count":5},{"id":"src/main/acp/acp-structured-background-task-stop.test.ts:195:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":195,"end_line":212,"start":7393,"end":8148,"byte_start":7393,"byte_end":8148,"source":"['already_exited', 'not_found']","source_sha256":"46aa9e0963883be11a2eb3c26f92f8e9d5c40a5d06635890406ca25c19ce6298","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":195,"end_line":195,"start":7401,"end":7432,"byte_start":7401,"byte_end":7432},"binding":"it.each","resolution":[],"enclosing_case":{"line":195,"title":"treats %s as gone: the transcript row settles, and a restated live task stays gone"},"affected_case_lines":[195],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":195,"end_line":195,"start":7402,"end":7418,"source":"'already_exited'","value":{"kind":"string","value":"already_exited"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"22ab651fa8650aebf6ea6adaedfcc9bea10b3454b391f84dd2ffbe6a5a61fdc2","byte_start":7402,"byte_end":7418,"input_label":"already_exited","decision":"keep","reason":"Provider ended task settles transcript ownership and prevents resurrection."},{"index":2,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":195,"end_line":195,"start":7420,"end":7431,"source":"'not_found'","value":{"kind":"string","value":"not_found"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e9e54269d714611fe418e1c1cd147e074343e43d3544589d5ce700d1685b9188","byte_start":7420,"byte_end":7431,"input_label":"not_found","decision":"keep","reason":"Provider lacks task settles unknown ownership without fabricating result."}],"original_row_count":2},{"id":"src/main/acp/acp-structured-background-task-stop.test.ts:251:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":251,"end_line":275,"start":9620,"end":10697,"byte_start":9620,"byte_end":10697,"source":"[\n ['rpc-error', \"The background task wasn't stopped.\"],\n ['envelope-error', \"The background task wasn't stopped.\"],\n ['mismatched-id', 'Cancellation was not confirmed.']\n ] as const","source_sha256":"49f124b62d7855f168d8b00b708b1fe450586059dbacffd28556dc46441c73c3","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":251,"end_line":255,"start":9628,"end":9820,"byte_start":9628,"byte_end":9820},"binding":"it.each","resolution":[],"enclosing_case":{"line":251,"title":"keeps the row after a %s"},"affected_case_lines":[251],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":252,"end_line":252,"start":9634,"end":9686,"source":"['rpc-error', \"The background task wasn't stopped.\"]","value":{"kind":"array","value":[{"kind":"string","value":"rpc-error"},{"kind":"string","value":"The background task wasn't stopped."}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e7739aa7e8033e447f74c4f5358823f71b81cf892454c8c41c5060eb98a5a45c","byte_start":9634,"byte_end":9686,"input_label":"rpc-error","decision":"keep","reason":"Real RPC refusal leaves live row and produces not-stopped note."},{"index":2,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":253,"end_line":253,"start":9692,"end":9749,"source":"['envelope-error', \"The background task wasn't stopped.\"]","value":{"kind":"array","value":[{"kind":"string","value":"envelope-error"},{"kind":"string","value":"The background task wasn't stopped."}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"9aca2e428cabde363c312c577a43778e67800056f912fa6022d7776588a6d5bc","byte_start":9692,"byte_end":9749,"input_label":"envelope-error","decision":"keep","reason":"Provider result refusal leaves live row and produces not-stopped note."},{"index":3,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":254,"end_line":254,"start":9755,"end":9807,"source":"['mismatched-id', 'Cancellation was not confirmed.']","value":{"kind":"array","value":[{"kind":"string","value":"mismatched-id"},{"kind":"string","value":"Cancellation was not confirmed."}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"d6bdeda8293169d8b41becd937ac7427cf9048eb9e0e677def72fe51466039b7","byte_start":9755,"byte_end":9807,"input_label":"mismatched-id","decision":"keep","reason":"Wrong success identity leaves live row and produces not-confirmed note."}],"original_row_count":3},{"id":"src/main/acp/acp-structured-background-task-stop.test.ts:311:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":311,"end_line":320,"start":12201,"end":12586,"byte_start":12201,"byte_end":12586,"source":"[\n [\n 'another refusal',\n (agent: AcpScriptedAgent, frame: FakeFrame) => agent.fail(frame, -32603, 'Internal error')\n ],\n ['no answer', () => {}]\n ]","source_sha256":"a9592e4209f65be4ed494e3598c4724cc714ad2473dd50aa54b82bb2b1645c8d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":311,"end_line":317,"start":12209,"end":12377,"byte_start":12209,"byte_end":12377},"binding":"it.each","resolution":[],"enclosing_case":{"line":311,"title":"leaves Stop to answer for itself after %s"},"affected_case_lines":[311],"decision":"fix","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":312,"end_line":315,"start":12215,"end":12344,"source":"[\n 'another refusal',\n (agent: AcpScriptedAgent, frame: FakeFrame) => agent.fail(frame, -32603, 'Internal error')\n ]","value":{"kind":"array","value":[{"kind":"string","value":"another refusal"},{"kind":"source-expression","source":"(agent: AcpScriptedAgent, frame: FakeFrame) => agent.fail(frame, -32603, 'Internal error')"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"0eaf337ac610b6ed93de693b3e9a505f190c578a51d7230606c25e86ebb16624","byte_start":12215,"byte_end":12344,"input_label":"another refusal","decision":"fix","reason":"Optimistic probe currently checks flag only; follow with actual targeted delivery and acknowledged reply."},{"index":2,"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":316,"end_line":316,"start":12350,"end":12373,"source":"['no answer', () => {}]","value":{"kind":"array","value":[{"kind":"string","value":"no answer"},{"kind":"source-expression","source":"() => {}"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"0fdb1281a0486cef1468698365b55e4b86c9b28c8e5e39ca871c1b0f881e7d53","byte_start":12350,"byte_end":12373,"input_label":"no answer","decision":"fix","reason":"Drive 2s probe bound by fake time, then deliver/acknowledge actual targeted stop."}],"original_row_count":2}],"body_support_cleanup_loops":[{"id":"src/main/acp/acp-structured-background-task-stop.test.ts:27:loop","kind":"for-of","path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":27,"end_line":29,"start":1250,"end":1312,"byte_start":1250,"byte_end":1312,"source":"for (const close of cleanup.splice(0)) {\n await close()\n }","source_sha256":"a52a638c3d4a1e3402c6346adf7d924066ec724d400b6457383536fb4f583936","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const close of cleanup.splice(0)) ","header_sha256":"dab5dcb0e524c97576d760263cd26838cf4e8c502450e7b784c86ffe87ac0f0f","input_position":{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":27,"end_line":27,"start":1270,"end":1287,"byte_start":1270,"byte_end":1287},"binding":"const close","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"cleanup","decision":"keep","reason":"Run registered fake-provider/host cleanup operations for this test.","rows":[],"current_matches":[{"path":"src/main/acp/acp-structured-background-task-stop.test.ts","line":28,"body_sha256":"9e65e919a9364536b5eda12797ebb9ef047e4f36e4376a2e403616bc093e8542"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"implemented_changes":[{"proposal_id":"acp-main-0001-018","summary":"Optimistic route rows deliver actual targeted task-kill with exact task/session identity and independently valid reply; no-answer check uses fake time.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/acp-structured-host.test-support.ts","src/main/acp/acp-dialects/grok-background-task-stop.ts","src/main/acp/acp-structured-child-work.test-support.ts","src/main/acp/acp-structured-session-adapter.ts"],"evidence_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/acp/acp-dialects/grok-background-task-stop.ts":"d4b1704d7c2c1a942c6df4dae8af22066fb268e337035938491b91a312a35b6b","src/main/acp/acp-structured-child-work.test-support.ts":"29a5c75ed44d2ee91e6fa45f833f5b1f31a04339cd70f80d6e13b9ebfade5496","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"evidence_source_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/acp/acp-dialects/grok-background-task-stop.ts":"d4b1704d7c2c1a942c6df4dae8af22066fb268e337035938491b91a312a35b6b","src/main/acp/acp-structured-child-work.test-support.ts":"29a5c75ed44d2ee91e6fa45f833f5b1f31a04339cd70f80d6e13b9ebfade5496","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"original_evidence_detail":[{"path":"src/main/acp/acp-structured-host.test-support.ts","sha256":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","lines":234,"read_state":"full_body_read"},{"path":"src/main/acp/acp-dialects/grok-background-task-stop.ts","sha256":"d4b1704d7c2c1a942c6df4dae8af22066fb268e337035938491b91a312a35b6b","lines":29,"read_state":"stored_not_claimed_read"},{"path":"src/main/acp/acp-structured-child-work.test-support.ts","sha256":"29a5c75ed44d2ee91e6fa45f833f5b1f31a04339cd70f80d6e13b9ebfade5496","lines":56,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-session-adapter.ts","sha256":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e","lines":345,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"Grok kill reply contract reads {\"result\":{\"taskId\":\"task\",\"outcome\":\"killed\"}} as killed","status":"passed"},{"full_name":"Grok kill reply contract reads {\"result\":{\"taskId\":\"task\",\"outcome\":\"already_exited\"}} as gone","status":"passed"},{"full_name":"Grok kill reply contract reads {\"result\":{\"taskId\":\"task\",\"outcome\":\"not_found\"}} as gone","status":"passed"},{"full_name":"Grok kill reply contract reads {\"result\":null,\"error\":\"session not found\"} as refused","status":"passed"},{"full_name":"Grok kill reply contract rejects a malformed or mismatched reply: {\"result\":{\"taskId\":\"other\",\"outcome\":\"killed\"}}","status":"passed"},{"full_name":"Grok kill reply contract rejects a malformed or mismatched reply: {\"result\":{\"taskId\":\"task\",\"outcome\":\"future_outcome\"}}","status":"passed"},{"full_name":"Grok kill reply contract rejects a malformed or mismatched reply: {\"result\":{\"taskId\":\"task\"}}","status":"passed"},{"full_name":"Grok kill reply contract rejects a malformed or mismatched reply: {\"result\":null}","status":"passed"},{"full_name":"Grok kill reply contract rejects a malformed or mismatched reply: {\"killed\":true}","status":"passed"},{"full_name":"Grok background commands in the background-tasks strip lists a backgrounded command with its own Stop and removes it when Grok says it ended","status":"passed"},{"full_name":"Grok background commands in the background-tasks strip lists a monitor as monitoring","status":"passed"},{"full_name":"Grok background commands in the background-tasks strip kills only the named task, and the row leaves on Grok's own completion","status":"passed"},{"full_name":"Grok background commands in the background-tasks strip treats already_exited as gone: the transcript row settles, and a restated live task stays gone","status":"passed"},{"full_name":"Grok background commands in the background-tasks strip treats not_found as gone: the transcript row settles, and a restated live task stays gone","status":"passed"},{"full_name":"Grok background commands in the background-tasks strip still writes Grok's result when its completion follows already_exited","status":"passed"},{"full_name":"Grok background commands in the background-tasks strip refuses /clear while a background command runs","status":"passed"},{"full_name":"Grok background commands in the background-tasks strip keeps the row after a rpc-error","status":"passed"},{"full_name":"Grok background commands in the background-tasks strip keeps the row after a envelope-error","status":"passed"},{"full_name":"Grok background commands in the background-tasks strip keeps the row after a mismatched-id","status":"passed"},{"full_name":"Grok kill route check hides Stop only when Grok names the route unknown, and still lists the command","status":"passed"},{"full_name":"Grok kill route check leaves Stop to answer for itself after another refusal","status":"passed"},{"full_name":"Grok kill route check leaves Stop to answer for itself after no answer","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-broken-stream.test.ts","sha256":"2a3220d04200053d3ae67b61acb66a7a954cc04ebdd4859bb79d12ad67d28150","reviewed_sha256":"44692cc4cf2896548689fbaf81e55941e8ddcbaf190867563f304435d7fa04cc","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":23,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: fix 1, keep 1. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":2,"original_declarations":2,"final_declarations":2,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":87,"end_line":130,"title":"leaves the turn running and the agent alive until Orca closes it","decision":"fix","reason":"Real Node child closes stdout but remains alive; actual adapter turn remains running and closeSession proves root exit. Replace the 500ms assumed propagation wait with observed input EOF and clean the owned directory after process closure.","source_body_sha256":"f5d2b82e615bd1f5ad14db932fa74473a245776b2a4ed22e18552f55e2526bae","proposed_changes":[{"line":123,"action":"fix","proposal":"Use the existing third spawnImpl argument of createAcpAgentConnection: delegate to real spawnProcess(spec), register a once end listener on the returned child.stdout before returning it, and await that actual EOF gate. Only afterward assert the turn remains running, the root is alive and ended is empty. This observes the supervised stream on POSIX as well as direct Windows stream; no production test-only export is needed."},{"line":88,"action":"fix","proposal":"Register each mkdtemp directory for cleanup immediately. In failure-safe cleanup close the adapter, guard missing/empty/non-numeric PID files, signal a still-live held child, await bounded real exit evidence (captured child exit where available, otherwise repeated liveness observation), then remove directories in finally. Cleanup must run even if acquire/send/assertions fail; do not equate sending a signal with proven exit."}],"path":"src/main/acp/acp-structured-broken-stream.test.ts","start":3510,"end":5237,"byte_start":3510,"byte_end":5237,"source":"it('leaves the turn running and the agent alive until Orca closes it', async () => {\n const pidFile = join(mkdtempSync(join(tmpdir(), 'orca-acp-broken-stream-')), 'pid')\n const rig = await openAcpAdapterRig({\n deps: {\n stopGraceMs: 20,\n connect: (_launch, options) =>\n createAcpAgentConnection(\n {\n command: process.execPath,\n args: ['-e', CLOSES_STDOUT_MID_TURN],\n cwd: process.cwd(),\n env: {\n ORCA_TEST_PID_FILE: pidFile,\n ORCA_TEST_SESSION: JSON.stringify({\n sessionId: PROVIDER_SESSION,\n configOptions: GROK_CONFIG_OPTIONS\n })\n }\n },\n options\n )\n }\n })\n onTestFinished(async () => {\n await rig.adapter.closeAll().catch(() => {})\n })\n await rig.acquire()\n await sendHello(rig, 'broken')\n const turns = async () =>\n (await rig.rig.rows()).flatMap((row) => readAgentJournalTurn(row.body) ?? [])\n await vi.waitFor(\n async () => expect((await turns()).at(-1)).toMatchObject({ state: 'running' }),\n { timeout: 10_000, interval: 20 }\n )\n const pid = Number(readFileSync(pidFile, 'utf8'))\n // Long enough for a closed stream to have reached the adapter.\n await new Promise((resolve) => setTimeout(resolve, 500))\n expect((await turns()).at(-1)).toMatchObject({ state: 'running' })\n expect(rig.ended).toEqual([])\n expect(alive(pid)).toBe(true)\n await expect(rig.adapter.closeSession(SESSION)).resolves.toBe(true)\n expect(alive(pid)).toBe(false)\n expect(rig.ended).toMatchObject([{ type: 'ended', cause: 'requested-close' }])\n }, 30_000)","source_sha256":"f5d2b82e615bd1f5ad14db932fa74473a245776b2a4ed22e18552f55e2526bae","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-broken-stream.test.ts","line":125,"title":"leaves the turn running and the agent alive until Orca closes it","body_sha256":"1f1772c9c574affe759df4fc9ffea5feac61ed9d931809f7f6661f43b5e257a6"},"proposal_ids":["acp-main-0001-019","acp-main-0001-021"],"explicit_input_controls":[]},{"line":134,"end_line":170,"title":"ends the session at the exit, with the turn interrupted","decision":"keep","reason":"Real root exits while a spawned descendant holds stdout; exit alone ends the session and interrupts the journal turn. Descendant creation bypasses the shared Windows spawn policy and teardown signals it without waiting for closure.","source_body_sha256":"2d50505d4bc1df419dac36a3d322a408b60843a669c386264dc0875ed2c947c7","path":"src/main/acp/acp-structured-broken-stream.test.ts","start":5334,"end":6779,"byte_start":5334,"byte_end":6779,"source":"it('ends the session at the exit, with the turn interrupted', async () => {\n const pidFile = join(mkdtempSync(join(tmpdir(), 'orca-acp-held-stdout-')), 'pid')\n const rig = await openAcpAdapterRig({\n deps: {\n connect: (_launch, options) =>\n createAcpAgentConnection(\n {\n command: process.execPath,\n args: ['-e', EXITS_HOLDING_STDOUT],\n cwd: process.cwd(),\n env: {\n ORCA_TEST_PID_FILE: pidFile,\n ORCA_TEST_SESSION: JSON.stringify({\n sessionId: PROVIDER_SESSION,\n configOptions: GROK_CONFIG_OPTIONS\n })\n }\n },\n options\n )\n }\n })\n onTestFinished(async () => {\n await rig.adapter.closeAll().catch(() => {})\n const held = Number(readFileSync(`${pidFile}.held`, 'utf8'))\n if (alive(held)) {\n process.kill(held)\n }\n })\n await rig.acquire()\n await sendHello(rig, 'held')\n await vi.waitFor(() => expect(rig.ended).toHaveLength(1), { timeout: 10_000, interval: 20 })\n expect(rig.ended[0]).toMatchObject({ type: 'ended', cause: 'unexpected-exit' })\n expect(alive(Number(readFileSync(pidFile, 'utf8')))).toBe(false)\n const turns = (await rig.rig.rows()).flatMap((row) => readAgentJournalTurn(row.body) ?? [])\n expect(turns.at(-1)).toMatchObject({ state: 'interrupted' })\n }, 30_000)","source_sha256":"2d50505d4bc1df419dac36a3d322a408b60843a669c386264dc0875ed2c947c7","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-broken-stream.test.ts","line":183,"title":"ends the session at the exit, with the turn interrupted","body_sha256":"625f1f41f5432cc30a1f2ce7dfa951a831d53d75d7b630bf3bf34661b1142c73"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[],"parameter_groups":[],"body_support_cleanup_loops":[],"implemented_changes":[{"proposal_id":"acp-main-0001-019","summary":"Direct real process at existing spawner seam produces observed stdout EOF before running/alive/no-ended assertions. Default supervisor is retained in second process-exit case.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"executed_see_scope_limits","mutation_evidence":["eof-close","eof-missing"]},{"proposal_id":"acp-main-0001-020","summary":"Nested real child launches through built process-host with inherited stdout.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"},{"proposal_id":"acp-main-0001-021","summary":"Both temp roots are cleaned; adapter close precedes safe owned PID parsing, cleanup signalling and observed absence.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/provider-process/provider-process-close.ts","src/main/acp/acp-agent-connection.ts","src/main/provider-process/managed-provider-process.ts"],"evidence_sha256":{"src/main/provider-process/provider-process-close.ts":"fba516800b8275b5b13c6369dcf7a16079ebf1d31477b1b99f8188c913077970","src/main/acp/acp-agent-connection.ts":"342ab3a8803b26d0946055c30a332c05917ce7cefc56af80bb9fe3ec37f7eeaf","src/main/provider-process/managed-provider-process.ts":"c900263abd07795ed702164b2d6bcaa69d3638fb1d451cb71a4e6cb2cb675062"},"evidence_source_sha256":{"src/main/provider-process/provider-process-close.ts":"fba516800b8275b5b13c6369dcf7a16079ebf1d31477b1b99f8188c913077970","src/main/acp/acp-agent-connection.ts":"342ab3a8803b26d0946055c30a332c05917ce7cefc56af80bb9fe3ec37f7eeaf","src/main/provider-process/managed-provider-process.ts":"c900263abd07795ed702164b2d6bcaa69d3638fb1d451cb71a4e6cb2cb675062"},"original_evidence_detail":[{"path":"src/main/provider-process/provider-process-close.ts","sha256":"fba516800b8275b5b13c6369dcf7a16079ebf1d31477b1b99f8188c913077970","lines":102,"read_state":"full_body_read"},{"path":"src/main/acp/acp-agent-connection.ts","sha256":"342ab3a8803b26d0946055c30a332c05917ce7cefc56af80bb9fe3ec37f7eeaf","lines":210,"read_state":"full_body_read"},{"path":"src/main/provider-process/managed-provider-process.ts","sha256":"c900263abd07795ed702164b2d6bcaa69d3638fb1d451cb71a4e6cb2cb675062","lines":242,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"ACP connection to a directly launched agent that closes stdout but keeps running leaves the turn running and the agent alive until Orca closes it","status":"passed"},{"full_name":"ACP agent that exits while a process it started holds its stdout open ends the session at the exit, with the turn interrupted","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-child-session-end.test.ts","sha256":"f2136c5e0f0ea65ee665262f4086edc56cf9d29a737752a00fb023603a05de54","reviewed_sha256":"f2136c5e0f0ea65ee665262f4086edc56cf9d29a737752a00fb023603a05de54","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":24,"decision":"keep","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 8. Retained the reviewed behavioral coverage; final bytes match the pinned original.","declarations":8,"original_declarations":8,"final_declarations":8,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"implementation_status":"reviewed-unchanged","cases":[{"line":71,"end_line":100,"title":"settles a known child through %s without ending or charging the parent turn","decision":"keep","reason":"Four provider notification method aliases settle only a known child, preserve its first successful outcome, and keep parent scope/usage/end independent.","source_body_sha256":"ee0e9e7d0166f778249cbdb535d9651b59e70da9c17a1d020a169eae38a7bdaf","parameter_groups":[{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":71,"source":"[\n 'session/update',\n '_x.ai/session_notification',\n 'x.ai/session_notification',\n '_x.ai/session/update'\n ]","decision":"keep","reason":"","rows":[{"input":"session/update","decision":"keep","reason":"Owned child completion is recognized on exact session/update alias; parent turn/usage remains independent."},{"input":"_x.ai/session_notification","decision":"keep","reason":"Owned child completion is recognized on exact _x.ai/session_notification alias; parent turn/usage remains independent."},{"input":"x.ai/session_notification","decision":"keep","reason":"Owned child completion is recognized on exact x.ai/session_notification alias; parent turn/usage remains independent."},{"input":"_x.ai/session/update","decision":"keep","reason":"Owned child completion is recognized on exact _x.ai/session/update alias; parent turn/usage remains independent."}],"row_count":4}],"path":"src/main/acp/acp-structured-child-session-end.test.ts","start":2375,"end":3417,"byte_start":2375,"byte_end":3417,"source":"it.each([\n 'session/update',\n '_x.ai/session_notification',\n 'x.ai/session_notification',\n '_x.ai/session/update'\n ])('settles a known child through %s without ending or charging the parent turn', (method) => {\n const f = translator()\n expect(f.end('end_turn', 'child', {}, method)).toEqual([])\n expect(f.host()).toMatchObject([\n {\n providerId: 'child',\n description: 'Original label',\n membership: 'settled',\n outcome: 'succeeded'\n }\n ])\n expect(f.end('cancelled')).toEqual([])\n expect(f.host()).toMatchObject([{ providerId: 'child', outcome: 'succeeded' }])\n const parent = f.lane.notification(\n 'session/update',\n replyChunk(f.promptId, 'Parent continues'),\n 121\n )\n expect(parent.some((event) => event.type === 'turn.open' || event.type === 'turn.end')).toBe(\n false\n )\n expect(f.lane.promptResult('parent', { stopReason: 'end_turn' }, 122)).toMatchObject([\n { type: 'turn.end', turn: f.promptId, outcome: 'success' }\n ])\n })","source_sha256":"ee0e9e7d0166f778249cbdb535d9651b59e70da9c17a1d020a169eae38a7bdaf","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":71,"title":"settles a known child through %s without ending or charging the parent turn","body_sha256":"ee0e9e7d0166f778249cbdb535d9651b59e70da9c17a1d020a169eae38a7bdaf"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-child-session-end.test.ts:71:parameter-table"]},{"line":102,"end_line":129,"title":"latches cancellation against conflicting child ends, parent reports and later working progress","decision":"keep","reason":"A cancelled child cannot be rewritten by conflicting end/finish/progress reports.","source_body_sha256":"9f8ff1c1805330c6d8e5ff23c5d092cdc02c8379d5ec3f2d4603f679b7a3d863","path":"src/main/acp/acp-structured-child-session-end.test.ts","start":3421,"end":4395,"byte_start":3421,"byte_end":4395,"source":"it('latches cancellation against conflicting child ends, parent reports and later working progress', () => {\n const f = translator()\n expect(f.end('cancelled')).toEqual([])\n expect(f.host()).toMatchObject([{ providerId: 'child', outcome: 'cancelled' }])\n expect(f.end('end_turn')).toEqual([])\n expect(\n f.lane.notification(\n '_x.ai/session_notification',\n {\n sessionId: PROVIDER_SESSION,\n update: { sessionUpdate: 'subagent_finished', subagent_id: 'child', status: 'failed' }\n },\n 121\n )\n ).toEqual([])\n const progress = f.lane.notification(\n '_x.ai/session_notification',\n {\n sessionId: PROVIDER_SESSION,\n update: { sessionUpdate: 'subagent_progress', subagent_id: 'child', tokens_used: 7 }\n },\n 122\n )\n expect(progress).toEqual([])\n expect(f.host()).toMatchObject([\n { providerId: 'child', membership: 'settled', outcome: 'cancelled' }\n ])\n })","source_sha256":"9f8ff1c1805330c6d8e5ff23c5d092cdc02c8379d5ec3f2d4603f679b7a3d863","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":102,"title":"latches cancellation against conflicting child ends, parent reports and later working progress","body_sha256":"9f8ff1c1805330c6d8e5ff23c5d092cdc02c8379d5ec3f2d4603f679b7a3d863"},"proposal_ids":[],"explicit_input_controls":[]},{"line":131,"end_line":140,"title":"ignores unknown reasons and unowned sessions without creating a child or changing the parent","decision":"keep","reason":"Unknown stop reason, unowned session and wrong extension route leave the owned child live and parent result intact.","source_body_sha256":"e75e6957af66e2f91a9b34e801d0ab46dc659e4de29168edf7532358aef7ad7c","path":"src/main/acp/acp-structured-child-session-end.test.ts","start":4399,"end":4978,"byte_start":4399,"byte_end":4978,"source":"it('ignores unknown reasons and unowned sessions without creating a child or changing the parent', () => {\n const f = translator()\n expect(f.end('future_stop_reason')).toEqual([])\n expect(f.end('cancelled', 'unowned-child')).toEqual([])\n expect(f.end('cancelled', 'child', {}, '_x.ai/other_notification')).toEqual([])\n expect(f.host()).toMatchObject([{ providerId: 'child', membership: 'live' }])\n expect(f.lane.promptResult('parent', { stopReason: 'end_turn' }, 122)).toMatchObject([\n { type: 'turn.end', turn: f.promptId, outcome: 'success' }\n ])\n })","source_sha256":"e75e6957af66e2f91a9b34e801d0ab46dc659e4de29168edf7532358aef7ad7c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":131,"title":"ignores unknown reasons and unowned sessions without creating a child or changing the parent","body_sha256":"e75e6957af66e2f91a9b34e801d0ab46dc659e4de29168edf7532358aef7ad7c"},"proposal_ids":[],"explicit_input_controls":[]},{"line":142,"end_line":156,"title":"drops child messages, turn starts and usage instead of opening a child turn in the parent","decision":"keep","reason":"Child text, child usage and child turn-start notifications never open or charge a parent turn, while later valid child completion still settles ownership.","source_body_sha256":"3f79db4c029061d118b93d53bcc83416eaee93f42903a430ed83635097d75f8f","body_loops":[{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":144,"source":"for (const update of [\n { sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 'Child text' } },\n { sessionUpdate: 'response_completed', usage: { input_tokens: 99999 } },\n { sessionUpdate: 'turn_started', prompt_id: 'child-turn' }\n ]) ","classification":"input scenarios","decision":"keep","reason":"Child text, usage and turn-start must not create/charge parent turn.","inputs":["agent_message_chunk","response_completed usage","turn_started"]}],"path":"src/main/acp/acp-structured-child-session-end.test.ts","start":4982,"end":5735,"byte_start":4982,"byte_end":5735,"source":"it('drops child messages, turn starts and usage instead of opening a child turn in the parent', () => {\n const f = translator()\n for (const update of [\n { sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 'Child text' } },\n { sessionUpdate: 'response_completed', usage: { input_tokens: 99999 } },\n { sessionUpdate: 'turn_started', prompt_id: 'child-turn' }\n ]) {\n expect(\n f.lane.notification('_x.ai/session_notification', { sessionId: 'child', update }, 120)\n ).toEqual([])\n }\n expect(f.host()).toMatchObject([{ providerId: 'child', membership: 'live' }])\n expect(f.end('end_turn')).toEqual([])\n expect(f.host()).toMatchObject([{ providerId: 'child', outcome: 'succeeded' }])\n })","source_sha256":"3f79db4c029061d118b93d53bcc83416eaee93f42903a430ed83635097d75f8f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":142,"title":"drops child messages, turn starts and usage instead of opening a child turn in the parent","body_sha256":"3f79db4c029061d118b93d53bcc83416eaee93f42903a430ed83635097d75f8f"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-child-session-end.test.ts:144:loop"]},{"line":158,"end_line":174,"title":"ignores malformed completions and child-scoped roster reports without learning a new child","decision":"keep","reason":"Malformed child completions and child-scoped nested roster notices do not fabricate another owned child or alter the existing one.","source_body_sha256":"291a0f57d9fcd0a2afe86c71fc9296d5ead2708663596c1473135c386052df3c","body_loops":[{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":160,"source":"for (const update of [\n { sessionUpdate: 'turn_completed', stop_reason: 'cancelled' },\n { sessionUpdate: 'turn_completed', prompt_id: 'child-turn', stop_reason: null },\n { sessionUpdate: 'subagent_spawned', subagent_id: 'nested-child' },\n { sessionUpdate: 'subagent_finished', subagent_id: 'child', status: 'cancelled' }\n ]) ","classification":"input scenarios","decision":"keep","reason":"Malformed child completion, null stop reason, and child-owned nested roster must not settle parent or learn child.","inputs":["cancelled without prompt id","null reason with prompt id","nested subagent_spawned"]}],"path":"src/main/acp/acp-structured-child-session-end.test.ts","start":5739,"end":6631,"byte_start":5739,"byte_end":6631,"source":"it('ignores malformed completions and child-scoped roster reports without learning a new child', () => {\n const f = translator()\n for (const update of [\n { sessionUpdate: 'turn_completed', stop_reason: 'cancelled' },\n { sessionUpdate: 'turn_completed', prompt_id: 'child-turn', stop_reason: null },\n { sessionUpdate: 'subagent_spawned', subagent_id: 'nested-child' },\n { sessionUpdate: 'subagent_finished', subagent_id: 'child', status: 'cancelled' }\n ]) {\n expect(\n f.lane.notification('_x.ai/session_notification', { sessionId: 'child', update }, 120)\n ).toEqual([])\n }\n expect(f.end('cancelled', 'nested-child')).toEqual([])\n expect(f.host()).toMatchObject([{ providerId: 'child', membership: 'live' }])\n expect(f.end('end_turn')).toEqual([])\n expect(f.host()).toMatchObject([{ providerId: 'child', outcome: 'succeeded' }])\n })","source_sha256":"291a0f57d9fcd0a2afe86c71fc9296d5ead2708663596c1473135c386052df3c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":158,"title":"ignores malformed completions and child-scoped roster reports without learning a new child","body_sha256":"291a0f57d9fcd0a2afe86c71fc9296d5ead2708663596c1473135c386052df3c"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-child-session-end.test.ts:160:loop"]},{"line":176,"end_line":189,"title":"ignores replay and loading even when a loading notice explicitly says it is live","decision":"keep","reason":"Replay/loading/disposed translator states ignore child completion even if metadata claims a loading notice is live; valid post-load completion still works.","source_body_sha256":"c031e8b0f631d5d6fedb285c2e45c6a396525f5102daa8fbe48e70f81a61a923","path":"src/main/acp/acp-structured-child-session-end.test.ts","start":6635,"end":7335,"byte_start":6635,"byte_end":7335,"source":"it('ignores replay and loading even when a loading notice explicitly says it is live', () => {\n const f = translator()\n expect(f.end('cancelled', 'child', { isReplay: true })).toEqual([])\n f.lane.promptResult('parent', { stopReason: 'end_turn' }, 110)\n f.lane.beginLoad()\n expect(f.end('cancelled')).toEqual([])\n expect(f.end('cancelled', 'child', { isReplay: false })).toEqual([])\n f.lane.finishLoad()\n expect(f.host()).toMatchObject([{ providerId: 'child', membership: 'live' }])\n expect(f.end('end_turn')).toEqual([])\n expect(f.host()).toMatchObject([{ providerId: 'child', outcome: 'succeeded' }])\n f.lane.dispose()\n expect(f.end('cancelled')).toEqual([])\n })","source_sha256":"c031e8b0f631d5d6fedb285c2e45c6a396525f5102daa8fbe48e70f81a61a923","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":176,"title":"ignores replay and loading even when a loading notice explicitly says it is live","body_sha256":"c031e8b0f631d5d6fedb285c2e45c6a396525f5102daa8fbe48e70f81a61a923"},"proposal_ids":[],"explicit_input_controls":[]},{"line":191,"end_line":198,"title":"keeps the foreign-session fence for another dialect even when its parent reports subagents","decision":"keep","reason":"A generic dialect borrowing Grok roster parsing still preserves its foreign-session fence; this tests dialect ownership policy independently of wire recognition.","source_body_sha256":"de3358fcf53a29e638676d8ddff5f2d0522d8d85f92c3494527f1634de33125a","path":"src/main/acp/acp-structured-child-session-end.test.ts","start":7339,"end":7687,"byte_start":7339,"byte_end":7687,"source":"it('keeps the foreign-session fence for another dialect even when its parent reports subagents', () => {\n const f = translator({\n ...GENERIC_ACP_DIALECT,\n notification: GROK_ACP_DIALECT.notification\n })\n expect(f.end('cancelled')).toEqual([])\n expect(f.host()).toMatchObject([{ providerId: 'child', membership: 'live' }])\n })","source_sha256":"de3358fcf53a29e638676d8ddff5f2d0522d8d85f92c3494527f1634de33125a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":191,"title":"keeps the foreign-session fence for another dialect even when its parent reports subagents","body_sha256":"de3358fcf53a29e638676d8ddff5f2d0522d8d85f92c3494527f1634de33125a"},"proposal_ids":[],"explicit_input_controls":[]},{"line":202,"end_line":318,"title":"preserves the %s child outcome through the parent result and shutdown sweep","decision":"keep","reason":"Recorded parent-stop traffic and two reason variants preserve child row identities/scopes, distinguish explicit cancellation from unknown outcome, and settle one parent turn under controlled fake time.","source_body_sha256":"7ea127611700f4d46a6ea4754d2233b9f4fe9d5115ab29738583ce2a292ca10d","parameter_groups":[{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":202,"source":"[\n ['cancelled', 'stopped', 'cancelled'],\n ['future_stop_reason', 'unverifiable', 'unknown']\n ] as const","decision":"keep","reason":"","rows":[{"input":"cancelled/stopped/cancelled","decision":"keep","reason":"Authoritative cancellation remains cancelled through parent end/close sweep."},{"input":"future_stop_reason/unverifiable/unknown","decision":"keep","reason":"Unknown stop reason does not invent success/cancellation at end/close sweep."}],"row_count":2}],"path":"src/main/acp/acp-structured-child-session-end.test.ts","start":7771,"end":12724,"byte_start":7771,"byte_end":12724,"source":"it.each([\n ['cancelled', 'stopped', 'cancelled'],\n ['future_stop_reason', 'unverifiable', 'unknown']\n ] as const)(\n 'preserves the %s child outcome through the parent result and shutdown sweep',\n async (reason, state, outcome) => {\n const childWork = acpChildWorkStatusSink()\n const hosted = await openAttachedHostRig({ now: () => Date.now() }, childWork.sink)\n cleanup.push(async () => {\n hosted.rig.child().exit()\n await hosted.host.close(SESSION, 'user-close')\n })\n await send(hosted.host, 'Run two background children')\n const prompt = await hosted.rig.frame('session/prompt')\n const child = hosted.rig.child()\n const agent = child.agent\n const frames = await readAcpFixture('s8-subagent-parent-stop')\n const notices = frames\n .filter((frame) => frame.direction === 'in' && frame.message.method)\n .map(({ message }) => ({\n method: message.method ?? '',\n params: z\n .looseObject({\n sessionId: z.string(),\n update: z.looseObject({ sessionUpdate: z.string() })\n })\n .parse(\n JSON.parse(\n JSON.stringify(message.params).replaceAll(\n 'prompt:recorded-parent',\n promptIdOf(prompt)\n )\n )\n )\n }))\n const [spawnFirst, spawnSecond, selectedFinished, childEnded, parentEnded] = notices\n vi.useFakeTimers({ toFake: ['setTimeout', 'clearTimeout', 'Date'] })\n vi.setSystemTime(1791496672056)\n agent.notify('session/update', replyChunk(promptIdOf(prompt), 'Both children running'))\n agent.notify(spawnFirst.method, spawnFirst.params)\n vi.setSystemTime(1791496672060)\n agent.notify(spawnSecond.method, spawnSecond.params)\n await hosted.rows()\n vi.setSystemTime(1791496678726)\n agent.notify(selectedFinished.method, selectedFinished.params)\n // One saved row per subagent, which the host writes from its records.\n const subagents = async () =>\n (await hosted.rows()).flatMap((row) =>\n row.body.kind === 'message'\n ? row.body.blocks.filter(isSubagentBlock).map((block) => ({ row, block }))\n : []\n )\n const original = await subagents()\n expect(original.map(({ block }) => block)).toMatchObject([\n { id: 'subagent-1', state: 'stopped' },\n { id: 'subagent-2', state: 'working' }\n ])\n const strip = async () =>\n (await hosted.host.history({ sessionId: SESSION, direction: 'tail' })).page.backgroundTasks\n expect((await strip())?.tasks).toMatchObject([\n { id: 'subagent-2', description: 'Keep strip count', kind: 'agent' }\n ])\n vi.setSystemTime(1791496686285)\n agent.on('session/cancel', () => {\n setTimeout(\n () =>\n agent.notify(childEnded.method, {\n ...childEnded.params,\n update: { ...childEnded.params.update, stop_reason: reason }\n }),\n 17\n )\n setTimeout(() => agent.notify(parentEnded.method, parentEnded.params), 18)\n setTimeout(() => agent.reply(prompt, { stopReason: 'cancelled' }), 335)\n })\n expect(await stop(hosted.host)).toMatchObject({ ok: true, value: { cancelled: true } })\n await vi.advanceTimersByTimeAsync(17)\n const beforeParentResult = await subagents()\n expect\n .soft(beforeParentResult.map(({ row }) => row.itemId))\n .toEqual(original.map(({ row }) => row.itemId))\n expect\n .soft(beforeParentResult.map(({ row }) => row.turnScope))\n .toEqual(original.map(({ row }) => row.turnScope))\n expect\n .soft(beforeParentResult.map(({ block }) => block))\n .toMatchObject([\n original[0].block,\n reason === 'cancelled' ? { id: 'subagent-2', state: 'stopped' } : original[1].block\n ])\n expect.soft((await hosted.turns()).at(-1)).toMatchObject({ state: 'running' })\n expect.soft(child.closes).toBe(0)\n if (reason === 'cancelled') {\n expect.soft(childWork.views()).toMatchObject([\n { membership: 'settled', outcome: 'cancelled' },\n { membership: 'settled', outcome: 'cancelled' }\n ])\n expect.soft(await strip()).toBeNull()\n }\n await vi.advanceTimersByTimeAsync(335 - 17)\n expect((await hosted.turns()).at(-1)).toMatchObject({\n state: 'interrupted',\n outcome: 'cancellation'\n })\n const settled = await subagents()\n expect(settled.map(({ block }) => block)).toMatchObject([\n { id: 'subagent-1', state: 'stopped' },\n { id: 'subagent-2', state }\n ])\n expect(childWork.views()).toMatchObject([\n { membership: 'settled', outcome: 'cancelled' },\n { membership: 'settled', outcome }\n ])\n expect(await strip()).toBeNull()\n expect(await hosted.turns()).toHaveLength(1)\n }\n )","source_sha256":"7ea127611700f4d46a6ea4754d2233b9f4fe9d5115ab29738583ce2a292ca10d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":202,"title":"preserves the %s child outcome through the parent result and shutdown sweep","body_sha256":"7ea127611700f4d46a6ea4754d2233b9f4fe9d5115ab29738583ce2a292ca10d"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-child-session-end.test.ts:202:parameter-table"]}],"explicit_input_controls":[{"id":"src/main/acp/acp-structured-child-session-end.test.ts:20:loop","kind":"for-of","path":"src/main/acp/acp-structured-child-session-end.test.ts","line":20,"end_line":22,"start":1057,"end":1119,"byte_start":1057,"byte_end":1119,"source":"for (const close of cleanup.splice(0)) {\n await close()\n }","source_sha256":"a52a638c3d4a1e3402c6346adf7d924066ec724d400b6457383536fb4f583936","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const close of cleanup.splice(0)) ","header_sha256":"dab5dcb0e524c97576d760263cd26838cf4e8c502450e7b784c86ffe87ac0f0f","input_position":{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":20,"end_line":20,"start":1077,"end":1094,"byte_start":1077,"byte_end":1094},"binding":"const close","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"cleanup","decision":"keep","reason":"Run registered host cleanup for each owned rig.","rows":[],"current_matches":[{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":20,"body_sha256":"9e65e919a9364536b5eda12797ebb9ef047e4f36e4376a2e403616bc093e8542"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-structured-child-session-end.test.ts:71:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-child-session-end.test.ts","line":71,"end_line":100,"start":2375,"end":3417,"byte_start":2375,"byte_end":3417,"source":"[\n 'session/update',\n '_x.ai/session_notification',\n 'x.ai/session_notification',\n '_x.ai/session/update'\n ]","source_sha256":"86e1fb3ae3633a500741f15e992e9b79893fe0212699844ae94d301445145a06","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":71,"end_line":76,"start":2383,"end":2504,"byte_start":2383,"byte_end":2504},"binding":"it.each","resolution":[],"enclosing_case":{"line":71,"title":"settles a known child through %s without ending or charging the parent turn"},"affected_case_lines":[71],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":72,"end_line":72,"start":2389,"end":2405,"source":"'session/update'","value":{"kind":"string","value":"session/update"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"49aac2133fee245909840be993a4f724c659ede7f72094f8fbeb8086913cd577","byte_start":2389,"byte_end":2405,"input_label":"session/update","decision":"keep","reason":"Owned child completion is recognized on exact session/update alias; parent turn/usage remains independent."},{"index":2,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":73,"end_line":73,"start":2411,"end":2439,"source":"'_x.ai/session_notification'","value":{"kind":"string","value":"_x.ai/session_notification"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"439adad5297989b7565a5d708ad626d3f5b24ea1714f35b1f6b61b06680017fc","byte_start":2411,"byte_end":2439,"input_label":"_x.ai/session_notification","decision":"keep","reason":"Owned child completion is recognized on exact _x.ai/session_notification alias; parent turn/usage remains independent."},{"index":3,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":74,"end_line":74,"start":2445,"end":2472,"source":"'x.ai/session_notification'","value":{"kind":"string","value":"x.ai/session_notification"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"80a1cfb1ac707e7e42ad3fe25e39bbbc079fc74ed9993ffa5f985fc75435de66","byte_start":2445,"byte_end":2472,"input_label":"x.ai/session_notification","decision":"keep","reason":"Owned child completion is recognized on exact x.ai/session_notification alias; parent turn/usage remains independent."},{"index":4,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":75,"end_line":75,"start":2478,"end":2500,"source":"'_x.ai/session/update'","value":{"kind":"string","value":"_x.ai/session/update"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"ea59c5a372c6cba933ead9f0663a340870069c101ba13ec77a97464e38cf0da0","byte_start":2478,"byte_end":2500,"input_label":"_x.ai/session/update","decision":"keep","reason":"Owned child completion is recognized on exact _x.ai/session/update alias; parent turn/usage remains independent."}],"original_row_count":4},{"id":"src/main/acp/acp-structured-child-session-end.test.ts:144:loop","kind":"for-of","path":"src/main/acp/acp-structured-child-session-end.test.ts","line":144,"end_line":152,"start":5117,"end":5522,"byte_start":5117,"byte_end":5522,"source":"for (const update of [\n { sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 'Child text' } },\n { sessionUpdate: 'response_completed', usage: { input_tokens: 99999 } },\n { sessionUpdate: 'turn_started', prompt_id: 'child-turn' }\n ]) {\n expect(\n f.lane.notification('_x.ai/session_notification', { sessionId: 'child', update }, 120)\n ).toEqual([])\n }","source_sha256":"b6665aeff4f3b6ec67523eef6ab2a992220aa45c301f1a22c727fcc5a4f9f69b","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const update of [\n { sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 'Child text' } },\n { sessionUpdate: 'response_completed', usage: { input_tokens: 99999 } },\n { sessionUpdate: 'turn_started', prompt_id: 'child-turn' }\n ]) ","header_sha256":"5708788cf1bcc37cfdab2b860475049885b1cded7ac344615ade09c11375761f","input_position":{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":144,"end_line":148,"start":5138,"end":5384,"byte_start":5138,"byte_end":5384},"binding":"const update","resolution":[],"enclosing_case":{"line":142,"title":"drops child messages, turn starts and usage instead of opening a child turn in the parent"},"affected_case_lines":[],"classification":"input scenarios","decision":"keep","reason":"Child text, usage and turn-start must not create/charge parent turn.","original_inputs":["agent_message_chunk","response_completed usage","turn_started"],"rows":[{"index":1,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":145,"end_line":145,"start":5146,"end":5233,"source":"{ sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 'Child text' } }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"agent_message_chunk"}},{"key":"content","value":{"kind":"object","value":[{"key":"type","value":{"kind":"string","value":"text"}},{"key":"text","value":{"kind":"string","value":"Child text"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"46a311a16546871508b5481de3dea5399361c32cec5947943107b2243f0fd4cf","byte_start":5146,"byte_end":5233,"decision":"keep","reason":"Child text, usage and turn-start must not create/charge parent turn."},{"index":2,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":146,"end_line":146,"start":5241,"end":5312,"source":"{ sessionUpdate: 'response_completed', usage: { input_tokens: 99999 } }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"response_completed"}},{"key":"usage","value":{"kind":"object","value":[{"key":"input_tokens","value":{"kind":"number","value":99999}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"8ee1317e1586f5daebf3da1c89f541342a7e096f7ceca1fc599ac9d3039f694d","byte_start":5241,"byte_end":5312,"decision":"keep","reason":"Child text, usage and turn-start must not create/charge parent turn."},{"index":3,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":147,"end_line":147,"start":5320,"end":5378,"source":"{ sessionUpdate: 'turn_started', prompt_id: 'child-turn' }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"turn_started"}},{"key":"prompt_id","value":{"kind":"string","value":"child-turn"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"0933d02f368e86ff5773119ca6b49a7f0e9cf9a618326b4cc611c5e52acbf437","byte_start":5320,"byte_end":5378,"decision":"keep","reason":"Child text, usage and turn-start must not create/charge parent turn."}],"current_matches":[{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":144,"body_sha256":"43d8a756ff122a3334797c40347e389b04293c673a1dde856ef47e4e3cea7577"}],"policy":"Exact literal inputs within this traversal; not additional declared test cases."},{"id":"src/main/acp/acp-structured-child-session-end.test.ts:160:loop","kind":"for-of","path":"src/main/acp/acp-structured-child-session-end.test.ts","line":160,"end_line":169,"start":5875,"end":6359,"byte_start":5875,"byte_end":6359,"source":"for (const update of [\n { sessionUpdate: 'turn_completed', stop_reason: 'cancelled' },\n { sessionUpdate: 'turn_completed', prompt_id: 'child-turn', stop_reason: null },\n { sessionUpdate: 'subagent_spawned', subagent_id: 'nested-child' },\n { sessionUpdate: 'subagent_finished', subagent_id: 'child', status: 'cancelled' }\n ]) {\n expect(\n f.lane.notification('_x.ai/session_notification', { sessionId: 'child', update }, 120)\n ).toEqual([])\n }","source_sha256":"911eeaec32455b31d0993c095ebdbbc22ae934b62ec11af12377b5abf4cb1d86","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const update of [\n { sessionUpdate: 'turn_completed', stop_reason: 'cancelled' },\n { sessionUpdate: 'turn_completed', prompt_id: 'child-turn', stop_reason: null },\n { sessionUpdate: 'subagent_spawned', subagent_id: 'nested-child' },\n { sessionUpdate: 'subagent_finished', subagent_id: 'child', status: 'cancelled' }\n ]) ","header_sha256":"8cc2ba74071666f2387a261267f91c58564f2ef39d0fac3f9936895613e44b96","input_position":{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":160,"end_line":165,"start":5896,"end":6221,"byte_start":5896,"byte_end":6221},"binding":"const update","resolution":[],"enclosing_case":{"line":158,"title":"ignores malformed completions and child-scoped roster reports without learning a new child"},"affected_case_lines":[],"classification":"input scenarios","decision":"keep","reason":"Malformed child completion, null stop reason, and child-owned nested roster must not settle parent or learn child.","original_inputs":["cancelled without prompt id","null reason with prompt id","nested subagent_spawned"],"rows":[{"index":1,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":161,"end_line":161,"start":5904,"end":5965,"source":"{ sessionUpdate: 'turn_completed', stop_reason: 'cancelled' }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"turn_completed"}},{"key":"stop_reason","value":{"kind":"string","value":"cancelled"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"71e643b2ac300c3ffbb85161a7bdfbec477e053accb0cd9a7288588b8735f521","byte_start":5904,"byte_end":5965,"decision":"keep","reason":"Malformed child completion, null stop reason, and child-owned nested roster must not settle parent or learn child."},{"index":2,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":162,"end_line":162,"start":5973,"end":6052,"source":"{ sessionUpdate: 'turn_completed', prompt_id: 'child-turn', stop_reason: null }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"turn_completed"}},{"key":"prompt_id","value":{"kind":"string","value":"child-turn"}},{"key":"stop_reason","value":{"kind":"null","value":null}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"95bf5052debaddb82c36ce66ca6a4dbd08fd5fbb5a312e3abbda603318edbe82","byte_start":5973,"byte_end":6052,"decision":"keep","reason":"Malformed child completion, null stop reason, and child-owned nested roster must not settle parent or learn child."},{"index":3,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":163,"end_line":163,"start":6060,"end":6126,"source":"{ sessionUpdate: 'subagent_spawned', subagent_id: 'nested-child' }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"subagent_spawned"}},{"key":"subagent_id","value":{"kind":"string","value":"nested-child"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"fe991d8667d965b8ca6eccb4bd1954cc929408896dfb4ad168ab6b1dec10bff9","byte_start":6060,"byte_end":6126,"decision":"keep","reason":"Malformed child completion, null stop reason, and child-owned nested roster must not settle parent or learn child."},{"index":4,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":164,"end_line":164,"start":6134,"end":6215,"source":"{ sessionUpdate: 'subagent_finished', subagent_id: 'child', status: 'cancelled' }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"subagent_finished"}},{"key":"subagent_id","value":{"kind":"string","value":"child"}},{"key":"status","value":{"kind":"string","value":"cancelled"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"31ec8c00105d12f6c0f70c2ed3cf8de57cba711540c26713f9577671843299c8","byte_start":6134,"byte_end":6215,"decision":"keep","reason":"Malformed child completion, null stop reason, and child-owned nested roster must not settle parent or learn child."}],"current_matches":[{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":160,"body_sha256":"43d8a756ff122a3334797c40347e389b04293c673a1dde856ef47e4e3cea7577"}],"policy":"Exact literal inputs within this traversal; not additional declared test cases."},{"id":"src/main/acp/acp-structured-child-session-end.test.ts:202:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-child-session-end.test.ts","line":202,"end_line":318,"start":7771,"end":12724,"byte_start":7771,"byte_end":12724,"source":"[\n ['cancelled', 'stopped', 'cancelled'],\n ['future_stop_reason', 'unverifiable', 'unknown']\n ] as const","source_sha256":"ab4b21f4799eb4cdac0db853c3ac5aa3aa64814a67cec87119107c33893b92bc","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":202,"end_line":205,"start":7779,"end":7890,"byte_start":7779,"byte_end":7890},"binding":"it.each","resolution":[],"enclosing_case":{"line":202,"title":"preserves the %s child outcome through the parent result and shutdown sweep"},"affected_case_lines":[202],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":203,"end_line":203,"start":7785,"end":7822,"source":"['cancelled', 'stopped', 'cancelled']","value":{"kind":"array","value":[{"kind":"string","value":"cancelled"},{"kind":"string","value":"stopped"},{"kind":"string","value":"cancelled"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"db68341b98266e29e225db195bc6817ec1f368f7d4d0cc4977e69fafdc1f1c3a","byte_start":7785,"byte_end":7822,"input_label":"cancelled/stopped/cancelled","decision":"keep","reason":"Authoritative cancellation remains cancelled through parent end/close sweep."},{"index":2,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":204,"end_line":204,"start":7828,"end":7877,"source":"['future_stop_reason', 'unverifiable', 'unknown']","value":{"kind":"array","value":[{"kind":"string","value":"future_stop_reason"},{"kind":"string","value":"unverifiable"},{"kind":"string","value":"unknown"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"1794ea0e527d384da34a48997002d4577aa5657ecbbd0ebfc6cb30857bec54dd","byte_start":7828,"byte_end":7877,"input_label":"future_stop_reason/unverifiable/unknown","decision":"keep","reason":"Unknown stop reason does not invent success/cancellation at end/close sweep."}],"original_row_count":2}],"parameter_groups":[{"id":"src/main/acp/acp-structured-child-session-end.test.ts:71:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-child-session-end.test.ts","line":71,"end_line":100,"start":2375,"end":3417,"byte_start":2375,"byte_end":3417,"source":"[\n 'session/update',\n '_x.ai/session_notification',\n 'x.ai/session_notification',\n '_x.ai/session/update'\n ]","source_sha256":"86e1fb3ae3633a500741f15e992e9b79893fe0212699844ae94d301445145a06","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":71,"end_line":76,"start":2383,"end":2504,"byte_start":2383,"byte_end":2504},"binding":"it.each","resolution":[],"enclosing_case":{"line":71,"title":"settles a known child through %s without ending or charging the parent turn"},"affected_case_lines":[71],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":72,"end_line":72,"start":2389,"end":2405,"source":"'session/update'","value":{"kind":"string","value":"session/update"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"49aac2133fee245909840be993a4f724c659ede7f72094f8fbeb8086913cd577","byte_start":2389,"byte_end":2405,"input_label":"session/update","decision":"keep","reason":"Owned child completion is recognized on exact session/update alias; parent turn/usage remains independent."},{"index":2,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":73,"end_line":73,"start":2411,"end":2439,"source":"'_x.ai/session_notification'","value":{"kind":"string","value":"_x.ai/session_notification"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"439adad5297989b7565a5d708ad626d3f5b24ea1714f35b1f6b61b06680017fc","byte_start":2411,"byte_end":2439,"input_label":"_x.ai/session_notification","decision":"keep","reason":"Owned child completion is recognized on exact _x.ai/session_notification alias; parent turn/usage remains independent."},{"index":3,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":74,"end_line":74,"start":2445,"end":2472,"source":"'x.ai/session_notification'","value":{"kind":"string","value":"x.ai/session_notification"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"80a1cfb1ac707e7e42ad3fe25e39bbbc079fc74ed9993ffa5f985fc75435de66","byte_start":2445,"byte_end":2472,"input_label":"x.ai/session_notification","decision":"keep","reason":"Owned child completion is recognized on exact x.ai/session_notification alias; parent turn/usage remains independent."},{"index":4,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":75,"end_line":75,"start":2478,"end":2500,"source":"'_x.ai/session/update'","value":{"kind":"string","value":"_x.ai/session/update"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"ea59c5a372c6cba933ead9f0663a340870069c101ba13ec77a97464e38cf0da0","byte_start":2478,"byte_end":2500,"input_label":"_x.ai/session/update","decision":"keep","reason":"Owned child completion is recognized on exact _x.ai/session/update alias; parent turn/usage remains independent."}],"original_row_count":4},{"id":"src/main/acp/acp-structured-child-session-end.test.ts:202:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-child-session-end.test.ts","line":202,"end_line":318,"start":7771,"end":12724,"byte_start":7771,"byte_end":12724,"source":"[\n ['cancelled', 'stopped', 'cancelled'],\n ['future_stop_reason', 'unverifiable', 'unknown']\n ] as const","source_sha256":"ab4b21f4799eb4cdac0db853c3ac5aa3aa64814a67cec87119107c33893b92bc","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":202,"end_line":205,"start":7779,"end":7890,"byte_start":7779,"byte_end":7890},"binding":"it.each","resolution":[],"enclosing_case":{"line":202,"title":"preserves the %s child outcome through the parent result and shutdown sweep"},"affected_case_lines":[202],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":203,"end_line":203,"start":7785,"end":7822,"source":"['cancelled', 'stopped', 'cancelled']","value":{"kind":"array","value":[{"kind":"string","value":"cancelled"},{"kind":"string","value":"stopped"},{"kind":"string","value":"cancelled"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"db68341b98266e29e225db195bc6817ec1f368f7d4d0cc4977e69fafdc1f1c3a","byte_start":7785,"byte_end":7822,"input_label":"cancelled/stopped/cancelled","decision":"keep","reason":"Authoritative cancellation remains cancelled through parent end/close sweep."},{"index":2,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":204,"end_line":204,"start":7828,"end":7877,"source":"['future_stop_reason', 'unverifiable', 'unknown']","value":{"kind":"array","value":[{"kind":"string","value":"future_stop_reason"},{"kind":"string","value":"unverifiable"},{"kind":"string","value":"unknown"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"1794ea0e527d384da34a48997002d4577aa5657ecbbd0ebfc6cb30857bec54dd","byte_start":7828,"byte_end":7877,"input_label":"future_stop_reason/unverifiable/unknown","decision":"keep","reason":"Unknown stop reason does not invent success/cancellation at end/close sweep."}],"original_row_count":2}],"body_support_cleanup_loops":[{"id":"src/main/acp/acp-structured-child-session-end.test.ts:20:loop","kind":"for-of","path":"src/main/acp/acp-structured-child-session-end.test.ts","line":20,"end_line":22,"start":1057,"end":1119,"byte_start":1057,"byte_end":1119,"source":"for (const close of cleanup.splice(0)) {\n await close()\n }","source_sha256":"a52a638c3d4a1e3402c6346adf7d924066ec724d400b6457383536fb4f583936","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const close of cleanup.splice(0)) ","header_sha256":"dab5dcb0e524c97576d760263cd26838cf4e8c502450e7b784c86ffe87ac0f0f","input_position":{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":20,"end_line":20,"start":1077,"end":1094,"byte_start":1077,"byte_end":1094},"binding":"const close","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"cleanup","decision":"keep","reason":"Run registered host cleanup for each owned rig.","rows":[],"current_matches":[{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":20,"body_sha256":"9e65e919a9364536b5eda12797ebb9ef047e4f36e4376a2e403616bc093e8542"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-structured-child-session-end.test.ts:144:loop","kind":"for-of","path":"src/main/acp/acp-structured-child-session-end.test.ts","line":144,"end_line":152,"start":5117,"end":5522,"byte_start":5117,"byte_end":5522,"source":"for (const update of [\n { sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 'Child text' } },\n { sessionUpdate: 'response_completed', usage: { input_tokens: 99999 } },\n { sessionUpdate: 'turn_started', prompt_id: 'child-turn' }\n ]) {\n expect(\n f.lane.notification('_x.ai/session_notification', { sessionId: 'child', update }, 120)\n ).toEqual([])\n }","source_sha256":"b6665aeff4f3b6ec67523eef6ab2a992220aa45c301f1a22c727fcc5a4f9f69b","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const update of [\n { sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 'Child text' } },\n { sessionUpdate: 'response_completed', usage: { input_tokens: 99999 } },\n { sessionUpdate: 'turn_started', prompt_id: 'child-turn' }\n ]) ","header_sha256":"5708788cf1bcc37cfdab2b860475049885b1cded7ac344615ade09c11375761f","input_position":{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":144,"end_line":148,"start":5138,"end":5384,"byte_start":5138,"byte_end":5384},"binding":"const update","resolution":[],"enclosing_case":{"line":142,"title":"drops child messages, turn starts and usage instead of opening a child turn in the parent"},"affected_case_lines":[],"classification":"input scenarios","decision":"keep","reason":"Child text, usage and turn-start must not create/charge parent turn.","original_inputs":["agent_message_chunk","response_completed usage","turn_started"],"rows":[{"index":1,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":145,"end_line":145,"start":5146,"end":5233,"source":"{ sessionUpdate: 'agent_message_chunk', content: { type: 'text', text: 'Child text' } }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"agent_message_chunk"}},{"key":"content","value":{"kind":"object","value":[{"key":"type","value":{"kind":"string","value":"text"}},{"key":"text","value":{"kind":"string","value":"Child text"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"46a311a16546871508b5481de3dea5399361c32cec5947943107b2243f0fd4cf","byte_start":5146,"byte_end":5233,"decision":"keep","reason":"Child text, usage and turn-start must not create/charge parent turn."},{"index":2,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":146,"end_line":146,"start":5241,"end":5312,"source":"{ sessionUpdate: 'response_completed', usage: { input_tokens: 99999 } }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"response_completed"}},{"key":"usage","value":{"kind":"object","value":[{"key":"input_tokens","value":{"kind":"number","value":99999}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"8ee1317e1586f5daebf3da1c89f541342a7e096f7ceca1fc599ac9d3039f694d","byte_start":5241,"byte_end":5312,"decision":"keep","reason":"Child text, usage and turn-start must not create/charge parent turn."},{"index":3,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":147,"end_line":147,"start":5320,"end":5378,"source":"{ sessionUpdate: 'turn_started', prompt_id: 'child-turn' }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"turn_started"}},{"key":"prompt_id","value":{"kind":"string","value":"child-turn"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"0933d02f368e86ff5773119ca6b49a7f0e9cf9a618326b4cc611c5e52acbf437","byte_start":5320,"byte_end":5378,"decision":"keep","reason":"Child text, usage and turn-start must not create/charge parent turn."}],"current_matches":[{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":144,"body_sha256":"43d8a756ff122a3334797c40347e389b04293c673a1dde856ef47e4e3cea7577"}],"policy":"Exact literal inputs within this traversal; not additional declared test cases."},{"id":"src/main/acp/acp-structured-child-session-end.test.ts:160:loop","kind":"for-of","path":"src/main/acp/acp-structured-child-session-end.test.ts","line":160,"end_line":169,"start":5875,"end":6359,"byte_start":5875,"byte_end":6359,"source":"for (const update of [\n { sessionUpdate: 'turn_completed', stop_reason: 'cancelled' },\n { sessionUpdate: 'turn_completed', prompt_id: 'child-turn', stop_reason: null },\n { sessionUpdate: 'subagent_spawned', subagent_id: 'nested-child' },\n { sessionUpdate: 'subagent_finished', subagent_id: 'child', status: 'cancelled' }\n ]) {\n expect(\n f.lane.notification('_x.ai/session_notification', { sessionId: 'child', update }, 120)\n ).toEqual([])\n }","source_sha256":"911eeaec32455b31d0993c095ebdbbc22ae934b62ec11af12377b5abf4cb1d86","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const update of [\n { sessionUpdate: 'turn_completed', stop_reason: 'cancelled' },\n { sessionUpdate: 'turn_completed', prompt_id: 'child-turn', stop_reason: null },\n { sessionUpdate: 'subagent_spawned', subagent_id: 'nested-child' },\n { sessionUpdate: 'subagent_finished', subagent_id: 'child', status: 'cancelled' }\n ]) ","header_sha256":"8cc2ba74071666f2387a261267f91c58564f2ef39d0fac3f9936895613e44b96","input_position":{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":160,"end_line":165,"start":5896,"end":6221,"byte_start":5896,"byte_end":6221},"binding":"const update","resolution":[],"enclosing_case":{"line":158,"title":"ignores malformed completions and child-scoped roster reports without learning a new child"},"affected_case_lines":[],"classification":"input scenarios","decision":"keep","reason":"Malformed child completion, null stop reason, and child-owned nested roster must not settle parent or learn child.","original_inputs":["cancelled without prompt id","null reason with prompt id","nested subagent_spawned"],"rows":[{"index":1,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":161,"end_line":161,"start":5904,"end":5965,"source":"{ sessionUpdate: 'turn_completed', stop_reason: 'cancelled' }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"turn_completed"}},{"key":"stop_reason","value":{"kind":"string","value":"cancelled"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"71e643b2ac300c3ffbb85161a7bdfbec477e053accb0cd9a7288588b8735f521","byte_start":5904,"byte_end":5965,"decision":"keep","reason":"Malformed child completion, null stop reason, and child-owned nested roster must not settle parent or learn child."},{"index":2,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":162,"end_line":162,"start":5973,"end":6052,"source":"{ sessionUpdate: 'turn_completed', prompt_id: 'child-turn', stop_reason: null }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"turn_completed"}},{"key":"prompt_id","value":{"kind":"string","value":"child-turn"}},{"key":"stop_reason","value":{"kind":"null","value":null}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"95bf5052debaddb82c36ce66ca6a4dbd08fd5fbb5a312e3abbda603318edbe82","byte_start":5973,"byte_end":6052,"decision":"keep","reason":"Malformed child completion, null stop reason, and child-owned nested roster must not settle parent or learn child."},{"index":3,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":163,"end_line":163,"start":6060,"end":6126,"source":"{ sessionUpdate: 'subagent_spawned', subagent_id: 'nested-child' }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"subagent_spawned"}},{"key":"subagent_id","value":{"kind":"string","value":"nested-child"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"fe991d8667d965b8ca6eccb4bd1954cc929408896dfb4ad168ab6b1dec10bff9","byte_start":6060,"byte_end":6126,"decision":"keep","reason":"Malformed child completion, null stop reason, and child-owned nested roster must not settle parent or learn child."},{"index":4,"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":164,"end_line":164,"start":6134,"end":6215,"source":"{ sessionUpdate: 'subagent_finished', subagent_id: 'child', status: 'cancelled' }","value":{"kind":"object","value":[{"key":"sessionUpdate","value":{"kind":"string","value":"subagent_finished"}},{"key":"subagent_id","value":{"kind":"string","value":"child"}},{"key":"status","value":{"kind":"string","value":"cancelled"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"31ec8c00105d12f6c0f70c2ed3cf8de57cba711540c26713f9577671843299c8","byte_start":6134,"byte_end":6215,"decision":"keep","reason":"Malformed child completion, null stop reason, and child-owned nested roster must not settle parent or learn child."}],"current_matches":[{"path":"src/main/acp/acp-structured-child-session-end.test.ts","line":160,"body_sha256":"43d8a756ff122a3334797c40347e389b04293c673a1dde856ef47e4e3cea7577"}],"policy":"Exact literal inputs within this traversal; not additional declared test cases."}],"implemented_changes":[],"evidence":["src/main/acp/acp-dialects/grok-dialect.ts","src/main/acp/acp-structured-child-work.test-support.ts","src/main/acp/acp-timeline-translator.ts"],"evidence_sha256":{"src/main/acp/acp-dialects/grok-dialect.ts":"6ce1c85d14107c695c2c4cef369dd22514d021428e45941f2aeb9ec5e5547cf0","src/main/acp/acp-structured-child-work.test-support.ts":"29a5c75ed44d2ee91e6fa45f833f5b1f31a04339cd70f80d6e13b9ebfade5496","src/main/acp/acp-timeline-translator.ts":"286f5183234b304ce856d2190bd62405f95200a9be7a5529ef1169a3aaf5c1f9"},"evidence_source_sha256":{"src/main/acp/acp-dialects/grok-dialect.ts":"6ce1c85d14107c695c2c4cef369dd22514d021428e45941f2aeb9ec5e5547cf0","src/main/acp/acp-structured-child-work.test-support.ts":"29a5c75ed44d2ee91e6fa45f833f5b1f31a04339cd70f80d6e13b9ebfade5496","src/main/acp/acp-timeline-translator.ts":"286f5183234b304ce856d2190bd62405f95200a9be7a5529ef1169a3aaf5c1f9"},"original_evidence_detail":[{"path":"src/main/acp/acp-dialects/grok-dialect.ts","sha256":"6ce1c85d14107c695c2c4cef369dd22514d021428e45941f2aeb9ec5e5547cf0","lines":229,"read_state":"stored_not_claimed_read"},{"path":"src/main/acp/acp-structured-child-work.test-support.ts","sha256":"29a5c75ed44d2ee91e6fa45f833f5b1f31a04339cd70f80d6e13b9ebfade5496","lines":56,"read_state":"full_body_read"},{"path":"src/main/acp/acp-timeline-translator.ts","sha256":"286f5183234b304ce856d2190bd62405f95200a9be7a5529ef1169a3aaf5c1f9","lines":337,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"owned Grok child-session completion settles a known child through session/update without ending or charging the parent turn","status":"passed"},{"full_name":"owned Grok child-session completion settles a known child through _x.ai/session_notification without ending or charging the parent turn","status":"passed"},{"full_name":"owned Grok child-session completion settles a known child through x.ai/session_notification without ending or charging the parent turn","status":"passed"},{"full_name":"owned Grok child-session completion settles a known child through _x.ai/session/update without ending or charging the parent turn","status":"passed"},{"full_name":"owned Grok child-session completion latches cancellation against conflicting child ends, parent reports and later working progress","status":"passed"},{"full_name":"owned Grok child-session completion ignores unknown reasons and unowned sessions without creating a child or changing the parent","status":"passed"},{"full_name":"owned Grok child-session completion drops child messages, turn starts and usage instead of opening a child turn in the parent","status":"passed"},{"full_name":"owned Grok child-session completion ignores malformed completions and child-scoped roster reports without learning a new child","status":"passed"},{"full_name":"owned Grok child-session completion ignores replay and loading even when a loading notice explicitly says it is live","status":"passed"},{"full_name":"owned Grok child-session completion keeps the foreign-session fence for another dialect even when its parent reports subagents","status":"passed"},{"full_name":"recorded child-session outcome during a full parent Stop preserves the cancelled child outcome through the parent result and shutdown sweep","status":"passed"},{"full_name":"recorded child-session outcome during a full parent Stop preserves the future_stop_reason child outcome through the parent result and shutdown sweep","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-child-stop.test.ts","sha256":"cf8a2369d8c7cdb60f1f383d0446df9274aa3e7f7e846da1aab5da7cd37b2331","reviewed_sha256":"5d7b5b683dcac4162f41085c2c38db2f5985a011d0fdaeded2ea7b56b67a0e43","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":25,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 4, fix 1. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":5,"original_declarations":5,"final_declarations":5,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":19,"end_line":37,"title":"reads typed and legacy replies truthfully: %j","decision":"keep","reason":"Seven typed/legacy reply shapes are decoded independently, including already-finished failed/cancelled mapping and future outcome conservative fallback.","source_body_sha256":"437ad043cad2592311860bbd02f64558711be680df15e1ebef27f79bbcf3b33f","parameter_groups":[{"path":"src/main/acp/acp-structured-child-stop.test.ts","line":19,"source":"[\n [{ cancelled: true, outcome: { kind: 'cancelled' } }, { cancelled: true }],\n [{ cancelled: true }, { cancelled: true }],\n [{ cancelled: false }, { cancelled: false }],\n [\n { cancelled: false, outcome: { kind: 'already_finished', status: 'failed' } },\n { cancelled: false, state: 'failed' }\n ],\n [\n { cancelled: false, outcome: { kind: 'already_finished', status: 'cancelled' } },\n { cancelled: false, state: 'stopped' }\n ],\n [{ cancelled: false, outcome: { kind: 'not_found' } }, { cancelled: false }],\n [{ cancelled: false, outcome: { kind: 'future_kind' } }, { cancelled: false }]\n ]","decision":"keep","reason":"","rows":[{"input":"cancelled + kind cancelled","decision":"keep","reason":"Modern cancellation envelope maps true."},{"input":"cancelled only","decision":"keep","reason":"Legacy successful envelope maps true."},{"input":"cancelled=false","decision":"keep","reason":"Refusal remains false without an ending."},{"input":"already_finished failed","decision":"keep","reason":"Provider failure ending maps failed."},{"input":"already_finished cancelled","decision":"keep","reason":"Provider cancellation ending maps stopped."},{"input":"not_found","decision":"keep","reason":"Absence does not acknowledge a cancellation."},{"input":"future_kind","decision":"keep","reason":"Unknown result kind cannot invent an outcome."}],"row_count":7}],"path":"src/main/acp/acp-structured-child-stop.test.ts","start":597,"end":1447,"byte_start":597,"byte_end":1447,"source":"it.each([\n [{ cancelled: true, outcome: { kind: 'cancelled' } }, { cancelled: true }],\n [{ cancelled: true }, { cancelled: true }],\n [{ cancelled: false }, { cancelled: false }],\n [\n { cancelled: false, outcome: { kind: 'already_finished', status: 'failed' } },\n { cancelled: false, state: 'failed' }\n ],\n [\n { cancelled: false, outcome: { kind: 'already_finished', status: 'cancelled' } },\n { cancelled: false, state: 'stopped' }\n ],\n [{ cancelled: false, outcome: { kind: 'not_found' } }, { cancelled: false }],\n [{ cancelled: false, outcome: { kind: 'future_kind' } }, { cancelled: false }]\n ])('reads typed and legacy replies truthfully: %j', (payload, expected) => {\n expect(\n grokSubagentStop.response({ result: { subagentId: 'child', ...payload } }, 'child')\n ).toEqual(expected)\n })","source_sha256":"437ad043cad2592311860bbd02f64558711be680df15e1ebef27f79bbcf3b33f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-stop.test.ts","line":20,"title":"reads typed and legacy replies truthfully: %j","body_sha256":"437ad043cad2592311860bbd02f64558711be680df15e1ebef27f79bbcf3b33f"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-child-stop.test.ts:19:parameter-table"]},{"line":39,"end_line":50,"title":"rejects malformed, refused and mismatched replies: %j","decision":"keep","reason":"Six malformed/refused/mismatched shapes actually fail decoder validation, including an envelope error beside an otherwise valid result.","source_body_sha256":"739ae7e075038fa9e1e0fb4500e7e018f60747e4ed1dac373e796d705cd6b905","parameter_groups":[{"path":"src/main/acp/acp-structured-child-stop.test.ts","line":39,"source":"[\n { result: null, error: 'refused' },\n { result: { subagentId: 'other', cancelled: true } },\n { result: { subagentId: 'child' } },\n { result: { subagentId: 'child', cancelled: true }, error: 'refused' },\n { result: { subagentId: 'child', cancelled: false, outcome: { kind: 'already_finished' } } },\n { cancelled: true }\n ]","decision":"keep","reason":"","rows":[{"input":"result null + error","decision":"keep","reason":"Refusal envelope is not valid success."},{"input":"wrong child id","decision":"keep","reason":"Target mismatch cannot acknowledge stop."},{"input":"missing cancelled","decision":"keep","reason":"Missing required action result rejected."},{"input":"success plus error","decision":"keep","reason":"Conflicting result/error rejected."},{"input":"already_finished missing status","decision":"keep","reason":"Incomplete ending cannot determine child outcome."},{"input":"unwrapped cancelled","decision":"keep","reason":"Legacy wrong envelope cannot identify target."}],"row_count":6}],"path":"src/main/acp/acp-structured-child-stop.test.ts","start":1451,"end":1996,"byte_start":1451,"byte_end":1996,"source":"it.each([\n { result: null, error: 'refused' },\n { result: { subagentId: 'other', cancelled: true } },\n { result: { subagentId: 'child' } },\n { result: { subagentId: 'child', cancelled: true }, error: 'refused' },\n { result: { subagentId: 'child', cancelled: false, outcome: { kind: 'already_finished' } } },\n { cancelled: true }\n ])('rejects malformed, refused and mismatched replies: %j', (reply) => {\n expect(() => grokSubagentStop.response(reply, 'child')).toThrow(\n 'invalid child cancellation response'\n )\n })","source_sha256":"739ae7e075038fa9e1e0fb4500e7e018f60747e4ed1dac373e796d705cd6b905","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-stop.test.ts","line":40,"title":"rejects malformed, refused and mismatched replies: %j","body_sha256":"739ae7e075038fa9e1e0fb4500e7e018f60747e4ed1dac373e796d705cd6b905"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-child-stop.test.ts:39:parameter-table"]},{"line":52,"end_line":77,"title":"hides targeted Stop when the non-mutating route check fails with %s","decision":"keep","reason":"Four explicit route-probe errors make a real targeted operation reject and never send session/cancel; both capability and delivery refusal are observed.","source_body_sha256":"aa137b4ef838b031b7a5ce8407b428746e0617c630af4fd458c230041a5ff973","parameter_groups":[{"path":"src/main/acp/acp-structured-child-stop.test.ts","line":52,"source":"[-32601, -32000, -32603, -32602]","decision":"keep","reason":"","rows":[{"input":"-32601","decision":"keep","reason":"Unknown route disables target stop."},{"input":"-32000","decision":"keep","reason":"Generic auth error does not prove malformed-id handler route."},{"input":"-32603","decision":"keep","reason":"Generic internal error does not prove recognized subagent stop route."},{"input":"-32602","decision":"keep","reason":"Parameter-error code alone lacks specific missing-subagentId evidence."}],"row_count":4}],"path":"src/main/acp/acp-structured-child-stop.test.ts","start":2000,"end":2989,"byte_start":2000,"byte_end":2989,"source":"it.each([-32601, -32000, -32603, -32602])(\n 'hides targeted Stop when the non-mutating route check fails with %s',\n async (code) => {\n const rig = await openAcpAdapterRig({\n script: (agent) => {\n agent.on('_x.ai/subagent/cancel', (frame) => {\n expect(frame.params).toEqual({})\n agent.fail(frame, code, 'Unavailable')\n })\n agent.on('_x.ai/task/kill', (frame) => agent.fail(frame, -32601, 'Method not found'))\n }\n })\n cleanup.push(() => rig.adapter.closeAll())\n await rig.acquire()\n expect(rig.adapter.backgroundTaskStops(SESSION)).toEqual({\n supportsTaskStop: false,\n supportsStopAll: false\n })\n await expect(\n rig.adapter.stopBackgroundTasks({ sessionId: SESSION, fence: 1, taskIds: ['child'] })\n ).rejects.toThrow('unavailable')\n expect(rig.child().agent.frames.filter((frame) => frame.method === 'session/cancel')).toEqual(\n []\n )\n }\n )","source_sha256":"aa137b4ef838b031b7a5ce8407b428746e0617c630af4fd458c230041a5ff973","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-stop.test.ts","line":53,"title":"hides targeted Stop when the non-mutating route check fails with %s","body_sha256":"aa137b4ef838b031b7a5ce8407b428746e0617c630af4fd458c230041a5ff973"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-child-stop.test.ts:52:parameter-table"]},{"line":79,"end_line":93,"title":"enables only the proved route and checks the acquisition fence before addressing a child","decision":"keep","reason":"A valid route probe is insufficient to bypass acquisition fence: wrong-fence stop rejects with no second actual child cancellation request.","source_body_sha256":"e53ec39780e18d86e89b81cc1355008a4530391b8f6d2ace9b281689853d2779","path":"src/main/acp/acp-structured-child-stop.test.ts","start":2993,"end":3620,"byte_start":2993,"byte_end":3620,"source":"it('enables only the proved route and checks the acquisition fence before addressing a child', async () => {\n const rig = await openAcpAdapterRig()\n cleanup.push(() => rig.adapter.closeAll())\n await rig.acquire()\n expect(rig.adapter.backgroundTaskStops(SESSION)).toEqual({\n supportsTaskStop: true,\n supportsStopAll: false\n })\n await expect(\n rig.adapter.stopBackgroundTasks({ sessionId: SESSION, fence: 2, taskIds: ['child'] })\n ).rejects.toThrow('unavailable')\n expect(\n rig.child().agent.frames.filter((frame) => frame.method === '_x.ai/subagent/cancel')\n ).toHaveLength(1)\n })","source_sha256":"e53ec39780e18d86e89b81cc1355008a4530391b8f6d2ace9b281689853d2779","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-stop.test.ts","line":80,"title":"enables only the proved route and checks the acquisition fence before addressing a child","body_sha256":"e53ec39780e18d86e89b81cc1355008a4530391b8f6d2ace9b281689853d2779"},"proposal_ids":[],"explicit_input_controls":[]},{"line":95,"end_line":106,"title":"bounds an unanswered route check without ending the parent connection","decision":"fix","reason":"Unanswered route probe eventually refuses targeted support while leaving the connection open; use a fake clock to assert its deadline and a successful subsequent session action.","source_body_sha256":"2f4e4dd262fcec26cf299f7109e24a94eadc17f66b94ed7273d5ba7d5dcdfda0","proposed_changes":[{"line":95,"action":"fix","proposal":"Control the route-check timeout with fake timers and observe its expiration, then prove session usability with a real follow-up request/turn. The current case waits on a real deadline and checks only support/closed flags."}],"path":"src/main/acp/acp-structured-child-stop.test.ts","start":3624,"end":4145,"byte_start":3624,"byte_end":4145,"source":"it('bounds an unanswered route check without ending the parent connection', async () => {\n const rig = await openAcpAdapterRig({\n script: (agent) => {\n agent.on('_x.ai/subagent/cancel', () => {})\n agent.on('_x.ai/task/kill', (frame) => agent.fail(frame, -32601, 'Method not found'))\n }\n })\n cleanup.push(() => rig.adapter.closeAll())\n await rig.acquire()\n expect(rig.adapter.backgroundTaskStops(SESSION)?.supportsTaskStop).toBe(false)\n expect(rig.child().closed).toBe(false)\n })","source_sha256":"2f4e4dd262fcec26cf299f7109e24a94eadc17f66b94ed7273d5ba7d5dcdfda0","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-child-stop.test.ts","line":96,"title":"bounds an unanswered route check without ending the parent connection","body_sha256":"dad684fc1f85808c76552d842cf3e339b691d040175559765198bc34654ca740"},"proposal_ids":["acp-main-0001-022"],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-structured-child-stop.test.ts:12:loop","kind":"for-of","path":"src/main/acp/acp-structured-child-stop.test.ts","line":12,"end_line":14,"start":435,"end":497,"byte_start":435,"byte_end":497,"source":"for (const close of cleanup.splice(0)) {\n await close()\n }","source_sha256":"a52a638c3d4a1e3402c6346adf7d924066ec724d400b6457383536fb4f583936","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const close of cleanup.splice(0)) ","header_sha256":"dab5dcb0e524c97576d760263cd26838cf4e8c502450e7b784c86ffe87ac0f0f","input_position":{"path":"src/main/acp/acp-structured-child-stop.test.ts","line":12,"end_line":12,"start":455,"end":472,"byte_start":455,"byte_end":472},"binding":"const close","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"cleanup","decision":"keep","reason":"Close all owned rigs after route probes.","rows":[],"current_matches":[{"path":"src/main/acp/acp-structured-child-stop.test.ts","line":13,"body_sha256":"9e65e919a9364536b5eda12797ebb9ef047e4f36e4376a2e403616bc093e8542"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-structured-child-stop.test.ts:19:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-child-stop.test.ts","line":19,"end_line":37,"start":597,"end":1447,"byte_start":597,"byte_end":1447,"source":"[\n [{ cancelled: true, outcome: { kind: 'cancelled' } }, { cancelled: true }],\n [{ cancelled: true }, { cancelled: true }],\n [{ cancelled: false }, { cancelled: false }],\n [\n { cancelled: false, outcome: { kind: 'already_finished', status: 'failed' } },\n { cancelled: false, state: 'failed' }\n ],\n [\n { cancelled: false, outcome: { kind: 'already_finished', status: 'cancelled' } },\n { cancelled: false, state: 'stopped' }\n ],\n [{ cancelled: false, outcome: { kind: 'not_found' } }, { cancelled: false }],\n [{ cancelled: false, outcome: { kind: 'future_kind' } }, { cancelled: false }]\n ]","source_sha256":"9a7590c30af5827d1e83aa8ae255d10670b9e3b1b7b9050be63263cbdd4c5ee5","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-child-stop.test.ts","line":19,"end_line":33,"start":605,"end":1241,"byte_start":605,"byte_end":1241},"binding":"it.each","resolution":[],"enclosing_case":{"line":19,"title":"reads typed and legacy replies truthfully: %j"},"affected_case_lines":[19],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":20,"end_line":20,"start":611,"end":685,"source":"[{ cancelled: true, outcome: { kind: 'cancelled' } }, { cancelled: true }]","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":true}},{"key":"outcome","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"cancelled"}}]}}]},{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":true}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"9e966f5d1a4d4e10c2ce011f3e0a7f8eba20ac39728296d1d961222188afdeb5","byte_start":611,"byte_end":685,"input_label":"cancelled + kind cancelled","decision":"keep","reason":"Modern cancellation envelope maps true."},{"index":2,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":21,"end_line":21,"start":691,"end":733,"source":"[{ cancelled: true }, { cancelled: true }]","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":true}}]},{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":true}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"c2ff40abc442159dc8c29479cc3cc0a77fc051e2e0fc8ee6afcdc4a29ca6f537","byte_start":691,"byte_end":733,"input_label":"cancelled only","decision":"keep","reason":"Legacy successful envelope maps true."},{"index":3,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":22,"end_line":22,"start":739,"end":783,"source":"[{ cancelled: false }, { cancelled: false }]","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":false}}]},{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":false}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"da7d3717f27f90544fc0083baca8ec9f95d95cffc66a5dcfb0c60dbbcc83bb23","byte_start":739,"byte_end":783,"input_label":"cancelled=false","decision":"keep","reason":"Refusal remains false without an ending."},{"index":4,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":23,"end_line":26,"start":789,"end":925,"source":"[\n { cancelled: false, outcome: { kind: 'already_finished', status: 'failed' } },\n { cancelled: false, state: 'failed' }\n ]","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":false}},{"key":"outcome","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"already_finished"}},{"key":"status","value":{"kind":"string","value":"failed"}}]}}]},{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":false}},{"key":"state","value":{"kind":"string","value":"failed"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"2466966a42f08ed36690770254be00c986026c568a2e97f20984d3bb7117c2e1","byte_start":789,"byte_end":925,"input_label":"already_finished failed","decision":"keep","reason":"Provider failure ending maps failed."},{"index":5,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":27,"end_line":30,"start":931,"end":1071,"source":"[\n { cancelled: false, outcome: { kind: 'already_finished', status: 'cancelled' } },\n { cancelled: false, state: 'stopped' }\n ]","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":false}},{"key":"outcome","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"already_finished"}},{"key":"status","value":{"kind":"string","value":"cancelled"}}]}}]},{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":false}},{"key":"state","value":{"kind":"string","value":"stopped"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"f1a136c48efa9ca75d40942a1f6c2463f14dd8241f6ea8c3e4d5b13f3b6ac9fd","byte_start":931,"byte_end":1071,"input_label":"already_finished cancelled","decision":"keep","reason":"Provider cancellation ending maps stopped."},{"index":6,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":31,"end_line":31,"start":1077,"end":1153,"source":"[{ cancelled: false, outcome: { kind: 'not_found' } }, { cancelled: false }]","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":false}},{"key":"outcome","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"not_found"}}]}}]},{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":false}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"69af8f8acdb976553d43e8327f13991df13b8475d99867c90a1f2369214f59ce","byte_start":1077,"byte_end":1153,"input_label":"not_found","decision":"keep","reason":"Absence does not acknowledge a cancellation."},{"index":7,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":32,"end_line":32,"start":1159,"end":1237,"source":"[{ cancelled: false, outcome: { kind: 'future_kind' } }, { cancelled: false }]","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":false}},{"key":"outcome","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"future_kind"}}]}}]},{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":false}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"7c186db1a208d18705085446fe6e5c27aa53d8404aff35923ce05b0528b855a1","byte_start":1159,"byte_end":1237,"input_label":"future_kind","decision":"keep","reason":"Unknown result kind cannot invent an outcome."}],"original_row_count":7},{"id":"src/main/acp/acp-structured-child-stop.test.ts:39:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-child-stop.test.ts","line":39,"end_line":50,"start":1451,"end":1996,"byte_start":1451,"byte_end":1996,"source":"[\n { result: null, error: 'refused' },\n { result: { subagentId: 'other', cancelled: true } },\n { result: { subagentId: 'child' } },\n { result: { subagentId: 'child', cancelled: true }, error: 'refused' },\n { result: { subagentId: 'child', cancelled: false, outcome: { kind: 'already_finished' } } },\n { cancelled: true }\n ]","source_sha256":"859fb1a51c40c374f4fbe2fd88ecf1eae53effbb56de63cdb4abeb9975fcf7b7","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-child-stop.test.ts","line":39,"end_line":46,"start":1459,"end":1801,"byte_start":1459,"byte_end":1801},"binding":"it.each","resolution":[],"enclosing_case":{"line":39,"title":"rejects malformed, refused and mismatched replies: %j"},"affected_case_lines":[39],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":40,"end_line":40,"start":1465,"end":1499,"source":"{ result: null, error: 'refused' }","value":{"kind":"object","value":[{"key":"result","value":{"kind":"null","value":null}},{"key":"error","value":{"kind":"string","value":"refused"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"4f82ef6c34c4c4b63563e67d646a80f615a12e0cde163df46faf873d8c95fd0d","byte_start":1465,"byte_end":1499,"input_label":"result null + error","decision":"keep","reason":"Refusal envelope is not valid success."},{"index":2,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":41,"end_line":41,"start":1505,"end":1557,"source":"{ result: { subagentId: 'other', cancelled: true } }","value":{"kind":"object","value":[{"key":"result","value":{"kind":"object","value":[{"key":"subagentId","value":{"kind":"string","value":"other"}},{"key":"cancelled","value":{"kind":"boolean","value":true}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"2f80944ab4adf8d221ee8b1a905b3b4c47d08b07072960df6189a633f36057a1","byte_start":1505,"byte_end":1557,"input_label":"wrong child id","decision":"keep","reason":"Target mismatch cannot acknowledge stop."},{"index":3,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":42,"end_line":42,"start":1563,"end":1598,"source":"{ result: { subagentId: 'child' } }","value":{"kind":"object","value":[{"key":"result","value":{"kind":"object","value":[{"key":"subagentId","value":{"kind":"string","value":"child"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"924433a7a44faf891db30335f5671e76e444047b460a9f27e2b09005ae49e2d2","byte_start":1563,"byte_end":1598,"input_label":"missing cancelled","decision":"keep","reason":"Missing required action result rejected."},{"index":4,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":43,"end_line":43,"start":1604,"end":1674,"source":"{ result: { subagentId: 'child', cancelled: true }, error: 'refused' }","value":{"kind":"object","value":[{"key":"result","value":{"kind":"object","value":[{"key":"subagentId","value":{"kind":"string","value":"child"}},{"key":"cancelled","value":{"kind":"boolean","value":true}}]}},{"key":"error","value":{"kind":"string","value":"refused"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"75f4a784f16bee94c94f0d7d8c29ff477c5be453ceb45a56606b7d3decb3510a","byte_start":1604,"byte_end":1674,"input_label":"success plus error","decision":"keep","reason":"Conflicting result/error rejected."},{"index":5,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":44,"end_line":44,"start":1680,"end":1772,"source":"{ result: { subagentId: 'child', cancelled: false, outcome: { kind: 'already_finished' } } }","value":{"kind":"object","value":[{"key":"result","value":{"kind":"object","value":[{"key":"subagentId","value":{"kind":"string","value":"child"}},{"key":"cancelled","value":{"kind":"boolean","value":false}},{"key":"outcome","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"already_finished"}}]}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"32e53145dbb24c9b82b16212cfaa8017721f1184d4326a56852d9a5b8d1fdf46","byte_start":1680,"byte_end":1772,"input_label":"already_finished missing status","decision":"keep","reason":"Incomplete ending cannot determine child outcome."},{"index":6,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":45,"end_line":45,"start":1778,"end":1797,"source":"{ cancelled: true }","value":{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"09b2bbc12785e990806b8010f17e9168abc4f4e9d92287b570523e1aafbc54c0","byte_start":1778,"byte_end":1797,"input_label":"unwrapped cancelled","decision":"keep","reason":"Legacy wrong envelope cannot identify target."}],"original_row_count":6},{"id":"src/main/acp/acp-structured-child-stop.test.ts:52:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-child-stop.test.ts","line":52,"end_line":77,"start":2000,"end":2989,"byte_start":2000,"byte_end":2989,"source":"[-32601, -32000, -32603, -32602]","source_sha256":"95a8740c0da3454abcf5159fb312618cce94253560235a1e85d6e6d87dbb63f2","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-child-stop.test.ts","line":52,"end_line":52,"start":2008,"end":2040,"byte_start":2008,"byte_end":2040},"binding":"it.each","resolution":[],"enclosing_case":{"line":52,"title":"hides targeted Stop when the non-mutating route check fails with %s"},"affected_case_lines":[52],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":52,"end_line":52,"start":2009,"end":2015,"source":"-32601","value":{"kind":"source-expression","source":"-32601"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"1c3666c39a3343a49d3d3efd15cdb17c5a0354ca81bdf7943a1d64cdd2bf34df","byte_start":2009,"byte_end":2015,"input_label":"-32601","decision":"keep","reason":"Unknown route disables target stop."},{"index":2,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":52,"end_line":52,"start":2017,"end":2023,"source":"-32000","value":{"kind":"source-expression","source":"-32000"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"ea9d8aa62828a323fc4a95a5222b5564142c43f37fda726c232d20ab03d53ede","byte_start":2017,"byte_end":2023,"input_label":"-32000","decision":"keep","reason":"Generic auth error does not prove malformed-id handler route."},{"index":3,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":52,"end_line":52,"start":2025,"end":2031,"source":"-32603","value":{"kind":"source-expression","source":"-32603"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"2d0fa1e45484ae35b39154984cace80c0e62a113b9ec0c9d44b27039ff0f6047","byte_start":2025,"byte_end":2031,"input_label":"-32603","decision":"keep","reason":"Generic internal error does not prove recognized subagent stop route."},{"index":4,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":52,"end_line":52,"start":2033,"end":2039,"source":"-32602","value":{"kind":"source-expression","source":"-32602"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"6a1ea1312768fffaa71836801ab920a520d5c3003d12919065533fa30ac5027e","byte_start":2033,"byte_end":2039,"input_label":"-32602","decision":"keep","reason":"Parameter-error code alone lacks specific missing-subagentId evidence."}],"original_row_count":4}],"parameter_groups":[{"id":"src/main/acp/acp-structured-child-stop.test.ts:19:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-child-stop.test.ts","line":19,"end_line":37,"start":597,"end":1447,"byte_start":597,"byte_end":1447,"source":"[\n [{ cancelled: true, outcome: { kind: 'cancelled' } }, { cancelled: true }],\n [{ cancelled: true }, { cancelled: true }],\n [{ cancelled: false }, { cancelled: false }],\n [\n { cancelled: false, outcome: { kind: 'already_finished', status: 'failed' } },\n { cancelled: false, state: 'failed' }\n ],\n [\n { cancelled: false, outcome: { kind: 'already_finished', status: 'cancelled' } },\n { cancelled: false, state: 'stopped' }\n ],\n [{ cancelled: false, outcome: { kind: 'not_found' } }, { cancelled: false }],\n [{ cancelled: false, outcome: { kind: 'future_kind' } }, { cancelled: false }]\n ]","source_sha256":"9a7590c30af5827d1e83aa8ae255d10670b9e3b1b7b9050be63263cbdd4c5ee5","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-child-stop.test.ts","line":19,"end_line":33,"start":605,"end":1241,"byte_start":605,"byte_end":1241},"binding":"it.each","resolution":[],"enclosing_case":{"line":19,"title":"reads typed and legacy replies truthfully: %j"},"affected_case_lines":[19],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":20,"end_line":20,"start":611,"end":685,"source":"[{ cancelled: true, outcome: { kind: 'cancelled' } }, { cancelled: true }]","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":true}},{"key":"outcome","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"cancelled"}}]}}]},{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":true}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"9e966f5d1a4d4e10c2ce011f3e0a7f8eba20ac39728296d1d961222188afdeb5","byte_start":611,"byte_end":685,"input_label":"cancelled + kind cancelled","decision":"keep","reason":"Modern cancellation envelope maps true."},{"index":2,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":21,"end_line":21,"start":691,"end":733,"source":"[{ cancelled: true }, { cancelled: true }]","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":true}}]},{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":true}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"c2ff40abc442159dc8c29479cc3cc0a77fc051e2e0fc8ee6afcdc4a29ca6f537","byte_start":691,"byte_end":733,"input_label":"cancelled only","decision":"keep","reason":"Legacy successful envelope maps true."},{"index":3,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":22,"end_line":22,"start":739,"end":783,"source":"[{ cancelled: false }, { cancelled: false }]","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":false}}]},{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":false}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"da7d3717f27f90544fc0083baca8ec9f95d95cffc66a5dcfb0c60dbbcc83bb23","byte_start":739,"byte_end":783,"input_label":"cancelled=false","decision":"keep","reason":"Refusal remains false without an ending."},{"index":4,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":23,"end_line":26,"start":789,"end":925,"source":"[\n { cancelled: false, outcome: { kind: 'already_finished', status: 'failed' } },\n { cancelled: false, state: 'failed' }\n ]","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":false}},{"key":"outcome","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"already_finished"}},{"key":"status","value":{"kind":"string","value":"failed"}}]}}]},{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":false}},{"key":"state","value":{"kind":"string","value":"failed"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"2466966a42f08ed36690770254be00c986026c568a2e97f20984d3bb7117c2e1","byte_start":789,"byte_end":925,"input_label":"already_finished failed","decision":"keep","reason":"Provider failure ending maps failed."},{"index":5,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":27,"end_line":30,"start":931,"end":1071,"source":"[\n { cancelled: false, outcome: { kind: 'already_finished', status: 'cancelled' } },\n { cancelled: false, state: 'stopped' }\n ]","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":false}},{"key":"outcome","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"already_finished"}},{"key":"status","value":{"kind":"string","value":"cancelled"}}]}}]},{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":false}},{"key":"state","value":{"kind":"string","value":"stopped"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"f1a136c48efa9ca75d40942a1f6c2463f14dd8241f6ea8c3e4d5b13f3b6ac9fd","byte_start":931,"byte_end":1071,"input_label":"already_finished cancelled","decision":"keep","reason":"Provider cancellation ending maps stopped."},{"index":6,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":31,"end_line":31,"start":1077,"end":1153,"source":"[{ cancelled: false, outcome: { kind: 'not_found' } }, { cancelled: false }]","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":false}},{"key":"outcome","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"not_found"}}]}}]},{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":false}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"69af8f8acdb976553d43e8327f13991df13b8475d99867c90a1f2369214f59ce","byte_start":1077,"byte_end":1153,"input_label":"not_found","decision":"keep","reason":"Absence does not acknowledge a cancellation."},{"index":7,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":32,"end_line":32,"start":1159,"end":1237,"source":"[{ cancelled: false, outcome: { kind: 'future_kind' } }, { cancelled: false }]","value":{"kind":"array","value":[{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":false}},{"key":"outcome","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"future_kind"}}]}}]},{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":false}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"7c186db1a208d18705085446fe6e5c27aa53d8404aff35923ce05b0528b855a1","byte_start":1159,"byte_end":1237,"input_label":"future_kind","decision":"keep","reason":"Unknown result kind cannot invent an outcome."}],"original_row_count":7},{"id":"src/main/acp/acp-structured-child-stop.test.ts:39:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-child-stop.test.ts","line":39,"end_line":50,"start":1451,"end":1996,"byte_start":1451,"byte_end":1996,"source":"[\n { result: null, error: 'refused' },\n { result: { subagentId: 'other', cancelled: true } },\n { result: { subagentId: 'child' } },\n { result: { subagentId: 'child', cancelled: true }, error: 'refused' },\n { result: { subagentId: 'child', cancelled: false, outcome: { kind: 'already_finished' } } },\n { cancelled: true }\n ]","source_sha256":"859fb1a51c40c374f4fbe2fd88ecf1eae53effbb56de63cdb4abeb9975fcf7b7","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-child-stop.test.ts","line":39,"end_line":46,"start":1459,"end":1801,"byte_start":1459,"byte_end":1801},"binding":"it.each","resolution":[],"enclosing_case":{"line":39,"title":"rejects malformed, refused and mismatched replies: %j"},"affected_case_lines":[39],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":40,"end_line":40,"start":1465,"end":1499,"source":"{ result: null, error: 'refused' }","value":{"kind":"object","value":[{"key":"result","value":{"kind":"null","value":null}},{"key":"error","value":{"kind":"string","value":"refused"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"4f82ef6c34c4c4b63563e67d646a80f615a12e0cde163df46faf873d8c95fd0d","byte_start":1465,"byte_end":1499,"input_label":"result null + error","decision":"keep","reason":"Refusal envelope is not valid success."},{"index":2,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":41,"end_line":41,"start":1505,"end":1557,"source":"{ result: { subagentId: 'other', cancelled: true } }","value":{"kind":"object","value":[{"key":"result","value":{"kind":"object","value":[{"key":"subagentId","value":{"kind":"string","value":"other"}},{"key":"cancelled","value":{"kind":"boolean","value":true}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"2f80944ab4adf8d221ee8b1a905b3b4c47d08b07072960df6189a633f36057a1","byte_start":1505,"byte_end":1557,"input_label":"wrong child id","decision":"keep","reason":"Target mismatch cannot acknowledge stop."},{"index":3,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":42,"end_line":42,"start":1563,"end":1598,"source":"{ result: { subagentId: 'child' } }","value":{"kind":"object","value":[{"key":"result","value":{"kind":"object","value":[{"key":"subagentId","value":{"kind":"string","value":"child"}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"924433a7a44faf891db30335f5671e76e444047b460a9f27e2b09005ae49e2d2","byte_start":1563,"byte_end":1598,"input_label":"missing cancelled","decision":"keep","reason":"Missing required action result rejected."},{"index":4,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":43,"end_line":43,"start":1604,"end":1674,"source":"{ result: { subagentId: 'child', cancelled: true }, error: 'refused' }","value":{"kind":"object","value":[{"key":"result","value":{"kind":"object","value":[{"key":"subagentId","value":{"kind":"string","value":"child"}},{"key":"cancelled","value":{"kind":"boolean","value":true}}]}},{"key":"error","value":{"kind":"string","value":"refused"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"75f4a784f16bee94c94f0d7d8c29ff477c5be453ceb45a56606b7d3decb3510a","byte_start":1604,"byte_end":1674,"input_label":"success plus error","decision":"keep","reason":"Conflicting result/error rejected."},{"index":5,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":44,"end_line":44,"start":1680,"end":1772,"source":"{ result: { subagentId: 'child', cancelled: false, outcome: { kind: 'already_finished' } } }","value":{"kind":"object","value":[{"key":"result","value":{"kind":"object","value":[{"key":"subagentId","value":{"kind":"string","value":"child"}},{"key":"cancelled","value":{"kind":"boolean","value":false}},{"key":"outcome","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"already_finished"}}]}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"32e53145dbb24c9b82b16212cfaa8017721f1184d4326a56852d9a5b8d1fdf46","byte_start":1680,"byte_end":1772,"input_label":"already_finished missing status","decision":"keep","reason":"Incomplete ending cannot determine child outcome."},{"index":6,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":45,"end_line":45,"start":1778,"end":1797,"source":"{ cancelled: true }","value":{"kind":"object","value":[{"key":"cancelled","value":{"kind":"boolean","value":true}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"09b2bbc12785e990806b8010f17e9168abc4f4e9d92287b570523e1aafbc54c0","byte_start":1778,"byte_end":1797,"input_label":"unwrapped cancelled","decision":"keep","reason":"Legacy wrong envelope cannot identify target."}],"original_row_count":6},{"id":"src/main/acp/acp-structured-child-stop.test.ts:52:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-child-stop.test.ts","line":52,"end_line":77,"start":2000,"end":2989,"byte_start":2000,"byte_end":2989,"source":"[-32601, -32000, -32603, -32602]","source_sha256":"95a8740c0da3454abcf5159fb312618cce94253560235a1e85d6e6d87dbb63f2","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-child-stop.test.ts","line":52,"end_line":52,"start":2008,"end":2040,"byte_start":2008,"byte_end":2040},"binding":"it.each","resolution":[],"enclosing_case":{"line":52,"title":"hides targeted Stop when the non-mutating route check fails with %s"},"affected_case_lines":[52],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":52,"end_line":52,"start":2009,"end":2015,"source":"-32601","value":{"kind":"source-expression","source":"-32601"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"1c3666c39a3343a49d3d3efd15cdb17c5a0354ca81bdf7943a1d64cdd2bf34df","byte_start":2009,"byte_end":2015,"input_label":"-32601","decision":"keep","reason":"Unknown route disables target stop."},{"index":2,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":52,"end_line":52,"start":2017,"end":2023,"source":"-32000","value":{"kind":"source-expression","source":"-32000"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"ea9d8aa62828a323fc4a95a5222b5564142c43f37fda726c232d20ab03d53ede","byte_start":2017,"byte_end":2023,"input_label":"-32000","decision":"keep","reason":"Generic auth error does not prove malformed-id handler route."},{"index":3,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":52,"end_line":52,"start":2025,"end":2031,"source":"-32603","value":{"kind":"source-expression","source":"-32603"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"2d0fa1e45484ae35b39154984cace80c0e62a113b9ec0c9d44b27039ff0f6047","byte_start":2025,"byte_end":2031,"input_label":"-32603","decision":"keep","reason":"Generic internal error does not prove recognized subagent stop route."},{"index":4,"path":"src/main/acp/acp-structured-child-stop.test.ts","line":52,"end_line":52,"start":2033,"end":2039,"source":"-32602","value":{"kind":"source-expression","source":"-32602"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"6a1ea1312768fffaa71836801ab920a520d5c3003d12919065533fa30ac5027e","byte_start":2033,"byte_end":2039,"input_label":"-32602","decision":"keep","reason":"Parameter-error code alone lacks specific missing-subagentId evidence."}],"original_row_count":4}],"body_support_cleanup_loops":[{"id":"src/main/acp/acp-structured-child-stop.test.ts:12:loop","kind":"for-of","path":"src/main/acp/acp-structured-child-stop.test.ts","line":12,"end_line":14,"start":435,"end":497,"byte_start":435,"byte_end":497,"source":"for (const close of cleanup.splice(0)) {\n await close()\n }","source_sha256":"a52a638c3d4a1e3402c6346adf7d924066ec724d400b6457383536fb4f583936","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const close of cleanup.splice(0)) ","header_sha256":"dab5dcb0e524c97576d760263cd26838cf4e8c502450e7b784c86ffe87ac0f0f","input_position":{"path":"src/main/acp/acp-structured-child-stop.test.ts","line":12,"end_line":12,"start":455,"end":472,"byte_start":455,"byte_end":472},"binding":"const close","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"cleanup","decision":"keep","reason":"Close all owned rigs after route probes.","rows":[],"current_matches":[{"path":"src/main/acp/acp-structured-child-stop.test.ts","line":13,"body_sha256":"9e65e919a9364536b5eda12797ebb9ef047e4f36e4376a2e403616bc093e8542"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"implemented_changes":[{"proposal_id":"acp-main-0001-022","summary":"Observed unanswered route probe reaches controlled expiry, then actual prompt reply completes a success turn on the same live connection.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/acp-dialects/grok-subagent-stop.ts","src/main/acp/acp-structured-session-adapter.ts"],"evidence_sha256":{"src/main/acp/acp-dialects/grok-subagent-stop.ts":"a748dabcc4fcf42600023c9e5289141fc61bdc262e44bbb8ca9556bec84ced15","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"evidence_source_sha256":{"src/main/acp/acp-dialects/grok-subagent-stop.ts":"a748dabcc4fcf42600023c9e5289141fc61bdc262e44bbb8ca9556bec84ced15","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"original_evidence_detail":[{"path":"src/main/acp/acp-dialects/grok-subagent-stop.ts","sha256":"a748dabcc4fcf42600023c9e5289141fc61bdc262e44bbb8ca9556bec84ced15","lines":46,"read_state":"stored_not_claimed_read"},{"path":"src/main/acp/acp-structured-session-adapter.ts","sha256":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e","lines":345,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"Grok targeted child control contract reads typed and legacy replies truthfully: {\"cancelled\":true,\"outcome\":{\"kind\":\"cancelled\"}}","status":"passed"},{"full_name":"Grok targeted child control contract reads typed and legacy replies truthfully: {\"cancelled\":true}","status":"passed"},{"full_name":"Grok targeted child control contract reads typed and legacy replies truthfully: {\"cancelled\":false}","status":"passed"},{"full_name":"Grok targeted child control contract reads typed and legacy replies truthfully: {\"cancelled\":false,\"outcome\":{\"kind\":\"already_finished\",\"status\":\"failed\"}}","status":"passed"},{"full_name":"Grok targeted child control contract reads typed and legacy replies truthfully: {\"cancelled\":false,\"outcome\":{\"kind\":\"already_finished\",\"status\":\"cancelled\"}}","status":"passed"},{"full_name":"Grok targeted child control contract reads typed and legacy replies truthfully: {\"cancelled\":false,\"outcome\":{\"kind\":\"not_found\"}}","status":"passed"},{"full_name":"Grok targeted child control contract reads typed and legacy replies truthfully: {\"cancelled\":false,\"outcome\":{\"kind\":\"future_kind\"}}","status":"passed"},{"full_name":"Grok targeted child control contract rejects malformed, refused and mismatched replies: {\"result\":null,\"error\":\"refused\"}","status":"passed"},{"full_name":"Grok targeted child control contract rejects malformed, refused and mismatched replies: {\"result\":{\"subagentId\":\"other\",\"cancelled\":true}}","status":"passed"},{"full_name":"Grok targeted child control contract rejects malformed, refused and mismatched replies: {\"result\":{\"subagentId\":\"child\"}}","status":"passed"},{"full_name":"Grok targeted child control contract rejects malformed, refused and mismatched replies: {\"result\":{\"subagentId\":\"child\",\"cancelled\":true},\"error\":\"refused\"}","status":"passed"},{"full_name":"Grok targeted child control contract rejects malformed, refused and mismatched replies: {\"result\":{\"subagentId\":\"child\",\"cancelled\":false,\"outcome\":{\"kind\":\"already_finished\"}}}","status":"passed"},{"full_name":"Grok targeted child control contract rejects malformed, refused and mismatched replies: {\"cancelled\":true}","status":"passed"},{"full_name":"Grok targeted child control contract hides targeted Stop when the non-mutating route check fails with -32601","status":"passed"},{"full_name":"Grok targeted child control contract hides targeted Stop when the non-mutating route check fails with -32000","status":"passed"},{"full_name":"Grok targeted child control contract hides targeted Stop when the non-mutating route check fails with -32603","status":"passed"},{"full_name":"Grok targeted child control contract hides targeted Stop when the non-mutating route check fails with -32602","status":"passed"},{"full_name":"Grok targeted child control contract enables only the proved route and checks the acquisition fence before addressing a child","status":"passed"},{"full_name":"Grok targeted child control contract bounds an unanswered route check without ending the parent connection","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-child-work-admission.test.ts","sha256":"9bf05c57929b10c5c6aca432474acb1ee7432770c649323fee798b92bb1e743c","reviewed_sha256":"e430870b63814acd288ac077e260bb2ae0b08c5254093456da9d374926b6fe2e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":26,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 4, fix 1. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":5,"original_declarations":5,"final_declarations":5,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":61,"end_line":119,"title":"delivers acquisition-time snapshots only after the journal binds and publishes the parent","decision":"keep","reason":"Actual deferred sink binding and real journal drain publish parent before acquisition-time child snapshots, with no pre-bind delivery and exactly two admitted snapshots.","source_body_sha256":"f9c36e4e6eaa196beffa125e02448d671ce9ef2fa60c76a3b64fed9959cb600d","path":"src/main/acp/acp-structured-child-work-admission.test.ts","start":2442,"end":4252,"byte_start":2442,"byte_end":4252,"source":"it('delivers acquisition-time snapshots only after the journal binds and publishes the parent', async () => {\n const rig = await openProviderTimelineRig()\n const deferred = createDeferredStructuredAgentSessionEventSink(testEventSinkLogging())\n const sink = providerTimelineSink(deferred.sink)\n if (!sink) {\n throw new Error('Missing transition sink')\n }\n let parentPublished = false\n const delivered = vi.fn(() => expect(parentPublished).toBe(true))\n const lane = new AcpStructuredLane({\n sink,\n sessionId: 'session-timeline',\n providerSessionId: 'provider-session-1',\n agent: 'grok',\n agentName: 'Grok',\n generation: 'gen-1',\n dialect: GROK_ACP_DIALECT,\n logger: recordingStructuredAgentSessionLogger().logger,\n onInputAccepted: () => {},\n onFailed: () => {},\n onChildWorkEvidence: delivered\n })\n lanes.push(lane)\n lane.apply(\n lane.translator.notification(\n '_x.ai/session/update',\n {\n sessionId: 'provider-session-1',\n update: {\n sessionUpdate: 'subagent_spawned',\n subagent_id: 'child',\n description: 'Exact label'\n }\n },\n 1\n )\n )\n lane.apply(\n lane.translator.notification(\n '_x.ai/session/update',\n {\n sessionId: 'provider-session-1',\n update: { sessionUpdate: 'subagent_finished', subagent_id: 'child', status: 'completed' }\n },\n 2\n )\n )\n expect(delivered).not.toHaveBeenCalled()\n deferred.bind({\n journal: rig.journal,\n fence: 1,\n publish: () => {\n parentPublished = true\n }\n })\n expect(await deferred.drained()).toEqual({ ok: true })\n expect(delivered).toHaveBeenCalledTimes(2)\n deferred.close()\n })","source_sha256":"f9c36e4e6eaa196beffa125e02448d671ce9ef2fa60c76a3b64fed9959cb600d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-work-admission.test.ts","line":61,"title":"delivers acquisition-time snapshots only after the journal binds and publishes the parent","body_sha256":"f9c36e4e6eaa196beffa125e02448d671ce9ef2fa60c76a3b64fed9959cb600d"},"proposal_ids":[],"explicit_input_controls":[]},{"line":120,"end_line":136,"title":"holds working and finished snapshots in order across backpressure and publishes each once","decision":"keep","reason":"Backpressure holds working/finished evidence in order; retry delivers live then ended once, and a second retry does not duplicate either.","source_body_sha256":"4dc025975c4d2032afb55d14d7f90869d6147ff9116f846167d70c23f334e53f","path":"src/main/acp/acp-structured-child-work-admission.test.ts","start":4255,"end":4999,"byte_start":4255,"byte_end":4999,"source":"it('holds working and finished snapshots in order across backpressure and publishes each once', async () => {\n const { rig, lane, refused, delivery } = await fixture()\n refused.value = true\n lane.apply(subagent(lane, 'working'))\n lane.apply(subagent(lane, 'completed'))\n await rig.rows()\n expect(delivery).toEqual([])\n refused.value = false\n lane.retry()\n await rig.rows()\n expect(delivery.map((batch) => batch.map((edge) => edge.type))).toEqual([['live'], ['ended']])\n expect(delivery[0][0]).toMatchObject({ child: { kind: 'agent', description: 'Exact label' } })\n expect(delivery[1][0]).toMatchObject({ outcome: 'succeeded' })\n lane.retry()\n await rig.rows()\n expect(delivery).toHaveLength(2)\n })","source_sha256":"4dc025975c4d2032afb55d14d7f90869d6147ff9116f846167d70c23f334e53f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-work-admission.test.ts","line":120,"title":"holds working and finished snapshots in order across backpressure and publishes each once","body_sha256":"4dc025975c4d2032afb55d14d7f90869d6147ff9116f846167d70c23f334e53f"},"proposal_ids":[],"explicit_input_controls":[]},{"line":138,"end_line":161,"title":"publishes no subagent facts for fatal refusal, disposed held events or events dropped after session end","decision":"keep","reason":"Fatal admission failure, disposal of held work and already-ended session each suppress further child facts while retaining the appropriate session-ended release.","source_body_sha256":"4971369cfd2afcc1b8c66e0a91c802903893a51f5ecda9611ddee08d5cf5acad","path":"src/main/acp/acp-structured-child-work-admission.test.ts","start":5003,"end":6025,"byte_start":5003,"byte_end":6025,"source":"it('publishes no subagent facts for fatal refusal, disposed held events or events dropped after session end', async () => {\n const fatal = await fixture('failed')\n fatal.refused.value = true\n fatal.lane.apply(subagent(fatal.lane, 'working'))\n await fatal.rig.rows()\n expect(fatal.failed).toHaveBeenCalledWith('failed')\n expect(fatal.delivery).toEqual([])\n const held = await fixture()\n held.refused.value = true\n held.lane.apply(subagent(held.lane, 'working'))\n held.lane.dispose()\n held.refused.value = false\n held.lane.retry()\n await held.rig.rows()\n expect(held.delivery.flat().map((edge) => edge.type)).toEqual(['session-ended'])\n const ended = await fixture()\n ended.lane.apply([\n { type: 'session.ended', verdict: { state: 'interrupted', completedAt: 10 } }\n ])\n await ended.rig.rows()\n ended.lane.apply(subagent(ended.lane, 'working'))\n await ended.rig.rows()\n expect(ended.delivery.flat().map((edge) => edge.type)).toEqual(['session-ended'])\n })","source_sha256":"4971369cfd2afcc1b8c66e0a91c802903893a51f5ecda9611ddee08d5cf5acad","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-work-admission.test.ts","line":138,"title":"publishes no subagent facts for fatal refusal, disposed held events or events dropped after session end","body_sha256":"4971369cfd2afcc1b8c66e0a91c802903893a51f5ecda9611ddee08d5cf5acad"},"proposal_ids":[],"explicit_input_controls":[]},{"line":163,"end_line":189,"title":"does not let a throwing optional evidence consumer poison the journal","decision":"fix","reason":"Throwing optional evidence consumers report failures but do not poison a later actual journal write; strengthen the final row assertion to the expected turn body rather than only count.","source_body_sha256":"97ca4753aa2d51ba2baaa61e63740d99664919f72b04d51113271bcf66b9f0ae","proposed_changes":[{"line":163,"action":"fix","proposal":"Assert the resulting saved row is the requested running turn (identity/body), so the no-poisoning oracle cannot be satisfied by an unrelated journal row."}],"path":"src/main/acp/acp-structured-child-work-admission.test.ts","start":6029,"end":7000,"byte_start":6029,"byte_end":7000,"source":"it('does not let a throwing optional evidence consumer poison the journal', async () => {\n const { rig, lane } = await fixture()\n const failure = vi.fn()\n const throwing = new AcpStructuredLane({\n sink: rig.sink,\n sessionId: 'session-timeline',\n providerSessionId: 'provider-session-1',\n agent: 'grok',\n agentName: 'Grok',\n generation: 'gen-2',\n dialect: GROK_ACP_DIALECT,\n logger: recordingStructuredAgentSessionLogger().logger,\n onInputAccepted: () => {},\n onFailed: failure,\n onChildWorkEvidence: () => {\n throw new Error('sink unavailable')\n },\n onChildWorkFailure: failure\n })\n lane.dispose()\n lanes.push(throwing)\n throwing.apply(subagent(throwing, 'working'))\n throwing.apply(subagent(throwing, 'completed'))\n throwing.apply([{ type: 'turn.open', turn: 'turn', at: 2 }])\n expect(await rig.rows()).toHaveLength(1)\n expect(failure).toHaveBeenCalledTimes(2)\n })","source_sha256":"97ca4753aa2d51ba2baaa61e63740d99664919f72b04d51113271bcf66b9f0ae","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-child-work-admission.test.ts","line":163,"title":"does not let a throwing optional evidence consumer poison the journal","body_sha256":"e90eb42075f8c8025751dba56031a86809e2a494eeff9f1e0f94405738462348"},"proposal_ids":["acp-main-0001-023"],"explicit_input_controls":[]},{"line":191,"end_line":204,"title":"releases live ownership when session-end admission is held and disposal ends observation","decision":"keep","reason":"Disposal releases live ownership even when session-ended journal admission is held, then ignores later work/retry.","source_body_sha256":"7e1ae728ed2ae8214a868b655a7fea76b89b7ab9e81230140b6cb00ea345a7b6","path":"src/main/acp/acp-structured-child-work-admission.test.ts","start":7004,"end":7658,"byte_start":7004,"byte_end":7658,"source":"it('releases live ownership when session-end admission is held and disposal ends observation', async () => {\n const { rig, lane, refused, delivery } = await fixture()\n lane.apply(subagent(lane, 'working'))\n await rig.rows()\n refused.value = true\n lane.apply([{ type: 'session.ended', verdict: { state: 'interrupted', completedAt: 20 } }])\n lane.dispose()\n await rig.rows()\n expect(delivery.flat().map((edge) => edge.type)).toEqual(['live', 'session-ended'])\n lane.apply(subagent(lane, 'working'))\n lane.retry()\n await rig.rows()\n expect(delivery.flat().map((edge) => edge.type)).toEqual(['live', 'session-ended'])\n })","source_sha256":"7e1ae728ed2ae8214a868b655a7fea76b89b7ab9e81230140b6cb00ea345a7b6","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-work-admission.test.ts","line":193,"title":"releases live ownership when session-end admission is held and disposal ends observation","body_sha256":"7e1ae728ed2ae8214a868b655a7fea76b89b7ab9e81230140b6cb00ea345a7b6"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[],"parameter_groups":[],"body_support_cleanup_loops":[],"implemented_changes":[{"proposal_id":"acp-main-0001-023","summary":"Journal assertion identifies p:provider-session-1:turn and its running state/start time, replacing row count alone.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/native-chat/agent-session-timeline/provider-timeline-assembler-test-support.ts","src/main/acp/acp-structured-lane.ts","src/main/native-chat/agent-session-wire/structured-agent-session-event-sink.ts"],"evidence_sha256":{"src/main/native-chat/agent-session-timeline/provider-timeline-assembler-test-support.ts":"7ca97b512af463977f37aa7272218fdec8bdb8d497b79b65c24b989d3c563a1a","src/main/acp/acp-structured-lane.ts":"ddb8e201467360563ce4e0a0cdcc4ab87d84b610daffaf6969886e3734b88d24","src/main/native-chat/agent-session-wire/structured-agent-session-event-sink.ts":"1f73f78c3b5785c455b6b48459f413e330c4b1a972e674bd7dddd8570734890b"},"evidence_source_sha256":{"src/main/native-chat/agent-session-timeline/provider-timeline-assembler-test-support.ts":"7ca97b512af463977f37aa7272218fdec8bdb8d497b79b65c24b989d3c563a1a","src/main/acp/acp-structured-lane.ts":"ddb8e201467360563ce4e0a0cdcc4ab87d84b610daffaf6969886e3734b88d24","src/main/native-chat/agent-session-wire/structured-agent-session-event-sink.ts":"1f73f78c3b5785c455b6b48459f413e330c4b1a972e674bd7dddd8570734890b"},"original_evidence_detail":[{"path":"src/main/native-chat/agent-session-timeline/provider-timeline-assembler-test-support.ts","sha256":"7ca97b512af463977f37aa7272218fdec8bdb8d497b79b65c24b989d3c563a1a","lines":334,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-lane.ts","sha256":"ddb8e201467360563ce4e0a0cdcc4ab87d84b610daffaf6969886e3734b88d24","lines":320,"read_state":"full_body_read"},{"path":"src/main/native-chat/agent-session-wire/structured-agent-session-event-sink.ts","sha256":"1f73f78c3b5785c455b6b48459f413e330c4b1a972e674bd7dddd8570734890b","lines":343,"read_state":"stored_not_claimed_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"ACP subagent evidence at the ordered journal boundary delivers acquisition-time snapshots only after the journal binds and publishes the parent","status":"passed"},{"full_name":"ACP subagent evidence at the ordered journal boundary holds working and finished snapshots in order across backpressure and publishes each once","status":"passed"},{"full_name":"ACP subagent evidence at the ordered journal boundary publishes no subagent facts for fatal refusal, disposed held events or events dropped after session end","status":"passed"},{"full_name":"ACP subagent evidence at the ordered journal boundary does not let a throwing optional evidence consumer poison the journal","status":"passed"},{"full_name":"ACP subagent evidence at the ordered journal boundary releases live ownership when session-end admission is held and disposal ends observation","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-child-work.test.ts","sha256":"cfa37edd52a8ad1bbb40cd1bbd1555106194ece80db55ea62416286207a68e1e","reviewed_sha256":"35b97748340e0ce1b7ea92d5adc136c131d7f44093a555fccdb389ad06a76583","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":27,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: fix 1, keep 11. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":12,"original_declarations":12,"final_declarations":12,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":117,"end_line":153,"title":"publishes the production %s recording through the same host readers","decision":"fix","reason":"Two recorded foreground/background sessions drive live sidebar status, settled host child ownership and removal from the shared strip; inspect replay/provenance before final duplicate judgment.","source_body_sha256":"ac16c49dd12aba758f183df8d54c2443177f519259f7368ea5378352b34cae84","parameter_groups":[{"path":"src/main/acp/acp-structured-child-work.test.ts","line":117,"source":"[\n ['s7-subagent-foreground', 'Count note lines'],\n ['s7-subagent-background', 'List folder files']\n ]","decision":"fix","reason":"Transfer all unique assertions from duplicate adapter-only replays before removing them.","rows":[{"input":"s7-subagent-foreground / Count note lines","decision":"fix","reason":"Real host/store/sidebar boundary for foreground capture; consolidate exact reply attribution/token13778/parent completion here."},{"input":"s7-subagent-background / List folder files","decision":"fix","reason":"Real host/store/sidebar boundary for background capture; consolidate exact child reply and no-command-task rows here."}],"row_count":2}],"path":"src/main/acp/acp-structured-child-work.test.ts","start":4077,"end":5535,"byte_start":4077,"byte_end":5535,"source":"it.each([\n ['s7-subagent-foreground', 'Count note lines'],\n ['s7-subagent-background', 'List folder files']\n ])('publishes the production %s recording through the same host readers', async (name, label) => {\n const childWork = acpChildWorkStatusSink()\n const replay = new GrokFixtureReplay(await readAcpFixture(name))\n const hosted = await openHostRig({\n statusSink: childWork.sink,\n script: (agent) => replay.attach(agent)\n })\n cleanup.push(() => hosted.host.close(SESSION, 'user-close'))\n expect(await hosted.host.attach(CALLER, attachParams())).toMatchObject({ ok: true })\n const snapshots: AgentChildWorkView[][] = []\n hosted.host.subscribeStatus({\n id: 'recorded-sidebar',\n emit: (event) => {\n if (event.type === 'status') {\n snapshots.push(event.session.children ?? [])\n }\n }\n })\n await send(hosted.host, 'Recorded delegation')\n await waitFor(() => expect(replay.awaiting).toBeNull())\n await hosted.host.flushStreamedEvents(SESSION)\n expect(snapshots).toContainEqual([\n expect.objectContaining({\n kind: 'agent',\n providerId: 'subagent-1',\n description: label,\n membership: 'live'\n })\n ])\n expect(childWork.views()).toMatchObject([{ providerId: 'subagent-1', outcome: 'succeeded' }])\n expect(\n (await hosted.host.history({ sessionId: SESSION, direction: 'tail' })).page.backgroundTasks\n ).toBeNull()\n })","source_sha256":"ac16c49dd12aba758f183df8d54c2443177f519259f7368ea5378352b34cae84","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-child-work.test.ts","line":118,"title":"publishes the production %s recording through the same host readers","body_sha256":"2d3e139261ad5a699457c4658fb13e04e718ad616d12ce3d9a45d4d83d74e816"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-child-work.test.ts:117:parameter-table"]},{"line":155,"end_line":178,"title":"shares one label and one id between saved rows, agent strip and sidebar after parent completion","decision":"keep","reason":"Saved roster, strip and subscribed sidebar share concrete labels/ids; late child endings independently settle successful/failed outcomes after parent completion and cannot revive.","source_body_sha256":"c42c5e1c4fcfa67bc1b5011831199eea12d804e277ae2364fa99b5ab10df8f86","path":"src/main/acp/acp-structured-child-work.test.ts","start":5539,"end":6914,"byte_start":5539,"byte_end":6914,"source":"it('shares one label and one id between saved rows, agent strip and sidebar after parent completion', async () => {\n const f = await fixture()\n await f.spawn('first')\n await f.spawn('sibling')\n // Each saved row keeps the raw label; the shared presentation derives the ordinal, as the strip does.\n expect(await f.roster()).toMatchObject([{ label: 'Exact label' }, { label: 'Exact label' }])\n expect((await f.strip())?.tasks).toMatchObject([\n { id: 'first', kind: 'agent', description: 'Exact label' },\n { id: 'sibling', kind: 'agent', description: 'Exact label' }\n ])\n const stripIds = (await f.strip())?.children?.map((view) => view.id)\n expect(f.sidebar.at(-1)?.map((view) => view.id)).toEqual(stripIds)\n f.agent.reply(f.prompt, { stopReason: 'end_turn' })\n await f.rows()\n expect(f.childWork.views().map((view) => view.membership)).toEqual(['live', 'live'])\n await f.finish('first', 'completed')\n expect((await f.strip())?.tasks).toMatchObject([{ id: 'sibling' }])\n await f.finish('sibling', 'failed')\n expect(await f.strip()).toBeNull()\n expect(f.sidebar.at(-1)).toEqual([])\n expect(f.childWork.views().map((view) => view.outcome)).toEqual(['succeeded', 'failed'])\n await f.notify({ sessionUpdate: 'subagent_progress', subagent_id: 'first', tokens_used: 100 })\n expect(await f.strip()).toBeNull()\n })","source_sha256":"c42c5e1c4fcfa67bc1b5011831199eea12d804e277ae2364fa99b5ab10df8f86","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-work.test.ts","line":189,"title":"shares one label and one id between saved rows, agent strip and sidebar after parent completion","body_sha256":"c42c5e1c4fcfa67bc1b5011831199eea12d804e277ae2364fa99b5ab10df8f86"},"proposal_ids":[],"explicit_input_controls":[]},{"line":180,"end_line":211,"title":"uses the targeted extension for one owned child and awaits its finish without cancelling parent or sibling","decision":"keep","reason":"Real targeted child-cancel addresses one owned id, settles only it, never cancels the parent, retains sibling, and refuses an unowned id without another request.","source_body_sha256":"68345429735827ec0dba8051dfe90afc979d1386f79ce240616e67e2eef0a9ca","path":"src/main/acp/acp-structured-child-work.test.ts","start":6918,"end":8441,"byte_start":6918,"byte_end":8441,"source":"it('uses the targeted extension for one owned child and awaits its finish without cancelling parent or sibling', async () => {\n const f = await fixture()\n await f.spawn('first')\n await f.spawn('sibling')\n f.agent.on('_x.ai/subagent/cancel', (frame) => {\n expect(frame.params).toEqual({ sessionId: PROVIDER_SESSION, subagentId: 'first' })\n f.agent.reply(frame, {\n result: { subagentId: 'first', cancelled: true, outcome: { kind: 'cancelled' } }\n })\n })\n expect(await f.targetedStop('first')).toMatchObject({ ok: true, value: { cancelled: true } })\n // The accepted Stop settles that run until Grok's own ending says how it ended.\n expect(f.childWork.views()).toMatchObject([\n { providerId: 'first', membership: 'settled', outcome: 'cancelled' },\n { providerId: 'sibling', membership: 'live' }\n ])\n expect(f.agent.frames.filter((frame) => frame.method === 'session/cancel')).toEqual([])\n await f.finish('first', 'cancelled')\n expect((await f.roster())[0].state).toBe('stopped')\n expect(f.childWork.views()).toMatchObject([\n { providerId: 'first', outcome: 'cancelled' },\n { providerId: 'sibling', membership: 'live' }\n ])\n expect((await f.strip())?.tasks).toMatchObject([{ id: 'sibling' }])\n expect(await f.targetedStop('other-parent-child')).toMatchObject({\n ok: true,\n value: { cancelled: false }\n })\n expect(f.agent.frames.filter((frame) => frame.method === '_x.ai/subagent/cancel')).toHaveLength(\n 2\n )\n })","source_sha256":"68345429735827ec0dba8051dfe90afc979d1386f79ce240616e67e2eef0a9ca","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-work.test.ts","line":214,"title":"uses the targeted extension for one owned child and awaits its finish without cancelling parent or sibling","body_sha256":"68345429735827ec0dba8051dfe90afc979d1386f79ce240616e67e2eef0a9ca"},"proposal_ids":[],"explicit_input_controls":[]},{"line":213,"end_line":239,"title":"reconciles an already-finished reply through the same roster and does not invent a not-found ending","decision":"keep","reason":"An already-finished reply updates the real roster/outcome, while not-found cannot invent an ending for a different live child.","source_body_sha256":"6234198a5767d28c51c5845edc3670240baa984b7aeec352bf76ae675e2496a9","path":"src/main/acp/acp-structured-child-work.test.ts","start":8445,"end":9559,"byte_start":8445,"byte_end":9559,"source":"it('reconciles an already-finished reply through the same roster and does not invent a not-found ending', async () => {\n const f = await fixture()\n await f.spawn('first')\n f.agent.on('_x.ai/subagent/cancel', (frame) =>\n f.agent.reply(frame, {\n result: {\n subagentId: 'first',\n cancelled: false,\n outcome: { kind: 'already_finished', status: 'completed' }\n }\n })\n )\n expect(await f.targetedStop('first')).toMatchObject({ ok: true, value: { cancelled: false } })\n await f.rows()\n expect((await f.roster())[0].state).toBe('completed')\n expect(f.childWork.views()).toMatchObject([{ outcome: 'succeeded' }])\n await f.spawn('missing')\n f.agent.on('_x.ai/subagent/cancel', (frame) =>\n f.agent.reply(frame, {\n result: { subagentId: 'missing', cancelled: false, outcome: { kind: 'not_found' } }\n })\n )\n expect(await f.targetedStop('missing')).toMatchObject({ ok: true, value: { cancelled: false } })\n expect(f.childWork.views().find((view) => view.providerId === 'missing')?.membership).toBe(\n 'live'\n )\n })","source_sha256":"6234198a5767d28c51c5845edc3670240baa984b7aeec352bf76ae675e2496a9","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-work.test.ts","line":247,"title":"reconciles an already-finished reply through the same roster and does not invent a not-found ending","body_sha256":"6234198a5767d28c51c5845edc3670240baa984b7aeec352bf76ae675e2496a9"},"proposal_ids":[],"explicit_input_controls":[]},{"line":241,"end_line":274,"title":"retains an original live child past 32 later groups and filters replay/wrong-session reports","decision":"keep","reason":"Workload exceeds the settled-group retention boundary while the original live child remains; wrong-session/replay input is filtered and later progress cannot resurrect evicted settled identities.","source_body_sha256":"55b1003b390bff4a897fd2766ff5a7d505a51decb10d47b31915079d97fd9fc1","body_loops":[{"path":"src/main/acp/acp-structured-child-work.test.ts","line":248,"source":"for (let index = 0; index < 33; index++) ","classification":"capacity workload","decision":"keep","reason":"33 finished children exceed a 32-entry retention window so an older settled entry evicts; not 33 independent runtime cases."}],"path":"src/main/acp/acp-structured-child-work.test.ts","start":9563,"end":11077,"byte_start":9563,"byte_end":11077,"source":"it('retains an original live child past 32 later groups and filters replay/wrong-session reports', async () => {\n const f = await fixture()\n await f.spawn('original')\n await f.spawn('stopped-early', 'Early stop', 'early-stop-turn')\n await f.finish('stopped-early', 'cancelled')\n await f.notify({ sessionUpdate: 'subagent_spawned', subagent_id: 'wrong' }, {}, 'other-session')\n await f.notify({ sessionUpdate: 'subagent_spawned', subagent_id: 'replay' }, { isReplay: true })\n for (let index = 0; index < 33; index++) {\n await f.spawn(`later-${index}`, `Later ${index}`, `later-turn-${index}`)\n await f.finish(`later-${index}`, 'completed')\n }\n expect((await f.strip())?.tasks).toMatchObject([{ id: 'original', description: 'Exact label' }])\n expect((await f.strip())?.tasks).toHaveLength(1)\n await f.notify({\n sessionUpdate: 'subagent_progress',\n subagent_id: 'stopped-early',\n tokens_used: 111\n })\n expect(f.childWork.views().find((view) => view.providerId === 'stopped-early')?.outcome).toBe(\n 'cancelled'\n )\n await f.finish('original', 'cancelled')\n await f.spawn('eviction', 'Eviction', 'eviction-turn')\n await f.finish('eviction', 'completed')\n await f.notify({\n sessionUpdate: 'subagent_progress',\n subagent_id: 'original',\n tokens_used: 111\n })\n expect(await f.strip()).toBeNull()\n expect(f.childWork.views().find((view) => view.providerId === 'original')?.outcome).toBe(\n 'cancelled'\n )\n })","source_sha256":"55b1003b390bff4a897fd2766ff5a7d505a51decb10d47b31915079d97fd9fc1","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-work.test.ts","line":275,"title":"retains an original live child past 32 later groups and filters replay/wrong-session reports","body_sha256":"55b1003b390bff4a897fd2766ff5a7d505a51decb10d47b31915079d97fd9fc1"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-child-work.test.ts:248:loop"]},{"line":276,"end_line":297,"title":"keeps distinct oversized provider children across groups despite identical display ids","decision":"keep","reason":"Two oversized provider ids differing beyond the clipped prefix still produce distinct durable roster ids and independent host membership after one finishes.","source_body_sha256":"c8d3a67c09dde4d13984f62016028075fbe484a80252ef2b58cf982df9227a92","path":"src/main/acp/acp-structured-child-work.test.ts","start":11081,"end":12208,"byte_start":11081,"byte_end":12208,"source":"it('keeps distinct oversized provider children across groups despite identical display ids', async () => {\n const f = await fixture()\n const first = `${'x'.repeat(600)}A`\n const second = `${'x'.repeat(600)}B`\n await f.spawn(first, 'First', 'turn-A')\n await f.spawn(second, 'Second', 'turn-B')\n const entries = await f.roster()\n expect(entries[0].id).not.toBe(entries[1].id)\n const bothStrip = (await f.strip())?.tasks\n const bothSidebar = f.sidebar.at(-1)\n await f.finish(first, 'completed')\n const remainingStrip = (await f.strip())?.tasks\n const remainingSidebar = f.sidebar.at(-1)\n expect(await f.roster()).toMatchObject([{ state: 'completed' }, { state: 'working' }])\n expect.soft(bothStrip).toMatchObject([\n { description: 'First', kind: 'agent', stoppable: false },\n { description: 'Second', kind: 'agent', stoppable: false }\n ])\n expect.soft(bothSidebar).toHaveLength(2)\n expect.soft(remainingStrip).toMatchObject([{ description: 'Second', kind: 'agent' }])\n expect.soft(remainingSidebar).toMatchObject([{ description: 'Second', membership: 'live' }])\n })","source_sha256":"c8d3a67c09dde4d13984f62016028075fbe484a80252ef2b58cf982df9227a92","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-work.test.ts","line":310,"title":"keeps distinct oversized provider children across groups despite identical display ids","body_sha256":"c8d3a67c09dde4d13984f62016028075fbe484a80252ef2b58cf982df9227a92"},"proposal_ids":[],"explicit_input_controls":[]},{"line":299,"end_line":308,"title":"uses the exact clipped roster label and hides Stop for digested oversized provider handles","decision":"keep","reason":"An oversized handle is digested to the same public id across roster/strip, label clipping is shared, and targeted Stop is hidden because the original provider handle is unsafe to address.","source_body_sha256":"03b63022f34bfa17ec4fa82839a993f89496001289187699238e58036e63d7b1","path":"src/main/acp/acp-structured-child-work.test.ts","start":12212,"end":12732,"byte_start":12212,"byte_end":12732,"source":"it('uses the exact clipped roster label and hides Stop for digested oversized provider handles', async () => {\n const f = await fixture()\n await f.spawn('long-id'.repeat(100), 'Long label '.repeat(70))\n const [entry] = await f.roster()\n expect((await f.strip())?.tasks).toMatchObject([\n { description: entry.label, kind: 'agent', stoppable: false }\n ])\n expect((await f.strip())?.tasks?.[0]?.id).toMatch(/^acp-child:[0-9a-f]{64}$/)\n expect((await f.strip())?.tasks?.[0]?.id).toBe(entry.id)\n })","source_sha256":"03b63022f34bfa17ec4fa82839a993f89496001289187699238e58036e63d7b1","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-work.test.ts","line":333,"title":"uses the exact clipped roster label and hides Stop for digested oversized provider handles","body_sha256":"03b63022f34bfa17ec4fa82839a993f89496001289187699238e58036e63d7b1"},"proposal_ids":[],"explicit_input_controls":[]},{"line":310,"end_line":330,"title":"keeps 34 live groups in both host surfaces and never recreates the first settled eviction","decision":"keep","reason":"Thirty-four live groups exceed the usual settled retention limit without losing a live host surface; a settled original remains cancelled after late progress.","source_body_sha256":"2816c6edf750420c52e280d13f1a795b144d93ce8227eaf786b97b405607781a","body_loops":[{"path":"src/main/acp/acp-structured-child-work.test.ts","line":313,"source":"for (let index = 0; index < 33; index++) ","classification":"capacity workload","decision":"keep","reason":"33 simultaneously live children exceed fixed public projection while stop-all still addresses every owned live handle; not 33 declarations."}],"path":"src/main/acp/acp-structured-child-work.test.ts","start":12736,"end":13674,"byte_start":12736,"byte_end":13674,"source":"it('keeps 34 live groups in both host surfaces and never recreates the first settled eviction', async () => {\n const f = await fixture()\n await f.spawn('original-live', 'Original', 'original-turn')\n for (let index = 0; index < 33; index++) {\n await f.spawn(`live-${index}`, `Live ${index}`, `live-turn-${index}`)\n }\n expect((await f.strip())?.tasks).toHaveLength(34)\n expect(f.sidebar.at(-1)).toHaveLength(34)\n await f.finish('original-live', 'cancelled')\n await f.notify({\n sessionUpdate: 'subagent_progress',\n subagent_id: 'original-live',\n tokens_used: 100\n })\n expect((await f.strip())?.tasks).toHaveLength(33)\n expect(f.sidebar.at(-1)).toHaveLength(33)\n expect(f.childWork.views().find((view) => view.providerId === 'original-live')?.outcome).toBe(\n 'cancelled'\n )\n expect((await f.roster()).find((entry) => entry.id === 'original-live')?.state).toBe('stopped')\n })","source_sha256":"2816c6edf750420c52e280d13f1a795b144d93ce8227eaf786b97b405607781a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-work.test.ts","line":344,"title":"keeps 34 live groups in both host surfaces and never recreates the first settled eviction","body_sha256":"2816c6edf750420c52e280d13f1a795b144d93ce8227eaf786b97b405607781a"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-child-work.test.ts:313:loop"]},{"line":332,"end_line":362,"title":"keeps the agent strip but hides Stop when the installed peer lacks the targeted route","decision":"keep","reason":"An older peer with neither route still publishes its owned child in the actual host strip while hiding Stop; real targeted rejection is separately covered by child-stop route cases.","source_body_sha256":"f24fa3b2374501d5d46373a3878b1e8e8963803404933d48732cfa9e55121084","path":"src/main/acp/acp-structured-child-work.test.ts","start":13678,"end":15063,"byte_start":13678,"byte_end":15063,"source":"it('keeps the agent strip but hides Stop when the installed peer lacks the targeted route', async () => {\n const childWork = acpChildWorkStatusSink()\n const hosted = await openHostRig({\n statusSink: childWork.sink,\n script: (agent) => {\n agent.on('_x.ai/subagent/cancel', (frame) => agent.fail(frame, -32601, 'Method not found'))\n agent.on('_x.ai/task/kill', (frame) => agent.fail(frame, -32601, 'Method not found'))\n }\n })\n const cancelOnCleanup = cleanupScriptedHost(hosted)\n expect(await hosted.host.attach(CALLER, attachParams())).toMatchObject({ ok: true })\n await send(hosted.host, 'Delegate on older peer')\n const prompt = await hosted.rig.frame('session/prompt')\n cancelOnCleanup(prompt)\n hosted.rig.child().agent.notify('_x.ai/session/update', {\n sessionId: PROVIDER_SESSION,\n update: {\n sessionUpdate: 'subagent_spawned',\n subagent_id: 'child',\n parent_prompt_id: promptIdOf(prompt),\n description: 'Exact label'\n }\n })\n await hosted.host.flushStreamedEvents(SESSION)\n const strip = (await hosted.host.history({ sessionId: SESSION, direction: 'tail' })).page\n .backgroundTasks\n expect(strip?.tasks).toMatchObject([\n { id: 'child', kind: 'agent', description: 'Exact label', stoppable: false }\n ])\n expect(strip?.supportsTaskStop).not.toBe(true)\n })","source_sha256":"f24fa3b2374501d5d46373a3878b1e8e8963803404933d48732cfa9e55121084","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-work.test.ts","line":366,"title":"keeps the agent strip but hides Stop when the installed peer lacks the targeted route","body_sha256":"f24fa3b2374501d5d46373a3878b1e8e8963803404933d48732cfa9e55121084"},"proposal_ids":[],"explicit_input_controls":[]},{"line":364,"end_line":383,"title":"settles unresolved ownership as unknown on contact loss even when the producer process remains unproven","decision":"keep","reason":"Real transport error settles unresolved child ownership unknown despite simulated process exit being unproven, and subsequent progress cannot revive it.","source_body_sha256":"e1659ffe4c1f081fcb704066bf0145e375a9e33c5de2820fd55a371101a7e038","path":"src/main/acp/acp-structured-child-work.test.ts","start":15067,"end":15865,"byte_start":15067,"byte_end":15865,"source":"it('settles unresolved ownership as unknown on contact loss even when the producer process remains unproven', async () => {\n const f = await fixture()\n await f.spawn('unresolved')\n const child = f.rig.child()\n child.proveClose = async () => false\n try {\n child.agent.stdout.emit('error', new Error('transport lost'))\n await f.rows()\n expect(child.exited).toBe(false)\n expect(f.childWork.views()).toMatchObject([{ membership: 'settled', outcome: 'unknown' }])\n child.agent.notify('_x.ai/session/update', {\n sessionId: PROVIDER_SESSION,\n update: { sessionUpdate: 'subagent_progress', subagent_id: 'unresolved', tokens_used: 100 }\n })\n await f.rows()\n expect(await f.strip()).toBeNull()\n } finally {\n child.exit()\n }\n })","source_sha256":"e1659ffe4c1f081fcb704066bf0145e375a9e33c5de2820fd55a371101a7e038","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-work.test.ts","line":398,"title":"settles unresolved ownership as unknown on contact loss even when the producer process remains unproven","body_sha256":"e1659ffe4c1f081fcb704066bf0145e375a9e33c5de2820fd55a371101a7e038"},"proposal_ids":[],"explicit_input_controls":[]},{"line":387,"end_line":413,"title":"does not settle or cancel the parent after a targeted %s","decision":"keep","reason":"RPC refusal/wrong-id reply keeps both existing children live, returns cancelled false and writes distinct visible notes without cancelling or closing the parent.","source_body_sha256":"c92c96168c0210ba72c232c08fcca026432a877022311b80fe1d5bbf0dfdf162","parameter_groups":[{"path":"src/main/acp/acp-structured-child-work.test.ts","line":387,"source":"[\n ['rpc-error', \"The background task wasn't stopped.\"],\n ['mismatched-id', 'Cancellation was not confirmed.']\n ] as const","decision":"keep","reason":"","rows":[{"input":"rpc-error","decision":"keep","reason":"Refused target stop leaves child live and writes not-stopped note."},{"input":"mismatched-id","decision":"keep","reason":"Wrong success target leaves child live and writes not-confirmed note."}],"row_count":2}],"path":"src/main/acp/acp-structured-child-work.test.ts","start":16043,"end":17119,"byte_start":16043,"byte_end":17119,"source":"it.each([\n ['rpc-error', \"The background task wasn't stopped.\"],\n ['mismatched-id', 'Cancellation was not confirmed.']\n ] as const)('does not settle or cancel the parent after a targeted %s', async (failure, note) => {\n const f = await fixture()\n await f.spawn('first')\n await f.spawn('sibling')\n f.agent.on('_x.ai/subagent/cancel', (frame) => {\n if (failure === 'rpc-error') {\n f.agent.fail(frame, -32601, 'Method unavailable')\n } else {\n f.agent.reply(frame, { result: { subagentId: 'other', cancelled: true } })\n }\n })\n expect(await f.targetedStop('first')).toMatchObject({\n ok: true,\n value: { cancelled: false }\n })\n expect(\n (await f.rows()).flatMap((row) =>\n row.body.kind === 'status' && row.body.failure ? [row.body.text] : []\n )\n ).toEqual([note])\n expect(f.childWork.views().every((view) => view.membership === 'live')).toBe(true)\n expect(f.agent.frames.filter((frame) => frame.method === 'session/cancel')).toEqual([])\n expect(f.rig.child().closed).toBe(false)\n })","source_sha256":"c92c96168c0210ba72c232c08fcca026432a877022311b80fe1d5bbf0dfdf162","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-work.test.ts","line":421,"title":"does not settle or cancel the parent after a targeted %s","body_sha256":"c92c96168c0210ba72c232c08fcca026432a877022311b80fe1d5bbf0dfdf162"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-child-work.test.ts:387:parameter-table"]},{"line":415,"end_line":421,"title":"records nothing for a subagent first reported finished, and occupies no running surface","decision":"keep","reason":"A first-seen terminal report creates neither a durable roster row nor a live host child/strip entry.","source_body_sha256":"fc53e3c006dc1ecc671e56792840aa5057ae9b5dc7e4048654e44ded7e6d132a","path":"src/main/acp/acp-structured-child-work.test.ts","start":17123,"end":17446,"byte_start":17123,"byte_end":17446,"source":"it('records nothing for a subagent first reported finished, and occupies no running surface', async () => {\n const f = await fixture()\n await f.finish('finished-before-spawn', 'completed')\n expect(await f.roster()).toEqual([])\n expect(f.childWork.views()).toEqual([])\n expect(await f.strip()).toBeNull()\n })","source_sha256":"fc53e3c006dc1ecc671e56792840aa5057ae9b5dc7e4048654e44ded7e6d132a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-child-work.test.ts","line":449,"title":"records nothing for a subagent first reported finished, and occupies no running surface","body_sha256":"fc53e3c006dc1ecc671e56792840aa5057ae9b5dc7e4048654e44ded7e6d132a"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-structured-child-work.test.ts:27:loop","kind":"for-of","path":"src/main/acp/acp-structured-child-work.test.ts","line":27,"end_line":29,"start":1275,"end":1337,"byte_start":1275,"byte_end":1337,"source":"for (const close of cleanup.splice(0)) {\n await close()\n }","source_sha256":"a52a638c3d4a1e3402c6346adf7d924066ec724d400b6457383536fb4f583936","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const close of cleanup.splice(0)) ","header_sha256":"dab5dcb0e524c97576d760263cd26838cf4e8c502450e7b784c86ffe87ac0f0f","input_position":{"path":"src/main/acp/acp-structured-child-work.test.ts","line":27,"end_line":27,"start":1295,"end":1312,"byte_start":1295,"byte_end":1312},"binding":"const close","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"cleanup","decision":"keep","reason":"Run cleanupScriptedHost/owned close callbacks; prompt cancellation fixture is registered independently of success.","rows":[],"current_matches":[{"path":"src/main/acp/acp-structured-child-work.test.ts","line":28,"body_sha256":"9e65e919a9364536b5eda12797ebb9ef047e4f36e4376a2e403616bc093e8542"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-structured-child-work.test.ts:117:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-child-work.test.ts","line":117,"end_line":153,"start":4077,"end":5535,"byte_start":4077,"byte_end":5535,"source":"[\n ['s7-subagent-foreground', 'Count note lines'],\n ['s7-subagent-background', 'List folder files']\n ]","source_sha256":"c2d90325016e8763eef968a31ca28e9a93dd27ad185397506fbfe3be77edaabc","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-child-work.test.ts","line":117,"end_line":120,"start":4085,"end":4194,"byte_start":4085,"byte_end":4194},"binding":"it.each","resolution":[],"enclosing_case":{"line":117,"title":"publishes the production %s recording through the same host readers"},"affected_case_lines":[117],"decision":"fix","reason":"Transfer all unique assertions from duplicate adapter-only replays before removing them.","rows":[{"index":1,"path":"src/main/acp/acp-structured-child-work.test.ts","line":118,"end_line":118,"start":4091,"end":4137,"source":"['s7-subagent-foreground', 'Count note lines']","value":{"kind":"array","value":[{"kind":"string","value":"s7-subagent-foreground"},{"kind":"string","value":"Count note lines"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"baa2e54baef43676238ad3e3dbc83aa35a25869f025260bdd9f5f41782f44df9","byte_start":4091,"byte_end":4137,"input_label":"s7-subagent-foreground / Count note lines","decision":"fix","reason":"Real host/store/sidebar boundary for foreground capture; consolidate exact reply attribution/token13778/parent completion here."},{"index":2,"path":"src/main/acp/acp-structured-child-work.test.ts","line":119,"end_line":119,"start":4143,"end":4190,"source":"['s7-subagent-background', 'List folder files']","value":{"kind":"array","value":[{"kind":"string","value":"s7-subagent-background"},{"kind":"string","value":"List folder files"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"7cfbdea8f37ef10c87317d289caeb5e58770d5712878072bcf2764cdf9657a82","byte_start":4143,"byte_end":4190,"input_label":"s7-subagent-background / List folder files","decision":"fix","reason":"Real host/store/sidebar boundary for background capture; consolidate exact child reply and no-command-task rows here."}],"original_row_count":2},{"id":"src/main/acp/acp-structured-child-work.test.ts:248:loop","kind":"counted-loop","path":"src/main/acp/acp-structured-child-work.test.ts","line":248,"end_line":251,"start":10059,"end":10238,"byte_start":10059,"byte_end":10238,"source":"for (let index = 0; index < 33; index++) {\n await f.spawn(`later-${index}`, `Later ${index}`, `later-turn-${index}`)\n await f.finish(`later-${index}`, 'completed')\n }","source_sha256":"3838487b974b16391050f4ef133c1c6a4ef9243e3f6c9cf735dd9cb1dcce4fe4","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (let index = 0; index < 33; index++) ","header_sha256":"7af9ecc94349cba9dbf67c38920b19f13171e55533a07e4268d5b2d8d7001aea","input_position":null,"binding":null,"resolution":[],"enclosing_case":{"line":241,"title":"retains an original live child past 32 later groups and filters replay/wrong-session reports"},"affected_case_lines":[],"classification":"capacity workload","decision":"keep","reason":"33 finished children exceed a 32-entry retention window so an older settled entry evicts; not 33 independent runtime cases.","rows":[],"current_matches":[{"path":"src/main/acp/acp-structured-child-work.test.ts","line":282,"body_sha256":"917ef20acf01a4efa39e3528166ed9e4a1d4a04fbdf6039e26d21aad203f77d0"},{"path":"src/main/acp/acp-structured-child-work.test.ts","line":347,"body_sha256":"2a7cc918493de90eb57ee944ed6a0a33522eca863f3713308ad2dd1b8815e9b0"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-structured-child-work.test.ts:313:loop","kind":"counted-loop","path":"src/main/acp/acp-structured-child-work.test.ts","line":313,"end_line":315,"start":12944,"end":13068,"byte_start":12944,"byte_end":13068,"source":"for (let index = 0; index < 33; index++) {\n await f.spawn(`live-${index}`, `Live ${index}`, `live-turn-${index}`)\n }","source_sha256":"40606d7307e9a88da9e66a9801aa855a8a51bacdaa96b68ba6a30574e8f8f09c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (let index = 0; index < 33; index++) ","header_sha256":"7af9ecc94349cba9dbf67c38920b19f13171e55533a07e4268d5b2d8d7001aea","input_position":null,"binding":null,"resolution":[],"enclosing_case":{"line":310,"title":"keeps 34 live groups in both host surfaces and never recreates the first settled eviction"},"affected_case_lines":[],"classification":"capacity workload","decision":"keep","reason":"33 simultaneously live children exceed fixed public projection while stop-all still addresses every owned live handle; not 33 declarations.","rows":[],"current_matches":[{"path":"src/main/acp/acp-structured-child-work.test.ts","line":282,"body_sha256":"917ef20acf01a4efa39e3528166ed9e4a1d4a04fbdf6039e26d21aad203f77d0"},{"path":"src/main/acp/acp-structured-child-work.test.ts","line":347,"body_sha256":"2a7cc918493de90eb57ee944ed6a0a33522eca863f3713308ad2dd1b8815e9b0"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-structured-child-work.test.ts:387:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-child-work.test.ts","line":387,"end_line":413,"start":16043,"end":17119,"byte_start":16043,"byte_end":17119,"source":"[\n ['rpc-error', \"The background task wasn't stopped.\"],\n ['mismatched-id', 'Cancellation was not confirmed.']\n ] as const","source_sha256":"be6993e623d6da26389175754b224e2eee087a12800897861e42c57e2413b9c4","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-child-work.test.ts","line":387,"end_line":390,"start":16051,"end":16180,"byte_start":16051,"byte_end":16180},"binding":"it.each","resolution":[],"enclosing_case":{"line":387,"title":"does not settle or cancel the parent after a targeted %s"},"affected_case_lines":[387],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-child-work.test.ts","line":388,"end_line":388,"start":16057,"end":16109,"source":"['rpc-error', \"The background task wasn't stopped.\"]","value":{"kind":"array","value":[{"kind":"string","value":"rpc-error"},{"kind":"string","value":"The background task wasn't stopped."}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e7739aa7e8033e447f74c4f5358823f71b81cf892454c8c41c5060eb98a5a45c","byte_start":16057,"byte_end":16109,"input_label":"rpc-error","decision":"keep","reason":"Refused target stop leaves child live and writes not-stopped note."},{"index":2,"path":"src/main/acp/acp-structured-child-work.test.ts","line":389,"end_line":389,"start":16115,"end":16167,"source":"['mismatched-id', 'Cancellation was not confirmed.']","value":{"kind":"array","value":[{"kind":"string","value":"mismatched-id"},{"kind":"string","value":"Cancellation was not confirmed."}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"d6bdeda8293169d8b41becd937ac7427cf9048eb9e0e677def72fe51466039b7","byte_start":16115,"byte_end":16167,"input_label":"mismatched-id","decision":"keep","reason":"Wrong success target leaves child live and writes not-confirmed note."}],"original_row_count":2}],"parameter_groups":[{"id":"src/main/acp/acp-structured-child-work.test.ts:117:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-child-work.test.ts","line":117,"end_line":153,"start":4077,"end":5535,"byte_start":4077,"byte_end":5535,"source":"[\n ['s7-subagent-foreground', 'Count note lines'],\n ['s7-subagent-background', 'List folder files']\n ]","source_sha256":"c2d90325016e8763eef968a31ca28e9a93dd27ad185397506fbfe3be77edaabc","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-child-work.test.ts","line":117,"end_line":120,"start":4085,"end":4194,"byte_start":4085,"byte_end":4194},"binding":"it.each","resolution":[],"enclosing_case":{"line":117,"title":"publishes the production %s recording through the same host readers"},"affected_case_lines":[117],"decision":"fix","reason":"Transfer all unique assertions from duplicate adapter-only replays before removing them.","rows":[{"index":1,"path":"src/main/acp/acp-structured-child-work.test.ts","line":118,"end_line":118,"start":4091,"end":4137,"source":"['s7-subagent-foreground', 'Count note lines']","value":{"kind":"array","value":[{"kind":"string","value":"s7-subagent-foreground"},{"kind":"string","value":"Count note lines"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"baa2e54baef43676238ad3e3dbc83aa35a25869f025260bdd9f5f41782f44df9","byte_start":4091,"byte_end":4137,"input_label":"s7-subagent-foreground / Count note lines","decision":"fix","reason":"Real host/store/sidebar boundary for foreground capture; consolidate exact reply attribution/token13778/parent completion here."},{"index":2,"path":"src/main/acp/acp-structured-child-work.test.ts","line":119,"end_line":119,"start":4143,"end":4190,"source":"['s7-subagent-background', 'List folder files']","value":{"kind":"array","value":[{"kind":"string","value":"s7-subagent-background"},{"kind":"string","value":"List folder files"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"7cfbdea8f37ef10c87317d289caeb5e58770d5712878072bcf2764cdf9657a82","byte_start":4143,"byte_end":4190,"input_label":"s7-subagent-background / List folder files","decision":"fix","reason":"Real host/store/sidebar boundary for background capture; consolidate exact child reply and no-command-task rows here."}],"original_row_count":2},{"id":"src/main/acp/acp-structured-child-work.test.ts:387:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-child-work.test.ts","line":387,"end_line":413,"start":16043,"end":17119,"byte_start":16043,"byte_end":17119,"source":"[\n ['rpc-error', \"The background task wasn't stopped.\"],\n ['mismatched-id', 'Cancellation was not confirmed.']\n ] as const","source_sha256":"be6993e623d6da26389175754b224e2eee087a12800897861e42c57e2413b9c4","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-child-work.test.ts","line":387,"end_line":390,"start":16051,"end":16180,"byte_start":16051,"byte_end":16180},"binding":"it.each","resolution":[],"enclosing_case":{"line":387,"title":"does not settle or cancel the parent after a targeted %s"},"affected_case_lines":[387],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-child-work.test.ts","line":388,"end_line":388,"start":16057,"end":16109,"source":"['rpc-error', \"The background task wasn't stopped.\"]","value":{"kind":"array","value":[{"kind":"string","value":"rpc-error"},{"kind":"string","value":"The background task wasn't stopped."}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e7739aa7e8033e447f74c4f5358823f71b81cf892454c8c41c5060eb98a5a45c","byte_start":16057,"byte_end":16109,"input_label":"rpc-error","decision":"keep","reason":"Refused target stop leaves child live and writes not-stopped note."},{"index":2,"path":"src/main/acp/acp-structured-child-work.test.ts","line":389,"end_line":389,"start":16115,"end":16167,"source":"['mismatched-id', 'Cancellation was not confirmed.']","value":{"kind":"array","value":[{"kind":"string","value":"mismatched-id"},{"kind":"string","value":"Cancellation was not confirmed."}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"d6bdeda8293169d8b41becd937ac7427cf9048eb9e0e677def72fe51466039b7","byte_start":16115,"byte_end":16167,"input_label":"mismatched-id","decision":"keep","reason":"Wrong success target leaves child live and writes not-confirmed note."}],"original_row_count":2}],"body_support_cleanup_loops":[{"id":"src/main/acp/acp-structured-child-work.test.ts:27:loop","kind":"for-of","path":"src/main/acp/acp-structured-child-work.test.ts","line":27,"end_line":29,"start":1275,"end":1337,"byte_start":1275,"byte_end":1337,"source":"for (const close of cleanup.splice(0)) {\n await close()\n }","source_sha256":"a52a638c3d4a1e3402c6346adf7d924066ec724d400b6457383536fb4f583936","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const close of cleanup.splice(0)) ","header_sha256":"dab5dcb0e524c97576d760263cd26838cf4e8c502450e7b784c86ffe87ac0f0f","input_position":{"path":"src/main/acp/acp-structured-child-work.test.ts","line":27,"end_line":27,"start":1295,"end":1312,"byte_start":1295,"byte_end":1312},"binding":"const close","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"cleanup","decision":"keep","reason":"Run cleanupScriptedHost/owned close callbacks; prompt cancellation fixture is registered independently of success.","rows":[],"current_matches":[{"path":"src/main/acp/acp-structured-child-work.test.ts","line":28,"body_sha256":"9e65e919a9364536b5eda12797ebb9ef047e4f36e4376a2e403616bc093e8542"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-structured-child-work.test.ts:248:loop","kind":"counted-loop","path":"src/main/acp/acp-structured-child-work.test.ts","line":248,"end_line":251,"start":10059,"end":10238,"byte_start":10059,"byte_end":10238,"source":"for (let index = 0; index < 33; index++) {\n await f.spawn(`later-${index}`, `Later ${index}`, `later-turn-${index}`)\n await f.finish(`later-${index}`, 'completed')\n }","source_sha256":"3838487b974b16391050f4ef133c1c6a4ef9243e3f6c9cf735dd9cb1dcce4fe4","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (let index = 0; index < 33; index++) ","header_sha256":"7af9ecc94349cba9dbf67c38920b19f13171e55533a07e4268d5b2d8d7001aea","input_position":null,"binding":null,"resolution":[],"enclosing_case":{"line":241,"title":"retains an original live child past 32 later groups and filters replay/wrong-session reports"},"affected_case_lines":[],"classification":"capacity workload","decision":"keep","reason":"33 finished children exceed a 32-entry retention window so an older settled entry evicts; not 33 independent runtime cases.","rows":[],"current_matches":[{"path":"src/main/acp/acp-structured-child-work.test.ts","line":282,"body_sha256":"917ef20acf01a4efa39e3528166ed9e4a1d4a04fbdf6039e26d21aad203f77d0"},{"path":"src/main/acp/acp-structured-child-work.test.ts","line":347,"body_sha256":"2a7cc918493de90eb57ee944ed6a0a33522eca863f3713308ad2dd1b8815e9b0"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-structured-child-work.test.ts:313:loop","kind":"counted-loop","path":"src/main/acp/acp-structured-child-work.test.ts","line":313,"end_line":315,"start":12944,"end":13068,"byte_start":12944,"byte_end":13068,"source":"for (let index = 0; index < 33; index++) {\n await f.spawn(`live-${index}`, `Live ${index}`, `live-turn-${index}`)\n }","source_sha256":"40606d7307e9a88da9e66a9801aa855a8a51bacdaa96b68ba6a30574e8f8f09c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (let index = 0; index < 33; index++) ","header_sha256":"7af9ecc94349cba9dbf67c38920b19f13171e55533a07e4268d5b2d8d7001aea","input_position":null,"binding":null,"resolution":[],"enclosing_case":{"line":310,"title":"keeps 34 live groups in both host surfaces and never recreates the first settled eviction"},"affected_case_lines":[],"classification":"capacity workload","decision":"keep","reason":"33 simultaneously live children exceed fixed public projection while stop-all still addresses every owned live handle; not 33 declarations.","rows":[],"current_matches":[{"path":"src/main/acp/acp-structured-child-work.test.ts","line":282,"body_sha256":"917ef20acf01a4efa39e3528166ed9e4a1d4a04fbdf6039e26d21aad203f77d0"},{"path":"src/main/acp/acp-structured-child-work.test.ts","line":347,"body_sha256":"2a7cc918493de90eb57ee944ed6a0a33522eca863f3713308ad2dd1b8815e9b0"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"implemented_changes":[],"evidence":["src/main/acp/acp-structured-fixture-replay.test-support.ts","src/main/acp/acp-structured-host.test-support.ts","src/main/acp/acp-structured-child-work.test-support.ts","src/main/acp/acp-timeline-translator.ts"],"evidence_sha256":{"src/main/acp/acp-structured-fixture-replay.test-support.ts":"18ca0b27aec30b6ae51b5df5899eee5d614c5e88af6c799bed9248a861b54eb9","src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/acp/acp-structured-child-work.test-support.ts":"29a5c75ed44d2ee91e6fa45f833f5b1f31a04339cd70f80d6e13b9ebfade5496","src/main/acp/acp-timeline-translator.ts":"286f5183234b304ce856d2190bd62405f95200a9be7a5529ef1169a3aaf5c1f9"},"evidence_source_sha256":{"src/main/acp/acp-structured-fixture-replay.test-support.ts":"18ca0b27aec30b6ae51b5df5899eee5d614c5e88af6c799bed9248a861b54eb9","src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/acp/acp-structured-child-work.test-support.ts":"29a5c75ed44d2ee91e6fa45f833f5b1f31a04339cd70f80d6e13b9ebfade5496","src/main/acp/acp-timeline-translator.ts":"286f5183234b304ce856d2190bd62405f95200a9be7a5529ef1169a3aaf5c1f9"},"original_evidence_detail":[{"path":"src/main/acp/acp-structured-fixture-replay.test-support.ts","sha256":"18ca0b27aec30b6ae51b5df5899eee5d614c5e88af6c799bed9248a861b54eb9","lines":105,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-host.test-support.ts","sha256":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","lines":234,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-child-work.test-support.ts","sha256":"29a5c75ed44d2ee91e6fa45f833f5b1f31a04339cd70f80d6e13b9ebfade5496","lines":56,"read_state":"full_body_read"},{"path":"src/main/acp/acp-timeline-translator.ts","sha256":"286f5183234b304ce856d2190bd62405f95200a9be7a5529ef1169a3aaf5c1f9","lines":337,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"Grok roster evidence through the existing host child store publishes the production s7-subagent-foreground recording through the same host readers","status":"passed"},{"full_name":"Grok roster evidence through the existing host child store publishes the production s7-subagent-background recording through the same host readers","status":"passed"},{"full_name":"Grok roster evidence through the existing host child store shares one label and one id between saved rows, agent strip and sidebar after parent completion","status":"passed"},{"full_name":"Grok roster evidence through the existing host child store uses the targeted extension for one owned child and awaits its finish without cancelling parent or sibling","status":"passed"},{"full_name":"Grok roster evidence through the existing host child store reconciles an already-finished reply through the same roster and does not invent a not-found ending","status":"passed"},{"full_name":"Grok roster evidence through the existing host child store retains an original live child past 32 later groups and filters replay/wrong-session reports","status":"passed"},{"full_name":"Grok roster evidence through the existing host child store keeps distinct oversized provider children across groups despite identical display ids","status":"passed"},{"full_name":"Grok roster evidence through the existing host child store uses the exact clipped roster label and hides Stop for digested oversized provider handles","status":"passed"},{"full_name":"Grok roster evidence through the existing host child store keeps 34 live groups in both host surfaces and never recreates the first settled eviction","status":"passed"},{"full_name":"Grok roster evidence through the existing host child store keeps the agent strip but hides Stop when the installed peer lacks the targeted route","status":"passed"},{"full_name":"Grok roster evidence through the existing host child store settles unresolved ownership as unknown on contact loss even when the producer process remains unproven","status":"passed"},{"full_name":"Grok roster evidence through the existing host child store does not settle or cancel the parent after a targeted rpc-error","status":"passed"},{"full_name":"Grok roster evidence through the existing host child store does not settle or cancel the parent after a targeted mismatched-id","status":"passed"},{"full_name":"Grok roster evidence through the existing host child store records nothing for a subagent first reported finished, and occupies no running surface","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"child-transfer-final-corrected.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-compaction.test.ts","sha256":"4d400dbc1d3fbe3781c5011829340f15ebec1feb2204b45fcd51351419e05706","reviewed_sha256":"068cb25b4f2da0fc292d768dbf6012623d68a50fec90cb160b4fc2957966ba39","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":28,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: remove 1, consolidate 1, keep 10, fix 2. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":14,"original_declarations":14,"final_declarations":12,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":87,"end_line":97,"title":"offers /compact for Grok, OpenCode and OMP, and for no ACP agent without it","decision":"remove","reason":"Copied five-agent compact capability inventory and synthetic absent-flag mapping do not invoke compaction; remove while preserving actual command request/settlement cases.","source_body_sha256":"e634237c44259fd8d10fb47f6497cbddcff0fe5eefc061c92e3f2acdb38e0b63","proposed_changes":[{"line":87,"action":"remove declaration","proposal":"Delete copied five-agent capability map and flag-only withoutCompaction assertion. Preserve concrete request/settlement behavior and context-clear agent binding table. No unsupported-operation behavior is claimed by the removed flag test."}],"path":"src/main/acp/acp-structured-compaction.test.ts","start":3486,"end":3959,"byte_start":3486,"byte_end":3959,"source":"it('offers /compact for Grok, OpenCode and OMP, and for no ACP agent without it', () => {\n expect(\n Object.fromEntries(\n ACP_LAUNCH_SPECS.map((spec) => [\n spec.agent,\n acpStructuredAgentDefinition(spec).capabilities.compact\n ])\n )\n ).toEqual({ grok: true, opencode: true, opencode2: true, omp: true, antigravity: false })\n expect(acpStructuredAgentDefinition(withoutCompaction(GROK)).capabilities.compact).toBe(false)\n })","source_sha256":"e634237c44259fd8d10fb47f6497cbddcff0fe5eefc061c92e3f2acdb38e0b63","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"remove","implementation":"removed","destination":null,"proposal_ids":["acp-main-0001-024"],"preservation":"Copied five-agent compact capability inventory and synthetic absent-flag mapping do not invoke compaction; remove while preserving actual command request/settlement cases.","explicit_input_controls":[]},{"line":99,"end_line":110,"title":"registers each compacting agent with the adapter method its capability needs","decision":"consolidate","reason":"Registry really checks capability methods. Consolidate successful registration into compact(spec) factory over actually exercised provider; remove standalone inventory/no-throw disk rig.","source_body_sha256":"ec6b77f66bdcc0c6b6eb4bdae1852414a47e8dde17730ffd909cc7e1999cccec","proposed_changes":[{"line":99,"action":"consolidate declaration","proposal":"Move the real StructuredAgentRegistry registration check into compact(spec) setup for each actually exercised compaction provider, and remove standalone five-row inventory/no-throw smoke (which opens a disk rig without acquiring). Registry enforcement itself is real; its successful registration remains covered by concrete command cases. No dedicated negative registry suite was found by targeted search, so do not claim one exists."}],"path":"src/main/acp/acp-structured-compaction.test.ts","start":3963,"end":4348,"byte_start":3963,"byte_end":4348,"source":"it('registers each compacting agent with the adapter method its capability needs', async () => {\n const rig = await openAcpAdapterRig()\n expect(\n () =>\n new StructuredAgentRegistry(\n ACP_LAUNCH_SPECS.map((spec) => ({\n definition: acpStructuredAgentDefinition(spec),\n adapter: rig.adapter\n }))\n )\n ).not.toThrow()\n })","source_sha256":"ec6b77f66bdcc0c6b6eb4bdae1852414a47e8dde17730ffd909cc7e1999cccec","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"consolidate","implementation":"consolidated","destination":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":42,"title":"compact(spec) setup"},"proposal_ids":["acp-main-0001-025"],"transfer_evidence":"Actual definition/adapter registry registration now runs before each retained compaction behavior.","explicit_input_controls":[]},{"line":114,"end_line":121,"title":"sends Grok `/compact` as a prompt under the command turn's id","decision":"keep","reason":"Grok compaction actually serializes /compact with command turn ids in prompt/request metadata.","source_body_sha256":"6bd9680928f384bf8fd942643e57bd8338ffaf9d1d118d08c35671cb04c00f7a","path":"src/main/acp/acp-structured-compaction.test.ts","start":4398,"end":4735,"byte_start":4398,"byte_end":4735,"source":"it(\"sends Grok `/compact` as a prompt under the command turn's id\", async () => {\n const { command, prompt } = await compact(GROK)\n expect(prompt.params).toEqual({\n sessionId: PROVIDER_SESSION,\n prompt: [{ type: 'text', text: '/compact' }],\n _meta: { promptId: command.turnId, requestId: command.turnId }\n })\n })","source_sha256":"6bd9680928f384bf8fd942643e57bd8338ffaf9d1d118d08c35671cb04c00f7a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":86,"title":"sends Grok `/compact` as a prompt under the command turn's id","body_sha256":"6bd9680928f384bf8fd942643e57bd8338ffaf9d1d118d08c35671cb04c00f7a"},"proposal_ids":[],"explicit_input_controls":[]},{"line":123,"end_line":132,"title":"sends %s `/compact` as a plain prompt","decision":"keep","reason":"Both OpenCode and OMP actually serialize the plain /compact prompt without Grok metadata.","source_body_sha256":"945453ea3171ebc55f7e43ac621fdc2b8c9e0e62dac46454b7c4d25220f7ce46","parameter_groups":[{"path":"src/main/acp/acp-structured-compaction.test.ts","line":123,"source":"[\n ['OpenCode', OPENCODE],\n ['OMP', OMP]\n ]","decision":"keep","reason":"","rows":[{"input":"OpenCode","decision":"keep","reason":"Plain prompt omits Grok injected identity."},{"input":"OMP","decision":"keep","reason":"OMP plain prompt omits injected identity and uses OMP dialect."}],"row_count":2}],"path":"src/main/acp/acp-structured-compaction.test.ts","start":4739,"end":5041,"byte_start":4739,"byte_end":5041,"source":"it.each([\n ['OpenCode', OPENCODE],\n ['OMP', OMP]\n ])('sends %s `/compact` as a plain prompt', async (_name, spec) => {\n const { prompt } = await compact(spec)\n expect(prompt.params).toEqual({\n sessionId: PROVIDER_SESSION,\n prompt: [{ type: 'text', text: '/compact' }]\n })\n })","source_sha256":"945453ea3171ebc55f7e43ac621fdc2b8c9e0e62dac46454b7c4d25220f7ce46","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":95,"title":"sends %s `/compact` as a plain prompt","body_sha256":"945453ea3171ebc55f7e43ac621fdc2b8c9e0e62dac46454b7c4d25220f7ce46"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-compaction.test.ts:123:parameter-table"]},{"line":136,"end_line":188,"title":"replays captured %s under the host command turn","decision":"fix","reason":"Six captured OMP v17/v18 skip/tiny-skip/success inputs settle the real journal command row and omit message output; retain only supported distinct producer shapes after inspecting fixtures.","source_body_sha256":"5446b6434c844192e1e1e2e715ab1aaa6a2d30d340dc6706bc292f5a9702f269","proposed_changes":[{"line":136,"action":"remove duplicate parameter rows","proposal":"Keep omp-v17-compact-skip and omp-v17-compact-success; remove the two tiny-skip rows and both v18 rows from runtime table. All six full captures were compared: v17/v18 skip and tiny pairs byte-identical; tiny differs from skip only RPC id that replay rewrites. Successes differ only numeric text that OMP compactionReply does not parse. Retain capture files for provenance/privacy/schema scans."}],"parameter_groups":[{"path":"src/main/acp/acp-structured-compaction.test.ts","line":136,"source":"[\n [\n 'omp-v17-compact-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ],\n [\n 'omp-v17-compact-tiny-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ],\n [\n 'omp-v17-compact-success',\n { kind: 'status', text: 'Context compacted', presentation: 'compaction' }\n ],\n [\n 'omp-v18-compact-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ],\n [\n 'omp-v18-compact-tiny-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ],\n [\n 'omp-v18-compact-success',\n { kind: 'status', text: 'Context compacted', presentation: 'compaction' }\n ]\n ]","decision":"consolidate","reason":"All six full 3-frame captures and OMP dialect were read. Keep fixture files for provenance/privacy/schema corpus; remove duplicate runtime table rows only.","rows":[{"input":"omp-v17-compact-skip","decision":"keep","reason":"Keep one captured no-op wire sequence."},{"input":"omp-v17-compact-tiny-skip","decision":"remove","reason":"Same sequence after request-id rewrite; no distinct parser branch."},{"input":"omp-v17-compact-success","decision":"keep","reason":"Keep captured ordinary successful reply; token arithmetic is not parsed."},{"input":"omp-v18-compact-skip","decision":"remove","reason":"Byte-identical to v17 skip capture."},{"input":"omp-v18-compact-tiny-skip","decision":"remove","reason":"Byte-identical to v17 tiny and equivalent to retained skip after id rewrite."},{"input":"omp-v18-compact-success","decision":"remove","reason":"Only numeric token prose differs; actual dialect ignores it and follows same normal-success branch."}],"row_count":6}],"path":"src/main/acp/acp-structured-compaction.test.ts","start":5094,"end":6640,"byte_start":5094,"byte_end":6640,"source":"it.each([\n [\n 'omp-v17-compact-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ],\n [\n 'omp-v17-compact-tiny-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ],\n [\n 'omp-v17-compact-success',\n { kind: 'status', text: 'Context compacted', presentation: 'compaction' }\n ],\n [\n 'omp-v18-compact-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ],\n [\n 'omp-v18-compact-tiny-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ],\n [\n 'omp-v18-compact-success',\n { kind: 'status', text: 'Context compacted', presentation: 'compaction' }\n ]\n ])('replays captured %s under the host command turn', async (fixture, body) => {\n const frames = await readAcpFixture(fixture)\n const { rig, command } = await compact(OMP, frames)\n const { turn, inside } = await ended(rig, command)\n expect(turn).toMatchObject({ state: 'completed', outcome: 'success' })\n expect(inside).toEqual([body])\n expect((await rig.rig.rows()).some((row) => row.body.kind === 'message')).toBe(false)\n })","source_sha256":"5446b6434c844192e1e1e2e715ab1aaa6a2d30d340dc6706bc292f5a9702f269","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":108,"title":"replays captured %s under the host command turn","body_sha256":"0538a109e6d357014fc1430f279a476fcad1c14f920a4ac4b5fdbfa7d8a4e80d"},"proposal_ids":["acp-main-0001-027"],"explicit_input_controls":["src/main/acp/acp-structured-compaction.test.ts:136:parameter-table"]},{"line":190,"end_line":201,"title":"ends a compaction the agent finished with one compacted row, drawing none of its words","decision":"keep","reason":"Normal Grok completion produces one compaction status under the command identity, omitting ordinary agent text.","source_body_sha256":"ee73a51868ab160d7ccba8332715a1e91d240108a016787f2bc5bcc9e3f21ba8","path":"src/main/acp/acp-structured-compaction.test.ts","start":6644,"end":7347,"byte_start":6644,"byte_end":7347,"source":"it('ends a compaction the agent finished with one compacted row, drawing none of its words', async () => {\n const { rig, command, prompt } = await compact(GROK)\n const { agent } = rig.child()\n agent.notify('session/update', replyText('Summarised 40 messages.', command.turnId))\n agent.reply(prompt, { stopReason: 'end_turn' })\n const { turn, inside } = await ended(rig, command)\n expect(turn).toMatchObject({ turnId: command.turnId, state: 'completed', outcome: 'success' })\n expect(inside).toEqual([\n { kind: 'status', text: 'Context compacted', presentation: 'compaction' }\n ])\n expect((await rig.rig.rows()).some((row) => row.body.kind === 'message')).toBe(false)\n })","source_sha256":"ee73a51868ab160d7ccba8332715a1e91d240108a016787f2bc5bcc9e3f21ba8","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":131,"title":"ends a compaction the agent finished with one compacted row, drawing none of its words","body_sha256":"ee73a51868ab160d7ccba8332715a1e91d240108a016787f2bc5bcc9e3f21ba8"},"proposal_ids":[],"explicit_input_controls":[]},{"line":203,"end_line":219,"title":"reads OMP %j as skipped, not failed","decision":"fix","reason":"Two known OMP skip strings become successful command completion with specific warning presentations rather than errors.","source_body_sha256":"9fe31bee081c91857c3ec61242435c494966087e0c0d39dabe0c862afbedbb6d","proposed_changes":[{"line":203,"action":"remove duplicate parameter row","proposal":"Remove synthetic Nothing-to-compact row already traversed by retained captured skip; retain Already-compacted alternative and other failure/auth/cancel behaviors."}],"parameter_groups":[{"path":"src/main/acp/acp-structured-compaction.test.ts","line":203,"source":"[\n [\n 'Compaction failed: Nothing to compact (session too small)',\n 'Nothing to compact (session too small)'\n ],\n ['Compaction failed: Already compacted', 'Already compacted']\n ]","decision":"consolidate","reason":"","rows":[{"input":"Nothing to compact","decision":"remove","reason":"Same exact no-op prose and adapter path as retained captured v17 skip; remove duplicate synthetic row."},{"input":"Already compacted","decision":"keep","reason":"Independent no-op alternative phrase still needs mapping."}],"row_count":2}],"path":"src/main/acp/acp-structured-compaction.test.ts","start":7351,"end":8080,"byte_start":7351,"byte_end":8080,"source":"it.each([\n [\n 'Compaction failed: Nothing to compact (session too small)',\n 'Nothing to compact (session too small)'\n ],\n ['Compaction failed: Already compacted', 'Already compacted']\n ])('reads OMP %j as skipped, not failed', async (reply, shown) => {\n const { rig, command, prompt } = await compact(OMP)\n const { agent } = rig.child()\n agent.notify('session/update', replyText(reply))\n agent.reply(prompt, { stopReason: 'end_turn' })\n const { turn, inside } = await ended(rig, command)\n expect(turn).toMatchObject({ state: 'completed', outcome: 'success' })\n expect(inside).toEqual([\n { kind: 'status', tone: 'warning', text: shown, presentation: 'compaction-skipped' }\n ])\n })","source_sha256":"9fe31bee081c91857c3ec61242435c494966087e0c0d39dabe0c862afbedbb6d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":144,"title":"reads OMP Already compacted as skipped, not failed","body_sha256":"ece7830b15b89a411dbfb0ea27d69263d2b8cfdcecbab5121c808ac5b1d07931"},"proposal_ids":["acp-main-0001-028"],"explicit_input_controls":["src/main/acp/acp-structured-compaction.test.ts:203:parameter-table"]},{"line":221,"end_line":244,"title":"reads any other OMP compaction failure as failed, in its own words","decision":"keep","reason":"Other OMP failure text becomes a real failed command with original provider wording in the public failure detail.","source_body_sha256":"8cd703807dfe0c5bf77e6a0a478ba0523c5b78a7e32924b6bc2959b802b609f3","path":"src/main/acp/acp-structured-compaction.test.ts","start":8084,"end":8920,"byte_start":8084,"byte_end":8920,"source":"it('reads any other OMP compaction failure as failed, in its own words', async () => {\n const { rig, command, prompt } = await compact(OMP)\n const { agent } = rig.child()\n agent.notify(\n 'session/update',\n replyText('Compaction failed: summary model rejected the request')\n )\n agent.reply(prompt, { stopReason: 'end_turn' })\n const { turn, inside } = await ended(rig, command)\n expect(turn).toMatchObject({ state: 'completed', outcome: 'failure' })\n expect(inside).toEqual([\n expect.objectContaining({\n kind: 'status',\n tone: 'error',\n failure: expect.objectContaining({\n kind: 'compactionFailed',\n detail: {\n text: 'Compaction failed: summary model rejected the request',\n audience: 'person'\n }\n })\n })\n ])\n })","source_sha256":"8cd703807dfe0c5bf77e6a0a478ba0523c5b78a7e32924b6bc2959b802b609f3","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":161,"title":"reads any other OMP compaction failure as failed, in its own words","body_sha256":"8cd703807dfe0c5bf77e6a0a478ba0523c5b78a7e32924b6bc2959b802b609f3"},"proposal_ids":[],"explicit_input_controls":[]},{"line":246,"end_line":256,"title":"reads OMP failure words only from OMP","decision":"keep","reason":"An OMP-looking failure string from OpenCode is ordinary output and cannot activate the OMP-specific failure parser.","source_body_sha256":"d1bd0fd5449b255b90ade38c2509ee4082e8e0046f9422ad493a36af5e845c73","path":"src/main/acp/acp-structured-compaction.test.ts","start":8924,"end":9446,"byte_start":8924,"byte_end":9446,"source":"it('reads OMP failure words only from OMP', async () => {\n const { rig, command, prompt } = await compact(OPENCODE)\n const { agent } = rig.child()\n agent.notify('session/update', replyText('Compaction failed: Nothing to compact'))\n agent.reply(prompt, { stopReason: 'end_turn' })\n const { turn, inside } = await ended(rig, command)\n expect(turn).toMatchObject({ outcome: 'success' })\n expect(inside).toEqual([\n { kind: 'status', text: 'Context compacted', presentation: 'compaction' }\n ])\n })","source_sha256":"d1bd0fd5449b255b90ade38c2509ee4082e8e0046f9422ad493a36af5e845c73","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":186,"title":"reads OMP failure words only from OMP","body_sha256":"d1bd0fd5449b255b90ade38c2509ee4082e8e0046f9422ad493a36af5e845c73"},"proposal_ids":[],"explicit_input_controls":[]},{"line":258,"end_line":273,"title":"fails a compaction the agent answered with an error, in the agent's words","decision":"keep","reason":"An explicit non-auth RPC failure ends the command failed with the original provider message.","source_body_sha256":"01fcc050167d5a56db43f950ffefb11f45eb6376143e8920395b844c4976a36e","path":"src/main/acp/acp-structured-compaction.test.ts","start":9450,"end":10170,"byte_start":9450,"byte_end":10170,"source":"it(\"fails a compaction the agent answered with an error, in the agent's words\", async () => {\n const { rig, command, prompt } = await compact(OPENCODE)\n // -32000 means signed out to ACP; any other error code is the compaction's own failure.\n rig.child().agent.fail(prompt, -32603, 'Summarization failed: 500')\n const { turn, inside } = await ended(rig, command)\n expect(turn).toMatchObject({ state: 'completed', outcome: 'failure' })\n expect(inside).toEqual([\n expect.objectContaining({\n tone: 'error',\n failure: expect.objectContaining({\n kind: 'compactionFailed',\n detail: { text: 'Summarization failed: 500', audience: 'person' }\n })\n })\n ])\n })","source_sha256":"01fcc050167d5a56db43f950ffefb11f45eb6376143e8920395b844c4976a36e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":198,"title":"fails a compaction the agent answered with an error, in the agent's words","body_sha256":"01fcc050167d5a56db43f950ffefb11f45eb6376143e8920395b844c4976a36e"},"proposal_ids":[],"explicit_input_controls":[]},{"line":275,"end_line":289,"title":"says $spec.agent is not signed in, as a send does","decision":"keep","reason":"OpenCode auth code and OMP nested no-model/login details each produce notSignedIn public failure through the real dialect path.","source_body_sha256":"c26a5028fd24996603986136dec4b650b1073fc3a92e870057b5552d99b9b095","parameter_groups":[{"path":"src/main/acp/acp-structured-compaction.test.ts","line":275,"source":"[\n { spec: OPENCODE, code: -32000, data: undefined },\n { spec: OMP, code: -32603, data: { details: 'No model selected.\\n\\nUse /login to sign in.' } }\n ]","decision":"keep","reason":"","rows":[{"input":"OpenCode -32000","decision":"keep","reason":"Standard ACP auth-required compaction failure maps notSignedIn."},{"input":"OMP -32603 + No model selected","decision":"keep","reason":"OMP-specific signed-out detail maps notSignedIn through different dialect branch."}],"row_count":2}],"path":"src/main/acp/acp-structured-compaction.test.ts","start":10174,"end":10861,"byte_start":10174,"byte_end":10861,"source":"it.each([\n { spec: OPENCODE, code: -32000, data: undefined },\n { spec: OMP, code: -32603, data: { details: 'No model selected.\\n\\nUse /login to sign in.' } }\n ])('says $spec.agent is not signed in, as a send does', async ({ spec, code, data }) => {\n const { rig, command, prompt } = await compact(spec)\n rig.child().agent.fail(prompt, code, 'Authentication required', data)\n const { turn, inside } = await ended(rig, command)\n expect(turn).toMatchObject({ state: 'completed', outcome: 'failure' })\n expect(inside).toEqual([\n expect.objectContaining({\n tone: 'error',\n failure: expect.objectContaining({ kind: 'notSignedIn' })\n })\n ])\n })","source_sha256":"c26a5028fd24996603986136dec4b650b1073fc3a92e870057b5552d99b9b095","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":215,"title":"says $spec.agent is not signed in, as a send does","body_sha256":"c26a5028fd24996603986136dec4b650b1073fc3a92e870057b5552d99b9b095"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-compaction.test.ts:275:parameter-table"]},{"line":291,"end_line":299,"title":"fails a compaction the agent ended with any other stop reason","decision":"keep","reason":"A non-success/non-cancel stop reason fails compaction instead of claiming success.","source_body_sha256":"19715fb584a774eb1ec149d33cf51bc834da4b8241c7ce1608ae754a26da0a67","path":"src/main/acp/acp-structured-compaction.test.ts","start":10865,"end":11335,"byte_start":10865,"byte_end":11335,"source":"it('fails a compaction the agent ended with any other stop reason', async () => {\n const { rig, command, prompt } = await compact(GROK)\n rig.child().agent.reply(prompt, { stopReason: 'refusal' })\n const { turn, inside } = await ended(rig, command)\n expect(turn).toMatchObject({ state: 'completed', outcome: 'failure' })\n expect(inside).toEqual([\n expect.objectContaining({ failure: expect.objectContaining({ kind: 'compactionFailed' }) })\n ])\n })","source_sha256":"19715fb584a774eb1ec149d33cf51bc834da4b8241c7ce1608ae754a26da0a67","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":231,"title":"fails a compaction the agent ended with any other stop reason","body_sha256":"19715fb584a774eb1ec149d33cf51bc834da4b8241c7ce1608ae754a26da0a67"},"proposal_ids":[],"explicit_input_controls":[]},{"line":301,"end_line":316,"title":"ends a stopped compaction as cancelled, with no result row","decision":"keep","reason":"An actual cancel notification and cancelled reply interrupt the command with no compaction result row.","source_body_sha256":"c396d21a34a859884a8d822468011161c008f7c911373647fbaaba769b943ce8","path":"src/main/acp/acp-structured-compaction.test.ts","start":11339,"end":11996,"byte_start":11339,"byte_end":11996,"source":"it('ends a stopped compaction as cancelled, with no result row', async () => {\n const { rig, command, prompt } = await compact(GROK)\n const { agent } = rig.child()\n agent.on('session/cancel', () => agent.reply(prompt, { stopReason: 'cancelled' }))\n await expect(\n rig.adapter.cancelTurn({\n sessionId: SESSION,\n fence: 1,\n turnId: command.turnId,\n resolveLiveTurnId: () => command.turnId\n })\n ).resolves.toEqual({ cancelled: true })\n const { turn, inside } = await ended(rig, command)\n expect(turn).toMatchObject({ state: 'interrupted', outcome: 'cancellation' })\n expect(inside).toEqual([])\n })","source_sha256":"c396d21a34a859884a8d822468011161c008f7c911373647fbaaba769b943ce8","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":241,"title":"ends a stopped compaction as cancelled, with no result row","body_sha256":"c396d21a34a859884a8d822468011161c008f7c911373647fbaaba769b943ce8"},"proposal_ids":[],"explicit_input_controls":[]},{"line":318,"end_line":334,"title":"takes the next message as an ordinary turn once the compaction ended","decision":"keep","reason":"After actual compaction settlement the next message dispatches as an ordinary prompt with its independent turn metadata.","source_body_sha256":"869f1240bc78b2e91a060185c5252d4d3d407dd1dde15818318c8fe750a457b9","path":"src/main/acp/acp-structured-compaction.test.ts","start":12000,"end":12680,"byte_start":12000,"byte_end":12680,"source":"it('takes the next message as an ordinary turn once the compaction ended', async () => {\n const { rig, command, prompt } = await compact(GROK)\n rig.child().agent.reply(prompt, { stopReason: 'end_turn' })\n await ended(rig, command)\n expect(\n await rig.adapter.dispatch({\n sessionId: SESSION,\n clientMessageId: 'send-2',\n body: { kind: 'message', role: 'user', blocks: [{ type: 'text', text: 'next' }] },\n fence: 1\n })\n ).toEqual({ state: 'admitted' })\n expect((await rig.frame('session/prompt', 1)).params).toMatchObject({\n prompt: [{ type: 'text', text: 'next' }],\n _meta: { promptId: 'prompt:send-2' }\n })\n })","source_sha256":"869f1240bc78b2e91a060185c5252d4d3d407dd1dde15818318c8fe750a457b9","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":258,"title":"takes the next message as an ordinary turn once the compaction ended","body_sha256":"869f1240bc78b2e91a060185c5252d4d3d407dd1dde15818318c8fe750a457b9"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-structured-compaction.test.ts:123:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-compaction.test.ts","line":123,"end_line":132,"start":4739,"end":5041,"byte_start":4739,"byte_end":5041,"source":"[\n ['OpenCode', OPENCODE],\n ['OMP', OMP]\n ]","source_sha256":"9073c14102547b459373b70816ee4789e87947b5c48996809af0a4f974b5c528","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":123,"end_line":126,"start":4747,"end":4797,"byte_start":4747,"byte_end":4797},"binding":"it.each","resolution":[],"enclosing_case":{"line":123,"title":"sends %s `/compact` as a plain prompt"},"affected_case_lines":[123],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-compaction.test.ts","line":124,"end_line":124,"start":4753,"end":4775,"source":"['OpenCode', OPENCODE]","value":{"kind":"array","value":[{"kind":"string","value":"OpenCode"},{"kind":"reference","source":"OPENCODE","resolved_at":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":27,"end_line":27,"start":1289,"end":1318},"resolved":{"kind":"source-expression","source":"acpLaunchSpecFor('opencode')!"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"681447e5e67e50399b4e20db849a4baee3ac6937fe921ef6ce0280dd03afe7b0","byte_start":4753,"byte_end":4775,"input_label":"OpenCode","decision":"keep","reason":"Plain prompt omits Grok injected identity."},{"index":2,"path":"src/main/acp/acp-structured-compaction.test.ts","line":125,"end_line":125,"start":4781,"end":4793,"source":"['OMP', OMP]","value":{"kind":"array","value":[{"kind":"string","value":"OMP"},{"kind":"reference","source":"OMP","resolved_at":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":28,"end_line":28,"start":1331,"end":1355},"resolved":{"kind":"source-expression","source":"acpLaunchSpecFor('omp')!"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"ec620e1ab6b5e33a5c2b03192ab4e8669319e8f0aaf1394e81e3230c4ae3afba","byte_start":4781,"byte_end":4793,"input_label":"OMP","decision":"keep","reason":"OMP plain prompt omits injected identity and uses OMP dialect."}],"original_row_count":2},{"id":"src/main/acp/acp-structured-compaction.test.ts:136:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-compaction.test.ts","line":136,"end_line":188,"start":5094,"end":6640,"byte_start":5094,"byte_end":6640,"source":"[\n [\n 'omp-v17-compact-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ],\n [\n 'omp-v17-compact-tiny-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ],\n [\n 'omp-v17-compact-success',\n { kind: 'status', text: 'Context compacted', presentation: 'compaction' }\n ],\n [\n 'omp-v18-compact-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ],\n [\n 'omp-v18-compact-tiny-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ],\n [\n 'omp-v18-compact-success',\n { kind: 'status', text: 'Context compacted', presentation: 'compaction' }\n ]\n ]","source_sha256":"313cdef1d42b9c00420c6168d7cb7efa2ed07b01ce2e8018a4ff70703ce199e5","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":136,"end_line":181,"start":5102,"end":6196,"byte_start":5102,"byte_end":6196},"binding":"it.each","resolution":[],"enclosing_case":{"line":136,"title":"replays captured %s under the host command turn"},"affected_case_lines":[136],"decision":"consolidate","reason":"All six full 3-frame captures and OMP dialect were read. Keep fixture files for provenance/privacy/schema corpus; remove duplicate runtime table rows only.","rows":[{"index":1,"path":"src/main/acp/acp-structured-compaction.test.ts","line":137,"end_line":145,"start":5108,"end":5309,"source":"[\n 'omp-v17-compact-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ]","value":{"kind":"array","value":[{"kind":"string","value":"omp-v17-compact-skip"},{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"status"}},{"key":"tone","value":{"kind":"string","value":"warning"}},{"key":"text","value":{"kind":"string","value":"Nothing to compact (session too small)"}},{"key":"presentation","value":{"kind":"string","value":"compaction-skipped"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"f88fdc587c4d437eb240572d03e578ffdc1b06cd65be7f281f49d067b426f550","byte_start":5108,"byte_end":5309,"input_label":"omp-v17-compact-skip","decision":"keep","reason":"Keep one captured no-op wire sequence."},{"index":2,"path":"src/main/acp/acp-structured-compaction.test.ts","line":146,"end_line":154,"start":5315,"end":5521,"source":"[\n 'omp-v17-compact-tiny-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ]","value":{"kind":"array","value":[{"kind":"string","value":"omp-v17-compact-tiny-skip"},{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"status"}},{"key":"tone","value":{"kind":"string","value":"warning"}},{"key":"text","value":{"kind":"string","value":"Nothing to compact (session too small)"}},{"key":"presentation","value":{"kind":"string","value":"compaction-skipped"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"44e4a6ae9ceacbb6f6830b65819d1410fb091cf766d6eecfad805ee249cc9494","byte_start":5315,"byte_end":5521,"input_label":"omp-v17-compact-tiny-skip","decision":"remove","reason":"Same sequence after request-id rewrite; no distinct parser branch."},{"index":3,"path":"src/main/acp/acp-structured-compaction.test.ts","line":155,"end_line":158,"start":5527,"end":5647,"source":"[\n 'omp-v17-compact-success',\n { kind: 'status', text: 'Context compacted', presentation: 'compaction' }\n ]","value":{"kind":"array","value":[{"kind":"string","value":"omp-v17-compact-success"},{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"status"}},{"key":"text","value":{"kind":"string","value":"Context compacted"}},{"key":"presentation","value":{"kind":"string","value":"compaction"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"7ad12f6a6b7a1d2ad7b24eaeee6732cdfb43ef02148b00e4b09d3416422cdfa1","byte_start":5527,"byte_end":5647,"input_label":"omp-v17-compact-success","decision":"keep","reason":"Keep captured ordinary successful reply; token arithmetic is not parsed."},{"index":4,"path":"src/main/acp/acp-structured-compaction.test.ts","line":159,"end_line":167,"start":5653,"end":5854,"source":"[\n 'omp-v18-compact-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ]","value":{"kind":"array","value":[{"kind":"string","value":"omp-v18-compact-skip"},{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"status"}},{"key":"tone","value":{"kind":"string","value":"warning"}},{"key":"text","value":{"kind":"string","value":"Nothing to compact (session too small)"}},{"key":"presentation","value":{"kind":"string","value":"compaction-skipped"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"281ae30d83db36d59c0e0ce4603729a0c2c555a70a1f372ae3e77f0fd294eef2","byte_start":5653,"byte_end":5854,"input_label":"omp-v18-compact-skip","decision":"remove","reason":"Byte-identical to v17 skip capture."},{"index":5,"path":"src/main/acp/acp-structured-compaction.test.ts","line":168,"end_line":176,"start":5860,"end":6066,"source":"[\n 'omp-v18-compact-tiny-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ]","value":{"kind":"array","value":[{"kind":"string","value":"omp-v18-compact-tiny-skip"},{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"status"}},{"key":"tone","value":{"kind":"string","value":"warning"}},{"key":"text","value":{"kind":"string","value":"Nothing to compact (session too small)"}},{"key":"presentation","value":{"kind":"string","value":"compaction-skipped"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"455bffec4da8a69e739c1eccd7f98393a8d433d912341a523f961041a3916ab4","byte_start":5860,"byte_end":6066,"input_label":"omp-v18-compact-tiny-skip","decision":"remove","reason":"Byte-identical to v17 tiny and equivalent to retained skip after id rewrite."},{"index":6,"path":"src/main/acp/acp-structured-compaction.test.ts","line":177,"end_line":180,"start":6072,"end":6192,"source":"[\n 'omp-v18-compact-success',\n { kind: 'status', text: 'Context compacted', presentation: 'compaction' }\n ]","value":{"kind":"array","value":[{"kind":"string","value":"omp-v18-compact-success"},{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"status"}},{"key":"text","value":{"kind":"string","value":"Context compacted"}},{"key":"presentation","value":{"kind":"string","value":"compaction"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"c8b9c2b020e8bef8fd3fb2d49a04dc82b32aede48a2c57c29c7cbcc24d4fa11f","byte_start":6072,"byte_end":6192,"input_label":"omp-v18-compact-success","decision":"remove","reason":"Only numeric token prose differs; actual dialect ignores it and follows same normal-success branch."}],"original_row_count":6},{"id":"src/main/acp/acp-structured-compaction.test.ts:203:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-compaction.test.ts","line":203,"end_line":219,"start":7351,"end":8080,"byte_start":7351,"byte_end":8080,"source":"[\n [\n 'Compaction failed: Nothing to compact (session too small)',\n 'Nothing to compact (session too small)'\n ],\n ['Compaction failed: Already compacted', 'Already compacted']\n ]","source_sha256":"6c3d85b4607db602a3c09c23c3ddd242c416eba298ed95522065a2be838053e0","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":203,"end_line":209,"start":7359,"end":7557,"byte_start":7359,"byte_end":7557},"binding":"it.each","resolution":[],"enclosing_case":{"line":203,"title":"reads OMP %j as skipped, not failed"},"affected_case_lines":[203],"decision":"consolidate","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-compaction.test.ts","line":204,"end_line":207,"start":7365,"end":7486,"source":"[\n 'Compaction failed: Nothing to compact (session too small)',\n 'Nothing to compact (session too small)'\n ]","value":{"kind":"array","value":[{"kind":"string","value":"Compaction failed: Nothing to compact (session too small)"},{"kind":"string","value":"Nothing to compact (session too small)"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e99d967e39c6ee8f88411c29a4b4f8218fafac92fb8e4d9123ad5aa2381428d8","byte_start":7365,"byte_end":7486,"input_label":"Nothing to compact","decision":"remove","reason":"Same exact no-op prose and adapter path as retained captured v17 skip; remove duplicate synthetic row."},{"index":2,"path":"src/main/acp/acp-structured-compaction.test.ts","line":208,"end_line":208,"start":7492,"end":7553,"source":"['Compaction failed: Already compacted', 'Already compacted']","value":{"kind":"array","value":[{"kind":"string","value":"Compaction failed: Already compacted"},{"kind":"string","value":"Already compacted"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"2dd54b0d50495a44f2988e7d13e9cd69e8d8234c30a0d26e9284e4ba9aa20577","byte_start":7492,"byte_end":7553,"input_label":"Already compacted","decision":"keep","reason":"Independent no-op alternative phrase still needs mapping."}],"original_row_count":2},{"id":"src/main/acp/acp-structured-compaction.test.ts:275:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-compaction.test.ts","line":275,"end_line":289,"start":10174,"end":10861,"byte_start":10174,"byte_end":10861,"source":"[\n { spec: OPENCODE, code: -32000, data: undefined },\n { spec: OMP, code: -32603, data: { details: 'No model selected.\\n\\nUse /login to sign in.' } }\n ]","source_sha256":"812eb7b3308302b3734ebdfb5d8fcfd38469c2ce2d7774bd05055f13c1c0e9bb","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":275,"end_line":278,"start":10182,"end":10341,"byte_start":10182,"byte_end":10341},"binding":"it.each","resolution":[],"enclosing_case":{"line":275,"title":"says $spec.agent is not signed in, as a send does"},"affected_case_lines":[275],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-compaction.test.ts","line":276,"end_line":276,"start":10188,"end":10237,"source":"{ spec: OPENCODE, code: -32000, data: undefined }","value":{"kind":"object","value":[{"key":"spec","value":{"kind":"reference","source":"OPENCODE","resolved_at":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":27,"end_line":27,"start":1289,"end":1318},"resolved":{"kind":"source-expression","source":"acpLaunchSpecFor('opencode')!"}}},{"key":"code","value":{"kind":"source-expression","source":"-32000"}},{"key":"data","value":{"kind":"source-expression","source":"undefined"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"075b0b2983b7fe0b3b21c0791826cc6900542e25b40318fa191a5da17414adca","byte_start":10188,"byte_end":10237,"input_label":"OpenCode -32000","decision":"keep","reason":"Standard ACP auth-required compaction failure maps notSignedIn."},{"index":2,"path":"src/main/acp/acp-structured-compaction.test.ts","line":277,"end_line":277,"start":10243,"end":10337,"source":"{ spec: OMP, code: -32603, data: { details: 'No model selected.\\n\\nUse /login to sign in.' } }","value":{"kind":"object","value":[{"key":"spec","value":{"kind":"reference","source":"OMP","resolved_at":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":28,"end_line":28,"start":1331,"end":1355},"resolved":{"kind":"source-expression","source":"acpLaunchSpecFor('omp')!"}}},{"key":"code","value":{"kind":"source-expression","source":"-32603"}},{"key":"data","value":{"kind":"object","value":[{"key":"details","value":{"kind":"string","value":"No model selected.\n\nUse /login to sign in."}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"385e959cf53027899333fa6ccb5971294ea3928e51c8ec98953fb87aab21d52f","byte_start":10243,"byte_end":10337,"input_label":"OMP -32603 + No model selected","decision":"keep","reason":"OMP-specific signed-out detail maps notSignedIn through different dialect branch."}],"original_row_count":2}],"parameter_groups":[{"id":"src/main/acp/acp-structured-compaction.test.ts:123:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-compaction.test.ts","line":123,"end_line":132,"start":4739,"end":5041,"byte_start":4739,"byte_end":5041,"source":"[\n ['OpenCode', OPENCODE],\n ['OMP', OMP]\n ]","source_sha256":"9073c14102547b459373b70816ee4789e87947b5c48996809af0a4f974b5c528","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":123,"end_line":126,"start":4747,"end":4797,"byte_start":4747,"byte_end":4797},"binding":"it.each","resolution":[],"enclosing_case":{"line":123,"title":"sends %s `/compact` as a plain prompt"},"affected_case_lines":[123],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-compaction.test.ts","line":124,"end_line":124,"start":4753,"end":4775,"source":"['OpenCode', OPENCODE]","value":{"kind":"array","value":[{"kind":"string","value":"OpenCode"},{"kind":"reference","source":"OPENCODE","resolved_at":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":27,"end_line":27,"start":1289,"end":1318},"resolved":{"kind":"source-expression","source":"acpLaunchSpecFor('opencode')!"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"681447e5e67e50399b4e20db849a4baee3ac6937fe921ef6ce0280dd03afe7b0","byte_start":4753,"byte_end":4775,"input_label":"OpenCode","decision":"keep","reason":"Plain prompt omits Grok injected identity."},{"index":2,"path":"src/main/acp/acp-structured-compaction.test.ts","line":125,"end_line":125,"start":4781,"end":4793,"source":"['OMP', OMP]","value":{"kind":"array","value":[{"kind":"string","value":"OMP"},{"kind":"reference","source":"OMP","resolved_at":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":28,"end_line":28,"start":1331,"end":1355},"resolved":{"kind":"source-expression","source":"acpLaunchSpecFor('omp')!"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"ec620e1ab6b5e33a5c2b03192ab4e8669319e8f0aaf1394e81e3230c4ae3afba","byte_start":4781,"byte_end":4793,"input_label":"OMP","decision":"keep","reason":"OMP plain prompt omits injected identity and uses OMP dialect."}],"original_row_count":2},{"id":"src/main/acp/acp-structured-compaction.test.ts:136:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-compaction.test.ts","line":136,"end_line":188,"start":5094,"end":6640,"byte_start":5094,"byte_end":6640,"source":"[\n [\n 'omp-v17-compact-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ],\n [\n 'omp-v17-compact-tiny-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ],\n [\n 'omp-v17-compact-success',\n { kind: 'status', text: 'Context compacted', presentation: 'compaction' }\n ],\n [\n 'omp-v18-compact-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ],\n [\n 'omp-v18-compact-tiny-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ],\n [\n 'omp-v18-compact-success',\n { kind: 'status', text: 'Context compacted', presentation: 'compaction' }\n ]\n ]","source_sha256":"313cdef1d42b9c00420c6168d7cb7efa2ed07b01ce2e8018a4ff70703ce199e5","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":136,"end_line":181,"start":5102,"end":6196,"byte_start":5102,"byte_end":6196},"binding":"it.each","resolution":[],"enclosing_case":{"line":136,"title":"replays captured %s under the host command turn"},"affected_case_lines":[136],"decision":"consolidate","reason":"All six full 3-frame captures and OMP dialect were read. Keep fixture files for provenance/privacy/schema corpus; remove duplicate runtime table rows only.","rows":[{"index":1,"path":"src/main/acp/acp-structured-compaction.test.ts","line":137,"end_line":145,"start":5108,"end":5309,"source":"[\n 'omp-v17-compact-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ]","value":{"kind":"array","value":[{"kind":"string","value":"omp-v17-compact-skip"},{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"status"}},{"key":"tone","value":{"kind":"string","value":"warning"}},{"key":"text","value":{"kind":"string","value":"Nothing to compact (session too small)"}},{"key":"presentation","value":{"kind":"string","value":"compaction-skipped"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"f88fdc587c4d437eb240572d03e578ffdc1b06cd65be7f281f49d067b426f550","byte_start":5108,"byte_end":5309,"input_label":"omp-v17-compact-skip","decision":"keep","reason":"Keep one captured no-op wire sequence."},{"index":2,"path":"src/main/acp/acp-structured-compaction.test.ts","line":146,"end_line":154,"start":5315,"end":5521,"source":"[\n 'omp-v17-compact-tiny-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ]","value":{"kind":"array","value":[{"kind":"string","value":"omp-v17-compact-tiny-skip"},{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"status"}},{"key":"tone","value":{"kind":"string","value":"warning"}},{"key":"text","value":{"kind":"string","value":"Nothing to compact (session too small)"}},{"key":"presentation","value":{"kind":"string","value":"compaction-skipped"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"44e4a6ae9ceacbb6f6830b65819d1410fb091cf766d6eecfad805ee249cc9494","byte_start":5315,"byte_end":5521,"input_label":"omp-v17-compact-tiny-skip","decision":"remove","reason":"Same sequence after request-id rewrite; no distinct parser branch."},{"index":3,"path":"src/main/acp/acp-structured-compaction.test.ts","line":155,"end_line":158,"start":5527,"end":5647,"source":"[\n 'omp-v17-compact-success',\n { kind: 'status', text: 'Context compacted', presentation: 'compaction' }\n ]","value":{"kind":"array","value":[{"kind":"string","value":"omp-v17-compact-success"},{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"status"}},{"key":"text","value":{"kind":"string","value":"Context compacted"}},{"key":"presentation","value":{"kind":"string","value":"compaction"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"7ad12f6a6b7a1d2ad7b24eaeee6732cdfb43ef02148b00e4b09d3416422cdfa1","byte_start":5527,"byte_end":5647,"input_label":"omp-v17-compact-success","decision":"keep","reason":"Keep captured ordinary successful reply; token arithmetic is not parsed."},{"index":4,"path":"src/main/acp/acp-structured-compaction.test.ts","line":159,"end_line":167,"start":5653,"end":5854,"source":"[\n 'omp-v18-compact-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ]","value":{"kind":"array","value":[{"kind":"string","value":"omp-v18-compact-skip"},{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"status"}},{"key":"tone","value":{"kind":"string","value":"warning"}},{"key":"text","value":{"kind":"string","value":"Nothing to compact (session too small)"}},{"key":"presentation","value":{"kind":"string","value":"compaction-skipped"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"281ae30d83db36d59c0e0ce4603729a0c2c555a70a1f372ae3e77f0fd294eef2","byte_start":5653,"byte_end":5854,"input_label":"omp-v18-compact-skip","decision":"remove","reason":"Byte-identical to v17 skip capture."},{"index":5,"path":"src/main/acp/acp-structured-compaction.test.ts","line":168,"end_line":176,"start":5860,"end":6066,"source":"[\n 'omp-v18-compact-tiny-skip',\n {\n kind: 'status',\n tone: 'warning',\n text: 'Nothing to compact (session too small)',\n presentation: 'compaction-skipped'\n }\n ]","value":{"kind":"array","value":[{"kind":"string","value":"omp-v18-compact-tiny-skip"},{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"status"}},{"key":"tone","value":{"kind":"string","value":"warning"}},{"key":"text","value":{"kind":"string","value":"Nothing to compact (session too small)"}},{"key":"presentation","value":{"kind":"string","value":"compaction-skipped"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"455bffec4da8a69e739c1eccd7f98393a8d433d912341a523f961041a3916ab4","byte_start":5860,"byte_end":6066,"input_label":"omp-v18-compact-tiny-skip","decision":"remove","reason":"Byte-identical to v17 tiny and equivalent to retained skip after id rewrite."},{"index":6,"path":"src/main/acp/acp-structured-compaction.test.ts","line":177,"end_line":180,"start":6072,"end":6192,"source":"[\n 'omp-v18-compact-success',\n { kind: 'status', text: 'Context compacted', presentation: 'compaction' }\n ]","value":{"kind":"array","value":[{"kind":"string","value":"omp-v18-compact-success"},{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"status"}},{"key":"text","value":{"kind":"string","value":"Context compacted"}},{"key":"presentation","value":{"kind":"string","value":"compaction"}}]}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"c8b9c2b020e8bef8fd3fb2d49a04dc82b32aede48a2c57c29c7cbcc24d4fa11f","byte_start":6072,"byte_end":6192,"input_label":"omp-v18-compact-success","decision":"remove","reason":"Only numeric token prose differs; actual dialect ignores it and follows same normal-success branch."}],"original_row_count":6},{"id":"src/main/acp/acp-structured-compaction.test.ts:203:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-compaction.test.ts","line":203,"end_line":219,"start":7351,"end":8080,"byte_start":7351,"byte_end":8080,"source":"[\n [\n 'Compaction failed: Nothing to compact (session too small)',\n 'Nothing to compact (session too small)'\n ],\n ['Compaction failed: Already compacted', 'Already compacted']\n ]","source_sha256":"6c3d85b4607db602a3c09c23c3ddd242c416eba298ed95522065a2be838053e0","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":203,"end_line":209,"start":7359,"end":7557,"byte_start":7359,"byte_end":7557},"binding":"it.each","resolution":[],"enclosing_case":{"line":203,"title":"reads OMP %j as skipped, not failed"},"affected_case_lines":[203],"decision":"consolidate","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-compaction.test.ts","line":204,"end_line":207,"start":7365,"end":7486,"source":"[\n 'Compaction failed: Nothing to compact (session too small)',\n 'Nothing to compact (session too small)'\n ]","value":{"kind":"array","value":[{"kind":"string","value":"Compaction failed: Nothing to compact (session too small)"},{"kind":"string","value":"Nothing to compact (session too small)"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e99d967e39c6ee8f88411c29a4b4f8218fafac92fb8e4d9123ad5aa2381428d8","byte_start":7365,"byte_end":7486,"input_label":"Nothing to compact","decision":"remove","reason":"Same exact no-op prose and adapter path as retained captured v17 skip; remove duplicate synthetic row."},{"index":2,"path":"src/main/acp/acp-structured-compaction.test.ts","line":208,"end_line":208,"start":7492,"end":7553,"source":"['Compaction failed: Already compacted', 'Already compacted']","value":{"kind":"array","value":[{"kind":"string","value":"Compaction failed: Already compacted"},{"kind":"string","value":"Already compacted"}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"2dd54b0d50495a44f2988e7d13e9cd69e8d8234c30a0d26e9284e4ba9aa20577","byte_start":7492,"byte_end":7553,"input_label":"Already compacted","decision":"keep","reason":"Independent no-op alternative phrase still needs mapping."}],"original_row_count":2},{"id":"src/main/acp/acp-structured-compaction.test.ts:275:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-compaction.test.ts","line":275,"end_line":289,"start":10174,"end":10861,"byte_start":10174,"byte_end":10861,"source":"[\n { spec: OPENCODE, code: -32000, data: undefined },\n { spec: OMP, code: -32603, data: { details: 'No model selected.\\n\\nUse /login to sign in.' } }\n ]","source_sha256":"812eb7b3308302b3734ebdfb5d8fcfd38469c2ce2d7774bd05055f13c1c0e9bb","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":275,"end_line":278,"start":10182,"end":10341,"byte_start":10182,"byte_end":10341},"binding":"it.each","resolution":[],"enclosing_case":{"line":275,"title":"says $spec.agent is not signed in, as a send does"},"affected_case_lines":[275],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-compaction.test.ts","line":276,"end_line":276,"start":10188,"end":10237,"source":"{ spec: OPENCODE, code: -32000, data: undefined }","value":{"kind":"object","value":[{"key":"spec","value":{"kind":"reference","source":"OPENCODE","resolved_at":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":27,"end_line":27,"start":1289,"end":1318},"resolved":{"kind":"source-expression","source":"acpLaunchSpecFor('opencode')!"}}},{"key":"code","value":{"kind":"source-expression","source":"-32000"}},{"key":"data","value":{"kind":"source-expression","source":"undefined"}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"075b0b2983b7fe0b3b21c0791826cc6900542e25b40318fa191a5da17414adca","byte_start":10188,"byte_end":10237,"input_label":"OpenCode -32000","decision":"keep","reason":"Standard ACP auth-required compaction failure maps notSignedIn."},{"index":2,"path":"src/main/acp/acp-structured-compaction.test.ts","line":277,"end_line":277,"start":10243,"end":10337,"source":"{ spec: OMP, code: -32603, data: { details: 'No model selected.\\n\\nUse /login to sign in.' } }","value":{"kind":"object","value":[{"key":"spec","value":{"kind":"reference","source":"OMP","resolved_at":{"path":"src/main/acp/acp-structured-compaction.test.ts","line":28,"end_line":28,"start":1331,"end":1355},"resolved":{"kind":"source-expression","source":"acpLaunchSpecFor('omp')!"}}},{"key":"code","value":{"kind":"source-expression","source":"-32603"}},{"key":"data","value":{"kind":"object","value":[{"key":"details","value":{"kind":"string","value":"No model selected.\n\nUse /login to sign in."}}]}}]},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"385e959cf53027899333fa6ccb5971294ea3928e51c8ec98953fb87aab21d52f","byte_start":10243,"byte_end":10337,"input_label":"OMP -32603 + No model selected","decision":"keep","reason":"OMP-specific signed-out detail maps notSignedIn through different dialect branch."}],"original_row_count":2}],"body_support_cleanup_loops":[],"implemented_changes":[{"proposal_id":"acp-main-0001-024","summary":"Removed capability-map/absent-flag inventory declaration; actual compaction request and clear behavior remain.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"},{"proposal_id":"acp-main-0001-025","summary":"Registry registration now validates actual definition/adapter pairs within compact(spec) before behavioral execution.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"},{"proposal_id":"acp-main-0001-026","summary":"Compaction helper requires a matching present turn object before terminal-state comparison.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"},{"proposal_id":"acp-main-0001-027","summary":"Capture table keeps distinct v17 skip/success wire outcomes; all six fixture files remain intact.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"},{"proposal_id":"acp-main-0001-028","summary":"Removed synthetic Nothing-to-compact duplicate; one ordinary Already-compacted case preserves that distinct phrase.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/acp-launch-specs.ts","src/main/acp/acp-dialects/omp-dialect.ts","src/main/native-chat/agent-session-wire/structured-agent-registry.ts","src/main/acp/acp-structured-session-adapter.ts"],"evidence_sha256":{"src/main/acp/acp-launch-specs.ts":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","src/main/acp/acp-dialects/omp-dialect.ts":"f0be0ff957f30cdcd7c9326e64292f797a54f2da9e5e3c2c6758998819a79d54","src/main/native-chat/agent-session-wire/structured-agent-registry.ts":"a90b717551121b29c3c73161c61f81678a6b070ab7082267d212e4ba6bb8fb53","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"evidence_source_sha256":{"src/main/acp/acp-launch-specs.ts":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","src/main/acp/acp-dialects/omp-dialect.ts":"f0be0ff957f30cdcd7c9326e64292f797a54f2da9e5e3c2c6758998819a79d54","src/main/native-chat/agent-session-wire/structured-agent-registry.ts":"a90b717551121b29c3c73161c61f81678a6b070ab7082267d212e4ba6bb8fb53","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"original_evidence_detail":[{"path":"src/main/acp/acp-launch-specs.ts","sha256":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","lines":352,"read_state":"full_body_read"},{"path":"src/main/acp/acp-dialects/omp-dialect.ts","sha256":"f0be0ff957f30cdcd7c9326e64292f797a54f2da9e5e3c2c6758998819a79d54","lines":123,"read_state":"full_body_read"},{"path":"src/main/native-chat/agent-session-wire/structured-agent-registry.ts","sha256":"a90b717551121b29c3c73161c61f81678a6b070ab7082267d212e4ba6bb8fb53","lines":76,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-session-adapter.ts","sha256":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e","lines":345,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"ACP compaction request sends Grok `/compact` as a prompt under the command turn's id","status":"passed"},{"full_name":"ACP compaction request sends OpenCode `/compact` as a plain prompt","status":"passed"},{"full_name":"ACP compaction request sends OMP `/compact` as a plain prompt","status":"passed"},{"full_name":"ACP compaction settlement replays captured omp-v17-compact-skip under the host command turn","status":"passed"},{"full_name":"ACP compaction settlement replays captured omp-v17-compact-success under the host command turn","status":"passed"},{"full_name":"ACP compaction settlement ends a compaction the agent finished with one compacted row, drawing none of its words","status":"passed"},{"full_name":"ACP compaction settlement reads OMP Already compacted as skipped, not failed","status":"passed"},{"full_name":"ACP compaction settlement reads any other OMP compaction failure as failed, in its own words","status":"passed"},{"full_name":"ACP compaction settlement reads OMP failure words only from OMP","status":"passed"},{"full_name":"ACP compaction settlement fails a compaction the agent answered with an error, in the agent's words","status":"passed"},{"full_name":"ACP compaction settlement says opencode is not signed in, as a send does","status":"passed"},{"full_name":"ACP compaction settlement says omp is not signed in, as a send does","status":"passed"},{"full_name":"ACP compaction settlement fails a compaction the agent ended with any other stop reason","status":"passed"},{"full_name":"ACP compaction settlement ends a stopped compaction as cancelled, with no result row","status":"passed"},{"full_name":"ACP compaction settlement takes the next message as an ordinary turn once the compaction ended","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-context-clear.test.ts","sha256":"520c9d2a1b2fb1eab016f0e7a0a48459dc4c9ef06afe527a4a64253ab3fc4a21","reviewed_sha256":"496a73892d332861a48b35ec6ee4368daf4bcec8481f00da560a154e72ccec79","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":29,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: fix 1. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":1,"original_declarations":1,"final_declarations":1,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":7,"end_line":60,"title":"$agent starts a new session without probing pre-clear history","decision":"fix","reason":"Every launch row resolves a fresh session after an explicit context-clear boundary, refusing account reselection and old journal access. The main launch.resume null assertion is behavioral; dialect identity and args copied from spec.args are incidental. Verify thrown journal probes are not swallowed in production before accepting them as no-read evidence.","source_body_sha256":"8900efe160bbe8302ba28797b922eb0a53f157ade500a49ed366dbe9e63272d7","proposed_changes":[{"line":57,"action":"remove-assertion","proposal":"Remove exact dialect object identity; context-clear behavior is the fresh session and absence of historical probing."},{"line":37,"action":"fix no-read oracle","proposal":"Use vi.fn for readJournal and explicitly assert no calls. Real resolver only reads journal through caught/lazy resume functions; a throwing sentinel alone is not an observable no-read assertion."}],"parameter_groups":[{"path":"src/main/acp/acp-structured-context-clear.test.ts","line":7,"source":"ACP_LAUNCH_SPECS","decision":"fix","reason":"","rows":[{"input":"grok","decision":"fix","reason":"Clear empties resume chain for grok account binding; preserve fresh resume, use explicit no-read spy and drop dialect reference identity."},{"input":"opencode","decision":"fix","reason":"Clear empties resume chain for opencode account binding; preserve fresh resume, use explicit no-read spy and drop dialect reference identity."},{"input":"opencode2","decision":"fix","reason":"Clear empties resume chain for opencode2 account binding; preserve fresh resume, use explicit no-read spy and drop dialect reference identity."},{"input":"omp","decision":"fix","reason":"Clear empties resume chain for omp account binding; preserve fresh resume, use explicit no-read spy and drop dialect reference identity."},{"input":"antigravity","decision":"fix","reason":"Clear empties resume chain for antigravity account binding; preserve fresh resume, use explicit no-read spy and drop dialect reference identity."}],"row_count":5}],"path":"src/main/acp/acp-structured-context-clear.test.ts","start":387,"end":2405,"byte_start":387,"byte_end":2405,"source":"it.each(ACP_LAUNCH_SPECS)(\n '$agent starts a new session without probing pre-clear history',\n async (spec) => {\n const base = agentSessionRecordFixture()\n const record = {\n ...base,\n provider: spec.agent,\n accountHome:\n 'accountLocatorKind' in spec.account.pin\n ? { kind: 'opencode' as const, locator: { kind: 'unmanaged' as const } }\n : { variable: spec.account.pin.accountHomeVariable, path: '/fixture/account' },\n providerContextBoundary: { operationId: 'clear', afterFence: 2, clearedAt: 100 },\n providerHandleChain: []\n }\n const account =\n spec.agent === 'opencode'\n ? openCodeAcpAccountBinding(() => ({\n list: () => {\n throw new Error('launch must not change account selection')\n },\n restoreOriginalEnvironment: () => {},\n environmentForAccount: () => {\n throw new Error('unmanaged fixture must stay unmanaged')\n }\n }))\n : spec.account\n const resolve = createAcpStructuredLaunchResolver(\n { ...spec, account },\n {\n store: { getRecord: () => record, pinLaunchDirectory: vi.fn() },\n readJournal: () => {\n throw new Error('pre-clear history must not be sampled')\n },\n resolveWorkspacePath: async () => '/repo/worktree',\n resolveEnvironment: async () => ({ PATH: '/usr/bin', HOME: '/home/test' }),\n resolveCommand: () => `/fixture/${spec.command}`,\n probeVersion: async () => ({ version: null }),\n inheritedEnv: {}\n }\n )\n const launch = await resolve({\n identity: {\n sessionId: record.sessionId,\n workspaceId: record.location.workspaceId,\n hostId: record.location.executionHostId,\n agent: spec.agent,\n providerHandle: null\n }\n })\n expect(launch.resume).toBeNull()\n expect(launch.spec.dialect).toBe(spec.dialect)\n expect(launch.args).toEqual(spec.args({ fullAccess: false, pluginDir: null }))\n }\n)","source_sha256":"8900efe160bbe8302ba28797b922eb0a53f157ade500a49ed366dbe9e63272d7","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-context-clear.test.ts","line":7,"title":"$agent starts a new session without probing pre-clear history","body_sha256":"1a2f7bd89bc1f40760561aac67aa452dcb074ed1d7370d291f3496b2299b3503"},"proposal_ids":["acp-main-0001-029","acp-main-0001-030"],"explicit_input_controls":["src/main/acp/acp-structured-context-clear.test.ts:7:parameter-table"]}],"explicit_input_controls":[{"id":"src/main/acp/acp-structured-context-clear.test.ts:7:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-context-clear.test.ts","line":7,"end_line":60,"start":387,"end":2405,"byte_start":387,"byte_end":2405,"source":"ACP_LAUNCH_SPECS","source_sha256":"2b2cb84d0166a94fcf43e5f06b646119e9475417f98afbc35c8e7c6633a0559a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-context-clear.test.ts","line":7,"end_line":7,"start":395,"end":411,"byte_start":395,"byte_end":411},"binding":"it.each","resolution":[{"name":"ACP_LAUNCH_SPECS","path":"src/main/acp/acp-launch-specs.ts","line":342,"end_line":348,"start":16600,"end":16762,"source":"[\n GROK_LAUNCH_SPEC,\n OPENCODE_LAUNCH_SPEC,\n OPENCODE2_LAUNCH_SPEC,\n OMP_LAUNCH_SPEC,\n ANTIGRAVITY_LAUNCH_SPEC\n]"}],"enclosing_case":{"line":7,"title":"$agent starts a new session without probing pre-clear history"},"affected_case_lines":[7],"decision":"fix","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-launch-specs.ts","line":343,"end_line":343,"start":16649,"end":16665,"source":"GROK_LAUNCH_SPEC","value":{"kind":"reference","source":"GROK_LAUNCH_SPEC","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":173,"end_line":206,"start":9146,"end":10501},"resolved":{"kind":"object","value":[{"key":"agent","value":{"kind":"string","value":"grok"}},{"key":"command","value":{"kind":"string","value":"grok"}},{"key":"args","value":{"kind":"source-expression","source":"({ fullAccess, pluginDir }) => [\n 'agent',\n ...(fullAccess ? ['--always-approve'] : []),\n ...(pluginDir ? ['--plugin-dir', pluginDir] : []),\n 'stdio'\n ]"}},{"key":"env","value":{"kind":"object","value":[]}},{"key":"dialect","value":{"kind":"reference","source":"GROK_ACP_DIALECT","resolved_at":{"path":"src/main/acp/acp-dialects/grok-dialect.ts","line":210,"end_line":229,"start":8162,"end":8835},"resolved":{"kind":"object","value":[{"key":"subagentStop","value":{"kind":"reference","source":"grokSubagentStop","resolved_at":{"path":"src/main/acp/acp-dialects/grok-subagent-stop.ts","line":14,"end_line":46,"start":441,"end":1607},"resolved":{"kind":"object","value":[{"key":"probe","value":{"kind":"object","value":[{"key":"method","value":{"kind":"string","value":"_x.ai/subagent/cancel"}},{"key":"params","value":{"kind":"object","value":[]}}]}},{"key":"recognizesProbeError","value":{"kind":"source-expression","source":"(error) =>\n error.code === -32602 &&\n typeof error.data === 'string' &&\n error.data.includes('missing field `subagentId`')"}},{"key":"request","value":{"kind":"source-expression","source":"(sessionId, id) => ({\n method: '_x.ai/subagent/cancel',\n params: { sessionId, subagentId: id }\n })"}},{"key":"response","value":{"kind":"source-expression","source":"(value, id) => {\n const parsed = response.safeParse(value)\n if (!parsed.success || parsed.data.result.subagentId !== id) {\n throw new Error('Grok returned an invalid child cancellation response')\n }\n const { cancelled, outcome } = parsed.data.result\n if (outcome?.kind === 'not_found') {\n return { cancelled: false }\n }\n if (outcome?.kind === 'already_finished') {\n if (outcome.status === undefined) {\n throw new Error('Grok returned an invalid child cancellation response')\n }\n const update = grokSubagentNotification({\n sessionUpdate: 'subagent_finished',\n subagent_id: id,\n status: outcome.status\n })\n return { cancelled: false, state: update?.state }\n }\n return { cancelled: outcome?.kind === 'cancelled' || cancelled }\n }"}}]}}},{"key":"backgroundTaskStop","value":{"kind":"reference","source":"grokBackgroundTaskStop","resolved_at":{"path":"src/main/acp/acp-dialects/grok-background-task-stop.ts","line":16,"end_line":29,"start":495,"end":1138},"resolved":{"kind":"object","value":[{"key":"probe","value":{"kind":"object","value":[{"key":"method","value":{"kind":"string","value":"_x.ai/task/kill"}},{"key":"params","value":{"kind":"object","value":[]}}]}},{"key":"lacksRoute","value":{"kind":"source-expression","source":"(error) => error.code === -32601"}},{"key":"request","value":{"kind":"source-expression","source":"(sessionId, taskId) => ({ method: '_x.ai/task/kill', params: { sessionId, taskId } })"}},{"key":"response","value":{"kind":"source-expression","source":"(value, taskId) => {\n const parsed = response.safeParse(value)\n if (!parsed.success || (parsed.data.result && parsed.data.result.taskId !== taskId)) {\n throw new Error('Grok returned an invalid background task kill response')\n }\n const { result } = parsed.data\n return !result ? 'refused' : result.outcome === 'killed' ? 'killed' : 'gone'\n }"}}]}}},{"key":"injectedPromptIdentity","value":{"kind":"boolean","value":true}},{"key":"toolName","value":{"kind":"source-expression","source":"(update) => {\n const parsed = toolMetaSchema.safeParse(update._meta)\n return parsed.success ? parsed.data['x.ai/tool'].name : undefined\n }"}},{"key":"request","value":{"kind":"source-expression","source":"grokRequest"}},{"key":"settleRequest","value":{"kind":"source-expression","source":"grokSettleRequest"}},{"key":"toolBackgroundTasks","value":{"kind":"source-expression","source":"grokToolBackgroundTasks"}},{"key":"toolSubagents","value":{"kind":"source-expression","source":"grokToolSubagents"}},{"source":"subagentSessionEnd"},{"source":"notification"},{"source":"contextWindow"},{"key":"modelEfforts","value":{"kind":"source-expression","source":"grokModelEfforts"}},{"source":"hookBlock"},{"key":"promptErrorDetail","value":{"kind":"source-expression","source":"(error) => promptErrorDataSchema.safeParse(error.data).data?.message"}},{"key":"failedTurnText","value":{"kind":"source-expression","source":"() => 'Grok ended this turn with an error.'"}}]}}},{"key":"loginCommand","value":{"kind":"source-expression","source":"agentSessionSignInFor('grok')?.loginCommand ?? []"}},{"key":"authMethod","value":{"kind":"source-expression","source":"({ advertised, env }) =>\n env.XAI_API_KEY?.trim() && advertised.includes('xai.api_key')\n ? 'xai.api_key'\n : advertised.includes('cached_token')\n ? 'cached_token'\n : undefined"}},{"key":"account","value":{"kind":"call-source","callee":"directoryAccountBinding","arguments":[{"kind":"string","value":"GROK_HOME"},{"kind":"source-expression","source":"(homePath) => join(homePath, '.grok')"}],"source":"directoryAccountBinding('GROK_HOME', (homePath) => join(homePath, '.grok'))"}},{"key":"installDirectories","value":{"kind":"source-expression","source":"({ env }) => (env.GROK_HOME ? [join(env.GROK_HOME, 'bin')] : [])"}},{"key":"modelDiscovery","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"initialize"}},{"key":"read","value":{"kind":"source-expression","source":"readGrokModelCatalog"}},{"key":"listingNamesConfiguredModel","value":{"kind":"boolean","value":false}}]}},{"key":"visualsSkill","value":{"kind":"reference","source":"loadGrokVisualsSkill","resolved_at":{"path":"src/main/acp/acp-visuals-skill.ts","line":31,"end_line":34,"start":1379,"end":1539},"resolved":{"kind":"source-expression","source":"async ({ skill, version }) =>\n version !== null && hasReachedAppVersion(version, GROK_PLUGIN_DIR_FIRST_VERSION)\n ? { pluginDir: skill.pluginDir }\n : null"}}},{"key":"compaction","value":{"kind":"boolean","value":true}},{"key":"transcriptImport","value":{"kind":"reference","source":"GROK_TRANSCRIPT_IMPORT","resolved_at":{"path":"src/main/grok/grok-transcript-import.ts","line":6,"end_line":20,"start":339,"end":974},"resolved":{"kind":"call-source","callee":"directoryTranscriptImport","arguments":[{"kind":"object","value":[{"key":"conversationStore","value":{"kind":"source-expression","source":"({ accountHomePath }) => join(accountHomePath, 'sessions')"}},{"key":"accountHomeCandidates","value":{"kind":"source-expression","source":"({ selectedAccountHomePath }) => [\n selectedAccountHomePath,\n resolveGrokHomeDir()\n ]"}},{"key":"findTranscript","value":{"kind":"source-expression","source":"async ({ providerSessionId, store, workspaceCwd, strictErrors }) =>\n (await findGrokChatHistoryByCwd({\n sessionId: providerSessionId,\n cwd: workspaceCwd,\n sessionsDir: store\n })) ??\n resolveSessionFilePath('grok', providerSessionId, { grokSessionsDir: store, strictErrors })"}}]}],"source":"directoryTranscriptImport({\n conversationStore: ({ accountHomePath }) => join(accountHomePath, 'sessions'),\n // The chat's own home, then the one Session History lists Grok's conversations from.\n accountHomeCandidates: ({ selectedAccountHomePath }) => [\n selectedAccountHomePath,\n resolveGrokHomeDir()\n ],\n findTranscript: async ({ providerSessionId, store, workspaceCwd, strictErrors }) =>\n (await findGrokChatHistoryByCwd({\n sessionId: providerSessionId,\n cwd: workspaceCwd,\n sessionsDir: store\n })) ??\n resolveSessionFilePath('grok', providerSessionId, { grokSessionsDir: store, strictErrors })\n})"}}},{"key":"sessionHistory","value":{"kind":"reference","source":"GROK_SESSION_HISTORY","resolved_at":{"path":"src/main/grok/grok-session-history.ts","line":9,"end_line":24,"start":305,"end":920},"resolved":{"kind":"object","value":[{"key":"rowAgents","value":{"kind":"array","value":[{"kind":"string","value":"grok"}]}},{"key":"rowSessionId","value":{"kind":"source-expression","source":"(link) => link.handle.nativeId"}},{"key":"parseResumeArgs","value":{"kind":"source-expression","source":"(args) => {\n // `--fork-session` resumes into a new session id, so it writes no owned one.\n if (ownOptionsInclude(args, ['--fork-session'])) {\n return null\n }\n const invocation = resumeInvocationFromOptions(args, {\n targetless: ['-c', '--continue'],\n markers: ['-r', '--resume', '--load']\n })\n // Grok reads a non-UUID value as a session title, which may name any of the folder's sessions.\n return invocation?.target && !UUID.test(invocation.target) ? { target: null } : invocation\n }"}}]}}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"2fa9e57d87fe100f7054f0888e387bf41d808160cbf97c67479ca371055268dd","byte_start":16649,"byte_end":16665,"input_label":"grok","decision":"fix","reason":"Clear empties resume chain for grok account binding; preserve fresh resume, use explicit no-read spy and drop dialect reference identity."},{"index":2,"path":"src/main/acp/acp-launch-specs.ts","line":344,"end_line":344,"start":16669,"end":16689,"source":"OPENCODE_LAUNCH_SPEC","value":{"kind":"reference","source":"OPENCODE_LAUNCH_SPEC","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":239,"end_line":254,"start":12087,"end":12751},"resolved":{"kind":"call-source","callee":"openCodeLaunchSpec","arguments":[{"kind":"object","value":[{"key":"agent","value":{"kind":"string","value":"opencode"}},{"key":"command","value":{"kind":"string","value":"opencode"}},{"key":"minimumVersions","value":{"kind":"reference","source":"OPENCODE_MINIMUM_VERSIONS","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":210,"end_line":210,"start":10663,"end":10684},"resolved":{"kind":"array","value":[{"kind":"string","value":"1.18.31"},{"kind":"string","value":"2.0.14"}]}}},{"key":"modelDiscovery","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"command"}},{"key":"args","value":{"kind":"reference","source":"OPENCODE_MODEL_LISTING_ARGS","resolved_at":{"path":"src/main/opencode/opencode-model-catalog-listing.ts","line":9,"end_line":9,"start":448,"end":471},"resolved":{"kind":"array","value":[{"kind":"string","value":"models"},{"kind":"string","value":"--verbose"}]}}},{"key":"parse","value":{"kind":"source-expression","source":"parseOpenCodeModelListing"}},{"key":"listingNamesConfiguredModel","value":{"kind":"boolean","value":false}},{"key":"supportsVersion","value":{"kind":"source-expression","source":"(version) => compareAppVersions(version, '2.0.0') < 0"}},{"key":"otherReleasesListInSession","value":{"kind":"boolean","value":true}}]}}]}],"source":"openCodeLaunchSpec({\n agent: 'opencode',\n command: 'opencode',\n minimumVersions: OPENCODE_MINIMUM_VERSIONS,\n // Its `initialize` names no models; 1.x lists them with a command, 2.x in a session it deletes.\n modelDiscovery: {\n kind: 'command',\n args: OPENCODE_MODEL_LISTING_ARGS,\n parse: parseOpenCodeModelListing,\n // The listing marks no default; a chat started with no pick names it.\n listingNamesConfiguredModel: false,\n // 2.x and later reject `--verbose`, and their listings omit providers that report after startup.\n supportsVersion: (version) => compareAppVersions(version, '2.0.0') < 0,\n otherReleasesListInSession: true\n }\n})"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"4e7cfd829c7de6245c7971a649286033a96c260496c7642a864b6bd7fb92238e","byte_start":16669,"byte_end":16689,"input_label":"opencode","decision":"fix","reason":"Clear empties resume chain for opencode account binding; preserve fresh resume, use explicit no-read spy and drop dialect reference identity."},{"index":3,"path":"src/main/acp/acp-launch-specs.ts","line":345,"end_line":345,"start":16693,"end":16714,"source":"OPENCODE2_LAUNCH_SPEC","value":{"kind":"reference","source":"OPENCODE2_LAUNCH_SPEC","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":258,"end_line":263,"start":12982,"end":13156},"resolved":{"kind":"call-source","callee":"openCodeLaunchSpec","arguments":[{"kind":"object","value":[{"key":"agent","value":{"kind":"string","value":"opencode2"}},{"key":"command","value":{"kind":"string","value":"opencode2"}},{"key":"minimumVersions","value":{"kind":"array","value":[{"kind":"string","value":"2.0.14"}]}},{"key":"modelDiscovery","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"session"}},{"key":"listingNamesConfiguredModel","value":{"kind":"boolean","value":false}}]}}]}],"source":"openCodeLaunchSpec({\n agent: 'opencode2',\n command: 'opencode2',\n minimumVersions: ['2.0.14'],\n modelDiscovery: { kind: 'session', listingNamesConfiguredModel: false }\n})"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"f609f0d3036d4485faed1968c9f10054eec577bf2d33b2da0490b6f55d680b3b","byte_start":16693,"byte_end":16714,"input_label":"opencode2","decision":"fix","reason":"Clear empties resume chain for opencode2 account binding; preserve fresh resume, use explicit no-read spy and drop dialect reference identity."},{"index":4,"path":"src/main/acp/acp-launch-specs.ts","line":346,"end_line":346,"start":16718,"end":16733,"source":"OMP_LAUNCH_SPEC","value":{"kind":"reference","source":"OMP_LAUNCH_SPEC","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":266,"end_line":294,"start":13281,"end":14541},"resolved":{"kind":"object","value":[{"key":"agent","value":{"kind":"string","value":"omp"}},{"key":"command","value":{"kind":"string","value":"omp"}},{"key":"args","value":{"kind":"source-expression","source":"({ pluginDir }) => ['acp', ...(pluginDir ? ['--plugin-dir', pluginDir] : [])]"}},{"key":"env","value":{"kind":"object","value":[]}},{"key":"dialect","value":{"kind":"reference","source":"OMP_ACP_DIALECT","resolved_at":{"path":"src/main/acp/acp-dialects/omp-dialect.ts","line":112,"end_line":123,"start":4474,"end":4799},"resolved":{"kind":"object","value":[{"source":"normalizeToolUpdate"},{"source":"compactionReply"},{"key":"authenticationRequired","value":{"kind":"source-expression","source":"(error) => {\n const details = promptErrorDataSchema.safeParse(error.data).data?.details\n return (\n error.code === -32603 &&\n details !== undefined &&\n SIGNED_OUT_DETAIL_PREFIXES.some((prefix) => details.startsWith(prefix))\n )\n }"}}]}}},{"key":"loginCommand","value":{"kind":"source-expression","source":"agentSessionSignInFor('omp')?.loginCommand ?? []"}},{"key":"account","value":{"kind":"call-source","callee":"directoryAccountBinding","arguments":[{"kind":"string","value":"PI_CODING_AGENT_DIR"},{"kind":"source-expression","source":"(homePath) =>\n join(homePath, '.omp', 'agent')"}],"source":"directoryAccountBinding('PI_CODING_AGENT_DIR', (homePath) =>\n join(homePath, '.omp', 'agent')\n )"}},{"key":"installDirectories","value":{"kind":"source-expression","source":"() => []"}},{"key":"minimumVersions","value":{"kind":"array","value":[{"kind":"string","value":"17.0.5"}]}},{"key":"modelDiscovery","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"session"}},{"key":"listingNamesConfiguredModel","value":{"kind":"boolean","value":false}},{"key":"sessionFolderArgs","value":{"kind":"source-expression","source":"(folder) => ['--session-dir', folder]"}}]}},{"key":"visualsSkill","value":{"kind":"reference","source":"loadOmpVisualsSkill","resolved_at":{"path":"src/main/acp/acp-visuals-skill.ts","line":88,"end_line":90,"start":3708,"end":3763},"resolved":{"kind":"source-expression","source":"async ({ skill }) => ({\n pluginDir: skill.pluginDir\n})"}}},{"key":"compaction","value":{"kind":"boolean","value":true}},{"key":"transcriptImport","value":{"kind":"reference","source":"OMP_TRANSCRIPT_IMPORT","resolved_at":{"path":"src/main/omp/omp-transcript-import.ts","line":13,"end_line":26,"start":581,"end":1246},"resolved":{"kind":"call-source","callee":"directoryTranscriptImport","arguments":[{"kind":"object","value":[{"key":"conversationStore","value":{"kind":"source-expression","source":"({ accountHomePath, launchEnv }) => sessionsRoot(accountHomePath, launchEnv)"}},{"key":"accountHomeCandidates","value":{"kind":"source-expression","source":"({ selectedAccountHomePath }) => [selectedAccountHomePath]"}},{"key":"findTranscript","value":{"kind":"source-expression","source":"({ providerSessionId, store, launchEnv, workspaceCwd, strictErrors }) =>\n findOmpSessionByCwd({\n sessionsDir: store,\n sessionId: providerSessionId,\n cwd: workspaceCwd,\n homeDir: (process.platform === 'win32' ? launchEnv.USERPROFILE : launchEnv.HOME) || homedir(),\n env: launchEnv,\n strictErrors\n })"}}]}],"source":"directoryTranscriptImport({\n conversationStore: ({ accountHomePath, launchEnv }) => sessionsRoot(accountHomePath, launchEnv),\n accountHomeCandidates: ({ selectedAccountHomePath }) => [selectedAccountHomePath],\n // Where OMP itself keeps the account's sessions, which is not always under it (XDG_DATA_HOME).\n findTranscript: ({ providerSessionId, store, launchEnv, workspaceCwd, strictErrors }) =>\n findOmpSessionByCwd({\n sessionsDir: store,\n sessionId: providerSessionId,\n cwd: workspaceCwd,\n homeDir: (process.platform === 'win32' ? launchEnv.USERPROFILE : launchEnv.HOME) || homedir(),\n env: launchEnv,\n strictErrors\n })\n})"}}},{"key":"sessionHistory","value":{"kind":"reference","source":"OMP_SESSION_HISTORY","resolved_at":{"path":"src/main/omp/omp-session-history.ts","line":8,"end_line":18,"start":339,"end":729},"resolved":{"kind":"object","value":[{"key":"rowAgents","value":{"kind":"array","value":[{"kind":"string","value":"omp"}]}},{"key":"rowSessionId","value":{"kind":"source-expression","source":"(link) => link.handle.nativeId"}},{"key":"parseResumeArgs","value":{"kind":"source-expression","source":"(args) =>\n resumeInvocationFromOptions(args, {\n targetless: ['-c', '--continue'],\n markers: ['-r', '--resume', '--session']\n })"}},{"key":"resumeTargetMatches","value":{"kind":"source-expression","source":"sessionFileResumeTargetMatches"}}]}}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"60d0f8d746dd010c4899dd243b9e7635a6b4e7599d7d4448b9ea11158b146ba4","byte_start":16718,"byte_end":16733,"input_label":"omp","decision":"fix","reason":"Clear empties resume chain for omp account binding; preserve fresh resume, use explicit no-read spy and drop dialect reference identity."},{"index":5,"path":"src/main/acp/acp-launch-specs.ts","line":347,"end_line":347,"start":16737,"end":16760,"source":"ANTIGRAVITY_LAUNCH_SPEC","value":{"kind":"reference","source":"ANTIGRAVITY_LAUNCH_SPEC","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":305,"end_line":340,"start":15037,"end":16561},"resolved":{"kind":"object","value":[{"key":"agent","value":{"kind":"string","value":"antigravity"}},{"key":"command","value":{"kind":"reference","source":"ANTIGRAVITY_ACP_COMMAND","resolved_at":{"path":"src/main/antigravity/antigravity-acp-runtime.ts","line":11,"end_line":11,"start":573,"end":593},"resolved":{"kind":"string","value":"agy_acp_server.par"}}},{"key":"ignoreAgentCommandSetting","value":{"kind":"boolean","value":true}},{"key":"args","value":{"kind":"source-expression","source":"() => (process.platform === 'linux' ? ['--uid='] : [])"}},{"key":"env","value":{"kind":"reference","source":"ANTIGRAVITY_ACP_ENV","resolved_at":{"path":"src/main/antigravity/antigravity-acp-environment.ts","line":9,"end_line":13,"start":510,"end":612},"resolved":{"kind":"object","value":[{"key":"AGY_ACP_FORCE_FILE_STORAGE","value":{"kind":"string","value":"1"}},{"key":"BROWSER","value":{"kind":"reference","source":"ANTIGRAVITY_BROWSER_COMMAND","resolved_at":{"path":"src/main/antigravity/antigravity-browser-helper.ts","line":23,"end_line":25,"start":1421,"end":1490},"resolved":{"kind":"call-source","callee":"BROWSER_ARGV.map(\n quotePosixShellDoubleQuotedApostrophe\n).join","arguments":[{"kind":"string","value":" "}],"source":"BROWSER_ARGV.map(\n quotePosixShellDoubleQuotedApostrophe\n).join(' ')"}}},{"key":"PYTHONUNBUFFERED","value":{"kind":"string","value":"1"}}]}}},{"key":"scrubEnvironment","value":{"kind":"source-expression","source":"scrubAntigravityAcpEnvironment"}},{"key":"dialect","value":{"kind":"reference","source":"ANTIGRAVITY_ACP_DIALECT","resolved_at":{"path":"src/main/acp/acp-dialects/antigravity-dialect.ts","line":113,"end_line":120,"start":4576,"end":4992},"resolved":{"kind":"object","value":[{"key":"request","value":{"kind":"source-expression","source":"(method, params) => questionRequest(method, params) ?? warnedApproval(method, params)"}},{"source":"normalizeToolUpdate"},{"key":"toolName","value":{"kind":"source-expression","source":"(update) => (update.kind === 'execute' ? 'execute' : undefined)"}},{"key":"withheldCommands","value":{"kind":"array","value":[{"kind":"string","value":"logout"}]}}]}}},{"key":"loginCommand","value":{"kind":"source-expression","source":"agentSessionSignInFor('antigravity')?.loginCommand ?? []"}},{"key":"authMethod","value":{"kind":"source-expression","source":"({ advertised }) =>\n advertised.includes('oauth-personal') ? 'oauth-personal' : undefined"}},{"key":"signIn","value":{"kind":"object","value":[{"key":"read","value":{"kind":"source-expression","source":"readAntigravitySignInLine"}},{"key":"answered","value":{"kind":"source-expression","source":"answerAntigravityChatAuth"}}]}},{"key":"account","value":{"kind":"reference","source":"antigravityChatAccount","resolved_at":{"path":"src/main/antigravity/antigravity-chat-account.ts","line":60,"end_line":77,"start":2442,"end":2987},"resolved":{"kind":"object","value":[{"source":"...folder"},{"key":"prepare","value":{"kind":"source-expression","source":"async (env: Readonly>): Promise => {\n const home = env.GEMINI_HOME\n if (!home) {\n throw new Error('GEMINI_HOME is not set')\n }\n if (!(await retained.stopFailed(home))) {\n throw new AntigravitySignInCloseUnprovenError()\n }\n if (!(await antigravityBrowserHelperWorks())) {\n throw new AntigravitySignInSentence(\n \"Antigravity's sign-in link can't be captured on this host. Restart Orca and try again.\"\n )\n }\n await folder.prepare?.(env)\n }"}}]}}},{"key":"installDirectories","value":{"kind":"source-expression","source":"() => []"}},{"key":"managedRuntime","value":{"kind":"reference","source":"ANTIGRAVITY_ACP_RUNTIME","resolved_at":{"path":"src/main/antigravity/antigravity-acp-runtime.ts","line":82,"end_line":88,"start":3199,"end":3431},"resolved":{"kind":"object","value":[{"key":"label","value":{"kind":"string","value":"Antigravity"}},{"key":"root","value":{"kind":"source-expression","source":"(dataDirectory) => join(dataDirectory, 'agent-runtimes', 'antigravity')"}},{"source":"pin"},{"key":"validate","value":{"kind":"source-expression","source":"(folder, pinned, signal) =>\n probeAntigravityAcpServer(join(folder, COMMAND), pinned.version, signal)"}}]}}},{"key":"permissionModeConfig","value":{"kind":"object","value":[{"key":"values","value":{"kind":"object","value":[{"key":"ask","value":{"kind":"string","value":"default"}},{"key":"'accept-edits'","value":{"kind":"string","value":"auto_edit"}},{"key":"'full-access'","value":{"kind":"string","value":"yolo"}}]}}]}},{"key":"modelDiscovery","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"unavailable"}},{"key":"reason","value":{"kind":"string","value":"the Antigravity server lists its models only in a signed-in session"}}]}},{"key":"transcriptImport","value":{"kind":"null","value":null}},{"key":"sessionHistory","value":{"kind":"reference","source":"ANTIGRAVITY_SESSION_HISTORY","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":297,"end_line":301,"start":14706,"end":14817},"resolved":{"kind":"object","value":[{"key":"rowAgents","value":{"kind":"array","value":[{"kind":"string","value":"antigravity"}]}},{"key":"rowSessionId","value":{"kind":"source-expression","source":"(link) => link.handle.nativeId"}},{"key":"parseResumeArgs","value":{"kind":"source-expression","source":"() => null"}}]}}},{"key":"privateTempDirectory","value":{"kind":"boolean","value":true}},{"key":"resumePreference","value":{"kind":"string","value":"resume"}},{"key":"launchGate","value":{"kind":"reference","source":"ANTIGRAVITY_LAUNCH_GATE","resolved_at":{"path":"src/main/antigravity/antigravity-chat-account.ts","line":16,"end_line":16,"start":814,"end":846},"resolved":{"kind":"source-expression","source":"new AcpLaunchGate('Antigravity')"}}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"153062778900f24cb47f10716e91a0ebc604670d113c9c7765a1fc70d4fbcfa6","byte_start":16737,"byte_end":16760,"input_label":"antigravity","decision":"fix","reason":"Clear empties resume chain for antigravity account binding; preserve fresh resume, use explicit no-read spy and drop dialect reference identity."}],"original_row_count":5}],"parameter_groups":[{"id":"src/main/acp/acp-structured-context-clear.test.ts:7:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-context-clear.test.ts","line":7,"end_line":60,"start":387,"end":2405,"byte_start":387,"byte_end":2405,"source":"ACP_LAUNCH_SPECS","source_sha256":"2b2cb84d0166a94fcf43e5f06b646119e9475417f98afbc35c8e7c6633a0559a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-context-clear.test.ts","line":7,"end_line":7,"start":395,"end":411,"byte_start":395,"byte_end":411},"binding":"it.each","resolution":[{"name":"ACP_LAUNCH_SPECS","path":"src/main/acp/acp-launch-specs.ts","line":342,"end_line":348,"start":16600,"end":16762,"source":"[\n GROK_LAUNCH_SPEC,\n OPENCODE_LAUNCH_SPEC,\n OPENCODE2_LAUNCH_SPEC,\n OMP_LAUNCH_SPEC,\n ANTIGRAVITY_LAUNCH_SPEC\n]"}],"enclosing_case":{"line":7,"title":"$agent starts a new session without probing pre-clear history"},"affected_case_lines":[7],"decision":"fix","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-launch-specs.ts","line":343,"end_line":343,"start":16649,"end":16665,"source":"GROK_LAUNCH_SPEC","value":{"kind":"reference","source":"GROK_LAUNCH_SPEC","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":173,"end_line":206,"start":9146,"end":10501},"resolved":{"kind":"object","value":[{"key":"agent","value":{"kind":"string","value":"grok"}},{"key":"command","value":{"kind":"string","value":"grok"}},{"key":"args","value":{"kind":"source-expression","source":"({ fullAccess, pluginDir }) => [\n 'agent',\n ...(fullAccess ? ['--always-approve'] : []),\n ...(pluginDir ? ['--plugin-dir', pluginDir] : []),\n 'stdio'\n ]"}},{"key":"env","value":{"kind":"object","value":[]}},{"key":"dialect","value":{"kind":"reference","source":"GROK_ACP_DIALECT","resolved_at":{"path":"src/main/acp/acp-dialects/grok-dialect.ts","line":210,"end_line":229,"start":8162,"end":8835},"resolved":{"kind":"object","value":[{"key":"subagentStop","value":{"kind":"reference","source":"grokSubagentStop","resolved_at":{"path":"src/main/acp/acp-dialects/grok-subagent-stop.ts","line":14,"end_line":46,"start":441,"end":1607},"resolved":{"kind":"object","value":[{"key":"probe","value":{"kind":"object","value":[{"key":"method","value":{"kind":"string","value":"_x.ai/subagent/cancel"}},{"key":"params","value":{"kind":"object","value":[]}}]}},{"key":"recognizesProbeError","value":{"kind":"source-expression","source":"(error) =>\n error.code === -32602 &&\n typeof error.data === 'string' &&\n error.data.includes('missing field `subagentId`')"}},{"key":"request","value":{"kind":"source-expression","source":"(sessionId, id) => ({\n method: '_x.ai/subagent/cancel',\n params: { sessionId, subagentId: id }\n })"}},{"key":"response","value":{"kind":"source-expression","source":"(value, id) => {\n const parsed = response.safeParse(value)\n if (!parsed.success || parsed.data.result.subagentId !== id) {\n throw new Error('Grok returned an invalid child cancellation response')\n }\n const { cancelled, outcome } = parsed.data.result\n if (outcome?.kind === 'not_found') {\n return { cancelled: false }\n }\n if (outcome?.kind === 'already_finished') {\n if (outcome.status === undefined) {\n throw new Error('Grok returned an invalid child cancellation response')\n }\n const update = grokSubagentNotification({\n sessionUpdate: 'subagent_finished',\n subagent_id: id,\n status: outcome.status\n })\n return { cancelled: false, state: update?.state }\n }\n return { cancelled: outcome?.kind === 'cancelled' || cancelled }\n }"}}]}}},{"key":"backgroundTaskStop","value":{"kind":"reference","source":"grokBackgroundTaskStop","resolved_at":{"path":"src/main/acp/acp-dialects/grok-background-task-stop.ts","line":16,"end_line":29,"start":495,"end":1138},"resolved":{"kind":"object","value":[{"key":"probe","value":{"kind":"object","value":[{"key":"method","value":{"kind":"string","value":"_x.ai/task/kill"}},{"key":"params","value":{"kind":"object","value":[]}}]}},{"key":"lacksRoute","value":{"kind":"source-expression","source":"(error) => error.code === -32601"}},{"key":"request","value":{"kind":"source-expression","source":"(sessionId, taskId) => ({ method: '_x.ai/task/kill', params: { sessionId, taskId } })"}},{"key":"response","value":{"kind":"source-expression","source":"(value, taskId) => {\n const parsed = response.safeParse(value)\n if (!parsed.success || (parsed.data.result && parsed.data.result.taskId !== taskId)) {\n throw new Error('Grok returned an invalid background task kill response')\n }\n const { result } = parsed.data\n return !result ? 'refused' : result.outcome === 'killed' ? 'killed' : 'gone'\n }"}}]}}},{"key":"injectedPromptIdentity","value":{"kind":"boolean","value":true}},{"key":"toolName","value":{"kind":"source-expression","source":"(update) => {\n const parsed = toolMetaSchema.safeParse(update._meta)\n return parsed.success ? parsed.data['x.ai/tool'].name : undefined\n }"}},{"key":"request","value":{"kind":"source-expression","source":"grokRequest"}},{"key":"settleRequest","value":{"kind":"source-expression","source":"grokSettleRequest"}},{"key":"toolBackgroundTasks","value":{"kind":"source-expression","source":"grokToolBackgroundTasks"}},{"key":"toolSubagents","value":{"kind":"source-expression","source":"grokToolSubagents"}},{"source":"subagentSessionEnd"},{"source":"notification"},{"source":"contextWindow"},{"key":"modelEfforts","value":{"kind":"source-expression","source":"grokModelEfforts"}},{"source":"hookBlock"},{"key":"promptErrorDetail","value":{"kind":"source-expression","source":"(error) => promptErrorDataSchema.safeParse(error.data).data?.message"}},{"key":"failedTurnText","value":{"kind":"source-expression","source":"() => 'Grok ended this turn with an error.'"}}]}}},{"key":"loginCommand","value":{"kind":"source-expression","source":"agentSessionSignInFor('grok')?.loginCommand ?? []"}},{"key":"authMethod","value":{"kind":"source-expression","source":"({ advertised, env }) =>\n env.XAI_API_KEY?.trim() && advertised.includes('xai.api_key')\n ? 'xai.api_key'\n : advertised.includes('cached_token')\n ? 'cached_token'\n : undefined"}},{"key":"account","value":{"kind":"call-source","callee":"directoryAccountBinding","arguments":[{"kind":"string","value":"GROK_HOME"},{"kind":"source-expression","source":"(homePath) => join(homePath, '.grok')"}],"source":"directoryAccountBinding('GROK_HOME', (homePath) => join(homePath, '.grok'))"}},{"key":"installDirectories","value":{"kind":"source-expression","source":"({ env }) => (env.GROK_HOME ? [join(env.GROK_HOME, 'bin')] : [])"}},{"key":"modelDiscovery","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"initialize"}},{"key":"read","value":{"kind":"source-expression","source":"readGrokModelCatalog"}},{"key":"listingNamesConfiguredModel","value":{"kind":"boolean","value":false}}]}},{"key":"visualsSkill","value":{"kind":"reference","source":"loadGrokVisualsSkill","resolved_at":{"path":"src/main/acp/acp-visuals-skill.ts","line":31,"end_line":34,"start":1379,"end":1539},"resolved":{"kind":"source-expression","source":"async ({ skill, version }) =>\n version !== null && hasReachedAppVersion(version, GROK_PLUGIN_DIR_FIRST_VERSION)\n ? { pluginDir: skill.pluginDir }\n : null"}}},{"key":"compaction","value":{"kind":"boolean","value":true}},{"key":"transcriptImport","value":{"kind":"reference","source":"GROK_TRANSCRIPT_IMPORT","resolved_at":{"path":"src/main/grok/grok-transcript-import.ts","line":6,"end_line":20,"start":339,"end":974},"resolved":{"kind":"call-source","callee":"directoryTranscriptImport","arguments":[{"kind":"object","value":[{"key":"conversationStore","value":{"kind":"source-expression","source":"({ accountHomePath }) => join(accountHomePath, 'sessions')"}},{"key":"accountHomeCandidates","value":{"kind":"source-expression","source":"({ selectedAccountHomePath }) => [\n selectedAccountHomePath,\n resolveGrokHomeDir()\n ]"}},{"key":"findTranscript","value":{"kind":"source-expression","source":"async ({ providerSessionId, store, workspaceCwd, strictErrors }) =>\n (await findGrokChatHistoryByCwd({\n sessionId: providerSessionId,\n cwd: workspaceCwd,\n sessionsDir: store\n })) ??\n resolveSessionFilePath('grok', providerSessionId, { grokSessionsDir: store, strictErrors })"}}]}],"source":"directoryTranscriptImport({\n conversationStore: ({ accountHomePath }) => join(accountHomePath, 'sessions'),\n // The chat's own home, then the one Session History lists Grok's conversations from.\n accountHomeCandidates: ({ selectedAccountHomePath }) => [\n selectedAccountHomePath,\n resolveGrokHomeDir()\n ],\n findTranscript: async ({ providerSessionId, store, workspaceCwd, strictErrors }) =>\n (await findGrokChatHistoryByCwd({\n sessionId: providerSessionId,\n cwd: workspaceCwd,\n sessionsDir: store\n })) ??\n resolveSessionFilePath('grok', providerSessionId, { grokSessionsDir: store, strictErrors })\n})"}}},{"key":"sessionHistory","value":{"kind":"reference","source":"GROK_SESSION_HISTORY","resolved_at":{"path":"src/main/grok/grok-session-history.ts","line":9,"end_line":24,"start":305,"end":920},"resolved":{"kind":"object","value":[{"key":"rowAgents","value":{"kind":"array","value":[{"kind":"string","value":"grok"}]}},{"key":"rowSessionId","value":{"kind":"source-expression","source":"(link) => link.handle.nativeId"}},{"key":"parseResumeArgs","value":{"kind":"source-expression","source":"(args) => {\n // `--fork-session` resumes into a new session id, so it writes no owned one.\n if (ownOptionsInclude(args, ['--fork-session'])) {\n return null\n }\n const invocation = resumeInvocationFromOptions(args, {\n targetless: ['-c', '--continue'],\n markers: ['-r', '--resume', '--load']\n })\n // Grok reads a non-UUID value as a session title, which may name any of the folder's sessions.\n return invocation?.target && !UUID.test(invocation.target) ? { target: null } : invocation\n }"}}]}}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"2fa9e57d87fe100f7054f0888e387bf41d808160cbf97c67479ca371055268dd","byte_start":16649,"byte_end":16665,"input_label":"grok","decision":"fix","reason":"Clear empties resume chain for grok account binding; preserve fresh resume, use explicit no-read spy and drop dialect reference identity."},{"index":2,"path":"src/main/acp/acp-launch-specs.ts","line":344,"end_line":344,"start":16669,"end":16689,"source":"OPENCODE_LAUNCH_SPEC","value":{"kind":"reference","source":"OPENCODE_LAUNCH_SPEC","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":239,"end_line":254,"start":12087,"end":12751},"resolved":{"kind":"call-source","callee":"openCodeLaunchSpec","arguments":[{"kind":"object","value":[{"key":"agent","value":{"kind":"string","value":"opencode"}},{"key":"command","value":{"kind":"string","value":"opencode"}},{"key":"minimumVersions","value":{"kind":"reference","source":"OPENCODE_MINIMUM_VERSIONS","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":210,"end_line":210,"start":10663,"end":10684},"resolved":{"kind":"array","value":[{"kind":"string","value":"1.18.31"},{"kind":"string","value":"2.0.14"}]}}},{"key":"modelDiscovery","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"command"}},{"key":"args","value":{"kind":"reference","source":"OPENCODE_MODEL_LISTING_ARGS","resolved_at":{"path":"src/main/opencode/opencode-model-catalog-listing.ts","line":9,"end_line":9,"start":448,"end":471},"resolved":{"kind":"array","value":[{"kind":"string","value":"models"},{"kind":"string","value":"--verbose"}]}}},{"key":"parse","value":{"kind":"source-expression","source":"parseOpenCodeModelListing"}},{"key":"listingNamesConfiguredModel","value":{"kind":"boolean","value":false}},{"key":"supportsVersion","value":{"kind":"source-expression","source":"(version) => compareAppVersions(version, '2.0.0') < 0"}},{"key":"otherReleasesListInSession","value":{"kind":"boolean","value":true}}]}}]}],"source":"openCodeLaunchSpec({\n agent: 'opencode',\n command: 'opencode',\n minimumVersions: OPENCODE_MINIMUM_VERSIONS,\n // Its `initialize` names no models; 1.x lists them with a command, 2.x in a session it deletes.\n modelDiscovery: {\n kind: 'command',\n args: OPENCODE_MODEL_LISTING_ARGS,\n parse: parseOpenCodeModelListing,\n // The listing marks no default; a chat started with no pick names it.\n listingNamesConfiguredModel: false,\n // 2.x and later reject `--verbose`, and their listings omit providers that report after startup.\n supportsVersion: (version) => compareAppVersions(version, '2.0.0') < 0,\n otherReleasesListInSession: true\n }\n})"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"4e7cfd829c7de6245c7971a649286033a96c260496c7642a864b6bd7fb92238e","byte_start":16669,"byte_end":16689,"input_label":"opencode","decision":"fix","reason":"Clear empties resume chain for opencode account binding; preserve fresh resume, use explicit no-read spy and drop dialect reference identity."},{"index":3,"path":"src/main/acp/acp-launch-specs.ts","line":345,"end_line":345,"start":16693,"end":16714,"source":"OPENCODE2_LAUNCH_SPEC","value":{"kind":"reference","source":"OPENCODE2_LAUNCH_SPEC","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":258,"end_line":263,"start":12982,"end":13156},"resolved":{"kind":"call-source","callee":"openCodeLaunchSpec","arguments":[{"kind":"object","value":[{"key":"agent","value":{"kind":"string","value":"opencode2"}},{"key":"command","value":{"kind":"string","value":"opencode2"}},{"key":"minimumVersions","value":{"kind":"array","value":[{"kind":"string","value":"2.0.14"}]}},{"key":"modelDiscovery","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"session"}},{"key":"listingNamesConfiguredModel","value":{"kind":"boolean","value":false}}]}}]}],"source":"openCodeLaunchSpec({\n agent: 'opencode2',\n command: 'opencode2',\n minimumVersions: ['2.0.14'],\n modelDiscovery: { kind: 'session', listingNamesConfiguredModel: false }\n})"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"f609f0d3036d4485faed1968c9f10054eec577bf2d33b2da0490b6f55d680b3b","byte_start":16693,"byte_end":16714,"input_label":"opencode2","decision":"fix","reason":"Clear empties resume chain for opencode2 account binding; preserve fresh resume, use explicit no-read spy and drop dialect reference identity."},{"index":4,"path":"src/main/acp/acp-launch-specs.ts","line":346,"end_line":346,"start":16718,"end":16733,"source":"OMP_LAUNCH_SPEC","value":{"kind":"reference","source":"OMP_LAUNCH_SPEC","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":266,"end_line":294,"start":13281,"end":14541},"resolved":{"kind":"object","value":[{"key":"agent","value":{"kind":"string","value":"omp"}},{"key":"command","value":{"kind":"string","value":"omp"}},{"key":"args","value":{"kind":"source-expression","source":"({ pluginDir }) => ['acp', ...(pluginDir ? ['--plugin-dir', pluginDir] : [])]"}},{"key":"env","value":{"kind":"object","value":[]}},{"key":"dialect","value":{"kind":"reference","source":"OMP_ACP_DIALECT","resolved_at":{"path":"src/main/acp/acp-dialects/omp-dialect.ts","line":112,"end_line":123,"start":4474,"end":4799},"resolved":{"kind":"object","value":[{"source":"normalizeToolUpdate"},{"source":"compactionReply"},{"key":"authenticationRequired","value":{"kind":"source-expression","source":"(error) => {\n const details = promptErrorDataSchema.safeParse(error.data).data?.details\n return (\n error.code === -32603 &&\n details !== undefined &&\n SIGNED_OUT_DETAIL_PREFIXES.some((prefix) => details.startsWith(prefix))\n )\n }"}}]}}},{"key":"loginCommand","value":{"kind":"source-expression","source":"agentSessionSignInFor('omp')?.loginCommand ?? []"}},{"key":"account","value":{"kind":"call-source","callee":"directoryAccountBinding","arguments":[{"kind":"string","value":"PI_CODING_AGENT_DIR"},{"kind":"source-expression","source":"(homePath) =>\n join(homePath, '.omp', 'agent')"}],"source":"directoryAccountBinding('PI_CODING_AGENT_DIR', (homePath) =>\n join(homePath, '.omp', 'agent')\n )"}},{"key":"installDirectories","value":{"kind":"source-expression","source":"() => []"}},{"key":"minimumVersions","value":{"kind":"array","value":[{"kind":"string","value":"17.0.5"}]}},{"key":"modelDiscovery","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"session"}},{"key":"listingNamesConfiguredModel","value":{"kind":"boolean","value":false}},{"key":"sessionFolderArgs","value":{"kind":"source-expression","source":"(folder) => ['--session-dir', folder]"}}]}},{"key":"visualsSkill","value":{"kind":"reference","source":"loadOmpVisualsSkill","resolved_at":{"path":"src/main/acp/acp-visuals-skill.ts","line":88,"end_line":90,"start":3708,"end":3763},"resolved":{"kind":"source-expression","source":"async ({ skill }) => ({\n pluginDir: skill.pluginDir\n})"}}},{"key":"compaction","value":{"kind":"boolean","value":true}},{"key":"transcriptImport","value":{"kind":"reference","source":"OMP_TRANSCRIPT_IMPORT","resolved_at":{"path":"src/main/omp/omp-transcript-import.ts","line":13,"end_line":26,"start":581,"end":1246},"resolved":{"kind":"call-source","callee":"directoryTranscriptImport","arguments":[{"kind":"object","value":[{"key":"conversationStore","value":{"kind":"source-expression","source":"({ accountHomePath, launchEnv }) => sessionsRoot(accountHomePath, launchEnv)"}},{"key":"accountHomeCandidates","value":{"kind":"source-expression","source":"({ selectedAccountHomePath }) => [selectedAccountHomePath]"}},{"key":"findTranscript","value":{"kind":"source-expression","source":"({ providerSessionId, store, launchEnv, workspaceCwd, strictErrors }) =>\n findOmpSessionByCwd({\n sessionsDir: store,\n sessionId: providerSessionId,\n cwd: workspaceCwd,\n homeDir: (process.platform === 'win32' ? launchEnv.USERPROFILE : launchEnv.HOME) || homedir(),\n env: launchEnv,\n strictErrors\n })"}}]}],"source":"directoryTranscriptImport({\n conversationStore: ({ accountHomePath, launchEnv }) => sessionsRoot(accountHomePath, launchEnv),\n accountHomeCandidates: ({ selectedAccountHomePath }) => [selectedAccountHomePath],\n // Where OMP itself keeps the account's sessions, which is not always under it (XDG_DATA_HOME).\n findTranscript: ({ providerSessionId, store, launchEnv, workspaceCwd, strictErrors }) =>\n findOmpSessionByCwd({\n sessionsDir: store,\n sessionId: providerSessionId,\n cwd: workspaceCwd,\n homeDir: (process.platform === 'win32' ? launchEnv.USERPROFILE : launchEnv.HOME) || homedir(),\n env: launchEnv,\n strictErrors\n })\n})"}}},{"key":"sessionHistory","value":{"kind":"reference","source":"OMP_SESSION_HISTORY","resolved_at":{"path":"src/main/omp/omp-session-history.ts","line":8,"end_line":18,"start":339,"end":729},"resolved":{"kind":"object","value":[{"key":"rowAgents","value":{"kind":"array","value":[{"kind":"string","value":"omp"}]}},{"key":"rowSessionId","value":{"kind":"source-expression","source":"(link) => link.handle.nativeId"}},{"key":"parseResumeArgs","value":{"kind":"source-expression","source":"(args) =>\n resumeInvocationFromOptions(args, {\n targetless: ['-c', '--continue'],\n markers: ['-r', '--resume', '--session']\n })"}},{"key":"resumeTargetMatches","value":{"kind":"source-expression","source":"sessionFileResumeTargetMatches"}}]}}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"60d0f8d746dd010c4899dd243b9e7635a6b4e7599d7d4448b9ea11158b146ba4","byte_start":16718,"byte_end":16733,"input_label":"omp","decision":"fix","reason":"Clear empties resume chain for omp account binding; preserve fresh resume, use explicit no-read spy and drop dialect reference identity."},{"index":5,"path":"src/main/acp/acp-launch-specs.ts","line":347,"end_line":347,"start":16737,"end":16760,"source":"ANTIGRAVITY_LAUNCH_SPEC","value":{"kind":"reference","source":"ANTIGRAVITY_LAUNCH_SPEC","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":305,"end_line":340,"start":15037,"end":16561},"resolved":{"kind":"object","value":[{"key":"agent","value":{"kind":"string","value":"antigravity"}},{"key":"command","value":{"kind":"reference","source":"ANTIGRAVITY_ACP_COMMAND","resolved_at":{"path":"src/main/antigravity/antigravity-acp-runtime.ts","line":11,"end_line":11,"start":573,"end":593},"resolved":{"kind":"string","value":"agy_acp_server.par"}}},{"key":"ignoreAgentCommandSetting","value":{"kind":"boolean","value":true}},{"key":"args","value":{"kind":"source-expression","source":"() => (process.platform === 'linux' ? ['--uid='] : [])"}},{"key":"env","value":{"kind":"reference","source":"ANTIGRAVITY_ACP_ENV","resolved_at":{"path":"src/main/antigravity/antigravity-acp-environment.ts","line":9,"end_line":13,"start":510,"end":612},"resolved":{"kind":"object","value":[{"key":"AGY_ACP_FORCE_FILE_STORAGE","value":{"kind":"string","value":"1"}},{"key":"BROWSER","value":{"kind":"reference","source":"ANTIGRAVITY_BROWSER_COMMAND","resolved_at":{"path":"src/main/antigravity/antigravity-browser-helper.ts","line":23,"end_line":25,"start":1421,"end":1490},"resolved":{"kind":"call-source","callee":"BROWSER_ARGV.map(\n quotePosixShellDoubleQuotedApostrophe\n).join","arguments":[{"kind":"string","value":" "}],"source":"BROWSER_ARGV.map(\n quotePosixShellDoubleQuotedApostrophe\n).join(' ')"}}},{"key":"PYTHONUNBUFFERED","value":{"kind":"string","value":"1"}}]}}},{"key":"scrubEnvironment","value":{"kind":"source-expression","source":"scrubAntigravityAcpEnvironment"}},{"key":"dialect","value":{"kind":"reference","source":"ANTIGRAVITY_ACP_DIALECT","resolved_at":{"path":"src/main/acp/acp-dialects/antigravity-dialect.ts","line":113,"end_line":120,"start":4576,"end":4992},"resolved":{"kind":"object","value":[{"key":"request","value":{"kind":"source-expression","source":"(method, params) => questionRequest(method, params) ?? warnedApproval(method, params)"}},{"source":"normalizeToolUpdate"},{"key":"toolName","value":{"kind":"source-expression","source":"(update) => (update.kind === 'execute' ? 'execute' : undefined)"}},{"key":"withheldCommands","value":{"kind":"array","value":[{"kind":"string","value":"logout"}]}}]}}},{"key":"loginCommand","value":{"kind":"source-expression","source":"agentSessionSignInFor('antigravity')?.loginCommand ?? []"}},{"key":"authMethod","value":{"kind":"source-expression","source":"({ advertised }) =>\n advertised.includes('oauth-personal') ? 'oauth-personal' : undefined"}},{"key":"signIn","value":{"kind":"object","value":[{"key":"read","value":{"kind":"source-expression","source":"readAntigravitySignInLine"}},{"key":"answered","value":{"kind":"source-expression","source":"answerAntigravityChatAuth"}}]}},{"key":"account","value":{"kind":"reference","source":"antigravityChatAccount","resolved_at":{"path":"src/main/antigravity/antigravity-chat-account.ts","line":60,"end_line":77,"start":2442,"end":2987},"resolved":{"kind":"object","value":[{"source":"...folder"},{"key":"prepare","value":{"kind":"source-expression","source":"async (env: Readonly>): Promise => {\n const home = env.GEMINI_HOME\n if (!home) {\n throw new Error('GEMINI_HOME is not set')\n }\n if (!(await retained.stopFailed(home))) {\n throw new AntigravitySignInCloseUnprovenError()\n }\n if (!(await antigravityBrowserHelperWorks())) {\n throw new AntigravitySignInSentence(\n \"Antigravity's sign-in link can't be captured on this host. Restart Orca and try again.\"\n )\n }\n await folder.prepare?.(env)\n }"}}]}}},{"key":"installDirectories","value":{"kind":"source-expression","source":"() => []"}},{"key":"managedRuntime","value":{"kind":"reference","source":"ANTIGRAVITY_ACP_RUNTIME","resolved_at":{"path":"src/main/antigravity/antigravity-acp-runtime.ts","line":82,"end_line":88,"start":3199,"end":3431},"resolved":{"kind":"object","value":[{"key":"label","value":{"kind":"string","value":"Antigravity"}},{"key":"root","value":{"kind":"source-expression","source":"(dataDirectory) => join(dataDirectory, 'agent-runtimes', 'antigravity')"}},{"source":"pin"},{"key":"validate","value":{"kind":"source-expression","source":"(folder, pinned, signal) =>\n probeAntigravityAcpServer(join(folder, COMMAND), pinned.version, signal)"}}]}}},{"key":"permissionModeConfig","value":{"kind":"object","value":[{"key":"values","value":{"kind":"object","value":[{"key":"ask","value":{"kind":"string","value":"default"}},{"key":"'accept-edits'","value":{"kind":"string","value":"auto_edit"}},{"key":"'full-access'","value":{"kind":"string","value":"yolo"}}]}}]}},{"key":"modelDiscovery","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"unavailable"}},{"key":"reason","value":{"kind":"string","value":"the Antigravity server lists its models only in a signed-in session"}}]}},{"key":"transcriptImport","value":{"kind":"null","value":null}},{"key":"sessionHistory","value":{"kind":"reference","source":"ANTIGRAVITY_SESSION_HISTORY","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":297,"end_line":301,"start":14706,"end":14817},"resolved":{"kind":"object","value":[{"key":"rowAgents","value":{"kind":"array","value":[{"kind":"string","value":"antigravity"}]}},{"key":"rowSessionId","value":{"kind":"source-expression","source":"(link) => link.handle.nativeId"}},{"key":"parseResumeArgs","value":{"kind":"source-expression","source":"() => null"}}]}}},{"key":"privateTempDirectory","value":{"kind":"boolean","value":true}},{"key":"resumePreference","value":{"kind":"string","value":"resume"}},{"key":"launchGate","value":{"kind":"reference","source":"ANTIGRAVITY_LAUNCH_GATE","resolved_at":{"path":"src/main/antigravity/antigravity-chat-account.ts","line":16,"end_line":16,"start":814,"end":846},"resolved":{"kind":"source-expression","source":"new AcpLaunchGate('Antigravity')"}}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"153062778900f24cb47f10716e91a0ebc604670d113c9c7765a1fc70d4fbcfa6","byte_start":16737,"byte_end":16760,"input_label":"antigravity","decision":"fix","reason":"Clear empties resume chain for antigravity account binding; preserve fresh resume, use explicit no-read spy and drop dialect reference identity."}],"original_row_count":5}],"body_support_cleanup_loops":[],"implemented_changes":[{"proposal_id":"acp-main-0001-029","summary":"Removed dialect reference identity assertion while retaining fresh session and no-history observation.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"},{"proposal_id":"acp-main-0001-030","summary":"All five context-clear agents use explicit readJournal spy with no-call assertions.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/opencode/opencode-structured-account-home.ts","src/main/acp/acp-structured-launch-resolution.ts","src/main/runtime/structured-agent-launch-composition.test-support.ts"],"evidence_sha256":{"src/main/opencode/opencode-structured-account-home.ts":"d3239c9ba8bf4f2100c911d514eac8a60056db029fffc130d23f09cc481fe187","src/main/acp/acp-structured-launch-resolution.ts":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","src/main/runtime/structured-agent-launch-composition.test-support.ts":"a5d109637e695829b306570250295316ac6f653492f66bd9da7126808a70a962"},"evidence_source_sha256":{"src/main/opencode/opencode-structured-account-home.ts":"d3239c9ba8bf4f2100c911d514eac8a60056db029fffc130d23f09cc481fe187","src/main/acp/acp-structured-launch-resolution.ts":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","src/main/runtime/structured-agent-launch-composition.test-support.ts":"a5d109637e695829b306570250295316ac6f653492f66bd9da7126808a70a962"},"original_evidence_detail":[{"path":"src/main/opencode/opencode-structured-account-home.ts","sha256":"d3239c9ba8bf4f2100c911d514eac8a60056db029fffc130d23f09cc481fe187","lines":95,"read_state":"stored_not_claimed_read"},{"path":"src/main/acp/acp-structured-launch-resolution.ts","sha256":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","lines":342,"read_state":"full_body_read"},{"path":"src/main/runtime/structured-agent-launch-composition.test-support.ts","sha256":"a5d109637e695829b306570250295316ac6f653492f66bd9da7126808a70a962","lines":152,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"grok starts a new session without probing pre-clear history","status":"passed"},{"full_name":"opencode starts a new session without probing pre-clear history","status":"passed"},{"full_name":"opencode2 starts a new session without probing pre-clear history","status":"passed"},{"full_name":"omp starts a new session without probing pre-clear history","status":"passed"},{"full_name":"antigravity starts a new session without probing pre-clear history","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-electron-free.test.ts","sha256":"c205cea2a73ebae5561b5e9b396cdd15fb45cb97d609e4b3c52084a8666ddde1","reviewed_sha256":"5c22c2b97abb6cf502f058e5f74b7a856dd4ef7d2f6bb56d27296e3c9e521803","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":30,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: fix 1. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":1,"original_declarations":1,"final_declarations":1,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":9,"end_line":33,"title":"reaches no Electron import from the adapter, its launch resolution or any agent row","decision":"fix","reason":"An actual esbuild bundle/metafile checks four reachable ACP source entrypoints for Electron imports, providing a useful headless architecture guard. packages:external excludes transitive installed/workspace package internals, so the assertion is a source-bundle boundary rather than a complete runtime dependency proof.","source_body_sha256":"6360ff7cb37deaf067ea3f4cb606bfb74b8db971181404813d0aa42fda0b73e3","proposed_changes":[{"line":9,"action":"clarify assertion scope","proposal":"Retain source-graph Electron import guard, but title/comment should name bundled relative-source graph. packages:external deliberately excludes package internals, so this test cannot establish a transitive package-level Electron-free guarantee. Do not add source-string tests or claim external workspace packages were traversed."}],"path":"src/main/acp/acp-structured-electron-free.test.ts","start":291,"end":1166,"byte_start":291,"byte_end":1166,"source":"it('reaches no Electron import from the adapter, its launch resolution or any agent row', async () => {\n const result = await build({\n entryPoints: [\n resolve(__dirname, 'acp-structured-session-adapter.ts'),\n resolve(__dirname, 'acp-structured-launch-resolution.ts'),\n resolve(__dirname, 'acp-agent-connection.ts'),\n resolve(__dirname, 'acp-launch-specs.ts')\n ],\n bundle: true,\n write: false,\n outdir: 'out',\n platform: 'node',\n format: 'esm',\n target: 'node22',\n packages: 'external',\n metafile: true,\n logLevel: 'silent'\n })\n const imports = Object.values(result.metafile.outputs).flatMap((output) =>\n output.imports.map((entry) => entry.path)\n )\n expect(imports.filter((path) => path === 'electron' || path.startsWith('electron/'))).toEqual(\n []\n )\n }, 60_000)","source_sha256":"6360ff7cb37deaf067ea3f4cb606bfb74b8db971181404813d0aa42fda0b73e3","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-electron-free.test.ts","line":8,"title":"bundles the adapter, launch resolution and agent rows without relative-source Electron imports","body_sha256":"0eeda1331f3000ebcd081b66d77e500ef3c0715bdea4fbaf9bd1ff3da376006c"},"proposal_ids":["acp-main-0001-031"],"explicit_input_controls":[]}],"explicit_input_controls":[],"parameter_groups":[],"body_support_cleanup_loops":[],"implemented_changes":[{"proposal_id":"acp-main-0001-031","summary":"Electron guard title/comment accurately scopes relative bundled source imports, with external package internals outside proof.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/acp-agent-connection.ts","src/main/acp/acp-launch-specs.ts","src/main/acp/acp-structured-launch-resolution.ts","src/main/acp/acp-structured-session-adapter.ts"],"evidence_sha256":{"src/main/acp/acp-agent-connection.ts":"342ab3a8803b26d0946055c30a332c05917ce7cefc56af80bb9fe3ec37f7eeaf","src/main/acp/acp-launch-specs.ts":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","src/main/acp/acp-structured-launch-resolution.ts":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"evidence_source_sha256":{"src/main/acp/acp-agent-connection.ts":"342ab3a8803b26d0946055c30a332c05917ce7cefc56af80bb9fe3ec37f7eeaf","src/main/acp/acp-launch-specs.ts":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","src/main/acp/acp-structured-launch-resolution.ts":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"original_evidence_detail":[{"path":"src/main/acp/acp-agent-connection.ts","sha256":"342ab3a8803b26d0946055c30a332c05917ce7cefc56af80bb9fe3ec37f7eeaf","lines":210,"read_state":"full_body_read"},{"path":"src/main/acp/acp-launch-specs.ts","sha256":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","lines":352,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-launch-resolution.ts","sha256":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","lines":342,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-session-adapter.ts","sha256":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e","lines":345,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"ACP structured lane bundles the adapter, launch resolution and agent rows without relative-source Electron imports","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-grok-subagent-recordings.test.ts","sha256":"0c73b87e2ba3aea581b9a5b8828db4368218491b4e57f19e4a8742bf2b219e27","reviewed_sha256":"3ad01ddde1af05fa5ed1cffc2813d06295d8bc743f4b89e3e02b8ef1cc4de52c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":31,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: consolidate 2, keep 1. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":3,"original_declarations":3,"final_declarations":1,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":101,"end_line":123,"title":"a foreground subagent completes and its reply opens under it","decision":"consolidate","reason":"Foreground recording already replays through the actual host in child-work line117. Consolidation candidate: transfer exact child-scoped reply text, token total and completed parent turn oracle to that stronger consumer case.","source_body_sha256":"2a52416a73e72adb112db29a696a3288ad938a89546f6c9e1527a530e3676f42","proposed_changes":[{"line":101,"action":"consolidate declaration","proposal":"Fold the exact reply attribution/text, token13778 and parent completion assertions into the existing child-work foreground replay row, then remove duplicate capture execution here. The source and both replay helpers were read: destination runs the same GrokFixtureReplay over actual host/store/status readers, a wider boundary than this adapter-only duplicate."}],"path":"src/main/acp/acp-structured-grok-subagent-recordings.test.ts","start":3620,"end":4578,"byte_start":3620,"byte_end":4578,"source":"it('a foreground subagent completes and its reply opens under it', async () => {\n const { rig, replay, evidence } = await replaying('s7-subagent-foreground')\n await send(rig, 'send-1')\n await waitFor(() => expect(replay.awaiting).toBeNull())\n await waitFor(async () =>\n expect(await turns(rig)).toMatchObject([{ state: 'completed', outcome: 'success' }])\n )\n expect(subagents(evidence)).toMatchObject([\n { id: 'subagent-1', label: 'Count note lines', outcome: 'succeeded', tokens: 13778 }\n ])\n expect(await replies(rig)).toEqual([\n { agentId: 'subagent-1', blocks: [{ type: 'text', text: '4' }] }\n ])\n expect(evidence).toContainEqual(\n expect.objectContaining({\n type: 'live',\n child: expect.objectContaining({ kind: 'agent', description: 'Count note lines' })\n })\n )\n expect(evidence).toContainEqual(\n expect.objectContaining({ type: 'ended', outcome: 'succeeded' })\n )\n })","source_sha256":"2a52416a73e72adb112db29a696a3288ad938a89546f6c9e1527a530e3676f42","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"consolidate","implementation":"consolidated","destination":{"path":"src/main/acp/acp-structured-child-work.test.ts","line":118,"title":"publishes the production %s recording through the same host readers","body_sha256":"2d3e139261ad5a699457c4658fb13e04e718ad616d12ce3d9a45d4d83d74e816"},"proposal_ids":["acp-main-0001-032"],"transfer_evidence":"Foreground/background exact replies, agent attribution, parent outcome, token13778 and no-command-task assertions transferred to respective real-host capture row.","explicit_input_controls":[]},{"line":125,"end_line":147,"title":"a background subagent completes and stays out of the background tasks","decision":"consolidate","reason":"Background recording already replays through actual host in child-work line117. Consolidation candidate: transfer exact child-scoped reply and exclusion from command-task rows there.","source_body_sha256":"0e6d3bc567115d87d9c34ae8b925d4484e817bdca9c3ea4a5e131bc631433aef","proposed_changes":[{"line":125,"action":"consolidate declaration","proposal":"Fold exact child-scoped reply and no-command-task-row assertions into the existing child-work background replay row, then remove this duplicate replay. Retain the separate three-turn Stop recording."}],"path":"src/main/acp/acp-structured-grok-subagent-recordings.test.ts","start":4582,"end":5515,"byte_start":4582,"byte_end":5515,"source":"it('a background subagent completes and stays out of the background tasks', async () => {\n const { rig, replay, evidence } = await replaying('s7-subagent-background')\n await send(rig, 'send-1')\n await waitFor(() => expect(replay.awaiting).toBeNull())\n await waitFor(() =>\n expect(subagents(evidence)).toMatchObject([\n { id: 'subagent-1', label: 'List folder files', outcome: 'succeeded' }\n ])\n )\n expect(await replies(rig)).toEqual([\n { agentId: 'subagent-1', blocks: [{ type: 'text', text: 'notes.txt, README.md' }] }\n ])\n expect(await backgroundTasks(rig)).toEqual([])\n expect(evidence).toContainEqual(\n expect.objectContaining({\n type: 'live',\n child: expect.objectContaining({ kind: 'agent', description: 'List folder files' })\n })\n )\n expect(evidence).toContainEqual(\n expect.objectContaining({ type: 'ended', outcome: 'succeeded' })\n )\n })","source_sha256":"0e6d3bc567115d87d9c34ae8b925d4484e817bdca9c3ea4a5e131bc631433aef","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"consolidate","implementation":"consolidated","destination":{"path":"src/main/acp/acp-structured-child-work.test.ts","line":118,"title":"publishes the production %s recording through the same host readers","body_sha256":"2d3e139261ad5a699457c4658fb13e04e718ad616d12ce3d9a45d4d83d74e816"},"proposal_ids":["acp-main-0001-033"],"transfer_evidence":"Foreground/background exact replies, agent attribution, parent outcome, token13778 and no-command-task assertions transferred to respective real-host capture row.","explicit_input_controls":[]},{"line":149,"end_line":175,"title":"Stop while a foreground and then a background subagent runs ends each stopped","decision":"keep","reason":"Distinct recorded multi-turn Stop scenario cancels foreground then background subagents and allows a later successful turn, with no child reply/background-task rows; preserve it.","source_body_sha256":"7754c5e8a35fb0d50e9ced6803d8d9f32e285f1846ac56bd62ad6b5d5acaa0d4","path":"src/main/acp/acp-structured-grok-subagent-recordings.test.ts","start":5519,"end":6656,"byte_start":5519,"byte_end":6656,"source":"it('Stop while a foreground and then a background subagent runs ends each stopped', async () => {\n const { rig, replay, evidence } = await replaying('s7-subagent-stop')\n await send(rig, 'send-1')\n await stop(rig, replay)\n await waitFor(() => expect(replay.awaiting).toBe('session/prompt'))\n await waitFor(() =>\n expect(subagents(evidence)).toMatchObject([{ label: 'Slow sleeper', outcome: 'cancelled' }])\n )\n await send(rig, 'send-2')\n await stop(rig, replay)\n await waitFor(() => expect(replay.awaiting).toBe('session/prompt'))\n await send(rig, 'send-3')\n await waitFor(() => expect(replay.awaiting).toBeNull())\n await waitFor(async () =>\n expect((await turns(rig)).map((turn) => turn.outcome)).toEqual([\n 'cancellation',\n 'cancellation',\n 'success'\n ])\n )\n expect(subagents(evidence)).toMatchObject([\n { id: 'subagent-1', label: 'Slow sleeper', outcome: 'cancelled' },\n { id: 'subagent-2', label: 'Background sleeper', outcome: 'cancelled' }\n ])\n expect(await replies(rig)).toEqual([])\n expect(await backgroundTasks(rig)).toEqual([])\n })","source_sha256":"7754c5e8a35fb0d50e9ced6803d8d9f32e285f1846ac56bd62ad6b5d5acaa0d4","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-grok-subagent-recordings.test.ts","line":101,"title":"Stop while a foreground and then a background subagent runs ends each stopped","body_sha256":"7754c5e8a35fb0d50e9ced6803d8d9f32e285f1846ac56bd62ad6b5d5acaa0d4"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-structured-grok-subagent-recordings.test.ts:52:loop","kind":"for-of","path":"src/main/acp/acp-structured-grok-subagent-recordings.test.ts","line":52,"end_line":71,"start":2018,"end":2698,"byte_start":2018,"byte_end":2698,"source":"for (const edge of evidence) {\n const handle =\n edge.type === 'live' ? edge.child.handle : edge.type === 'ended' ? edge.handle : null\n if (!handle) {\n continue\n }\n const prior = reported.get(handle.id) ?? { id: handle.id }\n const tokens =\n edge.type === 'live'\n ? edge.child.totalTokens\n : edge.type === 'ended'\n ? edge.totalTokens\n : undefined\n reported.set(handle.id, {\n ...prior,\n ...(edge.type === 'live' && edge.child.description ? { label: edge.child.description } : {}),\n ...(edge.type === 'ended' ? { outcome: edge.outcome } : {}),\n ...(tokens !== undefined ? { tokens } : {})\n })\n }","source_sha256":"012697a04fbdcd057cf85a6bcdfe564f8f3c2de4ed4c0a5e709b15f0fbdd3545","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const edge of evidence) ","header_sha256":"5bb5f6ad18e8aa7da558dda825480218330a7899e35c6ebc52b6776c040d51b2","input_position":{"path":"src/main/acp/acp-structured-grok-subagent-recordings.test.ts","line":52,"end_line":52,"start":2037,"end":2045,"byte_start":2037,"byte_end":2045},"binding":"const edge","resolution":[{"name":"evidence","path":"src/main/acp/acp-structured-grok-subagent-recordings.test.ts","line":34,"end_line":34,"start":1314,"end":1353,"source":"[]"}],"enclosing_case":null,"affected_case_lines":[],"classification":"test-side reduction","decision":"keep","reason":"Summarizes child evidence to final assertion state; can be removed after first two captures consolidate into real host reader cases, but retained Stop scenario still uses it.","rows":[],"current_matches":[{"path":"src/main/acp/acp-structured-grok-subagent-recordings.test.ts","line":52,"body_sha256":"d754a633dc058e42d33f7f930568cf9702df88649f7d4dec8e91b9d219e82bb3"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"parameter_groups":[],"body_support_cleanup_loops":[{"id":"src/main/acp/acp-structured-grok-subagent-recordings.test.ts:52:loop","kind":"for-of","path":"src/main/acp/acp-structured-grok-subagent-recordings.test.ts","line":52,"end_line":71,"start":2018,"end":2698,"byte_start":2018,"byte_end":2698,"source":"for (const edge of evidence) {\n const handle =\n edge.type === 'live' ? edge.child.handle : edge.type === 'ended' ? edge.handle : null\n if (!handle) {\n continue\n }\n const prior = reported.get(handle.id) ?? { id: handle.id }\n const tokens =\n edge.type === 'live'\n ? edge.child.totalTokens\n : edge.type === 'ended'\n ? edge.totalTokens\n : undefined\n reported.set(handle.id, {\n ...prior,\n ...(edge.type === 'live' && edge.child.description ? { label: edge.child.description } : {}),\n ...(edge.type === 'ended' ? { outcome: edge.outcome } : {}),\n ...(tokens !== undefined ? { tokens } : {})\n })\n }","source_sha256":"012697a04fbdcd057cf85a6bcdfe564f8f3c2de4ed4c0a5e709b15f0fbdd3545","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const edge of evidence) ","header_sha256":"5bb5f6ad18e8aa7da558dda825480218330a7899e35c6ebc52b6776c040d51b2","input_position":{"path":"src/main/acp/acp-structured-grok-subagent-recordings.test.ts","line":52,"end_line":52,"start":2037,"end":2045,"byte_start":2037,"byte_end":2045},"binding":"const edge","resolution":[{"name":"evidence","path":"src/main/acp/acp-structured-grok-subagent-recordings.test.ts","line":34,"end_line":34,"start":1314,"end":1353,"source":"[]"}],"enclosing_case":null,"affected_case_lines":[],"classification":"test-side reduction","decision":"keep","reason":"Summarizes child evidence to final assertion state; can be removed after first two captures consolidate into real host reader cases, but retained Stop scenario still uses it.","rows":[],"current_matches":[{"path":"src/main/acp/acp-structured-grok-subagent-recordings.test.ts","line":52,"body_sha256":"d754a633dc058e42d33f7f930568cf9702df88649f7d4dec8e91b9d219e82bb3"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"implemented_changes":[{"proposal_id":"acp-main-0001-032","summary":"Foreground unique reply attribution/text, token13778 and parent success moved into retained actual host/store capture row.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"},{"proposal_id":"acp-main-0001-033","summary":"Background unique reply attribution/text, parent success and no command-task rows moved into retained actual host/store capture row.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/acp-structured-host.test-support.ts","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","src/main/acp/acp-structured-session-adapter.ts"],"evidence_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"evidence_source_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"original_evidence_detail":[{"path":"src/main/acp/acp-structured-host.test-support.ts","sha256":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","lines":234,"read_state":"full_body_read"},{"path":"src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","sha256":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","lines":371,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-session-adapter.ts","sha256":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e","lines":345,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"Grok subagent recordings through the adapter Stop while a foreground and then a background subagent runs ends each stopped","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-host-configured-default.test.ts","sha256":"85fe2d6f2eb6b15e54fe763404097be183f1e96b47e8e7f7976856dab57329b2","reviewed_sha256":"85fe2d6f2eb6b15e54fe763404097be183f1e96b47e8e7f7976856dab57329b2","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":32,"decision":"keep","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 4. Retained the reviewed behavioral coverage; final bytes match the pinned original.","declarations":4,"original_declarations":4,"final_declarations":4,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"implementation_status":"reviewed-unchanged","cases":[{"line":160,"end_line":164,"title":"names no model before any chat ran, though the listing computed one","decision":"keep","reason":"Actual Grok probe/catalog/host pipeline distinguishes session-free listing computed default from any proven chat default; first composer state has no fabricated model/effort.","source_body_sha256":"2e93732240732e3db3c5fb53a592f3721174c58ee6c76c921e1e1a24672029fe","path":"src/main/acp/acp-structured-host-configured-default.test.ts","start":6855,"end":7161,"byte_start":6857,"byte_end":7163,"source":"it('names no model before any chat ran, though the listing computed one', async () => {\n const { listed } = await openGrokHost('grok-4.6')\n expect(listed).toMatchObject({ origin: 'probe', listingNamesConfiguredModel: false })\n expect(firstFrame(listed)).toEqual({ model: null, effort: null })\n })","source_sha256":"2e93732240732e3db3c5fb53a592f3721174c58ee6c76c921e1e1a24672029fe","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-configured-default.test.ts","line":160,"title":"names no model before any chat ran, though the listing computed one","body_sha256":"2e93732240732e3db3c5fb53a592f3721174c58ee6c76c921e1e1a24672029fe"},"proposal_ids":[],"explicit_input_controls":[]},{"line":166,"end_line":177,"title":"names 4.6, the model a chat with no pick ran, never the listing’s 4.7","decision":"keep","reason":"The real adapter start of a chat running4.6 teaches the actual catalog default despite a4.7 listing, and a later workspace gets the correct first-frame choices.","source_body_sha256":"fdd62e6462246e28d09eb13cb20ecc2dff9edc430b272c7ae89f9dee7e8eb88c","path":"src/main/acp/acp-structured-host-configured-default.test.ts","start":7165,"end":7788,"byte_start":7167,"byte_end":7792,"source":"it('names 4.6, the model a chat with no pick ran, never the listing’s 4.7', async () => {\n const { catalog, host } = await openGrokHost('grok-4.6')\n expect((await host.readOptions(SESSION)).current).toMatchObject({ model: 'grok-4.6' })\n\n // The next new chat, in any workspace: Grok reads no project config for its model.\n const answer = await catalog.read({ agent: 'grok', workspacePath: '/elsewhere' })\n expect(answer).toMatchObject({\n listingNamesConfiguredModel: true,\n defaultHoldsInEveryWorkspace: true\n })\n expect(firstFrame(answer)).toEqual({ model: 'grok-4.6', effort: 'high' })\n })","source_sha256":"fdd62e6462246e28d09eb13cb20ecc2dff9edc430b272c7ae89f9dee7e8eb88c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-configured-default.test.ts","line":166,"title":"names 4.6, the model a chat with no pick ran, never the listing’s 4.7","body_sha256":"fdd62e6462246e28d09eb13cb20ecc2dff9edc430b272c7ae89f9dee7e8eb88c"},"proposal_ids":[],"explicit_input_controls":[]},{"line":179,"end_line":198,"title":"learns 4.6 from a chat created with its first message and no pick","decision":"keep","reason":"Create-with-first-message drives actual delivery/start before any options read; learned default is visible through catalog/composer and host options.","source_body_sha256":"d34d777f8a07f357bcd689869a8fa1da1be4d915e59774db84626180e11661d2","path":"src/main/acp/acp-structured-host-configured-default.test.ts","start":7792,"end":8858,"byte_start":7796,"byte_end":8862,"source":"it('learns 4.6 from a chat created with its first message and no pick', async () => {\n const { catalog, host, rig } = await openGrokHost('grok-4.6', {\n clientMessageId: 'opening',\n body: hostTestMessage('hello')\n })\n await catalog.read({ agent: 'grok', waitForListing: true })\n // Delivery started the agent and handed it the opening message; nothing picked a model.\n const prompt = await rig.frame('session/prompt')\n rig.child().agent.reply(prompt, { stopReason: 'end_turn' })\n // Learned from the start the delivery made, before any options read.\n expect(firstFrame(await catalog.read({ agent: 'grok', workspacePath: '/elsewhere' }))).toEqual({\n model: 'grok-4.6',\n effort: 'high'\n })\n\n expect((await host.readOptions(SESSION)).current).toMatchObject({ model: 'grok-4.6' })\n const answer = await catalog.read({ agent: 'grok', workspacePath: '/elsewhere' })\n expect(answer).toMatchObject({ listingNamesConfiguredModel: true })\n expect(firstFrame(answer)).toEqual({ model: 'grok-4.6', effort: 'high' })\n })","source_sha256":"d34d777f8a07f357bcd689869a8fa1da1be4d915e59774db84626180e11661d2","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-configured-default.test.ts","line":179,"title":"learns 4.6 from a chat created with its first message and no pick","body_sha256":"d34d777f8a07f357bcd689869a8fa1da1be4d915e59774db84626180e11661d2"},"proposal_ids":[],"explicit_input_controls":[]},{"line":200,"end_line":213,"title":"a chat’s later reads teach nothing: a newer chat’s default stands","decision":"keep","reason":"A newer start listing sets4.7 in the real catalog; later options read of the older4.6 chat cannot overwrite that default.","source_body_sha256":"477fd8b412519e48bd57f217e993bb8381d0e737569c520cd774f86d3b344078","path":"src/main/acp/acp-structured-host-configured-default.test.ts","start":8862,"end":9637,"byte_start":8866,"byte_end":9645,"source":"it('a chat’s later reads teach nothing: a newer chat’s default stands', async () => {\n const { catalog, host } = await openGrokHost('grok-4.6')\n // Grok's default moved since: a newer chat with no pick starts on 4.7 and says so at its start.\n const newer = new AcpStructuredOptions()\n newer.adoptSession(\n { configOptions: SessionConfigOptionSchema.array().parse(GROK_CONFIG_OPTIONS) },\n 'new'\n )\n catalog.recordLiveListing(OTHER_CHAT, newer.startListing())\n // The first chat keeps running and reads its options again, as every turn does.\n await host.readOptions(SESSION)\n const answer = await catalog.read({ agent: 'grok', workspacePath: '/elsewhere' })\n expect(firstFrame(answer)).toEqual({ model: 'grok-4.7', effort: 'high' })\n })","source_sha256":"477fd8b412519e48bd57f217e993bb8381d0e737569c520cd774f86d3b344078","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-configured-default.test.ts","line":200,"title":"a chat’s later reads teach nothing: a newer chat’s default stands","body_sha256":"477fd8b412519e48bd57f217e993bb8381d0e737569c520cd774f86d3b344078"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-structured-host-configured-default.test.ts:55:loop","kind":"for-of","path":"src/main/acp/acp-structured-host-configured-default.test.ts","line":55,"end_line":57,"start":2838,"end":2899,"byte_start":2838,"byte_end":2899,"source":"for (const agent of agents.splice(0)) {\n agent.close()\n }","source_sha256":"729e7bbb3472b8924eebd716817e1f3adc0548c9d481ff3aa08b359cf706715d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const agent of agents.splice(0)) ","header_sha256":"7c05a432af5c88a397c694a8a710d9518c0c9719376a63b4887b242209db611f","input_position":{"path":"src/main/acp/acp-structured-host-configured-default.test.ts","line":55,"end_line":55,"start":2858,"end":2874,"byte_start":2858,"byte_end":2874},"binding":"const agent","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"cleanup","decision":"keep","reason":"Close every owned scripted probe peer.","rows":[],"current_matches":[{"path":"src/main/acp/acp-structured-host-configured-default.test.ts","line":55,"body_sha256":"28e709d98636d101cd4157fa8a4a588851f0ef2af98a084159b996be655e73c8"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"parameter_groups":[],"body_support_cleanup_loops":[{"id":"src/main/acp/acp-structured-host-configured-default.test.ts:55:loop","kind":"for-of","path":"src/main/acp/acp-structured-host-configured-default.test.ts","line":55,"end_line":57,"start":2838,"end":2899,"byte_start":2838,"byte_end":2899,"source":"for (const agent of agents.splice(0)) {\n agent.close()\n }","source_sha256":"729e7bbb3472b8924eebd716817e1f3adc0548c9d481ff3aa08b359cf706715d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const agent of agents.splice(0)) ","header_sha256":"7c05a432af5c88a397c694a8a710d9518c0c9719376a63b4887b242209db611f","input_position":{"path":"src/main/acp/acp-structured-host-configured-default.test.ts","line":55,"end_line":55,"start":2858,"end":2874,"byte_start":2858,"byte_end":2874},"binding":"const agent","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"cleanup","decision":"keep","reason":"Close every owned scripted probe peer.","rows":[],"current_matches":[{"path":"src/main/acp/acp-structured-host-configured-default.test.ts","line":55,"body_sha256":"28e709d98636d101cd4157fa8a4a588851f0ef2af98a084159b996be655e73c8"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"implemented_changes":[],"evidence":["src/main/acp/acp-structured-host.test-support.ts","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","src/main/acp/acp-structured-session-adapter.ts"],"evidence_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"evidence_source_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"original_evidence_detail":[{"path":"src/main/acp/acp-structured-host.test-support.ts","sha256":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","lines":234,"read_state":"full_body_read"},{"path":"src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","sha256":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","lines":371,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-session-adapter.ts","sha256":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e","lines":345,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"Grok’s default comes from what a chat with no pick runs names no model before any chat ran, though the listing computed one","status":"passed"},{"full_name":"Grok’s default comes from what a chat with no pick runs names 4.6, the model a chat with no pick ran, never the listing’s 4.7","status":"passed"},{"full_name":"Grok’s default comes from what a chat with no pick runs learns 4.6 from a chat created with its first message and no pick","status":"passed"},{"full_name":"Grok’s default comes from what a chat with no pick runs a chat’s later reads teach nothing: a newer chat’s default stands","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-host-crash.test.ts","sha256":"5ebae1b8063114216a2d689395cce43a69a24b948fad2fa733ce87c805b72452","reviewed_sha256":"5ebae1b8063114216a2d689395cce43a69a24b948fad2fa733ce87c805b72452","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":33,"decision":"keep","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 2. Retained the reviewed behavioral coverage; final bytes match the pinned original.","declarations":2,"original_declarations":2,"final_declarations":2,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"implementation_status":"reviewed-unchanged","cases":[{"line":89,"end_line":100,"title":"ends the turn at the exit itself; the provider-exit batch only reports on it","decision":"keep","reason":"Simulated proven root exit interrupts a real turn/tool and records exactly one real provider-exit lifecycle batch with turn-scoped failure text; recording spies delegate actual journal work.","source_body_sha256":"ab689de406390d0416d516079afc2883852f0c6731c6c26aa6ba8b4e936e125d","path":"src/main/acp/acp-structured-host-crash.test.ts","start":4287,"end":4861,"byte_start":4287,"byte_end":4861,"source":"it('ends the turn at the exit itself; the provider-exit batch only reports on it', async () => {\n const rig = await midReply()\n rig.child.exit()\n const settled = await settledCrash(rig)\n expectOneTurnScopedCutShortRow(settled)\n // The child's own end landed first, interrupted at the exit and never `unverifiable`: the host\n // has no turn or call of it left to revise.\n expect(\n settled.batch.mutations.map((mutation) => mutation.kind === 'item' && mutation.body.kind)\n ).toEqual(['status'])\n await rig.host.close(SESSION, 'user-close')\n })","source_sha256":"ab689de406390d0416d516079afc2883852f0c6731c6c26aa6ba8b4e936e125d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-crash.test.ts","line":89,"title":"ends the turn at the exit itself; the provider-exit batch only reports on it","body_sha256":"ab689de406390d0416d516079afc2883852f0c6731c6c26aa6ba8b4e936e125d"},"proposal_ids":[],"explicit_input_controls":[]},{"line":104,"end_line":134,"title":"is unverifiable only until the exit is proven; the provider-exit batch then revises the turn","decision":"keep","reason":"Protocol pipe close first yields unverifiable turn with no crash status, then separately gated root exit atomically revises durable turn/tool and adds one provider-exit row, without stale-session rewrite.","source_body_sha256":"cfea7da18c26f1600847962b6829b26eeda3c3e9bac70d76575fefa8ca9ffe04","path":"src/main/acp/acp-structured-host-crash.test.ts","start":4943,"end":6275,"byte_start":4943,"byte_end":6275,"source":"it('is unverifiable only until the exit is proven; the provider-exit batch then revises the turn', async () => {\n const rig = await midReply()\n // The child outlives its stream until Orca's close of it is proven.\n let exitNow: () => void = () => undefined\n rig.child.proveClose = () =>\n new Promise((resolve) => {\n exitNow = () => {\n rig.child.exit()\n resolve(true)\n }\n })\n rig.child.agent.close()\n await waitFor(async () =>\n expect((await rig.turns()).map((turn) => turn.state)).toEqual(['unverifiable'])\n )\n expect((await rig.rows()).filter((row) => row.body.kind === 'status')).toEqual([])\n\n exitNow()\n const settled = await settledCrash(rig)\n expectOneTurnScopedCutShortRow(settled)\n // The turn's revision, its call's and the row land together.\n const turnKey = settled.turn!.itemId\n expect(\n settled.batch.mutations.flatMap((mutation) =>\n mutation.kind === 'item' ? [journalLifecycleMutationItemId(mutation)] : []\n )\n ).toEqual(expect.arrayContaining([settled.statuses[0]!.itemId, turnKey]))\n // No later stale-session pass rewrites it: nothing is left for one.\n expect(rig.batches.filter((batch) => batch.settlementId.includes('stale-session'))).toEqual([])\n await rig.host.close(SESSION, 'user-close')\n })","source_sha256":"cfea7da18c26f1600847962b6829b26eeda3c3e9bac70d76575fefa8ca9ffe04","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-crash.test.ts","line":104,"title":"is unverifiable only until the exit is proven; the provider-exit batch then revises the turn","body_sha256":"cfea7da18c26f1600847962b6829b26eeda3c3e9bac70d76575fefa8ca9ffe04"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[],"parameter_groups":[],"body_support_cleanup_loops":[],"implemented_changes":[],"evidence":["src/main/acp/acp-structured-host.test-support.ts","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","src/main/acp/acp-structured-session-adapter.ts"],"evidence_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"evidence_source_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"original_evidence_detail":[{"path":"src/main/acp/acp-structured-host.test-support.ts","sha256":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","lines":234,"read_state":"full_body_read"},{"path":"src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","sha256":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","lines":371,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-session-adapter.ts","sha256":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e","lines":345,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"a Grok crash with its exit seen first ends the turn at the exit itself; the provider-exit batch only reports on it","status":"passed"},{"full_name":"a Grok crash whose pipes close before its exit is seen is unverifiable only until the exit is proven; the provider-exit batch then revises the turn","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-host-lifecycle.test.ts","sha256":"20dcf409351bf4cc508d785df89f0b8760da1483a4c68742ff0ffedf72925c41","reviewed_sha256":"20dcf409351bf4cc508d785df89f0b8760da1483a4c68742ff0ffedf72925c41","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":34,"decision":"keep","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 9. Retained the reviewed behavioral coverage; final bytes match the pinned original.","declarations":9,"original_declarations":9,"final_declarations":9,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"implementation_status":"reviewed-unchanged","cases":[{"line":57,"end_line":83,"title":"loads a chat the journal holds and writes its exchange once","decision":"keep","reason":"Actual host close/reopen loads once and suppresses saved replay/orphan task notices, preserving exact user/assistant rows and turn count.","source_body_sha256":"d8837d8ee71d57aa1edb4442df9167bffc4cfce72ab0636b02cc7e3a97a335bc","path":"src/main/acp/acp-structured-host-lifecycle.test.ts","start":2181,"end":3472,"byte_start":2181,"byte_end":3472,"source":"it('loads a chat the journal holds and writes its exchange once', async () => {\n const count = { loads: 0 }\n let resumed = false\n const { host, fence, messages, exchange, ready } = await openHostRig({\n initialize: RESUMES,\n script: loads('hi', count),\n deps: { resolveLaunch: launch(() => resumed) }\n })\n expect(await host.attach(CALLER, attachParams())).toMatchObject({ ok: true })\n await ready()\n resumed = true\n await exchange('hi', true)\n expect(await messages()).toEqual(['hello', 'hi'])\n const before = (await host.history({ sessionId: SESSION, direction: 'tail' })).page.items\n await host.close(SESSION, 'user-close')\n expect(await host.attach(CALLER, attachParams(fence()))).toMatchObject({ ok: true })\n await ready()\n await host.flushStreamedEvents(SESSION)\n expect(count.loads).toBe(1)\n expect(await messages()).toEqual(['hello', 'hi'])\n const after = (await host.history({ sessionId: SESSION, direction: 'tail' })).page.items\n expect(after.filter((row) => row.itemId.includes('background-task'))).toEqual([])\n expect(after.filter((row) => readAgentJournalTurn(row.body))).toHaveLength(\n before.filter((row) => readAgentJournalTurn(row.body)).length\n )\n await host.close(SESSION, 'user-close')\n })","source_sha256":"d8837d8ee71d57aa1edb4442df9167bffc4cfce72ab0636b02cc7e3a97a335bc","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-lifecycle.test.ts","line":57,"title":"loads a chat the journal holds and writes its exchange once","body_sha256":"d8837d8ee71d57aa1edb4442df9167bffc4cfce72ab0636b02cc7e3a97a335bc"},"proposal_ids":[],"explicit_input_controls":[]},{"line":85,"end_line":119,"title":"shows a reply a crash cut off with the existing notice, never completed from what Grok saved","decision":"keep","reason":"A mid-reply simulated crash followed by a longer saved reply never silently completes the interrupted persisted reply; a public cut-turn/provider-exit notice remains.","source_body_sha256":"5ee3873ec70463f6d403c8896e739f5757929036af8591dce86ad941ebbae8c0","path":"src/main/acp/acp-structured-host-lifecycle.test.ts","start":3476,"end":5077,"byte_start":3476,"byte_end":5077,"source":"it('shows a reply a crash cut off with the existing notice, never completed from what Grok saved', async () => {\n let resumed = false\n const { rig, host, fence, messages, exchange, ready } = await openHostRig({\n initialize: RESUMES,\n script: loads('complete saved reply', { loads: 0 }),\n deps: { resolveLaunch: launch(() => resumed) }\n })\n expect(await host.attach(CALLER, attachParams())).toMatchObject({ ok: true })\n await ready()\n resumed = true\n await exchange('complete', false)\n // Grok dies mid-reply; the host ends its record, which moves the chat's fence.\n const cutAt = fence()\n rig.child().exit()\n await waitFor(() => expect(fence()).toBeGreaterThan(cutAt))\n expect(await host.attach(CALLER, attachParams(fence()))).toMatchObject({ ok: true })\n await ready()\n await host.flushStreamedEvents(SESSION)\n expect(await messages()).toEqual(['hello', 'complete'])\n const rows = (await host.history({ sessionId: SESSION, direction: 'tail' })).page.items\n expect(rows.flatMap((row) => readAgentJournalTurn(row.body)?.state ?? [])).not.toContain(\n 'completed'\n )\n // The transcript explains the cut the way a Claude or Codex chat's does.\n const transcript = withNativeChatCutTurnNotices(rows, { agentName: 'Grok' })\n expect(\n transcript.some(\n (row) =>\n row.body.kind === 'status' &&\n (row.itemId.includes('cut-turn-notice') ||\n readAgentSessionFailureFact(row.body.failure)?.kind === 'providerExited')\n )\n ).toBe(true)\n await host.close(SESSION, 'user-close')\n })","source_sha256":"5ee3873ec70463f6d403c8896e739f5757929036af8591dce86ad941ebbae8c0","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-lifecycle.test.ts","line":85,"title":"shows a reply a crash cut off with the existing notice, never completed from what Grok saved","body_sha256":"5ee3873ec70463f6d403c8896e739f5757929036af8591dce86ad941ebbae8c0"},"proposal_ids":[],"explicit_input_controls":[]},{"line":123,"end_line":172,"title":"rejects a send meanwhile as never sent, and a later Stop does not turn the crash into one","decision":"keep","reason":"Contact loss with root exit unproven rejects a subsequent send as never sent; a later Stop cannot relabel the original crash or replace its one provider-exit notice.","source_body_sha256":"1c8dcc106d519fea969fc2302d6021f08d2f4a187215f7fab2b5898b840debaa","path":"src/main/acp/acp-structured-host-lifecycle.test.ts","start":5146,"end":6883,"byte_start":5146,"byte_end":6883,"source":"it('rejects a send meanwhile as never sent, and a later Stop does not turn the crash into one', async () => {\n const { rig, host, rows } = await openAttachedHostRig()\n const child = rig.child()\n await send(host, 'hello')\n const prompt = await rig.frame('session/prompt')\n child.agent.notify('session/update', replyChunk(promptIdOf(prompt), 'partial'))\n await rig.settle()\n let proves = false\n child.proveClose = async () => {\n if (proves) {\n child.exit()\n }\n return proves\n }\n child.stderr = 'panic: out of memory'\n // Both pipes close as the process dies, before its exit is seen.\n child.agent.close()\n await rig.settle()\n const next = await send(host, 'next')\n await waitFor(async () =>\n expect(\n (await host.journalSnapshot(SESSION)).submissions.find(\n (entry) => entry.clientMessageId === next\n )\n ).toMatchObject({\n dispatchState: 'rejected',\n reason: 'Grok stopped before this message was sent.'\n })\n )\n await stop(host)\n proves = true\n child.exit()\n await rig.settle()\n await host.flushStreamedEvents(SESSION)\n const transcript = withNativeChatCutTurnNotices(await rows(), { agentName: 'Grok' })\n // The crash's own notice, as for any crash; not a Stop's.\n expect(\n transcript.flatMap((row) =>\n row.body.kind === 'status'\n ? [{ text: row.body.text, failure: readAgentSessionFailureFact(row.body.failure)?.kind }]\n : []\n )\n ).toEqual([\n {\n text: 'Grok stopped while this response was in progress. You can continue in this conversation.',\n failure: 'providerExited'\n }\n ])\n await host.close(SESSION, 'user-close')\n })","source_sha256":"1c8dcc106d519fea969fc2302d6021f08d2f4a187215f7fab2b5898b840debaa","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-lifecycle.test.ts","line":123,"title":"rejects a send meanwhile as never sent, and a later Stop does not turn the crash into one","body_sha256":"1c8dcc106d519fea969fc2302d6021f08d2f4a187215f7fab2b5898b840debaa"},"proposal_ids":[],"explicit_input_controls":[]},{"line":176,"end_line":200,"title":"retains a published startup child whose close is unproven and retries before another spawn","decision":"keep","reason":"Unproven startup close refuses eviction and prevents another spawn; after actual simulated proof is supplied, close succeeds and a fresh send can launch another child.","source_body_sha256":"5f4eb33ad1567a53fe0f6d903734aa74e4af418ceb17c8deb2a355947d0b4d28","path":"src/main/acp/acp-structured-host-lifecycle.test.ts","start":6958,"end":8006,"byte_start":6958,"byte_end":8006,"source":"it('retains a published startup child whose close is unproven and retries before another spawn', async () => {\n const { rig, host } = await openHostRig({ script: (agent) => agent.on('initialize', () => {}) })\n expect(await host.attach(CALLER, attachParams())).toMatchObject({ ok: true })\n await rig.frame('initialize')\n const child = rig.child()\n child.proveClose = vi.fn(async () => false)\n try {\n await expect(host.close(SESSION, 'user-close')).rejects.toThrow('eviction failed')\n expect(child.exited).toBe(false)\n expect(rig.spawned.filter((step) => step === 'spawn')).toHaveLength(1)\n } finally {\n child.proveClose = vi.fn(async () => {\n child.exit()\n return true\n })\n await host.close(SESSION, 'user-close')\n }\n expect(child.exited).toBe(true)\n await host.send(CALLER, {\n envelope: envelope('agentSession.send', { body: hello }),\n body: hello\n })\n await waitFor(() => expect(rig.child()).not.toBe(child))\n await host.close(SESSION, 'user-close')\n })","source_sha256":"5f4eb33ad1567a53fe0f6d903734aa74e4af418ceb17c8deb2a355947d0b4d28","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-lifecycle.test.ts","line":176,"title":"retains a published startup child whose close is unproven and retries before another spawn","body_sha256":"5f4eb33ad1567a53fe0f6d903734aa74e4af418ceb17c8deb2a355947d0b4d28"},"proposal_ids":[],"explicit_input_controls":[]},{"line":202,"end_line":214,"title":"lets a Stop reach a child Grok never finished initializing","decision":"keep","reason":"Host Stop reaches an initialize request that never answers without an unrelated close, then proves that startup child exited.","source_body_sha256":"c4ca5b82adf58c36988785659679e41cd7cb2a9a71a70e95e46afb22d84c2bc4","path":"src/main/acp/acp-structured-host-lifecycle.test.ts","start":8010,"end":8657,"byte_start":8010,"byte_end":8657,"source":"it('lets a Stop reach a child Grok never finished initializing', async () => {\n const { rig, host } = await openHostRig({\n script: (agent) => agent.on('initialize', () => {})\n })\n const attaching = host.attach(CALLER, attachParams())\n await rig.frame('initialize')\n const stopping = host.cancel(CALLER, { envelope: envelope('agentSession.cancel', {}) })\n // With no close behind it.\n await waitFor(() => expect(rig.child().exited).toBe(true))\n expect((await attaching).ok).toBe(true)\n expect(await stopping).toMatchObject({ ok: true })\n expect(rig.spawned.filter((step) => step === 'spawn')).toHaveLength(1)\n })","source_sha256":"c4ca5b82adf58c36988785659679e41cd7cb2a9a71a70e95e46afb22d84c2bc4","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-lifecycle.test.ts","line":202,"title":"lets a Stop reach a child Grok never finished initializing","body_sha256":"c4ca5b82adf58c36988785659679e41cd7cb2a9a71a70e95e46afb22d84c2bc4"},"proposal_ids":[],"explicit_input_controls":[]},{"line":216,"end_line":248,"title":"cancels a queued send whose start a Stop ended, with no start failure in the chat","decision":"keep","reason":"A send queued behind a reopened hung initialization is rejected cancelled by Stop, with no misleading startup-failure status row.","source_body_sha256":"023188e78a51c58336bbe9af5c8e8cd19bba379faf102eca10473509ce7cb858","path":"src/main/acp/acp-structured-host-lifecycle.test.ts","start":8661,"end":10084,"byte_start":8661,"byte_end":10084,"source":"it('cancels a queued send whose start a Stop ended, with no start failure in the chat', async () => {\n let spawns = 0\n const { rig, host } = await openHostRig({\n script: (agent) => {\n spawns += 1\n if (spawns > 1) {\n agent.on('initialize', () => {})\n }\n }\n })\n expect(await host.attach(CALLER, attachParams())).toMatchObject({ ok: true })\n // The chat closes; the next send has to start Grok again, and that start never answers.\n await host.close(SESSION, 'user-close')\n await host.send(CALLER, {\n envelope: envelope('agentSession.send', { body: hello }),\n body: hello\n })\n await waitFor(() => expect(spawns).toBe(2))\n await rig.frame('initialize')\n const restarted = rig.child()\n expect(\n await host.cancel(CALLER, { envelope: envelope('agentSession.cancel', {}) })\n ).toMatchObject({ ok: true, value: { cancelled: true } })\n expect(restarted.exited).toBe(true)\n await host.flushStreamedEvents(SESSION)\n const journal = host.collaboratorsForTests().sessions.get(SESSION)!.journal\n expect(journal.submissions()).toMatchObject([\n { dispatchState: 'rejected', rejection: { kind: 'cancelled' } }\n ])\n const rows = (await host.history({ sessionId: SESSION, direction: 'tail' })).page.items\n expect(rows.filter((row) => row.body.kind === 'status')).toEqual([])\n await host.close(SESSION, 'user-close')\n })","source_sha256":"023188e78a51c58336bbe9af5c8e8cd19bba379faf102eca10473509ce7cb858","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-lifecycle.test.ts","line":216,"title":"cancels a queued send whose start a Stop ended, with no start failure in the chat","body_sha256":"023188e78a51c58336bbe9af5c8e8cd19bba379faf102eca10473509ce7cb858"},"proposal_ids":[],"explicit_input_controls":[]},{"line":250,"end_line":266,"title":"leaves a starting child alone when Stop names an earlier turn","decision":"keep","reason":"Stop naming an earlier turn cannot close the currently starting child; owned close later finishes startup cleanup.","source_body_sha256":"2a2a32d21fcb9a4dc727c5724a6bbf1b3fe4e9b7f67e04123845cb268dabbfe2","path":"src/main/acp/acp-structured-host-lifecycle.test.ts","start":10088,"end":10802,"byte_start":10088,"byte_end":10802,"source":"it('leaves a starting child alone when Stop names an earlier turn', async () => {\n const { rig, host } = await openHostRig({\n script: (agent) => agent.on('initialize', () => {})\n })\n const attaching = host.attach(CALLER, attachParams())\n await rig.frame('initialize')\n const stopping = host.cancel(CALLER, {\n envelope: envelope('agentSession.cancel', { turnId: 'turn-of-an-old-child' }),\n turnId: 'turn-of-an-old-child'\n })\n expect(await stopping).toMatchObject({ ok: true, value: { cancelled: false } })\n await rig.settle()\n expect(rig.child().closes).toBe(0)\n expect(rig.child().exited).toBe(false)\n await host.close(SESSION, 'user-close')\n await attaching\n })","source_sha256":"2a2a32d21fcb9a4dc727c5724a6bbf1b3fe4e9b7f67e04123845cb268dabbfe2","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-lifecycle.test.ts","line":250,"title":"leaves a starting child alone when Stop names an earlier turn","body_sha256":"2a2a32d21fcb9a4dc727c5724a6bbf1b3fe4e9b7f67e04123845cb268dabbfe2"},"proposal_ids":[],"explicit_input_controls":[]},{"line":268,"end_line":290,"title":"never spawns a child for a start closed while its launch was still resolving","decision":"keep","reason":"Close while launch resolution is explicitly gated aborts before spawning and maps to pre-spawn failure.","source_body_sha256":"6f9868717c3323609cab350127f1695411043f64321625dab4cc1a0bd2dd9a38","path":"src/main/acp/acp-structured-host-lifecycle.test.ts","start":10806,"end":11712,"byte_start":10806,"byte_end":11712,"source":"it('never spawns a child for a start closed while its launch was still resolving', async () => {\n let releaseLaunch: () => void = () => {}\n const resolving = { started: false }\n const { rig, host } = await openHostRig({\n deps: {\n resolveLaunch: async () => {\n resolving.started = true\n await new Promise((resolve) => {\n releaseLaunch = resolve\n })\n return launch(() => false)()\n }\n }\n })\n const attaching = host.attach(CALLER, attachParams()).catch((error: unknown) => error)\n await waitFor(() => expect(resolving.started).toBe(true))\n const closing = host.close(SESSION, 'user-close')\n releaseLaunch()\n expect(await attaching).toMatchObject({ name: 'AgentSessionPreSpawnError' })\n await closing\n expect(rig.spawned).toEqual([])\n expect(await rig.adapter.closeSession(SESSION)).toBe(true)\n })","source_sha256":"6f9868717c3323609cab350127f1695411043f64321625dab4cc1a0bd2dd9a38","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-lifecycle.test.ts","line":268,"title":"never spawns a child for a start closed while its launch was still resolving","body_sha256":"6f9868717c3323609cab350127f1695411043f64321625dab4cc1a0bd2dd9a38"},"proposal_ids":[],"explicit_input_controls":[]},{"line":294,"end_line":313,"title":"is Working while Grok holds it, and stops once Grok lets it go","decision":"keep","reason":"A delegated acceptance write failure leaves the real durable submission pending while work status tracks actual provider progress and stops when the turn reply settles.","source_body_sha256":"40eefca1be406c68e7071a84770c94ee7fff65012f19e599e08690b9be851412","path":"src/main/acp/acp-structured-host-lifecycle.test.ts","start":11789,"end":12888,"byte_start":11789,"byte_end":12888,"source":"it('is Working while Grok holds it, and stops once Grok lets it go', async () => {\n const { rig, host } = await openAttachedHostRig()\n const journal = host.collaboratorsForTests().sessions.get(SESSION)!.journal\n vi.spyOn(journal, 'acceptLate').mockRejectedValue(new Error('disk full'))\n const sent = await send(host, 'hello')\n const prompt = await rig.frame('session/prompt')\n // Grok names the prompt only with its first frame: until then it holds the send.\n await waitFor(() => expect(host.currentWork(SESSION)?.working()).toBe(true))\n\n rig.child().agent.notify('session/update', replyChunk(promptIdOf(prompt), 'hi'))\n rig.child().agent.reply(prompt, { stopReason: 'end_turn' })\n await rig.settle()\n\n await waitFor(() => expect(host.currentWork(SESSION)?.working()).toBe(false))\n // The acceptance never landed: the row is still the handover's alone.\n expect(\n (await host.journalSnapshot(SESSION)).submissions.find((row) => row.clientMessageId === sent)\n ).toMatchObject({ dispatchState: 'pending' })\n await host.close(SESSION, 'user-close')\n })","source_sha256":"40eefca1be406c68e7071a84770c94ee7fff65012f19e599e08690b9be851412","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-lifecycle.test.ts","line":294,"title":"is Working while Grok holds it, and stops once Grok lets it go","body_sha256":"40eefca1be406c68e7071a84770c94ee7fff65012f19e599e08690b9be851412"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[],"parameter_groups":[],"body_support_cleanup_loops":[],"implemented_changes":[],"evidence":["src/main/acp/acp-structured-host.test-support.ts","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","src/main/acp/acp-structured-session-adapter.ts"],"evidence_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"evidence_source_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"original_evidence_detail":[{"path":"src/main/acp/acp-structured-host.test-support.ts","sha256":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","lines":234,"read_state":"full_body_read"},{"path":"src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","sha256":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","lines":371,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-session-adapter.ts","sha256":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e","lines":345,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"reopening a Grok chat through the host loads a chat the journal holds and writes its exchange once","status":"passed"},{"full_name":"reopening a Grok chat through the host shows a reply a crash cut off with the existing notice, never completed from what Grok saved","status":"passed"},{"full_name":"a Grok crash whose exit is not proven yet rejects a send meanwhile as never sent, and a later Stop does not turn the crash into one","status":"passed"},{"full_name":"closing or stopping a Grok chat while it starts retains a published startup child whose close is unproven and retries before another spawn","status":"passed"},{"full_name":"closing or stopping a Grok chat while it starts lets a Stop reach a child Grok never finished initializing","status":"passed"},{"full_name":"closing or stopping a Grok chat while it starts cancels a queued send whose start a Stop ended, with no start failure in the chat","status":"passed"},{"full_name":"closing or stopping a Grok chat while it starts leaves a starting child alone when Stop names an earlier turn","status":"passed"},{"full_name":"closing or stopping a Grok chat while it starts never spawns a child for a start closed while its launch was still resolving","status":"passed"},{"full_name":"a Grok send whose acceptance could not be written is Working while Grok holds it, and stops once Grok lets it go","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-host-live-listing.test.ts","sha256":"83624f70b3482968e22d36f3d402497fcfd86f800ba7200f14f7e013bb95f81e","reviewed_sha256":"99fb4d3a89416d99f68a55fe9e56c02684fdbd213a67e7425a9b9f2a3522fc4b","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":35,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: fix 2. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":2,"original_declarations":2,"final_declarations":2,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":15,"end_line":38,"title":"is saved through the host catalog when the chat reads its options","decision":"fix","reason":"Fix: real host currently forwards supplied menu to a mocked callback only. Use real catalog service/store, an initial failed session-free listing, and a later distinctly changed live menu. Prove the session-less saved catalog acquires that menu only after host.readOptions; preserve the configured default learned from start rather than teaching a later session pick.","source_body_sha256":"4aaceb1aee176db3c086fa98cbb73d50dc3282b1ad35935237735388fad0f2b0","proposed_changes":[{"line":15,"action":"fix","proposal":"Replace mock-only first case with real createAgentModelCatalogService and AgentModelCatalogStore, reusing the configured-default fixture wiring (record lookup assigned before attach; same pinned GROK_HOME and native workspace). Drive an actual failed catalog.read({agent: grok, waitForListing: true}) through an injected failing external probe; observe unknown. Attach the host, read the saved start menu, then send a valid config_option_update with a distinct added model row and changed current pick through rig.child().agent. After rig.settle, assert savedOnly session-less catalog still has the old menu. Call host.readOptions(SESSION), then catalog.read({agent: grok, savedOnly: true}); assert the exact new row/menu and retained start configured default. This proves next-chat catalog warmth and separates read-time persistence from start persistence. Use savedOnly for all post-change catalog observations so probing cannot supply the new data. Keep the second injected bookkeeping-failure case. No disk-restart claim: this uses the real in-memory catalog store, as the next chat in this host does."}],"path":"src/main/acp/acp-structured-host-live-listing.test.ts","start":772,"end":1957,"byte_start":772,"byte_end":1957,"source":"it('is saved through the host catalog when the chat reads its options', async () => {\n const modelCatalog: AgentModelCatalogService = {\n peek: () => null,\n read: vi.fn(async () => ({ origin: 'unknown' as const })),\n retainedLiveModelIds: vi.fn(async () => []),\n recordLiveListing: vi.fn(),\n prewarm: vi.fn(async () => {}),\n stop: vi.fn(),\n providerStarted: vi.fn()\n }\n const { host } = await openAttachedHostRig({}, undefined, modelCatalog)\n\n // Its start was saved once as the chat attached; this read is saved too.\n expect(modelCatalog.recordLiveListing).toHaveBeenCalledTimes(1)\n await host.readOptions(SESSION)\n\n expect(modelCatalog.recordLiveListing).toHaveBeenCalledTimes(2)\n const [sessionId, listing] = vi.mocked(modelCatalog.recordLiveListing).mock.calls[1]!\n expect(sessionId).toBe(SESSION)\n expect(listing.models.map((model) => model.id)).toEqual(['grok-4.7', 'grok-4.6'])\n // The session's picks are no one's default, and only its start says what its config resolved.\n expect(listing.models.every((model) => !model.isDefault)).toBe(true)\n expect(listing).not.toHaveProperty('configuredDefault')\n })","source_sha256":"4aaceb1aee176db3c086fa98cbb73d50dc3282b1ad35935237735388fad0f2b0","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-host-live-listing.test.ts","line":24,"title":"saves a changed live menu for the next chat when options are read, despite a failed probe","body_sha256":"3427247afb5a67871431de0b1b5be5665e665af785b163dccc60509397c9439d"},"proposal_ids":["acp-main-0001-034"],"explicit_input_controls":[]},{"line":40,"end_line":66,"title":"starts the chat even when saving its start listing throws","decision":"fix","reason":"A real injected catalog bookkeeping throw cannot fail a proven adapter start; later options read succeeds and concrete live model/effort stay usable. This error-boundary use of a throwing fake is substantive.","source_body_sha256":"e64ba76803999b141ef1f8960b5a41c1ad9d249b292452c0e999372d11a78b4c","proposed_changes":[{"line":55,"action":"fix-assertion","proposal":"Assert a concrete ownerProcess value/shape or both defined and non-null; optional chaining plus not.toBeNull permits undefined."}],"path":"src/main/acp/acp-structured-host-live-listing.test.ts","start":1961,"end":3257,"byte_start":1961,"byte_end":3257,"source":"it('starts the chat even when saving its start listing throws', async () => {\n const modelCatalog: AgentModelCatalogService = {\n peek: () => null,\n read: vi.fn(async () => ({ origin: 'unknown' as const })),\n retainedLiveModelIds: vi.fn(async () => []),\n recordLiveListing: vi.fn().mockImplementationOnce(() => {\n throw new Error('catalog unavailable')\n }),\n prewarm: vi.fn(async () => {}),\n stop: vi.fn(),\n providerStarted: vi.fn()\n }\n // The rig waits for the child to turn ready: bookkeeping never fails a proven start.\n const { host, rig, store, fence } = await openAttachedHostRig({}, undefined, modelCatalog)\n expect(modelCatalog.recordLiveListing).toHaveBeenCalledTimes(1)\n expect(store.getRecord(SESSION)?.lease.ownerProcess).not.toBeNull()\n // The rest of the start still lands, and live options remain readable.\n await expect(host.readOptions(SESSION)).resolves.toMatchObject({ current: expect.any(Object) })\n expect(modelCatalog.recordLiveListing).toHaveBeenCalledTimes(2)\n expect(\n (await rig.adapter.readOptions({ sessionId: SESSION, fence: fence() })).current\n ).toMatchObject({\n model: 'grok-4.7',\n effort: 'high'\n })\n expect(store.getRecord(SESSION)?.options).toBeUndefined()\n })","source_sha256":"e64ba76803999b141ef1f8960b5a41c1ad9d249b292452c0e999372d11a78b4c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-host-live-listing.test.ts","line":88,"title":"starts the chat even when saving its start listing throws","body_sha256":"ccd73ea861e7282637e6433a6658e5c919325a4c9cc7a5c177da9e02c5b08c37"},"proposal_ids":["acp-main-0001-035"],"explicit_input_controls":[]}],"explicit_input_controls":[],"parameter_groups":[],"body_support_cleanup_loops":[],"implemented_changes":[{"proposal_id":"acp-main-0001-034","summary":"Actual catalog/store first records failed external probe and startup menu; later changed live menu reaches session-less saved read only after host.readOptions; startup default remains.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"executed_see_scope_limits","mutation_evidence":["catalog-read-save"]},{"proposal_id":"acp-main-0001-035","summary":"Owner process must be an actual object even when catalog bookkeeping throws.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/acp-structured-host.test-support.ts","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","src/main/acp/acp-structured-session-adapter.ts"],"evidence_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"evidence_source_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"original_evidence_detail":[{"path":"src/main/acp/acp-structured-host.test-support.ts","sha256":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","lines":234,"read_state":"full_body_read"},{"path":"src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","sha256":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","lines":371,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-session-adapter.ts","sha256":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e","lines":345,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"a live Grok listing saves a changed live menu for the next chat when options are read, despite a failed probe","status":"passed"},{"full_name":"a live Grok listing starts the chat even when saving its start listing throws","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-host-option-hang.test.ts","sha256":"fd01fb7d23e1c210fe820a7757dbc0412d590b652a84d05ec148a11fa88beb48","reviewed_sha256":"202d1d64b81fda30ae9d8b3f002cc3b6d36621ec0cf7e5eca47e2a6931e4589d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":36,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 3, fix 1. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":4,"original_declarations":4,"final_declarations":4,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":45,"end_line":73,"title":"does not hold Stop, writes one request note, and ignores a late setter reply","decision":"keep","reason":"Held actual option setter cannot block refused/accepted Stop, only one stop note is written, the queued send is rejected, and a late setter reply never dispatches a prompt; replace wall-clock races with controlled completion evidence.","source_body_sha256":"402d2f55109fd2d4c970a9ce239b4e4b95eab9576562d935b87bfc41b2780a6f","path":"src/main/acp/acp-structured-host-option-hang.test.ts","start":1936,"end":3590,"byte_start":1936,"byte_end":3590,"source":"it('does not hold Stop, writes one request note, and ignores a late setter reply', async () => {\n const { rig, host, rows } = await openAttachedHostRig({\n script: (agent) => agent.on('session/set_config_option', () => {})\n })\n expect(await pick(host, 'grok-4.6')).toMatchObject({ ok: true })\n await send(host, 'hello')\n await waitFor(() => expect(framesOf(rig.child(), 'session/set_config_option')).toHaveLength(1))\n const invalid = host.cancel(CALLER, {\n envelope: envelope('agentSession.cancel', {}, { payloadFingerprint: 'invalid' })\n })\n // The write runs outside the session's serialize, so even a refused Stop is answered at once.\n expect(await within(invalid, 100)).toMatchObject({ settled: 'resolved' })\n const request = { envelope: envelope('agentSession.cancel', {}) }\n expect(await within(host.cancel(CALLER, request), 2_000)).toMatchObject({ settled: 'resolved' })\n expect(await invalid).toMatchObject({ ok: false })\n expect(await host.cancel(CALLER, request)).toMatchObject({ ok: true })\n expect(\n host.collaboratorsForTests().sessions.get(SESSION)?.journal.submissions()[0]?.dispatchState\n ).toBe('rejected')\n expect(\n (await rows()).filter(\n (row) => row.body.kind === 'status' && row.body.text === STOP_NOTE_CANCELLATION_REQUESTED\n )\n ).toHaveLength(1)\n const [frame] = framesOf(rig.child(), 'session/set_config_option')\n rig.child().agent.reply(frame!, { configOptions: GROK_CONFIG_OPTIONS })\n expect(framesOf(rig.child(), 'session/prompt')).toEqual([])\n expect(await within(host.close(SESSION, 'user-close'), 2_000)).not.toBe('pending')\n })","source_sha256":"402d2f55109fd2d4c970a9ce239b4e4b95eab9576562d935b87bfc41b2780a6f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-host-option-hang.test.ts","line":27,"title":"does not hold Stop, writes one request note, and ignores a late setter reply","body_sha256":"8dd7fce3f7e7ab62483413166b7be26f9347adc4fcc72757583f9cb2e66fa7e2"},"proposal_ids":[],"explicit_input_controls":[]},{"line":75,"end_line":88,"title":"does not hold a Close behind its write","decision":"keep","reason":"Close bypasses a held setter and a late reply cannot trigger prompt delivery; preserve independent Close path.","source_body_sha256":"4a2ab4494410d7c1d8829784da9939202c79c745c00d9ca383ae8dea5896116c","path":"src/main/acp/acp-structured-host-option-hang.test.ts","start":3594,"end":4317,"byte_start":3594,"byte_end":4317,"source":"it('does not hold a Close behind its write', async () => {\n const { rig, host } = await openAttachedHostRig({\n script: (agent) => agent.on('session/set_config_option', () => {})\n })\n expect(await pick(host, 'grok-4.6')).toMatchObject({ ok: true })\n await send(host, 'hello')\n await waitFor(() => expect(framesOf(rig.child(), 'session/set_config_option')).toHaveLength(1))\n expect(await within(host.close(SESSION, 'user-close'), 2_000)).toMatchObject({\n settled: 'resolved'\n })\n const [frame] = framesOf(rig.child(), 'session/set_config_option')\n rig.child().agent.reply(frame!, { configOptions: GROK_CONFIG_OPTIONS })\n expect(framesOf(rig.child(), 'session/prompt')).toEqual([])\n })","source_sha256":"4a2ab4494410d7c1d8829784da9939202c79c745c00d9ca383ae8dea5896116c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-host-option-hang.test.ts","line":57,"title":"does not hold a Close behind its write","body_sha256":"24d7bc75f59d787e3488ecb9b899e3dd7f0e2c89743043ae6b2c5553f87ad509"},"proposal_ids":[],"explicit_input_controls":[]},{"line":90,"end_line":136,"title":"re-establishes opening A after uncertain B without adopting B’s late reply","decision":"fix","reason":"After bounded uncertainB write, an explicitA restore actually sends fresh setter operations; lateB cannot change actual adapter options or overwrite saved host pickB. Control the100ms timeout and require readOptions to resolve rather than merely not time out.","source_body_sha256":"1bb4f80ecb132ae5373eaa845a1676d181517298db07d738665757b11a860f6a","proposed_changes":[{"line":107,"action":"fix-assertion","proposal":"Require the follow-up host.readOptions result to resolve successfully. not.toBe(pending) currently accepts an unexpected rejection."}],"path":"src/main/acp/acp-structured-host-option-hang.test.ts","start":4321,"end":6652,"byte_start":4321,"byte_end":6654,"source":"it('re-establishes opening A after uncertain B without adopting B’s late reply', async () => {\n const { rig, host, store, fence } = await openAttachedHostRig({\n optionWriteTimeoutMs: 100,\n script: (agent) => agent.on('session/set_config_option', () => {})\n })\n expect(await pick(host, 'grok-4.6')).toMatchObject({ ok: true })\n const savedModel = store.getRecord(SESSION)?.options?.model\n expect(savedModel).toBe('grok-4.6')\n await send(host, 'hello')\n await waitFor(() => expect(framesOf(rig.child(), 'session/set_config_option')).toHaveLength(1))\n await waitFor(() =>\n expect(\n host.collaboratorsForTests().sessions.get(SESSION)?.journal.submissions()[0]?.dispatchState\n ).toBe('rejected')\n )\n expect(framesOf(rig.child(), 'session/prompt')).toEqual([])\n // The chat's queue moved on: a later operation runs.\n expect(await within(host.readOptions(SESSION), 1_000)).not.toBe('pending')\n const restore = rig.adapter.dispatch({\n sessionId: SESSION,\n fence: fence(),\n clientMessageId: 'restore-A',\n executionOptions: { model: 'grok-4.7' },\n body: { kind: 'message', role: 'user', blocks: [{ type: 'text', text: 'A again' }] }\n })\n await waitFor(() => expect(framesOf(rig.child(), 'session/set_config_option')).toHaveLength(2))\n const [old, current] = framesOf(rig.child(), 'session/set_config_option')\n rig.child().agent.reply(current!, { configOptions: GROK_CONFIG_OPTIONS })\n await waitFor(() => expect(framesOf(rig.child(), 'session/set_config_option')).toHaveLength(3))\n rig.child().agent.reply(framesOf(rig.child(), 'session/set_config_option')[2]!, {\n configOptions: GROK_CONFIG_OPTIONS\n })\n await restore\n expect(framesOf(rig.child(), 'session/prompt')).toHaveLength(1)\n rig.child().agent.reply(old!, {\n configOptions: GROK_CONFIG_OPTIONS.map((option) =>\n option.id === 'model' ? { ...option, currentValue: 'grok-4.6' } : option\n )\n })\n await rig.settle()\n expect(\n (await rig.adapter.readOptions({ sessionId: SESSION, fence: fence() })).current.model\n ).toBe('grok-4.7')\n expect((await host.readOptions(SESSION)).current.model).toBe(savedModel)\n expect(store.getRecord(SESSION)?.options?.model).toBe(savedModel)\n await host.close(SESSION, 'user-close')\n })","source_sha256":"1bb4f80ecb132ae5373eaa845a1676d181517298db07d738665757b11a860f6a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-host-option-hang.test.ts","line":70,"title":"re-establishes opening A after uncertain B without adopting B’s late reply","body_sha256":"f6c7d94e7ea29a605202e5e3066aa1a3953fc36b1584ef8e0ee235d8b8964b6c"},"proposal_ids":["acp-main-0001-037"],"explicit_input_controls":[]},{"line":140,"end_line":156,"title":"never contacts Grok or holds %s behind a setter","decision":"keep","reason":"Both Stop/Close after saving a model pick run without contacting the provider setter, while the real record retains the picked model.","source_body_sha256":"9218f03678ecf38a669e0120319faf8553cdfc0ecf7327dd017eb1e094ba4c7c","parameter_groups":[{"path":"src/main/acp/acp-structured-host-option-hang.test.ts","line":140,"source":"['Stop', 'Close'] as const","decision":"keep","reason":"","rows":[{"input":"Stop","decision":"keep","reason":"Saved model intent must not contact setter or block Stop."},{"input":"Close","decision":"keep","reason":"Saved model intent must not contact setter or block Close."}],"row_count":2}],"path":"src/main/acp/acp-structured-host-option-hang.test.ts","start":6697,"end":7471,"byte_start":6699,"byte_end":7473,"source":"it.each(['Stop', 'Close'] as const)(\n 'never contacts Grok or holds %s behind a setter',\n async (ending) => {\n const { rig, host, store } = await openAttachedHostRig({\n script: (agent) => agent.on('session/set_config_option', () => {})\n })\n expect(await within(pick(host, 'grok-4.6'), 1_000)).toMatchObject({\n settled: 'resolved',\n value: { ok: true }\n })\n expect(store.getRecord(SESSION)?.options?.model).toBe('grok-4.6')\n expect(framesOf(rig.child(), 'session/set_config_option')).toEqual([])\n const ended = ending === 'Stop' ? stop(host) : host.close(SESSION, 'user-close')\n expect(await within(ended, 2_000)).toMatchObject({ settled: 'resolved' })\n await host.close(SESSION, 'user-close')\n }\n )","source_sha256":"9218f03678ecf38a669e0120319faf8553cdfc0ecf7327dd017eb1e094ba4c7c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-host-option-hang.test.ts","line":125,"title":"never contacts Grok or holds %s behind a setter","body_sha256":"77ac0cf7c21c385d00047fead9e70d4f0cac15f348fa8ed60bfaf60cf864650f"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-host-option-hang.test.ts:140:parameter-table"]}],"explicit_input_controls":[{"id":"src/main/acp/acp-structured-host-option-hang.test.ts:140:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-host-option-hang.test.ts","line":140,"end_line":156,"start":6697,"end":7471,"byte_start":6699,"byte_end":7473,"source":"['Stop', 'Close'] as const","source_sha256":"fd96ce1125bc21b6096e970c5abcda1c3200cf688b20725d8368bbdb5f79662d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-host-option-hang.test.ts","line":140,"end_line":140,"start":6705,"end":6731,"byte_start":6707,"byte_end":6733},"binding":"it.each","resolution":[],"enclosing_case":{"line":140,"title":"never contacts Grok or holds %s behind a setter"},"affected_case_lines":[140],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-host-option-hang.test.ts","line":140,"end_line":140,"start":6706,"end":6712,"source":"'Stop'","value":{"kind":"string","value":"Stop"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"0458617519e35a9ff54e587a75113f6aa0c0405424e355747689406e1b0630fb","byte_start":6708,"byte_end":6714,"input_label":"Stop","decision":"keep","reason":"Saved model intent must not contact setter or block Stop."},{"index":2,"path":"src/main/acp/acp-structured-host-option-hang.test.ts","line":140,"end_line":140,"start":6714,"end":6721,"source":"'Close'","value":{"kind":"string","value":"Close"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"67bcf7a7d882158cf1472c6f0b6d9755bc074d1dbc17db5adf930d6e92a35368","byte_start":6716,"byte_end":6723,"input_label":"Close","decision":"keep","reason":"Saved model intent must not contact setter or block Close."}],"original_row_count":2}],"parameter_groups":[{"id":"src/main/acp/acp-structured-host-option-hang.test.ts:140:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-host-option-hang.test.ts","line":140,"end_line":156,"start":6697,"end":7471,"byte_start":6699,"byte_end":7473,"source":"['Stop', 'Close'] as const","source_sha256":"fd96ce1125bc21b6096e970c5abcda1c3200cf688b20725d8368bbdb5f79662d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-host-option-hang.test.ts","line":140,"end_line":140,"start":6705,"end":6731,"byte_start":6707,"byte_end":6733},"binding":"it.each","resolution":[],"enclosing_case":{"line":140,"title":"never contacts Grok or holds %s behind a setter"},"affected_case_lines":[140],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-host-option-hang.test.ts","line":140,"end_line":140,"start":6706,"end":6712,"source":"'Stop'","value":{"kind":"string","value":"Stop"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"0458617519e35a9ff54e587a75113f6aa0c0405424e355747689406e1b0630fb","byte_start":6708,"byte_end":6714,"input_label":"Stop","decision":"keep","reason":"Saved model intent must not contact setter or block Stop."},{"index":2,"path":"src/main/acp/acp-structured-host-option-hang.test.ts","line":140,"end_line":140,"start":6714,"end":6721,"source":"'Close'","value":{"kind":"string","value":"Close"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"67bcf7a7d882158cf1472c6f0b6d9755bc074d1dbc17db5adf930d6e92a35368","byte_start":6716,"byte_end":6723,"input_label":"Close","decision":"keep","reason":"Saved model intent must not contact setter or block Close."}],"original_row_count":2}],"body_support_cleanup_loops":[],"implemented_changes":[{"proposal_id":"acp-main-0001-036","summary":"Removed wall-clock races; awaited operations must succeed while setter is unanswered; option-write expiry is driven under fake timers.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"},{"proposal_id":"acp-main-0001-037","summary":"Follow-up host options read must resolve with usable saved model after rejected write.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/acp-structured-host.test-support.ts","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","src/main/acp/acp-structured-session-adapter.ts"],"evidence_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"evidence_source_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"original_evidence_detail":[{"path":"src/main/acp/acp-structured-host.test-support.ts","sha256":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","lines":234,"read_state":"full_body_read"},{"path":"src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","sha256":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","lines":371,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-session-adapter.ts","sha256":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e","lines":345,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"a Grok model pick Grok never answers during send does not hold Stop, writes one request note, and ignores a late setter reply","status":"passed"},{"full_name":"a Grok model pick Grok never answers during send does not hold a Close behind its write","status":"passed"},{"full_name":"a Grok model pick Grok never answers during send re-establishes opening A after uncertain B without adopting B’s late reply","status":"passed"},{"full_name":"a saved Grok pick never contacts Grok or holds Stop behind a setter","status":"passed"},{"full_name":"a saved Grok pick never contacts Grok or holds Close behind a setter","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-host-restore-failed.test.ts","sha256":"d5857735fecf8a980255415fd90a67b48090b69b737e1e8a5ec1dbe76779b6f5","reviewed_sha256":"467f24bf9f41982c250426585cb295b2343046ff5441dc2f97481199a9911052","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":37,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 6. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":6,"original_declarations":6,"final_declarations":6,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":122,"end_line":170,"title":"continues the chat in a fresh session that the chain records and the next reopen loads","decision":"keep","reason":"Corrupt saved session restores through the real resolver into a fresh handle, preserves replacement-chain reason, exchanges a real prompt/reply and warns once through subsequent reopen.","source_body_sha256":"92d822c57fb67222f2bbc98e2dfb390ce1bae9b8da70ec1a8fe6ba2c4da5b4da","path":"src/main/acp/acp-structured-host-restore-failed.test.ts","start":5024,"end":7123,"byte_start":5024,"byte_end":7123,"source":"it('continues the chat in a fresh session that the chain records and the next reopen loads', async () => {\n const { host, store, fence, loads, warnings, ready, exchange } = await openRestoreRig(\n -32603,\n 'session file is corrupt'\n )\n\n expect(await host.attach(CALLER, attachParams())).toMatchObject({ ok: true })\n await ready()\n await host.close(SESSION, 'user-close')\n expect(await host.attach(CALLER, attachParams(fence()))).toMatchObject({ ok: true })\n await ready()\n\n expect(loads).toEqual([PROVIDER_SESSION])\n const chain = store.getRecord(SESSION)?.providerHandleChain ?? []\n expect(chain).toHaveLength(2)\n expect(agentSessionProviderHandleChainHead(chain)).toMatchObject({\n origin: 'created',\n handle: { nativeId: FRESH },\n replaces: { key: keyOf(PROVIDER_SESSION), reason: 'restore-failed' }\n })\n const rows = await warnings()\n expect(rows).toHaveLength(1)\n expect(rows[0]?.body).toMatchObject({\n kind: 'status',\n tone: 'warning',\n text: \"Grok couldn't reopen its earlier session, so this chat continues in a new one. Grok doesn't remember the earlier messages.\"\n })\n\n // The chat keeps working in the fresh session.\n await exchange('still there?', 'yes', FRESH)\n const messages = (await host.history({ sessionId: SESSION, direction: 'tail' })).page.items\n .filter((row) => row.body.kind === 'message')\n .map((row) => (row.body.kind === 'message' ? row.body.blocks : []))\n expect(messages.flat()).toEqual(\n expect.arrayContaining([\n { type: 'text', text: 'still there?' },\n { type: 'text', text: 'yes' }\n ])\n )\n\n // The next reopen loads the fresh session, and says nothing new.\n await host.close(SESSION, 'user-close')\n expect(await host.attach(CALLER, attachParams(fence()))).toMatchObject({ ok: true })\n await ready()\n expect(loads).toEqual([PROVIDER_SESSION, FRESH])\n expect(store.getRecord(SESSION)?.providerHandleChain).toHaveLength(3)\n expect(await warnings()).toHaveLength(1)\n await host.close(SESSION, 'user-close')\n })","source_sha256":"92d822c57fb67222f2bbc98e2dfb390ce1bae9b8da70ec1a8fe6ba2c4da5b4da","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-restore-failed.test.ts","line":123,"title":"continues the chat in a fresh session that the chain records and the next reopen loads","body_sha256":"92d822c57fb67222f2bbc98e2dfb390ce1bae9b8da70ec1a8fe6ba2c4da5b4da"},"proposal_ids":[],"explicit_input_controls":[]},{"line":174,"end_line":207,"title":"replaces it and says so once when the chat exchanged a turn on it","decision":"keep","reason":"Missing saved session after an exchanged turn records replacement/loss, keeps transcript content and emits exactly one warning through later successful load.","source_body_sha256":"eb8c75fb707a770f531c4224dbe0dd76f871f5c53b20c39c2f77806e6d505384","path":"src/main/acp/acp-structured-host-restore-failed.test.ts","start":7214,"end":8741,"byte_start":7214,"byte_end":8741,"source":"it('replaces it and says so once when the chat exchanged a turn on it', async () => {\n const { host, store, fence, loads, warnings, ready, exchange, messages } = await openRestoreRig(\n -32002,\n 'Resource not found'\n )\n expect(await host.attach(CALLER, attachParams())).toMatchObject({ ok: true })\n await ready()\n await exchange('remember 42', 'noted', PROVIDER_SESSION)\n await host.close(SESSION, 'user-close')\n expect(await host.attach(CALLER, attachParams(fence()))).toMatchObject({ ok: true })\n await ready()\n\n expect(loads).toEqual([PROVIDER_SESSION])\n const chain = store.getRecord(SESSION)?.providerHandleChain ?? []\n expect(chain).toHaveLength(2)\n const head = agentSessionProviderHandleChainHead(chain)\n expect(head).toMatchObject({\n origin: 'created',\n handle: { nativeId: FRESH },\n replaces: { key: keyOf(PROVIDER_SESSION), reason: 'restore-failed' }\n })\n expect(head?.supersedesKey).toBeUndefined()\n expect(await warnings()).toHaveLength(1)\n // The person still sees what Grok forgot.\n expect(await messages()).toEqual(expect.arrayContaining(['remember 42', 'noted']))\n\n // The next reopen loads the fresh session, and says nothing new.\n await host.close(SESSION, 'user-close')\n expect(await host.attach(CALLER, attachParams(fence()))).toMatchObject({ ok: true })\n await ready()\n expect(loads).toEqual([PROVIDER_SESSION, FRESH])\n expect(await warnings()).toHaveLength(1)\n await host.close(SESSION, 'user-close')\n })","source_sha256":"eb8c75fb707a770f531c4224dbe0dd76f871f5c53b20c39c2f77806e6d505384","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-restore-failed.test.ts","line":175,"title":"replaces it and says so once when the chat exchanged a turn on it","body_sha256":"eb8c75fb707a770f531c4224dbe0dd76f871f5c53b20c39c2f77806e6d505384"},"proposal_ids":[],"explicit_input_controls":[]},{"line":209,"end_line":232,"title":"supersedes it silently when nothing was exchanged on it","decision":"keep","reason":"Missing saved session with no exchanged turn silently supersedes the unused handle, leaving one chain head and no warning.","source_body_sha256":"72124c55b983f18aa12153b457d05b5295959951907d198dd7b316d248e9a285","path":"src/main/acp/acp-structured-host-restore-failed.test.ts","start":8745,"end":9688,"byte_start":8745,"byte_end":9688,"source":"it('supersedes it silently when nothing was exchanged on it', async () => {\n const { host, store, fence, loads, warnings, ready } = await openRestoreRig(\n -32002,\n 'Resource not found'\n )\n expect(await host.attach(CALLER, attachParams())).toMatchObject({ ok: true })\n await ready()\n await host.close(SESSION, 'user-close')\n expect(await host.attach(CALLER, attachParams(fence()))).toMatchObject({ ok: true })\n await ready()\n\n expect(loads).toEqual([PROVIDER_SESSION])\n const chain = store.getRecord(SESSION)?.providerHandleChain ?? []\n expect(chain).toHaveLength(1)\n const head = agentSessionProviderHandleChainHead(chain)\n expect(head).toMatchObject({\n origin: 'created',\n handle: { nativeId: FRESH },\n supersedesKey: keyOf(PROVIDER_SESSION)\n })\n expect(head?.replaces).toBeUndefined()\n expect(await warnings()).toEqual([])\n await host.close(SESSION, 'user-close')\n })","source_sha256":"72124c55b983f18aa12153b457d05b5295959951907d198dd7b316d248e9a285","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-restore-failed.test.ts","line":210,"title":"supersedes it silently when nothing was exchanged on it","body_sha256":"72124c55b983f18aa12153b457d05b5295959951907d198dd7b316d248e9a285"},"proposal_ids":[],"explicit_input_controls":[]},{"line":258,"end_line":272,"title":"writes the warning when the next start replaces the old session, and only once","decision":"keep","reason":"An actual journal-open rejection occurs before replacement publication; next successful start records the postponed warning once and later reopen does not duplicate it.","source_body_sha256":"9ed64db44849c8c8cd49963cf919158cd4e0bd5db12063aaafe50ae94e9f7ff4","path":"src/main/acp/acp-structured-host-restore-failed.test.ts","start":10689,"end":11373,"byte_start":10689,"byte_end":11373,"source":"it('writes the warning when the next start replaces the old session, and only once', async () => {\n const { host, fence, loads, warnings, ready } = await failAttachBeforeReplacement()\n\n expect(await host.attach(CALLER, attachParams(fence()))).toMatchObject({ ok: true })\n await ready()\n expect(loads).toEqual([PROVIDER_SESSION])\n expect(await warnings()).toHaveLength(1)\n\n await host.close(SESSION, 'user-close')\n expect(await host.attach(CALLER, attachParams(fence()))).toMatchObject({ ok: true })\n await ready()\n expect(loads).toEqual([PROVIDER_SESSION, FRESH])\n expect(await warnings()).toHaveLength(1)\n await host.close(SESSION, 'user-close')\n })","source_sha256":"9ed64db44849c8c8cd49963cf919158cd4e0bd5db12063aaafe50ae94e9f7ff4","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-restore-failed.test.ts","line":259,"title":"writes the warning when the next start replaces the old session, and only once","body_sha256":"9ed64db44849c8c8cd49963cf919158cd4e0bd5db12063aaafe50ae94e9f7ff4"},"proposal_ids":[],"explicit_input_controls":[]},{"line":274,"end_line":298,"title":"is written when Grok never saved the fresh session and a newer one supersedes it","decision":"keep","reason":"After initial journal-open failure, a newly created but unsaved replacement can itself be superseded while still reporting the original session loss exactly once.","source_body_sha256":"07932187c4d907f53df655bfaf8781e0f75044038a9639887be23dd0f517ce3b","path":"src/main/acp/acp-structured-host-restore-failed.test.ts","start":11377,"end":12640,"byte_start":11377,"byte_end":12640,"source":"it('is written when Grok never saved the fresh session and a newer one supersedes it', async () => {\n const { host, store, fence, loads, lost, warnings, ready } = await failAttachBeforeReplacement()\n expect(await host.attach(CALLER, attachParams(fence()))).toMatchObject({ ok: true })\n await ready()\n await host.close(SESSION, 'user-close')\n lost.set(FRESH, { code: -32002, message: 'Resource not found' })\n\n expect(await host.attach(CALLER, attachParams(fence()))).toMatchObject({ ok: true })\n await ready()\n expect(loads).toEqual([PROVIDER_SESSION, FRESH])\n const chain = store.getRecord(SESSION)?.providerHandleChain ?? []\n expect(chain).toHaveLength(2)\n expect(agentSessionProviderHandleChainHead(chain)).toMatchObject({\n handle: { nativeId: FRESH_2 },\n supersedesKey: keyOf(FRESH),\n replaces: { key: keyOf(PROVIDER_SESSION), reason: 'restore-failed' }\n })\n expect(await warnings()).toHaveLength(1)\n await host.close(SESSION, 'user-close')\n expect(await host.attach(CALLER, attachParams(fence()))).toMatchObject({ ok: true })\n await ready()\n expect(loads).toEqual([PROVIDER_SESSION, FRESH, FRESH_2])\n expect(await warnings()).toHaveLength(1)\n await host.close(SESSION, 'user-close')\n })","source_sha256":"07932187c4d907f53df655bfaf8781e0f75044038a9639887be23dd0f517ce3b","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-restore-failed.test.ts","line":275,"title":"is written when Grok never saved the fresh session and a newer one supersedes it","body_sha256":"07932187c4d907f53df655bfaf8781e0f75044038a9639887be23dd0f517ce3b"},"proposal_ids":[],"explicit_input_controls":[]},{"line":302,"end_line":327,"title":"keeps the one row: the conversation lost is still the first one","decision":"keep","reason":"An already-written original loss warning remains one row when its unsaved replacement is superseded and the next saved handle reopens.","source_body_sha256":"7b1dcccf421d39aad3bf4cfdca5a4fd43a5bc92752ef2f5c1ccf9690690b1b84","path":"src/main/acp/acp-structured-host-restore-failed.test.ts","start":12736,"end":13955,"byte_start":12736,"byte_end":13955,"source":"it('keeps the one row: the conversation lost is still the first one', async () => {\n const { host, fence, loads, lost, warnings, ready } = await openRestoreRig(\n -32603,\n 'session file is corrupt'\n )\n expect(await host.attach(CALLER, attachParams())).toMatchObject({ ok: true })\n await ready()\n await host.close(SESSION, 'user-close')\n expect(await host.attach(CALLER, attachParams(fence()))).toMatchObject({ ok: true })\n await ready()\n expect(await warnings()).toHaveLength(1)\n await host.close(SESSION, 'user-close')\n lost.set(FRESH, { code: -32002, message: 'Resource not found' })\n\n expect(await host.attach(CALLER, attachParams(fence()))).toMatchObject({ ok: true })\n await ready()\n expect(loads).toEqual([PROVIDER_SESSION, FRESH])\n expect(await warnings()).toHaveLength(1)\n // The newer session carries the same loss, so reopening it says nothing new.\n await host.close(SESSION, 'user-close')\n expect(await host.attach(CALLER, attachParams(fence()))).toMatchObject({ ok: true })\n await ready()\n expect(loads).toEqual([PROVIDER_SESSION, FRESH, FRESH_2])\n expect(await warnings()).toHaveLength(1)\n await host.close(SESSION, 'user-close')\n })","source_sha256":"7b1dcccf421d39aad3bf4cfdca5a4fd43a5bc92752ef2f5c1ccf9690690b1b84","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-restore-failed.test.ts","line":303,"title":"keeps the one row: the conversation lost is still the first one","body_sha256":"7b1dcccf421d39aad3bf4cfdca5a4fd43a5bc92752ef2f5c1ccf9690690b1b84"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[],"parameter_groups":[],"body_support_cleanup_loops":[],"implemented_changes":[{"proposal_id":"acp-main-0001-038","summary":"afterEach restores AgentSessionJournal prototype spies on every failure path.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/acp-structured-host.test-support.ts","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","src/main/acp/acp-structured-session-adapter.ts"],"evidence_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"evidence_source_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"original_evidence_detail":[{"path":"src/main/acp/acp-structured-host.test-support.ts","sha256":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","lines":234,"read_state":"full_body_read"},{"path":"src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","sha256":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","lines":371,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-session-adapter.ts","sha256":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e","lines":345,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"a saved Grok session Grok cannot reopen continues the chat in a fresh session that the chain records and the next reopen loads","status":"passed"},{"full_name":"a created Grok session Grok reports missing on the first reopen replaces it and says so once when the chat exchanged a turn on it","status":"passed"},{"full_name":"a created Grok session Grok reports missing on the first reopen supersedes it silently when nothing was exchanged on it","status":"passed"},{"full_name":"a replacement after its earlier attach failed to open the journal writes the warning when the next start replaces the old session, and only once","status":"passed"},{"full_name":"a replacement after its earlier attach failed to open the journal is written when Grok never saved the fresh session and a newer one supersedes it","status":"passed"},{"full_name":"a replacement Grok never saved, superseded after its row was written keeps the one row: the conversation lost is still the first one","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-host-start-aborts.test.ts","sha256":"18e04937633dd8a61d26faa8c77a4b9310cd1e119100543e0b849c6209514794","reviewed_sha256":"c373b83e51a6fab6948d665bde89596bf0a0758991545ff05b4fc7119b4056ba","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":38,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 6. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":6,"original_declarations":6,"final_declarations":6,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":65,"end_line":76,"title":"quits promptly while Grok never answers its handshake, and stops the child","decision":"keep","reason":"Actual quit-trigger flush aborts a held initialize, completes attach under its published-start contract and closes the child; no external Close supplies the missing cancellation.","source_body_sha256":"16e5d2fb7984932285a77f90ee4dad36a559b4c09432a8e25d34e96b1e139ab5","path":"src/main/acp/acp-structured-host-start-aborts.test.ts","start":2263,"end":2852,"byte_start":2267,"byte_end":2856,"source":"it('quits promptly while Grok never answers its handshake, and stops the child', async () => {\n const { rig, host } = await openHostRig({\n script: (agent) => agent.on('initialize', () => {})\n })\n const attaching = host.attach(CALLER, attachParams())\n await rig.frame('initialize')\n // The start has no bound of its own: the quit is what ends it.\n expect(await within(host.flushAllStreamedEvents({ trigger: 'quit' }), 2_000)).not.toBe(STALLED)\n expect((await attaching).ok).toBe(true)\n expect(rig.child().exited).toBe(true)\n await rig.adapter.closeAll()\n })","source_sha256":"16e5d2fb7984932285a77f90ee4dad36a559b4c09432a8e25d34e96b1e139ab5","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-start-aborts.test.ts","line":73,"title":"quits promptly while Grok never answers its handshake, and stops the child","body_sha256":"16e5d2fb7984932285a77f90ee4dad36a559b4c09432a8e25d34e96b1e139ab5"},"proposal_ids":[],"explicit_input_controls":[]},{"line":78,"end_line":97,"title":"closes a chat whose start already returned as a close Orca asked for, not a crash","decision":"keep","reason":"Close injected at the actual attach-controller end classifies lifecycle as requested close and records root death without a crash diagnosis.","source_body_sha256":"94568644bbf10172403eaeef435b53a209fccf6d94f670441a9060192661cbab","path":"src/main/acp/acp-structured-host-start-aborts.test.ts","start":2856,"end":3678,"byte_start":2860,"byte_end":3682,"source":"it('closes a chat whose start already returned as a close Orca asked for, not a crash', async () => {\n const { rig, host, store } = await openHostRig()\n const ended: unknown[] = []\n const handle = host.handleAdapterEvent.bind(host)\n host.handleAdapterEvent = (event) => {\n if (event.type === 'ended') {\n ended.push(event)\n }\n return handle(event)\n }\n let closing: Promise | undefined\n beforeAttachEnds(host, () => {\n closing = host.close(SESSION, 'user-close')\n })\n expect(await host.attach(CALLER, attachParams())).toMatchObject({ ok: true })\n await closing\n expect(rig.child().exited).toBe(true)\n expect(ended).toMatchObject([{ cause: 'requested-close' }])\n expect(store.getRecord(SESSION)?.lease.deathEvidence?.detail).not.toContain('exited')\n })","source_sha256":"94568644bbf10172403eaeef435b53a209fccf6d94f670441a9060192661cbab","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-start-aborts.test.ts","line":86,"title":"closes a chat whose start already returned as a close Orca asked for, not a crash","body_sha256":"94568644bbf10172403eaeef435b53a209fccf6d94f670441a9060192661cbab"},"proposal_ids":[],"explicit_input_controls":[]},{"line":99,"end_line":112,"title":"never launches Grok for a chat closed while its attach was still reconciling","decision":"keep","reason":"Close injected while old-owner reconciliation runs refuses attach pre-spawn and launches nothing.","source_body_sha256":"4ec6f760b946852daa8846e4853ad992609d9cdd64c9df5e56515b5517451a09","path":"src/main/acp/acp-structured-host-start-aborts.test.ts","start":3682,"end":4288,"byte_start":3686,"byte_end":4292,"source":"it('never launches Grok for a chat closed while its attach was still reconciling', async () => {\n const { rig, host } = await openHostRig({\n script: (agent) => agent.on('initialize', () => {})\n })\n let closing: Promise | undefined\n duringOwnerProbe(host, () => {\n closing = host.close(SESSION, 'user-close')\n })\n expect(\n await host.attach(CALLER, attachParams()).catch((error: unknown) => error)\n ).toMatchObject({ name: 'AgentSessionPreSpawnError' })\n expect(await within(closing!, 2_000)).not.toBe(STALLED)\n expect(rig.spawned).not.toContain('spawn')\n })","source_sha256":"4ec6f760b946852daa8846e4853ad992609d9cdd64c9df5e56515b5517451a09","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-start-aborts.test.ts","line":107,"title":"never launches Grok for a chat closed while its attach was still reconciling","body_sha256":"4ec6f760b946852daa8846e4853ad992609d9cdd64c9df5e56515b5517451a09"},"proposal_ids":[],"explicit_input_controls":[]},{"line":114,"end_line":132,"title":"never launches Grok for a start a Stop reached while its attach was still reconciling","decision":"keep","reason":"Stop during owner reconciliation aborts the pending delivery start, creates no second child and durably rejects the message cancelled.","source_body_sha256":"114cde9ea2fa48218979946f16eff6effe4eec4805f470dd4c37f76b65ce1307","path":"src/main/acp/acp-structured-host-start-aborts.test.ts","start":4292,"end":5256,"byte_start":4296,"byte_end":5260,"source":"it('never launches Grok for a start a Stop reached while its attach was still reconciling', async () => {\n const { rig, host } = await openHostRig()\n expect(await host.attach(CALLER, attachParams())).toMatchObject({ ok: true })\n // The chat closes; the next send has to start Grok again.\n await host.close(SESSION, 'user-close')\n let stopping: ReturnType | undefined\n duringOwnerProbe(host, () => {\n stopping = stop(host)\n })\n await send(host, 'hello')\n await waitFor(() => expect(stopping).toBeDefined())\n expect(await stopping).toMatchObject({ ok: true, value: { cancelled: true } })\n await host.flushStreamedEvents(SESSION)\n expect(rig.spawned.filter((step) => step === 'spawn')).toHaveLength(1)\n const journal = host.collaboratorsForTests().sessions.get(SESSION)!.journal\n expect(journal.submissions()).toMatchObject([\n { dispatchState: 'rejected', rejection: { kind: 'cancelled' } }\n ])\n })","source_sha256":"114cde9ea2fa48218979946f16eff6effe4eec4805f470dd4c37f76b65ce1307","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-start-aborts.test.ts","line":122,"title":"never launches Grok for a start a Stop reached while its attach was still reconciling","body_sha256":"114cde9ea2fa48218979946f16eff6effe4eec4805f470dd4c37f76b65ce1307"},"proposal_ids":[],"explicit_input_controls":[]},{"line":134,"end_line":148,"title":"starts Grok afresh for a message sent right after a Stop reached a reconciling start","decision":"keep","reason":"A second send admitted while the reconciling start unwinds starts afresh and is actually delivered/accepted with no failure notice.","source_body_sha256":"6c7f1ec0eb0c2e38236bf807bc2c3848d91b1ad1bdc6bb5b378b9d69382c8af6","path":"src/main/acp/acp-structured-host-start-aborts.test.ts","start":5260,"end":6000,"byte_start":5264,"byte_end":6004,"source":"it('starts Grok afresh for a message sent right after a Stop reached a reconciling start', async () => {\n const { rig, host } = await openClosedResumableChat()\n let stopping: ReturnType | undefined\n let second: Promise | undefined\n duringOwnerProbe(host, () => {\n stopping = stop(host)\n // Accepted while the aborted start is still unwinding.\n second = send(host, 'second')\n })\n await send(host, 'hello')\n await waitFor(() => expect(second).toBeDefined())\n expect(await stopping).toMatchObject({ ok: true, value: { cancelled: true } })\n await expectDeliveredAfterStop({ rig, host }, await second!)\n expect(rig.spawned.filter((step) => step === 'spawn')).toHaveLength(2)\n })","source_sha256":"6c7f1ec0eb0c2e38236bf807bc2c3848d91b1ad1bdc6bb5b378b9d69382c8af6","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-start-aborts.test.ts","line":142,"title":"starts Grok afresh for a message sent right after a Stop reached a reconciling start","body_sha256":"6c7f1ec0eb0c2e38236bf807bc2c3848d91b1ad1bdc6bb5b378b9d69382c8af6"},"proposal_ids":[],"explicit_input_controls":[]},{"line":150,"end_line":162,"title":"starts Grok afresh for a message sent right after a Stop ended a hung handshake","decision":"keep","reason":"A second send admitted immediately after Stop ends a hung handshake uses a third child, preserves first-message cancellation and actually delivers the second.","source_body_sha256":"de836684b57898d66b0879b5239348efcc4fc286788e96b3c8e8506b2eb3746c","path":"src/main/acp/acp-structured-host-start-aborts.test.ts","start":6004,"end":6640,"byte_start":6008,"byte_end":6644,"source":"it('starts Grok afresh for a message sent right after a Stop ended a hung handshake', async () => {\n const { rig, host, children } = await openClosedResumableChat({ hangsHandshake: 2 })\n const first = send(host, 'hello')\n // The restart's own child, not the first one's.\n await waitFor(() => expect(children()).toBe(2))\n await rig.frame('initialize')\n const stopping = stop(host)\n const second = send(host, 'second')\n expect(await stopping).toMatchObject({ ok: true, value: { cancelled: true } })\n await first\n await expectDeliveredAfterStop({ rig, host }, await second)\n expect(children()).toBe(3)\n })","source_sha256":"de836684b57898d66b0879b5239348efcc4fc286788e96b3c8e8506b2eb3746c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-start-aborts.test.ts","line":158,"title":"starts Grok afresh for a message sent right after a Stop ended a hung handshake","body_sha256":"de836684b57898d66b0879b5239348efcc4fc286788e96b3c8e8506b2eb3746c"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[],"parameter_groups":[],"body_support_cleanup_loops":[],"implemented_changes":[{"proposal_id":"acp-main-0001-039","summary":"within clears its losing timer in finally; existing protocol gates own start/abort positions.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"},{"proposal_id":"acp-main-0001-040","summary":"Second prompt is checked structurally for actual text, provider session and exact second request/prompt metadata.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/acp-structured-host.test-support.ts","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","src/main/acp/acp-structured-session-adapter.ts"],"evidence_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"evidence_source_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"original_evidence_detail":[{"path":"src/main/acp/acp-structured-host.test-support.ts","sha256":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","lines":234,"read_state":"full_body_read"},{"path":"src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","sha256":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","lines":371,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-session-adapter.ts","sha256":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e","lines":345,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"a Grok start the host aborts quits promptly while Grok never answers its handshake, and stops the child","status":"passed"},{"full_name":"a Grok start the host aborts closes a chat whose start already returned as a close Orca asked for, not a crash","status":"passed"},{"full_name":"a Grok start the host aborts never launches Grok for a chat closed while its attach was still reconciling","status":"passed"},{"full_name":"a Grok start the host aborts never launches Grok for a start a Stop reached while its attach was still reconciling","status":"passed"},{"full_name":"a Grok start the host aborts starts Grok afresh for a message sent right after a Stop reached a reconciling start","status":"passed"},{"full_name":"a Grok start the host aborts starts Grok afresh for a message sent right after a Stop ended a hung handshake","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-host-start-failure.test.ts","sha256":"4cea0dccdb76c1c55cec22f4965453d0f9e5992ae329c6401edd9a814e8e9930","reviewed_sha256":"4cea0dccdb76c1c55cec22f4965453d0f9e5992ae329c6401edd9a814e8e9930","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":39,"decision":"keep","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 1. Retained the reviewed behavioral coverage; final bytes match the pinned original.","declarations":1,"original_declarations":1,"final_declarations":1,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"implementation_status":"reviewed-unchanged","cases":[{"line":10,"end_line":31,"title":"tells queued messages the agent is signed out when its published startup fails authentication","decision":"keep","reason":"Real published startup holds session/new while a send queues; injected auth-required failure rejects the actual submission notSignedIn before handover and closes the child without emitting any prompt.","source_body_sha256":"9d58eecb7923d41d8debfc5418344a7d006f25d1d07c058f4bc62d75ade5f780","path":"src/main/acp/acp-structured-host-start-failure.test.ts","start":581,"end":1618,"byte_start":581,"byte_end":1618,"source":"it('tells queued messages the agent is signed out when its published startup fails authentication', async () => {\n const { rig, host } = await openHostRig({\n script: (agent) => agent.on('session/new', () => {})\n })\n expect(await host.attach(CALLER, attachParams())).toMatchObject({ ok: true })\n const request = await rig.frame('session/new')\n const messageId = await send(host, 'held during sign-in')\n expect(rig.sent('session/prompt')).toEqual([])\n rig.child().agent.fail(request, -32000, 'Authentication required')\n await waitFor(async () => {\n const snapshot = await host.journalSnapshot(SESSION)\n const submission = snapshot.submissions.find((entry) => entry.clientMessageId === messageId)\n expect(submission?.handedOverAt).toBeUndefined()\n expect(submission).toMatchObject({\n dispatchState: 'rejected',\n rejection: { kind: 'notSignedIn' },\n reason: expect.stringMatching(/^Sign in to Grok/)\n })\n })\n expect(rig.child().exited).toBe(true)\n expect(rig.sent('session/prompt')).toEqual([])\n})","source_sha256":"9d58eecb7923d41d8debfc5418344a7d006f25d1d07c058f4bc62d75ade5f780","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-start-failure.test.ts","line":10,"title":"tells queued messages the agent is signed out when its published startup fails authentication","body_sha256":"9d58eecb7923d41d8debfc5418344a7d006f25d1d07c058f4bc62d75ade5f780"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[],"parameter_groups":[],"body_support_cleanup_loops":[],"implemented_changes":[],"evidence":["src/main/acp/acp-structured-host.test-support.ts","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","src/main/acp/acp-structured-session-adapter.ts"],"evidence_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"evidence_source_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"original_evidence_detail":[{"path":"src/main/acp/acp-structured-host.test-support.ts","sha256":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","lines":234,"read_state":"full_body_read"},{"path":"src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","sha256":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","lines":371,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-session-adapter.ts","sha256":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e","lines":345,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"tells queued messages the agent is signed out when its published startup fails authentication","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-host-stop.test.ts","sha256":"2972e40c8b5c72f0a5c9e2be1c631d0b9c751e14488d43c0c551e085d9b2b58f","reviewed_sha256":"fa4fdf8db518e9c76729e80c555f00d7767f4fe9d997265dbf42a387e6ec8d6c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":40,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: fix 2, keep 4. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":6,"original_declarations":6,"final_declarations":6,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":25,"end_line":68,"title":"ends Grok once it settles the turn, and the next send resumes with no notice","decision":"fix","reason":"Actual Stop waits for provider turn settlement before simulated process close, then next send reloads exactly once with no crash/cut notice. Replace artificial50ms reply with an explicit reply gate.","source_body_sha256":"50e931aeb7acb125564741333e525bc44f38750b714103106c47eda5d012a702","proposed_changes":[{"line":33,"action":"fix","proposal":"Hold provider cancellation acknowledgement behind an explicit gate, assert child remains live before release, then release reply and observe close; remove50ms timer."}],"path":"src/main/acp/acp-structured-host-stop.test.ts","start":860,"end":2981,"byte_start":860,"byte_end":2981,"source":"it('ends Grok once it settles the turn, and the next send resumes with no notice', async () => {\n const { rig, host, count, rows, turns, messages } = await openAttachedHostRig()\n const first = rig.child()\n await send(host, 'hello')\n const prompt = await rig.frame('session/prompt')\n first.agent.notify('session/update', replyChunk(promptIdOf(prompt), 'partial'))\n // Grok takes a moment to wind the turn down; the host waits for it before ending the process.\n const answered: { cancel: boolean; atClose: boolean | null } = { cancel: false, atClose: null }\n first.agent.on('session/cancel', () =>\n setTimeout(() => {\n answered.cancel = true\n first.agent.reply(prompt, { stopReason: 'cancelled' })\n }, 50)\n )\n const close = first.close.bind(first)\n first.close = async () => {\n answered.atClose ??= answered.cancel\n return close()\n }\n await rig.settle()\n await host.flushStreamedEvents(SESSION)\n expect(await stop(host)).toMatchObject({ ok: true, value: { cancelled: true } })\n await waitFor(() => expect(first.exited).toBe(true))\n expect(framesOf(first, 'session/cancel')).toHaveLength(1)\n expect(answered.atClose).toBe(true)\n expect((await turns()).at(-1)).toMatchObject({ state: 'interrupted' })\n\n await send(host, 'again')\n await waitFor(() => expect(rig.child()).not.toBe(first))\n const second = rig.child()\n const secondPrompt = await rig.frame('session/prompt')\n expect(count.loads).toBe(1)\n expect(framesOf(second, 'session/new')).toHaveLength(0)\n expect(await messages()).toEqual(['hello', 'partial', 'again'])\n // Only the Stop's own note: no exit or cut-reply notice for a Stop the person asked for.\n const transcript = withNativeChatCutTurnNotices(await rows(), { agentName: 'Grok' })\n expect(\n transcript.flatMap((row) => (row.body.kind === 'status' ? [row.body.text] : []))\n ).toEqual(['Cancellation requested.'])\n second.agent.on('session/cancel', () =>\n second.agent.reply(secondPrompt, { stopReason: 'cancelled' })\n )\n await host.close(SESSION, 'user-close')\n })","source_sha256":"50e931aeb7acb125564741333e525bc44f38750b714103106c47eda5d012a702","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-host-stop.test.ts","line":28,"title":"ends Grok once it settles the turn, and the next send resumes with no notice","body_sha256":"f771b923bed8b7f8cc75ee9dc66a2f58240d7b22e7bcdbac37fe8386909f6218"},"proposal_ids":["acp-main-0001-041"],"explicit_input_controls":[]},{"line":70,"end_line":88,"title":"ends Grok at the grace when Grok never reads the cancel, never waiting on its write","decision":"fix","reason":"A never-settling cancel write cannot prevent grace-period process shutdown and durable turn interruption; use controlled grace expiration rather than a real30ms wait.","source_body_sha256":"7887e889406b80985cbf3637fafde14db4b07de3b2b9e7a97731e7e3d42089dc","proposed_changes":[{"line":70,"action":"fix","proposal":"Use fake time for the configured30ms grace, prove child is live before expiry and exits at expiry even though cancel promise remains unresolved."}],"path":"src/main/acp/acp-structured-host-stop.test.ts","start":2985,"end":3873,"byte_start":2985,"byte_end":3873,"source":"it('ends Grok at the grace when Grok never reads the cancel, never waiting on its write', async () => {\n const { rig, host, turns } = await openAttachedHostRig({ stopGraceMs: 30 })\n const first = rig.child()\n await send(host, 'hello')\n const prompt = await rig.frame('session/prompt')\n first.agent.notify('session/update', replyChunk(promptIdOf(prompt), 'partial'))\n await rig.settle()\n await host.flushStreamedEvents(SESSION)\n // A write that never completes, as a full pipe to a Grok that stopped reading.\n let cancels = 0\n first.cancel = () => {\n cancels += 1\n return new Promise(() => {})\n }\n expect(await stop(host)).toMatchObject({ ok: true, value: { cancelled: true } })\n await waitFor(() => expect(first.exited).toBe(true))\n expect(cancels).toBe(1)\n expect((await turns()).at(-1)).toMatchObject({ state: 'interrupted' })\n })","source_sha256":"7887e889406b80985cbf3637fafde14db4b07de3b2b9e7a97731e7e3d42089dc","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-host-stop.test.ts","line":77,"title":"ends Grok at the grace when Grok never reads the cancel, never waiting on its write","body_sha256":"0ca8250d531bc37bb5c878fc3bd24f38f5335ab5c78dbf155a36d88756d66d4c"},"proposal_ids":["acp-main-0001-042"],"explicit_input_controls":[]},{"line":90,"end_line":111,"title":"ends Grok on a Stop of a turn it began itself, once that turn ends","decision":"keep","reason":"A provider-owned turn with no local prompt is stopped by an actual session/cancel and completion notice, then the child closes and journal turn interrupts.","source_body_sha256":"59f6a7bebe0488b1b23601dd4769e24da4f91e5f6115f8f6f2e6187872534d08","path":"src/main/acp/acp-structured-host-stop.test.ts","start":3877,"end":4884,"byte_start":3877,"byte_end":4884,"source":"it('ends Grok on a Stop of a turn it began itself, once that turn ends', async () => {\n const { rig, host, turns } = await openAttachedHostRig()\n const { agent } = rig.child()\n agent.notify('session/update', replyChunk('task-completed-background-1', 'Working on it'))\n agent.on('session/cancel', () =>\n agent.notify('x.ai/session_notification', {\n sessionId: PROVIDER_SESSION,\n update: {\n sessionUpdate: 'turn_completed',\n prompt_id: 'task-completed-background-1',\n stop_reason: 'cancelled'\n }\n })\n )\n await rig.settle()\n expect((await turns()).at(-1)).toMatchObject({ state: 'running' })\n expect(await stop(host)).toMatchObject({ ok: true, value: { cancelled: true } })\n await waitFor(() => expect(rig.child().exited).toBe(true))\n expect(framesOf(rig.child(), 'session/cancel')).toHaveLength(1)\n expect((await turns()).at(-1)).toMatchObject({ state: 'interrupted' })\n await host.close(SESSION, 'user-close')\n })","source_sha256":"59f6a7bebe0488b1b23601dd4769e24da4f91e5f6115f8f6f2e6187872534d08","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-stop.test.ts","line":119,"title":"ends Grok on a Stop of a turn it began itself, once that turn ends","body_sha256":"59f6a7bebe0488b1b23601dd4769e24da4f91e5f6115f8f6f2e6187872534d08"},"proposal_ids":[],"explicit_input_controls":[]},{"line":113,"end_line":143,"title":"leaves no Grok behind whose background work could begin a turn after the Stop","decision":"keep","reason":"Stop closes the child so late background-task activity cannot open another turn; real task row becomes unverifiable and settled journal remains unchanged.","source_body_sha256":"2d3d223e99de6e00a020ae72e6eafe030e9f39d29266fc0193e15d191fd595f2","path":"src/main/acp/acp-structured-host-stop.test.ts","start":4888,"end":6496,"byte_start":4888,"byte_end":6496,"source":"it('leaves no Grok behind whose background work could begin a turn after the Stop', async () => {\n const { rig, host, rows, turns } = await openAttachedHostRig()\n const first = rig.child()\n await send(host, 'hello')\n const prompt = await rig.frame('session/prompt')\n first.agent.notify('session/update', replyChunk(promptIdOf(prompt), 'started a build'))\n first.agent.notify('x.ai/task_backgrounded', {\n sessionId: PROVIDER_SESSION,\n update: { sessionUpdate: 'task_backgrounded', task_id: 'build-1', command: 'make all' }\n })\n first.agent.on('session/cancel', () => first.agent.reply(prompt, { stopReason: 'cancelled' }))\n await rig.settle()\n await host.flushStreamedEvents(SESSION)\n await stop(host)\n await waitFor(() => expect(first.exited).toBe(true))\n // The task ended with Grok's process; Orca cannot say how, so its row says no more than that.\n const task = (await rows()).find((row) => row.itemId.includes('background-task'))\n expect(task?.body).toMatchObject({\n blocks: [\n { type: 'text', text: 'Background command \"make all\" stopped reporting' },\n { type: 'background-task', taskId: 'build-1', state: 'unverifiable' }\n ]\n })\n const settled = await turns()\n // What a kept process would do once its backgrounded build finished.\n first.agent.notify('session/update', replyChunk('task-completed-background-1', 'Build done'))\n await rig.settle()\n expect(await turns()).toEqual(settled)\n expect(settled.map((turn) => turn.state)).not.toContain('running')\n await host.close(SESSION, 'user-close')\n })","source_sha256":"2d3d223e99de6e00a020ae72e6eafe030e9f39d29266fc0193e15d191fd595f2","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-stop.test.ts","line":142,"title":"leaves no Grok behind whose background work could begin a turn after the Stop","body_sha256":"2d3d223e99de6e00a020ae72e6eafe030e9f39d29266fc0193e15d191fd595f2"},"proposal_ids":[],"explicit_input_controls":[]},{"line":147,"end_line":168,"title":"stops neither the turn running now nor Grok","decision":"keep","reason":"Stop naming an old completed turn leaves the current echoed turn running and sends no cancel/exit.","source_body_sha256":"c4ccc055060cc66a15b7b32af3ecc6e2f11bb3965f3ea07c674f338f9056ade6","path":"src/main/acp/acp-structured-host-stop.test.ts","start":6569,"end":7687,"byte_start":6569,"byte_end":7687,"source":"it('stops neither the turn running now nor Grok', async () => {\n const { rig, host, turns } = await openAttachedHostRig()\n const { agent } = rig.child()\n await send(host, 'old')\n const old = await rig.frame('session/prompt')\n agent.notify('session/update', replyChunk(promptIdOf(old), 'done'))\n agent.reply(old, { stopReason: 'end_turn' })\n await rig.settle()\n await send(host, 'new')\n const current = await rig.frame('session/prompt', 1)\n agent.notify('session/update', replyChunk(promptIdOf(current), 'working'))\n await rig.settle()\n await host.flushStreamedEvents(SESSION)\n const stopped = await stop(host, providerTurnId(promptIdOf(old), PROVIDER_SESSION))\n expect(stopped).toMatchObject({ ok: true, value: { cancelled: false } })\n await rig.settle()\n expect(framesOf(rig.child(), 'session/cancel')).toHaveLength(0)\n expect(rig.child().exited).toBe(false)\n expect((await turns()).at(-1)).toMatchObject({ state: 'running' })\n agent.on('session/cancel', () => agent.reply(current, { stopReason: 'cancelled' }))\n await host.close(SESSION, 'user-close')\n })","source_sha256":"c4ccc055060cc66a15b7b32af3ecc6e2f11bb3965f3ea07c674f338f9056ade6","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-stop.test.ts","line":176,"title":"stops neither the turn running now nor Grok","body_sha256":"c4ccc055060cc66a15b7b32af3ecc6e2f11bb3965f3ea07c674f338f9056ade6"},"proposal_ids":[],"explicit_input_controls":[]},{"line":172,"end_line":196,"title":"leaves Grok and the next prompt alone in the gap before Grok echoes it","decision":"keep","reason":"Stop naming an old turn during the next prompt pre-echo gap is an accepted no-op; the new prompt later completes normally and no status notice is fabricated.","source_body_sha256":"1dbb06136125dd024b80afcc210ce4b65452087f13a3f0387499d80affd09550","path":"src/main/acp/acp-structured-host-stop.test.ts","start":7816,"end":9064,"byte_start":7816,"byte_end":9064,"source":"it('leaves Grok and the next prompt alone in the gap before Grok echoes it', async () => {\n const { rig, host, rows, turns } = await openAttachedHostRig()\n const { agent } = rig.child()\n await send(host, 'old')\n const old = await rig.frame('session/prompt')\n agent.notify('session/update', replyChunk(promptIdOf(old), 'done'))\n agent.reply(old, { stopReason: 'end_turn' })\n await rig.settle()\n await send(host, 'new')\n const next = await rig.frame('session/prompt', 1)\n await host.flushStreamedEvents(SESSION)\n const stopped = await stop(host, providerTurnId(promptIdOf(old), PROVIDER_SESSION))\n expect(stopped).toMatchObject({ ok: true, value: { cancelled: false } })\n await rig.settle()\n expect(framesOf(rig.child(), 'session/cancel')).toHaveLength(0)\n expect(rig.child().exited).toBe(false)\n expect((await rows()).filter((row) => row.body.kind === 'status')).toEqual([])\n agent.notify('session/update', replyChunk(promptIdOf(next), 'answered'))\n agent.reply(next, { stopReason: 'end_turn' })\n await rig.settle()\n await waitFor(async () =>\n expect((await turns()).map((turn) => turn.state)).toEqual(['completed', 'completed'])\n )\n await host.close(SESSION, 'user-close')\n })","source_sha256":"1dbb06136125dd024b80afcc210ce4b65452087f13a3f0387499d80affd09550","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-stop.test.ts","line":201,"title":"leaves Grok and the next prompt alone in the gap before Grok echoes it","body_sha256":"1dbb06136125dd024b80afcc210ce4b65452087f13a3f0387499d80affd09550"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[],"parameter_groups":[],"body_support_cleanup_loops":[],"implemented_changes":[{"proposal_id":"acp-main-0001-041","summary":"Cancel receipt gate holds provider acknowledgement while child live/no-close are observed; expected reply release precedes observed host close.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"},{"proposal_id":"acp-main-0001-042","summary":"Actual request-end deadline entry is observed; fake Date/timers prove child live through29ms and deadline completion at30ms before eventual close.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"executed_see_scope_limits","mutation_evidence":["stop-immediate","stop-late"]}],"evidence":["src/main/acp/acp-structured-host.test-support.ts","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","src/main/acp/acp-structured-session-adapter.ts"],"evidence_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"evidence_source_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"original_evidence_detail":[{"path":"src/main/acp/acp-structured-host.test-support.ts","sha256":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","lines":234,"read_state":"full_body_read"},{"path":"src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","sha256":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","lines":371,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-session-adapter.ts","sha256":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e","lines":345,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"a Grok chat Stop ends Grok once it settles the turn, and the next send resumes with no notice","status":"passed"},{"full_name":"a Grok chat Stop ends Grok at the grace when Grok never reads the cancel, never waiting on its write","status":"passed"},{"full_name":"a Grok chat Stop ends Grok on a Stop of a turn it began itself, once that turn ends","status":"passed"},{"full_name":"a Grok chat Stop leaves no Grok behind whose background work could begin a turn after the Stop","status":"passed"},{"full_name":"a Grok chat Stop naming a turn that has ended stops neither the turn running now nor Grok","status":"passed"},{"full_name":"a Grok chat Stop naming a turn that has ended leaves Grok and the next prompt alone in the gap before Grok echoes it","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-host-subagent-stop.test.ts","sha256":"6e1c3a773f8713c4d2626a1584f6ed43179ef83fc655c003379de0d0a1cdf56e","reviewed_sha256":"6e1c3a773f8713c4d2626a1584f6ed43179ef83fc655c003379de0d0a1cdf56e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":41,"decision":"keep","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 2. Retained the reviewed behavioral coverage; final bytes match the pinned original.","declarations":2,"original_declarations":2,"final_declarations":2,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"implementation_status":"reviewed-unchanged","cases":[{"line":123,"end_line":150,"title":"journals the recorded cancellation after the parent ends and stdin closes, before exit","decision":"keep","reason":"Recorded fake-time shutdown preserves authoritative child-cancel outcome arriving after parent result/stdin close but before actual simulated root exit, retaining row identity/scope and ignoring a late duplicate.","source_body_sha256":"6487f230fc66c807046eceff7c8c542752eb1c74ee8f9f6a19950b483a3d023b","path":"src/main/acp/acp-structured-host-subagent-stop.test.ts","start":5371,"end":6800,"byte_start":5371,"byte_end":6800,"source":"it('journals the recorded cancellation after the parent ends and stdin closes, before exit', async () => {\n const fixture = await stoppingChild(true)\n await vi.advanceTimersByTimeAsync(TURN_ANSWER_AFTER_STOP_MS)\n expect(fixture.closeAt).toEqual([STOP_AT + TURN_ANSWER_AFTER_STOP_MS])\n expect((await fixture.turns()).at(-1)).toMatchObject({ state: 'interrupted' })\n expect((await fixture.rosters())[0].block.state).toBe('working')\n expect(fixture.childWork.views()).toMatchObject([\n { membership: 'live', providerId: 'subagent-1' }\n ])\n await vi.advanceTimersByTimeAsync(233 - TURN_ANSWER_AFTER_STOP_MS)\n const [cancelled] = await fixture.rosters()\n expect(cancelled.row.itemId).toBe(fixture.original.row.itemId)\n expect(cancelled.row.turnScope).toEqual(fixture.original.row.turnScope)\n expect(cancelled.block).toEqual({\n ...fixture.original.block,\n state: 'stopped',\n settledAt: STOP_AT + 233\n })\n await vi.advanceTimersByTimeAsync(EXIT_AFTER_STOP_MS - 233)\n expect(fixture.childWork.views()).toMatchObject([\n { membership: 'settled', outcome: 'cancelled' }\n ])\n expect((await fixture.rosters())[0].block).toEqual(cancelled.block)\n const settled = await fixture.rows()\n fixture.agent.notify(fixture.finished.method, fixture.finished.params)\n expect(await fixture.rows()).toEqual(settled)\n await fixture.host.close(SESSION, 'user-close')\n })","source_sha256":"6487f230fc66c807046eceff7c8c542752eb1c74ee8f9f6a19950b483a3d023b","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-subagent-stop.test.ts","line":123,"title":"journals the recorded cancellation after the parent ends and stdin closes, before exit","body_sha256":"6487f230fc66c807046eceff7c8c542752eb1c74ee8f9f6a19950b483a3d023b"},"proposal_ids":[],"explicit_input_controls":[]},{"line":152,"end_line":167,"title":"leaves the child unverifiable when shutdown supplies no authoritative outcome","decision":"keep","reason":"Without authoritative child outcome before root exit, ownership settles unknown and durable child row becomes unverifiable; a post-exit completion cannot rewrite it.","source_body_sha256":"d101b300ce5740697dfc4f873d5d31e69ebe2211c4c0bdcd0a3651dd870a4fb4","path":"src/main/acp/acp-structured-host-subagent-stop.test.ts","start":6804,"end":7653,"byte_start":6804,"byte_end":7653,"source":"it('leaves the child unverifiable when shutdown supplies no authoritative outcome', async () => {\n const fixture = await stoppingChild(false)\n await vi.advanceTimersByTimeAsync(EXIT_AFTER_STOP_MS)\n const [unavailable] = await fixture.rosters()\n expect(fixture.childWork.views()).toMatchObject([{ membership: 'settled', outcome: 'unknown' }])\n expect(unavailable.row.itemId).toBe(fixture.original.row.itemId)\n // Contact was lost when the session ended, a moment the host observed.\n expect(unavailable.block).toEqual({\n ...fixture.original.block,\n state: 'unverifiable',\n settledAt: expect.any(Number)\n })\n fixture.agent.notify(fixture.finished.method, fixture.finished.params)\n expect((await fixture.rosters())[0].block).toEqual(unavailable.block)\n await fixture.host.close(SESSION, 'user-close')\n })","source_sha256":"d101b300ce5740697dfc4f873d5d31e69ebe2211c4c0bdcd0a3651dd870a4fb4","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-host-subagent-stop.test.ts","line":152,"title":"leaves the child unverifiable when shutdown supplies no authoritative outcome","body_sha256":"d101b300ce5740697dfc4f873d5d31e69ebe2211c4c0bdcd0a3651dd870a4fb4"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-structured-host-subagent-stop.test.ts:29:loop","kind":"for-of","path":"src/main/acp/acp-structured-host-subagent-stop.test.ts","line":29,"end_line":31,"start":1517,"end":1579,"byte_start":1517,"byte_end":1579,"source":"for (const close of cleanup.splice(0)) {\n await close()\n }","source_sha256":"a52a638c3d4a1e3402c6346adf7d924066ec724d400b6457383536fb4f583936","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const close of cleanup.splice(0)) ","header_sha256":"dab5dcb0e524c97576d760263cd26838cf4e8c502450e7b784c86ffe87ac0f0f","input_position":{"path":"src/main/acp/acp-structured-host-subagent-stop.test.ts","line":29,"end_line":29,"start":1537,"end":1554,"byte_start":1537,"byte_end":1554},"binding":"const close","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"cleanup","decision":"keep","reason":"Close all fake-clock host rigs before timer restoration.","rows":[],"current_matches":[{"path":"src/main/acp/acp-structured-host-subagent-stop.test.ts","line":29,"body_sha256":"9e65e919a9364536b5eda12797ebb9ef047e4f36e4376a2e403616bc093e8542"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"parameter_groups":[],"body_support_cleanup_loops":[{"id":"src/main/acp/acp-structured-host-subagent-stop.test.ts:29:loop","kind":"for-of","path":"src/main/acp/acp-structured-host-subagent-stop.test.ts","line":29,"end_line":31,"start":1517,"end":1579,"byte_start":1517,"byte_end":1579,"source":"for (const close of cleanup.splice(0)) {\n await close()\n }","source_sha256":"a52a638c3d4a1e3402c6346adf7d924066ec724d400b6457383536fb4f583936","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const close of cleanup.splice(0)) ","header_sha256":"dab5dcb0e524c97576d760263cd26838cf4e8c502450e7b784c86ffe87ac0f0f","input_position":{"path":"src/main/acp/acp-structured-host-subagent-stop.test.ts","line":29,"end_line":29,"start":1537,"end":1554,"byte_start":1537,"byte_end":1554},"binding":"const close","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"cleanup","decision":"keep","reason":"Close all fake-clock host rigs before timer restoration.","rows":[],"current_matches":[{"path":"src/main/acp/acp-structured-host-subagent-stop.test.ts","line":29,"body_sha256":"9e65e919a9364536b5eda12797ebb9ef047e4f36e4376a2e403616bc093e8542"}],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"implemented_changes":[],"evidence":["src/main/acp/acp-structured-host.test-support.ts","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","src/main/acp/acp-structured-session-adapter.ts"],"evidence_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"evidence_source_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"original_evidence_detail":[{"path":"src/main/acp/acp-structured-host.test-support.ts","sha256":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","lines":234,"read_state":"full_body_read"},{"path":"src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","sha256":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","lines":371,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-session-adapter.ts","sha256":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e","lines":345,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"Grok child outcome during a full host Stop journals the recorded cancellation after the parent ends and stdin closes, before exit","status":"passed"},{"full_name":"Grok child outcome during a full host Stop leaves the child unverifiable when shutdown supplies no authoritative outcome","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-image-prompts.test.ts","sha256":"69b7508d0133f356065c7d0753c14f95b2f3935bcb7bfcc7a7df64266704c54f","reviewed_sha256":"69b7508d0133f356065c7d0753c14f95b2f3935bcb7bfcc7a7df64266704c54f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":42,"decision":"keep","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 2. Retained the reviewed behavioral coverage; final bytes match the pinned original.","declarations":2,"original_declarations":2,"final_declarations":2,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"implementation_status":"reviewed-unchanged","cases":[{"line":30,"end_line":48,"title":"sends an image to an agent whose start advertised them","decision":"keep","reason":"Real adapter dispatch serializes advertised image capability into actual session/prompt image bytes/mime/text and reports options from one initialize handshake.","source_body_sha256":"d03aff357e24573a3444f4a32342528159fee6700a0c1259d21e6b432e91e37d","path":"src/main/acp/acp-structured-image-prompts.test.ts","start":1017,"end":1843,"byte_start":1017,"byte_end":1843,"source":"it('sends an image to an agent whose start advertised them', async () => {\n const rig = await openAcpAdapterRig({\n spec: acpLaunchSpecFor('omp')!,\n initialize: { agentCapabilities: { loadSession: true, promptCapabilities: { image: true } } }\n })\n await rig.acquire()\n await expect(\n rig.adapter.dispatch({ sessionId: SESSION, clientMessageId: 'm1', body: withImage, fence: 1 })\n ).resolves.toEqual({ state: 'admitted' })\n expect((await rig.frame('session/prompt')).params).toMatchObject({\n prompt: [\n { type: 'image', mimeType: 'image/png', data: DATA },\n { type: 'text', text: 'what is this?' }\n ]\n })\n await expect(acceptsImages(rig)).resolves.toBe(true)\n // The start's answer, not a second handshake.\n expect(rig.sent('initialize')).toHaveLength(1)\n })","source_sha256":"d03aff357e24573a3444f4a32342528159fee6700a0c1259d21e6b432e91e37d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-image-prompts.test.ts","line":30,"title":"sends an image to an agent whose start advertised them","body_sha256":"d03aff357e24573a3444f4a32342528159fee6700a0c1259d21e6b432e91e37d"},"proposal_ids":[],"explicit_input_controls":[]},{"line":50,"end_line":58,"title":"refuses an image with no saved file, sending nothing, when the agent did not advertise images","decision":"keep","reason":"Unadvertised image capability rejects a data URI lacking saved-file fallback with attachmentInvalid and proves no session/prompt bytes; readOptions also remains false.","source_body_sha256":"e505f5a94de7b7fa24ae09b04c0f1c703724a03037700dedc8150ac146435442","path":"src/main/acp/acp-structured-image-prompts.test.ts","start":1847,"end":2392,"byte_start":1847,"byte_end":2392,"source":"it('refuses an image with no saved file, sending nothing, when the agent did not advertise images', async () => {\n const rig = await openAcpAdapterRig({ spec: acpLaunchSpecFor('opencode')! })\n await rig.acquire()\n await expect(\n rig.adapter.dispatch({ sessionId: SESSION, clientMessageId: 'm1', body: withImage, fence: 1 })\n ).resolves.toMatchObject({ state: 'rejected', rejection: { kind: 'attachmentInvalid' } })\n expect(rig.sent('session/prompt')).toEqual([])\n await expect(acceptsImages(rig)).resolves.toBe(false)\n })","source_sha256":"e505f5a94de7b7fa24ae09b04c0f1c703724a03037700dedc8150ac146435442","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-image-prompts.test.ts","line":50,"title":"refuses an image with no saved file, sending nothing, when the agent did not advertise images","body_sha256":"e505f5a94de7b7fa24ae09b04c0f1c703724a03037700dedc8150ac146435442"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[],"parameter_groups":[],"body_support_cleanup_loops":[],"implemented_changes":[],"evidence":["src/main/acp/acp-prompt-content.ts","src/main/acp/acp-structured-session-adapter.ts"],"evidence_sha256":{"src/main/acp/acp-prompt-content.ts":"1bb4fa939defd0714251f75fa80b2ca5bca1875f64c4ca63028bd7e021ee037a","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"evidence_source_sha256":{"src/main/acp/acp-prompt-content.ts":"1bb4fa939defd0714251f75fa80b2ca5bca1875f64c4ca63028bd7e021ee037a","src/main/acp/acp-structured-session-adapter.ts":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e"},"original_evidence_detail":[{"path":"src/main/acp/acp-prompt-content.ts","sha256":"1bb4fa939defd0714251f75fa80b2ca5bca1875f64c4ca63028bd7e021ee037a","lines":223,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-session-adapter.ts","sha256":"76d41e02331487cb9892f41087087160148f2a2dfc300a14a714117ff18f137e","lines":345,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"ACP image prompts sends an image to an agent whose start advertised them","status":"passed"},{"full_name":"ACP image prompts refuses an image with no saved file, sending nothing, when the agent did not advertise images","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","sha256":"ab5a6721f1359393ed6e8d677ae4045f7317b25a3b4aa37c2d7bf27d4dabbde9","reviewed_sha256":"ab5a6721f1359393ed6e8d677ae4045f7317b25a3b4aa37c2d7bf27d4dabbde9","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":43,"decision":"keep","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 7. Retained the reviewed behavioral coverage; final bytes match the pinned original.","declarations":7,"original_declarations":7,"final_declarations":7,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"implementation_status":"reviewed-unchanged","cases":[{"line":52,"end_line":59,"title":"runs `omp acp` pointed at the agent directory the chat pinned, in the chat's own mode","decision":"keep","reason":"Real composed resolver pins account directory and maps ask/full-access into sealed launch while OMP command stays acp without a fabricated bypass flag.","source_body_sha256":"917c50d8f5b3fd723fb726ed4e30631e4a6f71d299db96960d0e6719b0a39826","body_loops":[{"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":53,"source":"for (const permissionMode of ['ask', 'full-access'] as const) ","classification":"input scenarios","decision":"keep","reason":"Actual resolver maps distinct host modes while preserving OMP no-bypass argv and pinned account folder.","inputs":["ask","full-access"]}],"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","start":2001,"end":2510,"byte_start":2001,"byte_end":2510,"source":"it(\"runs `omp acp` pointed at the agent directory the chat pinned, in the chat's own mode\", async () => {\n for (const permissionMode of ['ask', 'full-access'] as const) {\n const launch = await resolver(ompRecord())({ identity, spawnToken: 'token', permissionMode })\n const fullAccess = permissionMode === 'full-access'\n expect(launch).toMatchObject({ command: '/resolved/omp', args: ['acp'], fullAccess })\n expect(launch.env.PI_CODING_AGENT_DIR).toBe('/home/user/.omp/agent')\n }\n })","source_sha256":"917c50d8f5b3fd723fb726ed4e30631e4a6f71d299db96960d0e6719b0a39826","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":52,"title":"runs `omp acp` pointed at the agent directory the chat pinned, in the chat's own mode","body_sha256":"917c50d8f5b3fd723fb726ed4e30631e4a6f71d299db96960d0e6719b0a39826"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-launch-resolution-omp.test.ts:53:loop"]},{"line":61,"end_line":88,"title":"passes the user's own OMP environment through unchanged","decision":"keep","reason":"Real resolver and process-spawn environment retain user OMP settings while stripping inherited pane/status and scratch-folder identity.","source_body_sha256":"3ca7ed3e71f57d3e2881022bfee588de97c7981029ee26595abf01c77b00265a","path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","start":2514,"end":3568,"byte_start":2514,"byte_end":3568,"source":"it(\"passes the user's own OMP environment through unchanged\", async () => {\n const userEnv = {\n OMP_PROFILE: 'work',\n PI_CONFIG_DIR: 'relative/config',\n PI_SMOL_MODEL: 'fast',\n ANTHROPIC_API_KEY: 'sk-test'\n }\n const launch = await resolver(ompRecord(), { launchEnv: userEnv })({ identity })\n // Only the shared pane and hook keys, and an inherited scratch folder: this chat has none.\n expect(launch.envToDelete).toEqual([\n ...STRUCTURED_CHILD_ENV_TO_DELETE,\n NATIVE_CHAT_SCRATCH_DIR_ENV,\n LEGACY_NATIVE_CHAT_VISUALS_DIR_ENV\n ])\n const child = createProviderSpawnSpec(\n {\n command: launch.command,\n args: launch.args,\n env: launch.env,\n envToDelete: [...STRUCTURED_CHILD_ENV_TO_DELETE, ...launch.envToDelete]\n },\n { ORCA_PANE_KEY: 'tab-1:pane-1' },\n 'darwin'\n ).env\n expect(child).toMatchObject(userEnv)\n // A pane's identity would let OMP's Orca status extension report for this chat too.\n expect(child.ORCA_PANE_KEY).toBeUndefined()\n })","source_sha256":"3ca7ed3e71f57d3e2881022bfee588de97c7981029ee26595abf01c77b00265a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":61,"title":"passes the user's own OMP environment through unchanged","body_sha256":"3ca7ed3e71f57d3e2881022bfee588de97c7981029ee26595abf01c77b00265a"},"proposal_ids":[],"explicit_input_controls":[]},{"line":90,"end_line":95,"title":"keeps a chat on the directory it pinned when the launch env names another","decision":"keep","reason":"Pinned account home overrides a competing launch environment directory.","source_body_sha256":"ce2ea72c207ccd083d8416df6208a269910f4ff30d0ba05292a98eee8e57040f","path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","start":3572,"end":3875,"byte_start":3572,"byte_end":3875,"source":"it('keeps a chat on the directory it pinned when the launch env names another', async () => {\n const launch = await resolver(ompRecord(), {\n launchEnv: { PI_CODING_AGENT_DIR: '/data/other-agent' }\n })({ identity })\n expect(launch.env.PI_CODING_AGENT_DIR).toBe('/home/user/.omp/agent')\n })","source_sha256":"ce2ea72c207ccd083d8416df6208a269910f4ff30d0ba05292a98eee8e57040f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":90,"title":"keeps a chat on the directory it pinned when the launch env names another","body_sha256":"ce2ea72c207ccd083d8416df6208a269910f4ff30d0ba05292a98eee8e57040f"},"proposal_ids":[],"explicit_input_controls":[]},{"line":97,"end_line":101,"title":"refuses a record that pins another agent's directory","decision":"keep","reason":"Wrong-agent account binding is refused by real resolver rather than accepted by mocked store.","source_body_sha256":"f31fd3a80bb83bd5fac55e625c6bd451f43abf8fddb123a6899262f825c8bb03","path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","start":3879,"end":4116,"byte_start":3879,"byte_end":4116,"source":"it(\"refuses a record that pins another agent's directory\", async () => {\n await expect(\n resolver(ompRecord({ variable: 'GROK_HOME', path: '/home/user/.grok' }))({ identity })\n ).rejects.toThrow(/pin PI_CODING_AGENT_DIR/)\n })","source_sha256":"f31fd3a80bb83bd5fac55e625c6bd451f43abf8fddb123a6899262f825c8bb03","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":97,"title":"refuses a record that pins another agent's directory","body_sha256":"f31fd3a80bb83bd5fac55e625c6bd451f43abf8fddb123a6899262f825c8bb03"},"proposal_ids":[],"explicit_input_controls":[]},{"line":103,"end_line":106,"title":"admits OMP %s","decision":"keep","reason":"Version rows exercise exact minimum, later same-major, later-major and prerelease parsing through real launch version guard.","source_body_sha256":"b82be00407299c0e9ad58d1b91354d224427457c3f7044433fc74b3f6a82e27c","parameter_groups":[{"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":103,"source":"['17.0.5', '17.2.12', '18.4.5', '18.0.0-beta.1']","decision":"keep","reason":"","rows":[{"input":"17.0.5","decision":"keep","reason":"Exact supported minimum."},{"input":"17.2.12","decision":"keep","reason":"Later same-major minor release."},{"input":"18.4.5","decision":"keep","reason":"Later stable major release."},{"input":"18.0.0-beta.1","decision":"keep","reason":"Later-major prerelease satisfies supported earlier floor."}],"row_count":4}],"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","start":4120,"end":4387,"byte_start":4120,"byte_end":4387,"source":"it.each(['17.0.5', '17.2.12', '18.4.5', '18.0.0-beta.1'])('admits OMP %s', async (version) => {\n const launch = resolver(ompRecord(), { probeVersion: async () => ({ version }) })\n await expect(launch({ identity })).resolves.toMatchObject({ args: ['acp'] })\n })","source_sha256":"b82be00407299c0e9ad58d1b91354d224427457c3f7044433fc74b3f6a82e27c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":103,"title":"admits OMP %s","body_sha256":"b82be00407299c0e9ad58d1b91354d224427457c3f7044433fc74b3f6a82e27c"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-launch-resolution-omp.test.ts:103:parameter-table"]},{"line":108,"end_line":113,"title":"refuses OMP %s before spawning it as too old","decision":"keep","reason":"Below-patch and below-major releases are refused with concrete installation identity and required version.","source_body_sha256":"d0de625ee2e6ab92136453b8cfa5bce415209d0fa17de89318a270e8ab2c4e5a","parameter_groups":[{"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":108,"source":"['17.0.4', '16.9.0']","decision":"keep","reason":"","rows":[{"input":"17.0.4","decision":"keep","reason":"One patch below supported floor."},{"input":"16.9.0","decision":"keep","reason":"Prior major cannot pass despite high minor."}],"row_count":2}],"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","start":4391,"end":4740,"byte_start":4391,"byte_end":4740,"source":"it.each(['17.0.4', '16.9.0'])('refuses OMP %s before spawning it as too old', async (version) => {\n const launch = resolver(ompRecord(), { probeVersion: async () => ({ version }) })\n await expect(launch({ identity })).rejects.toMatchObject({\n installation: { agent: 'omp', installedVersion: version, minimumVersion: '17.0.5' }\n })\n })","source_sha256":"d0de625ee2e6ab92136453b8cfa5bce415209d0fa17de89318a270e8ab2c4e5a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":108,"title":"refuses OMP %s before spawning it as too old","body_sha256":"d0de625ee2e6ab92136453b8cfa5bce415209d0fa17de89318a270e8ab2c4e5a"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-launch-resolution-omp.test.ts:108:parameter-table"]},{"line":115,"end_line":123,"title":"asks the version of exactly the binary, folder and environment it spawns","decision":"keep","reason":"Version-probe boundary receives exact resolved executable, launch cwd and sealed environment; observable caller-to-provider contract rather than solely a spy on an internal chain.","source_body_sha256":"b66e43b35407877ec3f09f08ecf20bccc9b07ed97b4f8177f149caeae7440a88","path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","start":4744,"end":5218,"byte_start":4744,"byte_end":5218,"source":"it('asks the version of exactly the binary, folder and environment it spawns', async () => {\n const asked: Parameters<\n NonNullable[1]['probeVersion']>\n >[0][] = []\n const launch = await resolver(ompRecord(), {\n probeVersion: async (input) => (asked.push(input), { version: '17.0.5' })\n })({ identity })\n expect(asked).toEqual([{ program: launch.command, cwd: launch.cwd, env: launch.env }])\n })","source_sha256":"b66e43b35407877ec3f09f08ecf20bccc9b07ed97b4f8177f149caeae7440a88","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":115,"title":"asks the version of exactly the binary, folder and environment it spawns","body_sha256":"b66e43b35407877ec3f09f08ecf20bccc9b07ed97b4f8177f149caeae7440a88"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-structured-launch-resolution-omp.test.ts:53:loop","kind":"for-of","path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":53,"end_line":58,"start":2111,"end":2505,"byte_start":2111,"byte_end":2505,"source":"for (const permissionMode of ['ask', 'full-access'] as const) {\n const launch = await resolver(ompRecord())({ identity, spawnToken: 'token', permissionMode })\n const fullAccess = permissionMode === 'full-access'\n expect(launch).toMatchObject({ command: '/resolved/omp', args: ['acp'], fullAccess })\n expect(launch.env.PI_CODING_AGENT_DIR).toBe('/home/user/.omp/agent')\n }","source_sha256":"4d2af0dc58c420b4a203d616882227bd7f622cc29b79d1189a63896e6d16551f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const permissionMode of ['ask', 'full-access'] as const) ","header_sha256":"bcf7aa5b2c1d4f3ba9f7a11cb2cee82bcf38d4e55a1811b7693301c455b8b802","input_position":{"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":53,"end_line":53,"start":2140,"end":2171,"byte_start":2140,"byte_end":2171},"binding":"const permissionMode","resolution":[],"enclosing_case":{"line":52,"title":"runs `omp acp` pointed at the agent directory the chat pinned, in the chat's own mode"},"affected_case_lines":[],"classification":"input scenarios","decision":"keep","reason":"Actual resolver maps distinct host modes while preserving OMP no-bypass argv and pinned account folder.","original_inputs":["ask","full-access"],"rows":[{"index":1,"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":53,"end_line":53,"start":2141,"end":2146,"source":"'ask'","value":{"kind":"string","value":"ask"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"d57b7224480b764176e2362c15005dce3a4305d800ab9eb8ade9a13e53b6f508","byte_start":2141,"byte_end":2146,"decision":"keep","reason":"Actual resolver maps distinct host modes while preserving OMP no-bypass argv and pinned account folder."},{"index":2,"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":53,"end_line":53,"start":2148,"end":2161,"source":"'full-access'","value":{"kind":"string","value":"full-access"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"8441239497b87b74de39add30011e7292faf063e509299c88dbaad81df173789","byte_start":2148,"byte_end":2161,"decision":"keep","reason":"Actual resolver maps distinct host modes while preserving OMP no-bypass argv and pinned account folder."}],"current_matches":[{"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":53,"body_sha256":"a36c9ad3b0d9b46d053bdca0b5228075173b18d24eebbf86e9a1e5b5811d794c"}],"policy":"Exact literal inputs within this traversal; not additional declared test cases."},{"id":"src/main/acp/acp-structured-launch-resolution-omp.test.ts:103:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":103,"end_line":106,"start":4120,"end":4387,"byte_start":4120,"byte_end":4387,"source":"['17.0.5', '17.2.12', '18.4.5', '18.0.0-beta.1']","source_sha256":"6cfceeff7a0b3562bdf6c3c8422544670a8ad4086a288d8e6103f9da62e38cd0","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":103,"end_line":103,"start":4128,"end":4176,"byte_start":4128,"byte_end":4176},"binding":"it.each","resolution":[],"enclosing_case":{"line":103,"title":"admits OMP %s"},"affected_case_lines":[103],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":103,"end_line":103,"start":4129,"end":4137,"source":"'17.0.5'","value":{"kind":"string","value":"17.0.5"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"bed8a1add86c1795abd7f2a3c310e596c85e6abf5369bb245f8272e54cf2e2db","byte_start":4129,"byte_end":4137,"input_label":"17.0.5","decision":"keep","reason":"Exact supported minimum."},{"index":2,"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":103,"end_line":103,"start":4139,"end":4148,"source":"'17.2.12'","value":{"kind":"string","value":"17.2.12"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"f6946654404e32e85b5869254f3eae58ca78a1c8dfee7286582f7bb4373fc0b3","byte_start":4139,"byte_end":4148,"input_label":"17.2.12","decision":"keep","reason":"Later same-major minor release."},{"index":3,"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":103,"end_line":103,"start":4150,"end":4158,"source":"'18.4.5'","value":{"kind":"string","value":"18.4.5"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"4287d4a0593be06b142883749fc5fd44b07361e5391627fdf99455b33e40d934","byte_start":4150,"byte_end":4158,"input_label":"18.4.5","decision":"keep","reason":"Later stable major release."},{"index":4,"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":103,"end_line":103,"start":4160,"end":4175,"source":"'18.0.0-beta.1'","value":{"kind":"string","value":"18.0.0-beta.1"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"97399cfe63492f6a1e6b94f1b4664ec3fd30228d1f639bc190cae3c6ffa94b72","byte_start":4160,"byte_end":4175,"input_label":"18.0.0-beta.1","decision":"keep","reason":"Later-major prerelease satisfies supported earlier floor."}],"original_row_count":4},{"id":"src/main/acp/acp-structured-launch-resolution-omp.test.ts:108:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":108,"end_line":113,"start":4391,"end":4740,"byte_start":4391,"byte_end":4740,"source":"['17.0.4', '16.9.0']","source_sha256":"31d01011ef534cbed25cd5577c46e1859f959fff60f9cae4a74530c2ac9c3c4c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":108,"end_line":108,"start":4399,"end":4419,"byte_start":4399,"byte_end":4419},"binding":"it.each","resolution":[],"enclosing_case":{"line":108,"title":"refuses OMP %s before spawning it as too old"},"affected_case_lines":[108],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":108,"end_line":108,"start":4400,"end":4408,"source":"'17.0.4'","value":{"kind":"string","value":"17.0.4"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"1b45e084bf40e4ecc0b44739075d600d3fa34f2d52954733aa3067faf506682c","byte_start":4400,"byte_end":4408,"input_label":"17.0.4","decision":"keep","reason":"One patch below supported floor."},{"index":2,"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":108,"end_line":108,"start":4410,"end":4418,"source":"'16.9.0'","value":{"kind":"string","value":"16.9.0"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"d8c97cff9155557359228f0f017ecf0dc80ed6d5bbf5c999ca2600074c1577a9","byte_start":4410,"byte_end":4418,"input_label":"16.9.0","decision":"keep","reason":"Prior major cannot pass despite high minor."}],"original_row_count":2}],"parameter_groups":[{"id":"src/main/acp/acp-structured-launch-resolution-omp.test.ts:103:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":103,"end_line":106,"start":4120,"end":4387,"byte_start":4120,"byte_end":4387,"source":"['17.0.5', '17.2.12', '18.4.5', '18.0.0-beta.1']","source_sha256":"6cfceeff7a0b3562bdf6c3c8422544670a8ad4086a288d8e6103f9da62e38cd0","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":103,"end_line":103,"start":4128,"end":4176,"byte_start":4128,"byte_end":4176},"binding":"it.each","resolution":[],"enclosing_case":{"line":103,"title":"admits OMP %s"},"affected_case_lines":[103],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":103,"end_line":103,"start":4129,"end":4137,"source":"'17.0.5'","value":{"kind":"string","value":"17.0.5"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"bed8a1add86c1795abd7f2a3c310e596c85e6abf5369bb245f8272e54cf2e2db","byte_start":4129,"byte_end":4137,"input_label":"17.0.5","decision":"keep","reason":"Exact supported minimum."},{"index":2,"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":103,"end_line":103,"start":4139,"end":4148,"source":"'17.2.12'","value":{"kind":"string","value":"17.2.12"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"f6946654404e32e85b5869254f3eae58ca78a1c8dfee7286582f7bb4373fc0b3","byte_start":4139,"byte_end":4148,"input_label":"17.2.12","decision":"keep","reason":"Later same-major minor release."},{"index":3,"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":103,"end_line":103,"start":4150,"end":4158,"source":"'18.4.5'","value":{"kind":"string","value":"18.4.5"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"4287d4a0593be06b142883749fc5fd44b07361e5391627fdf99455b33e40d934","byte_start":4150,"byte_end":4158,"input_label":"18.4.5","decision":"keep","reason":"Later stable major release."},{"index":4,"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":103,"end_line":103,"start":4160,"end":4175,"source":"'18.0.0-beta.1'","value":{"kind":"string","value":"18.0.0-beta.1"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"97399cfe63492f6a1e6b94f1b4664ec3fd30228d1f639bc190cae3c6ffa94b72","byte_start":4160,"byte_end":4175,"input_label":"18.0.0-beta.1","decision":"keep","reason":"Later-major prerelease satisfies supported earlier floor."}],"original_row_count":4},{"id":"src/main/acp/acp-structured-launch-resolution-omp.test.ts:108:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":108,"end_line":113,"start":4391,"end":4740,"byte_start":4391,"byte_end":4740,"source":"['17.0.4', '16.9.0']","source_sha256":"31d01011ef534cbed25cd5577c46e1859f959fff60f9cae4a74530c2ac9c3c4c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":108,"end_line":108,"start":4399,"end":4419,"byte_start":4399,"byte_end":4419},"binding":"it.each","resolution":[],"enclosing_case":{"line":108,"title":"refuses OMP %s before spawning it as too old"},"affected_case_lines":[108],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":108,"end_line":108,"start":4400,"end":4408,"source":"'17.0.4'","value":{"kind":"string","value":"17.0.4"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"1b45e084bf40e4ecc0b44739075d600d3fa34f2d52954733aa3067faf506682c","byte_start":4400,"byte_end":4408,"input_label":"17.0.4","decision":"keep","reason":"One patch below supported floor."},{"index":2,"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":108,"end_line":108,"start":4410,"end":4418,"source":"'16.9.0'","value":{"kind":"string","value":"16.9.0"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"d8c97cff9155557359228f0f017ecf0dc80ed6d5bbf5c999ca2600074c1577a9","byte_start":4410,"byte_end":4418,"input_label":"16.9.0","decision":"keep","reason":"Prior major cannot pass despite high minor."}],"original_row_count":2}],"body_support_cleanup_loops":[{"id":"src/main/acp/acp-structured-launch-resolution-omp.test.ts:53:loop","kind":"for-of","path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":53,"end_line":58,"start":2111,"end":2505,"byte_start":2111,"byte_end":2505,"source":"for (const permissionMode of ['ask', 'full-access'] as const) {\n const launch = await resolver(ompRecord())({ identity, spawnToken: 'token', permissionMode })\n const fullAccess = permissionMode === 'full-access'\n expect(launch).toMatchObject({ command: '/resolved/omp', args: ['acp'], fullAccess })\n expect(launch.env.PI_CODING_AGENT_DIR).toBe('/home/user/.omp/agent')\n }","source_sha256":"4d2af0dc58c420b4a203d616882227bd7f622cc29b79d1189a63896e6d16551f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const permissionMode of ['ask', 'full-access'] as const) ","header_sha256":"bcf7aa5b2c1d4f3ba9f7a11cb2cee82bcf38d4e55a1811b7693301c455b8b802","input_position":{"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":53,"end_line":53,"start":2140,"end":2171,"byte_start":2140,"byte_end":2171},"binding":"const permissionMode","resolution":[],"enclosing_case":{"line":52,"title":"runs `omp acp` pointed at the agent directory the chat pinned, in the chat's own mode"},"affected_case_lines":[],"classification":"input scenarios","decision":"keep","reason":"Actual resolver maps distinct host modes while preserving OMP no-bypass argv and pinned account folder.","original_inputs":["ask","full-access"],"rows":[{"index":1,"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":53,"end_line":53,"start":2141,"end":2146,"source":"'ask'","value":{"kind":"string","value":"ask"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"d57b7224480b764176e2362c15005dce3a4305d800ab9eb8ade9a13e53b6f508","byte_start":2141,"byte_end":2146,"decision":"keep","reason":"Actual resolver maps distinct host modes while preserving OMP no-bypass argv and pinned account folder."},{"index":2,"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":53,"end_line":53,"start":2148,"end":2161,"source":"'full-access'","value":{"kind":"string","value":"full-access"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"8441239497b87b74de39add30011e7292faf063e509299c88dbaad81df173789","byte_start":2148,"byte_end":2161,"decision":"keep","reason":"Actual resolver maps distinct host modes while preserving OMP no-bypass argv and pinned account folder."}],"current_matches":[{"path":"src/main/acp/acp-structured-launch-resolution-omp.test.ts","line":53,"body_sha256":"a36c9ad3b0d9b46d053bdca0b5228075173b18d24eebbf86e9a1e5b5811d794c"}],"policy":"Exact literal inputs within this traversal; not additional declared test cases."}],"implemented_changes":[],"evidence":["src/main/acp/acp-launch-specs.ts","src/main/acp/acp-structured-launch-resolution.ts","src/main/runtime/structured-agent-launch-composition.test-support.ts","src/main/runtime/structured-agent-launch-composition.ts"],"evidence_sha256":{"src/main/acp/acp-launch-specs.ts":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","src/main/acp/acp-structured-launch-resolution.ts":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","src/main/runtime/structured-agent-launch-composition.test-support.ts":"a5d109637e695829b306570250295316ac6f653492f66bd9da7126808a70a962","src/main/runtime/structured-agent-launch-composition.ts":"647e06f46a4321a1081540dc9c7cf64c069268c6c3eb422d7c63fd74f27d6aae"},"evidence_source_sha256":{"src/main/acp/acp-launch-specs.ts":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","src/main/acp/acp-structured-launch-resolution.ts":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","src/main/runtime/structured-agent-launch-composition.test-support.ts":"a5d109637e695829b306570250295316ac6f653492f66bd9da7126808a70a962","src/main/runtime/structured-agent-launch-composition.ts":"647e06f46a4321a1081540dc9c7cf64c069268c6c3eb422d7c63fd74f27d6aae"},"original_evidence_detail":[{"path":"src/main/acp/acp-launch-specs.ts","sha256":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","lines":352,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-launch-resolution.ts","sha256":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","lines":342,"read_state":"full_body_read"},{"path":"src/main/runtime/structured-agent-launch-composition.test-support.ts","sha256":"a5d109637e695829b306570250295316ac6f653492f66bd9da7126808a70a962","lines":152,"read_state":"full_body_read"},{"path":"src/main/runtime/structured-agent-launch-composition.ts","sha256":"647e06f46a4321a1081540dc9c7cf64c069268c6c3eb422d7c63fd74f27d6aae","lines":249,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"OMP ACP launch resolution runs `omp acp` pointed at the agent directory the chat pinned, in the chat's own mode","status":"passed"},{"full_name":"OMP ACP launch resolution passes the user's own OMP environment through unchanged","status":"passed"},{"full_name":"OMP ACP launch resolution keeps a chat on the directory it pinned when the launch env names another","status":"passed"},{"full_name":"OMP ACP launch resolution refuses a record that pins another agent's directory","status":"passed"},{"full_name":"OMP ACP launch resolution admits OMP 17.0.5","status":"passed"},{"full_name":"OMP ACP launch resolution admits OMP 17.2.12","status":"passed"},{"full_name":"OMP ACP launch resolution admits OMP 18.4.5","status":"passed"},{"full_name":"OMP ACP launch resolution admits OMP 18.0.0-beta.1","status":"passed"},{"full_name":"OMP ACP launch resolution refuses OMP 17.0.4 before spawning it as too old","status":"passed"},{"full_name":"OMP ACP launch resolution refuses OMP 16.9.0 before spawning it as too old","status":"passed"},{"full_name":"OMP ACP launch resolution asks the version of exactly the binary, folder and environment it spawns","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","sha256":"60d27f19c6056dbc77057524b62378cca19de820aa007a4f91b386ddafe3450c","reviewed_sha256":"a2603bc0c5912bf5eb496eb50c7a8473b54de5ed721d38981cdd40f63464fcad","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":44,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 14, fix 2. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":16,"original_declarations":16,"final_declarations":16,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":80,"end_line":89,"title":"runs `opencode acp` as an ACP client with no question tool, whatever the user set","decision":"keep","reason":"User attempts to override ACP client/question-tool environment are replaced by the protocol launch requirements and real acp argv.","source_body_sha256":"d56f90ad524e7ec60daaa520e157c6c0818f317c7c50696180c370f4b44c4248","path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","start":3155,"end":3632,"byte_start":3155,"byte_end":3632,"source":"it('runs `opencode acp` as an ACP client with no question tool, whatever the user set', async () => {\n const launch = await resolver(openCodeRecord(UNMANAGED), {\n launchEnv: { OPENCODE_CLIENT: 'tui', OPENCODE_ENABLE_QUESTION_TOOL: 'true' }\n })({ identity })\n expect(launch).toMatchObject({ command: '/resolved/opencode', args: ['acp'] })\n expect(launch.env).toMatchObject({\n OPENCODE_CLIENT: 'acp',\n OPENCODE_ENABLE_QUESTION_TOOL: 'false'\n })\n })","source_sha256":"d56f90ad524e7ec60daaa520e157c6c0818f317c7c50696180c370f4b44c4248","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":80,"title":"runs `opencode acp` as an ACP client with no question tool, whatever the user set","body_sha256":"d56f90ad524e7ec60daaa520e157c6c0818f317c7c50696180c370f4b44c4248"},"proposal_ids":[],"explicit_input_controls":[]},{"line":91,"end_line":115,"title":"starts OpenCode with the user's own folders, database and inline credentials","decision":"keep","reason":"Unmanaged account retains user HOME/data/state/database/inline credentials through real launch and final process env merge.","source_body_sha256":"01f9dbf484951121d05b75a52b2d09d3ac226b13b2f7b7c0fe7e355694b9d036","path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","start":3636,"end":4453,"byte_start":3636,"byte_end":4453,"source":"it(\"starts OpenCode with the user's own folders, database and inline credentials\", async () => {\n const userEnv = {\n HOME: 'relative/home',\n XDG_DATA_HOME: 'relative/data',\n XDG_STATE_HOME: '/data/opencode-state',\n OPENCODE_DB: 'work.db',\n OPENCODE_AUTH_CONTENT: '{\"secret\":1}'\n }\n const launch = await resolver(openCodeRecord(UNMANAGED), {\n base: { XDG_DATA_HOME: '/elsewhere' },\n launchEnv: userEnv\n })({ identity })\n expect(launch.env).toMatchObject(userEnv)\n const child = createProviderSpawnSpec(\n {\n command: launch.command,\n args: launch.args,\n env: launch.env,\n envToDelete: [...STRUCTURED_CHILD_ENV_TO_DELETE, ...launch.envToDelete]\n },\n {},\n 'darwin'\n ).env\n expect(child).toMatchObject(userEnv)\n })","source_sha256":"01f9dbf484951121d05b75a52b2d09d3ac226b13b2f7b7c0fe7e355694b9d036","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":91,"title":"starts OpenCode with the user's own folders, database and inline credentials","body_sha256":"01f9dbf484951121d05b75a52b2d09d3ac226b13b2f7b7c0fe7e355694b9d036"},"proposal_ids":[],"explicit_input_controls":[]},{"line":117,"end_line":134,"title":"leaves unset what the user left unset, whatever Orca itself inherited","decision":"keep","reason":"Absent user account keys are scrubbed from inherited Orca environment through actual process spawn-spec assembly.","source_body_sha256":"35c79c26c3dedeba8c9ad16ccf649c6c7ab012b92911a6acd03687517dbafc9b","path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","start":4457,"end":5171,"byte_start":4457,"byte_end":5171,"source":"it('leaves unset what the user left unset, whatever Orca itself inherited', async () => {\n const inheritedEnv = { OPENCODE_DB: '/elsewhere/other.db', OPENCODE_AUTH_CONTENT: '' }\n const launch = await resolver(openCodeRecord(UNMANAGED), { inheritedEnv })({ identity })\n expect(launch.env.XDG_DATA_HOME).toBeUndefined()\n expect(launch.env.OPENCODE_DB).toBeUndefined()\n const child = createProviderSpawnSpec(\n {\n command: launch.command,\n args: launch.args,\n env: launch.env,\n envToDelete: launch.envToDelete\n },\n inheritedEnv,\n 'darwin'\n ).env\n expect(child.OPENCODE_DB).toBeUndefined()\n expect(child.OPENCODE_AUTH_CONTENT).toBeUndefined()\n })","source_sha256":"35c79c26c3dedeba8c9ad16ccf649c6c7ab012b92911a6acd03687517dbafc9b","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":117,"title":"leaves unset what the user left unset, whatever Orca itself inherited","body_sha256":"35c79c26c3dedeba8c9ad16ccf649c6c7ab012b92911a6acd03687517dbafc9b"},"proposal_ids":[],"explicit_input_controls":[]},{"line":136,"end_line":146,"title":"points a managed profile at its own directories","decision":"keep","reason":"Managed locator resolves profile-owned data/state/db/auth boundary rather than unmanaged defaults.","source_body_sha256":"1f2bac0d2dc62fbedd007d50f54819c9dae0ee1a967dbdc2de407bda1c97c484","path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","start":5175,"end":5616,"byte_start":5175,"byte_end":5616,"source":"it('points a managed profile at its own directories', async () => {\n const launch = await resolver(\n openCodeRecord({ kind: 'opencode', locator: { kind: 'managed', managedProfileId: PROFILE } })\n )({ identity })\n expect(launch.env).toMatchObject({\n XDG_DATA_HOME: `/profiles/${PROFILE}/data`,\n XDG_STATE_HOME: `/profiles/${PROFILE}/state`,\n OPENCODE_DB: 'opencode.db',\n OPENCODE_AUTH_CONTENT: ''\n })\n })","source_sha256":"1f2bac0d2dc62fbedd007d50f54819c9dae0ee1a967dbdc2de407bda1c97c484","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":136,"title":"points a managed profile at its own directories","body_sha256":"1f2bac0d2dc62fbedd007d50f54819c9dae0ee1a967dbdc2de407bda1c97c484"},"proposal_ids":[],"explicit_input_controls":[]},{"line":148,"end_line":169,"title":"restores the user's own config directory over Orca's status overlay","decision":"keep","reason":"Recorded pre-overlay source config replaces inherited Orca status overlay and all overlay metadata is stripped from process env.","source_body_sha256":"6eac13180b1ff9d14a17fcc3b10ff68b1c8cae6f9051daea66fc9cdeb18c5ade","path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","start":5620,"end":6570,"byte_start":5620,"byte_end":6570,"source":"it(\"restores the user's own config directory over Orca's status overlay\", async () => {\n const inheritedEnv = {\n OPENCODE_CONFIG_DIR: '/orca/overlay',\n ORCA_OPENCODE_CONFIG_DIR: '/orca/overlay',\n ORCA_OPENCODE_SOURCE_CONFIG_DIR: '/home/user/.config/opencode-mine',\n ORCA_OPENCODE_AGENT: 'opencode'\n }\n const launch = await resolver(openCodeRecord(UNMANAGED), { inheritedEnv })({ identity })\n expect(launch.env.OPENCODE_CONFIG_DIR).toBe('/home/user/.config/opencode-mine')\n const child = createProviderSpawnSpec(\n {\n command: launch.command,\n args: launch.args,\n env: launch.env,\n envToDelete: [...STRUCTURED_CHILD_ENV_TO_DELETE, ...launch.envToDelete]\n },\n inheritedEnv,\n 'darwin'\n ).env\n expect(Object.keys(child).filter((key) => key.startsWith('ORCA_OPENCODE_'))).toEqual([])\n expect(child.OPENCODE_CONFIG_DIR).toBe('/home/user/.config/opencode-mine')\n })","source_sha256":"6eac13180b1ff9d14a17fcc3b10ff68b1c8cae6f9051daea66fc9cdeb18c5ade","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":148,"title":"restores the user's own config directory over Orca's status overlay","body_sha256":"6eac13180b1ff9d14a17fcc3b10ff68b1c8cae6f9051daea66fc9cdeb18c5ade"},"proposal_ids":[],"explicit_input_controls":[]},{"line":171,"end_line":189,"title":"drops an inherited overlay with no recorded source, so the default config is read","decision":"keep","reason":"Inherited overlay with no source record is dropped at final child environment, preserving default-config lookup.","source_body_sha256":"92f403290a9059e5cb64159bd4c247cfe57eff6afb0fa91b56935295b1521bd2","path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","start":6574,"end":7281,"byte_start":6574,"byte_end":7281,"source":"it('drops an inherited overlay with no recorded source, so the default config is read', async () => {\n const inheritedEnv = {\n OPENCODE_CONFIG_DIR: '/orca/overlay',\n ORCA_OPENCODE_CONFIG_DIR: '/orca/overlay'\n }\n const launch = await resolver(openCodeRecord(UNMANAGED), { inheritedEnv })({ identity })\n const child = createProviderSpawnSpec(\n {\n command: launch.command,\n args: launch.args,\n env: launch.env,\n envToDelete: [...STRUCTURED_CHILD_ENV_TO_DELETE, ...launch.envToDelete]\n },\n inheritedEnv,\n 'darwin'\n ).env\n expect(child.OPENCODE_CONFIG_DIR).toBeUndefined()\n expect(child.ORCA_OPENCODE_CONFIG_DIR).toBeUndefined()\n })","source_sha256":"92f403290a9059e5cb64159bd4c247cfe57eff6afb0fa91b56935295b1521bd2","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":171,"title":"drops an inherited overlay with no recorded source, so the default config is read","body_sha256":"92f403290a9059e5cb64159bd4c247cfe57eff6afb0fa91b56935295b1521bd2"},"proposal_ids":[],"explicit_input_controls":[]},{"line":191,"end_line":201,"title":"drops Orca's retired shared plugin directory an old shell still exports","decision":"keep","reason":"Retired shared plugin directory is recognized and removed by real scrubber; its marker is also removed.","source_body_sha256":"2b03b101e813a0e796d6ebb782749cc3594b65ae4fea352a09c9531e45fe219d","path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","start":7285,"end":7773,"byte_start":7285,"byte_end":7773,"source":"it(\"drops Orca's retired shared plugin directory an old shell still exports\", () => {\n const env: Record = {\n OPENCODE_CONFIG_DIR: '/orca-data/opencode-hooks/shared',\n ORCA_DATA_ACCOUNT_PROVIDER: 'opencode'\n }\n const removed = scrubOpenCodeAcpEnvironment(env, {}, '/orca-data')\n expect(env.OPENCODE_CONFIG_DIR).toBeUndefined()\n expect(removed).toEqual(\n expect.arrayContaining(['OPENCODE_CONFIG_DIR', 'ORCA_DATA_ACCOUNT_PROVIDER'])\n )\n })","source_sha256":"2b03b101e813a0e796d6ebb782749cc3594b65ae4fea352a09c9531e45fe219d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":191,"title":"drops Orca's retired shared plugin directory an old shell still exports","body_sha256":"2b03b101e813a0e796d6ebb782749cc3594b65ae4fea352a09c9531e45fe219d"},"proposal_ids":[],"explicit_input_controls":[]},{"line":203,"end_line":213,"title":"keeps a config directory the user set for OpenCode's launches","decision":"keep","reason":"Explicit user launch config overrides scrubbed inherited overlay and remains absent from deletion list.","source_body_sha256":"570983a2bac783caa134760ae0f1e776e3114843d4101e9bdd92dd590cf00561","path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","start":7777,"end":8283,"byte_start":7777,"byte_end":8283,"source":"it(\"keeps a config directory the user set for OpenCode's launches\", async () => {\n const launch = await resolver(openCodeRecord(UNMANAGED), {\n launchEnv: { OPENCODE_CONFIG_DIR: '/home/user/team-config' },\n inheritedEnv: {\n OPENCODE_CONFIG_DIR: '/orca/overlay',\n ORCA_OPENCODE_CONFIG_DIR: '/orca/overlay'\n }\n })({ identity })\n expect(launch.env.OPENCODE_CONFIG_DIR).toBe('/home/user/team-config')\n expect(launch.envToDelete).not.toContain('OPENCODE_CONFIG_DIR')\n })","source_sha256":"570983a2bac783caa134760ae0f1e776e3114843d4101e9bdd92dd590cf00561","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":203,"title":"keeps a config directory the user set for OpenCode's launches","body_sha256":"570983a2bac783caa134760ae0f1e776e3114843d4101e9bdd92dd590cf00561"},"proposal_ids":[],"explicit_input_controls":[]},{"line":215,"end_line":219,"title":"refuses a record that pins a single directory instead of an OpenCode account","decision":"keep","reason":"Single-variable legacy home of another account shape is refused with relevant account-binding diagnostic.","source_body_sha256":"8f8aa2bb56fa3c0bf2903cf6258c1e680200ba07c681a4a16872fed5a23ec92d","path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","start":8287,"end":8544,"byte_start":8287,"byte_end":8544,"source":"it('refuses a record that pins a single directory instead of an OpenCode account', async () => {\n await expect(\n resolver(openCodeRecord({ variable: 'XDG_DATA_HOME', path: '/data' }))({ identity })\n ).rejects.toThrow(/sessions pin opencode/)\n })","source_sha256":"8f8aa2bb56fa3c0bf2903cf6258c1e680200ba07c681a4a16872fed5a23ec92d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":215,"title":"refuses a record that pins a single directory instead of an OpenCode account","body_sha256":"8f8aa2bb56fa3c0bf2903cf6258c1e680200ba07c681a4a16872fed5a23ec92d"},"proposal_ids":[],"explicit_input_controls":[]},{"line":221,"end_line":226,"title":"runs an `opencode` %s","decision":"keep","reason":"Later stable-major and prerelease versions pass actual OpenCode version gate and retain acp argv.","source_body_sha256":"b1a794d3ed89aa9784162693de3ae4cda0c48d20974fde8a6d5fea9de20c3f0f","parameter_groups":[{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":221,"source":"['2.0.21', '3.0.0', '3.0.0-beta.1']","decision":"keep","reason":"","rows":[{"input":"2.0.21","decision":"keep","reason":"Select later-major OpenCode-specific floor 2.0.14."},{"input":"3.0.0","decision":"keep","reason":"Future stable major inherits latest floor."},{"input":"3.0.0-beta.1","decision":"keep","reason":"Future-major prerelease inherits latest floor."}],"row_count":3}],"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","start":8548,"end":8814,"byte_start":8548,"byte_end":8814,"source":"it.each(['2.0.21', '3.0.0', '3.0.0-beta.1'])('runs an `opencode` %s', async (version) => {\n const launch = await resolver(openCodeRecord(UNMANAGED), {\n probeVersion: async () => ({ version })\n })({ identity })\n expect(launch.args).toEqual(['acp'])\n })","source_sha256":"b1a794d3ed89aa9784162693de3ae4cda0c48d20974fde8a6d5fea9de20c3f0f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":221,"title":"runs an `opencode` %s","body_sha256":"b1a794d3ed89aa9784162693de3ae4cda0c48d20974fde8a6d5fea9de20c3f0f"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-launch-resolution-opencode.test.ts:221:parameter-table"]},{"line":228,"end_line":233,"title":"runs when the version cannot be read; any real start failure reports itself","decision":"fix","reason":"Unknown version is permissive at actual resolver; this case proves resolver admission, not real process startup reporting.","source_body_sha256":"3f094e022f2ad1e94802ce921bae7927031019585617a5cb1e8bd437ae5d498c","proposed_changes":[{"line":228,"action":"clarify title","reason":"Setup never spawns a real failing child; phrase as allowing an unreadable version through launch resolution, without claiming downstream real-start failure reporting."}],"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","start":8818,"end":9095,"byte_start":8818,"byte_end":9095,"source":"it('runs when the version cannot be read; any real start failure reports itself', async () => {\n const launch = await resolver(openCodeRecord(UNMANAGED), {\n probeVersion: async () => ({ version: null })\n })({ identity })\n expect(launch.args).toEqual(['acp'])\n })","source_sha256":"3f094e022f2ad1e94802ce921bae7927031019585617a5cb1e8bd437ae5d498c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":228,"title":"resolves a launch when the version cannot be read","body_sha256":"df81d68f4f40345ca90be7096090ea8597659d136ecde2f347b3c36ccd6ba254"},"proposal_ids":["acp-main-0001-044"],"explicit_input_controls":[]},{"line":235,"end_line":243,"title":"refuses a too-old release before spawning it, naming OpenCode and both versions","decision":"keep","reason":"Too-old version rejects through actual installation error type/message naming exact agent and required version.","source_body_sha256":"41ab8a7eea190a04bd971074ece3230253a33a956e9bef27ec0a1d59aa88e809","path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","start":9099,"end":9532,"byte_start":9099,"byte_end":9532,"source":"it('refuses a too-old release before spawning it, naming OpenCode and both versions', async () => {\n const launch = resolver(openCodeRecord(UNMANAGED), {\n probeVersion: async () => ({ version: '1.0.0' })\n })({ identity })\n await expect(launch).rejects.toBeInstanceOf(AgentCliInstallationError)\n await expect(launch).rejects.toThrow(\n 'OpenCode 1.0.0 is too old for chats. Update to 1.18.31 or newer.'\n )\n })","source_sha256":"41ab8a7eea190a04bd971074ece3230253a33a956e9bef27ec0a1d59aa88e809","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":235,"title":"refuses a too-old release before spawning it, naming OpenCode and both versions","body_sha256":"41ab8a7eea190a04bd971074ece3230253a33a956e9bef27ec0a1d59aa88e809"},"proposal_ids":[],"explicit_input_controls":[]},{"line":245,"end_line":253,"title":"asks the version of exactly the binary, folder and environment it spawns","decision":"keep","reason":"Probe sees exactly launch binary/cwd/env through real composed resolver.","source_body_sha256":"7bffb3a34b5c24a70e3aadd02825eddc700d97f364e99101861b8b8a504706f1","path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","start":9536,"end":10025,"byte_start":9536,"byte_end":10025,"source":"it('asks the version of exactly the binary, folder and environment it spawns', async () => {\n const asked: Parameters<\n NonNullable[1]['probeVersion']>\n >[0][] = []\n const launch = await resolver(openCodeRecord(UNMANAGED), {\n probeVersion: async (input) => (asked.push(input), { version: '1.18.31' })\n })({ identity })\n expect(asked).toEqual([{ program: launch.command, cwd: launch.cwd, env: launch.env }])\n })","source_sha256":"7bffb3a34b5c24a70e3aadd02825eddc700d97f364e99101861b8b8a504706f1","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":245,"title":"asks the version of exactly the binary, folder and environment it spawns","body_sha256":"7bffb3a34b5c24a70e3aadd02825eddc700d97f364e99101861b8b8a504706f1"},"proposal_ids":[],"explicit_input_controls":[]},{"line":268,"end_line":273,"title":"runs `opencode2 acp` as an ACP client, and names its own sign-in command","decision":"fix","reason":"OpenCode2 alias resolves its own executable/acp argv and ACP env; adjacent loginCommand equality copies static manifest data rather than executing sign-in.","source_body_sha256":"cc7393fe6ec7d5c4092f4f23cd50c73af64570e7fd78c1c58e88983343ea9169","proposed_changes":[{"line":268,"action":"remove assertion only","reason":"OPENCODE2.loginCommand equality repeats manifest inventory; retain real alias launch/env assertions. Sign-in execution/error-format coverage belongs at the consumer boundary."}],"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","start":10546,"end":10911,"byte_start":10546,"byte_end":10911,"source":"it('runs `opencode2 acp` as an ACP client, and names its own sign-in command', async () => {\n const launch = await launchOn('2.0.28')\n expect(launch).toMatchObject({ command: '/resolved/opencode2', args: ['acp'] })\n expect(launch.env).toMatchObject({ OPENCODE_CLIENT: 'acp' })\n expect(OPENCODE2.loginCommand).toEqual(['opencode2', 'auth', 'login'])\n })","source_sha256":"cc7393fe6ec7d5c4092f4f23cd50c73af64570e7fd78c1c58e88983343ea9169","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":268,"title":"runs `opencode2 acp` as an ACP client","body_sha256":"07d7e499830e999ac1f06e9760d9b2139ea8f13c423a3666142b0f7c0d66c2fa"},"proposal_ids":["acp-main-0001-043"],"explicit_input_controls":[]},{"line":275,"end_line":279,"title":"runs a later major or a pre-release of one","decision":"keep","reason":"OpenCode2 accepts a later-major prerelease while retaining alias executable; distinct minimum/identity from opencode.","source_body_sha256":"f229b44c5f1d503114dd080c2361b8ea709ef9de4015dbbab6f1c1efdec50c77","path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","start":10915,"end":11094,"byte_start":10915,"byte_end":11094,"source":"it('runs a later major or a pre-release of one', async () => {\n await expect(launchOn('3.0.0-beta.1')).resolves.toMatchObject({\n command: '/resolved/opencode2'\n })\n })","source_sha256":"f229b44c5f1d503114dd080c2361b8ea709ef9de4015dbbab6f1c1efdec50c77","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":274,"title":"runs a later major or a pre-release of one","body_sha256":"f229b44c5f1d503114dd080c2361b8ea709ef9de4015dbbab6f1c1efdec50c77"},"proposal_ids":[],"explicit_input_controls":[]},{"line":282,"end_line":286,"title":"refuses %s as too old","decision":"keep","reason":"OpenCode2 rejects prior major, immediately prior patch and prerelease at exact required patch with concrete alias installation diagnostics.","source_body_sha256":"f2ad9913e8b59c02a2ad2c97ed09164f522d156711943ac082da59f92e07024b","parameter_groups":[{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":282,"source":"['1.18.35', '2.0.13', '2.0.14-rc.1']","decision":"keep","reason":"","rows":[{"input":"1.18.35","decision":"keep","reason":"Alias rejects prior major despite support for stock opencode."},{"input":"2.0.13","decision":"keep","reason":"One patch below alias minimum."},{"input":"2.0.14-rc.1","decision":"keep","reason":"Same-patch prerelease is below required stable minimum."}],"row_count":3}],"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","start":11172,"end":11431,"byte_start":11172,"byte_end":11431,"source":"it.each(['1.18.35', '2.0.13', '2.0.14-rc.1'])('refuses %s as too old', async (version) => {\n await expect(launchOn(version)).rejects.toMatchObject({\n installation: { agent: 'opencode2', installedVersion: version, minimumVersion: '2.0.14' }\n })\n })","source_sha256":"f2ad9913e8b59c02a2ad2c97ed09164f522d156711943ac082da59f92e07024b","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":281,"title":"refuses %s as too old","body_sha256":"f2ad9913e8b59c02a2ad2c97ed09164f522d156711943ac082da59f92e07024b"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-launch-resolution-opencode.test.ts:282:parameter-table"]}],"explicit_input_controls":[{"id":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts:221:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":221,"end_line":226,"start":8548,"end":8814,"byte_start":8548,"byte_end":8814,"source":"['2.0.21', '3.0.0', '3.0.0-beta.1']","source_sha256":"b9fd29d11af299aed3560f5733c90e0a8fa735436c7cde73195445e1bafaf27e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":221,"end_line":221,"start":8556,"end":8591,"byte_start":8556,"byte_end":8591},"binding":"it.each","resolution":[],"enclosing_case":{"line":221,"title":"runs an `opencode` %s"},"affected_case_lines":[221],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":221,"end_line":221,"start":8557,"end":8565,"source":"'2.0.21'","value":{"kind":"string","value":"2.0.21"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"0b48bcc3598beb65e88b78ee3e84155e223d7d61adca815a5d2fc5417cfbe0bc","byte_start":8557,"byte_end":8565,"input_label":"2.0.21","decision":"keep","reason":"Select later-major OpenCode-specific floor 2.0.14."},{"index":2,"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":221,"end_line":221,"start":8567,"end":8574,"source":"'3.0.0'","value":{"kind":"string","value":"3.0.0"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"2e32f3c9ba6c6a2d20cdaac145c3d220da3106c8a68a80c1843065a11f7ebbd7","byte_start":8567,"byte_end":8574,"input_label":"3.0.0","decision":"keep","reason":"Future stable major inherits latest floor."},{"index":3,"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":221,"end_line":221,"start":8576,"end":8590,"source":"'3.0.0-beta.1'","value":{"kind":"string","value":"3.0.0-beta.1"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"ac7d0211a8de60f31dbb26229bbebbe888ec6c317ec0d7c7d8944e26a2b9ae21","byte_start":8576,"byte_end":8590,"input_label":"3.0.0-beta.1","decision":"keep","reason":"Future-major prerelease inherits latest floor."}],"original_row_count":3},{"id":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts:282:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":282,"end_line":286,"start":11172,"end":11431,"byte_start":11172,"byte_end":11431,"source":"['1.18.35', '2.0.13', '2.0.14-rc.1']","source_sha256":"dd341fed8e4dc10639c6678e16caa4c62eba872c6947ebb51c811287394ab804","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":282,"end_line":282,"start":11180,"end":11216,"byte_start":11180,"byte_end":11216},"binding":"it.each","resolution":[],"enclosing_case":{"line":282,"title":"refuses %s as too old"},"affected_case_lines":[282],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":282,"end_line":282,"start":11181,"end":11190,"source":"'1.18.35'","value":{"kind":"string","value":"1.18.35"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"121c39aa784da7b0753f074b8491e80f16047552abfebe167e6b22e529522b1c","byte_start":11181,"byte_end":11190,"input_label":"1.18.35","decision":"keep","reason":"Alias rejects prior major despite support for stock opencode."},{"index":2,"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":282,"end_line":282,"start":11192,"end":11200,"source":"'2.0.13'","value":{"kind":"string","value":"2.0.13"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e3e8138e07f266360d7d71a7bee93df9c14d81e775db5f987a87b9f26dee5956","byte_start":11192,"byte_end":11200,"input_label":"2.0.13","decision":"keep","reason":"One patch below alias minimum."},{"index":3,"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":282,"end_line":282,"start":11202,"end":11215,"source":"'2.0.14-rc.1'","value":{"kind":"string","value":"2.0.14-rc.1"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"2faaf6ee856821da0754a9abe04eb2526c2fb73ae213238f6f628e7d39a06ef3","byte_start":11202,"byte_end":11215,"input_label":"2.0.14-rc.1","decision":"keep","reason":"Same-patch prerelease is below required stable minimum."}],"original_row_count":3}],"parameter_groups":[{"id":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts:221:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":221,"end_line":226,"start":8548,"end":8814,"byte_start":8548,"byte_end":8814,"source":"['2.0.21', '3.0.0', '3.0.0-beta.1']","source_sha256":"b9fd29d11af299aed3560f5733c90e0a8fa735436c7cde73195445e1bafaf27e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":221,"end_line":221,"start":8556,"end":8591,"byte_start":8556,"byte_end":8591},"binding":"it.each","resolution":[],"enclosing_case":{"line":221,"title":"runs an `opencode` %s"},"affected_case_lines":[221],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":221,"end_line":221,"start":8557,"end":8565,"source":"'2.0.21'","value":{"kind":"string","value":"2.0.21"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"0b48bcc3598beb65e88b78ee3e84155e223d7d61adca815a5d2fc5417cfbe0bc","byte_start":8557,"byte_end":8565,"input_label":"2.0.21","decision":"keep","reason":"Select later-major OpenCode-specific floor 2.0.14."},{"index":2,"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":221,"end_line":221,"start":8567,"end":8574,"source":"'3.0.0'","value":{"kind":"string","value":"3.0.0"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"2e32f3c9ba6c6a2d20cdaac145c3d220da3106c8a68a80c1843065a11f7ebbd7","byte_start":8567,"byte_end":8574,"input_label":"3.0.0","decision":"keep","reason":"Future stable major inherits latest floor."},{"index":3,"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":221,"end_line":221,"start":8576,"end":8590,"source":"'3.0.0-beta.1'","value":{"kind":"string","value":"3.0.0-beta.1"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"ac7d0211a8de60f31dbb26229bbebbe888ec6c317ec0d7c7d8944e26a2b9ae21","byte_start":8576,"byte_end":8590,"input_label":"3.0.0-beta.1","decision":"keep","reason":"Future-major prerelease inherits latest floor."}],"original_row_count":3},{"id":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts:282:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":282,"end_line":286,"start":11172,"end":11431,"byte_start":11172,"byte_end":11431,"source":"['1.18.35', '2.0.13', '2.0.14-rc.1']","source_sha256":"dd341fed8e4dc10639c6678e16caa4c62eba872c6947ebb51c811287394ab804","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":282,"end_line":282,"start":11180,"end":11216,"byte_start":11180,"byte_end":11216},"binding":"it.each","resolution":[],"enclosing_case":{"line":282,"title":"refuses %s as too old"},"affected_case_lines":[282],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":282,"end_line":282,"start":11181,"end":11190,"source":"'1.18.35'","value":{"kind":"string","value":"1.18.35"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"121c39aa784da7b0753f074b8491e80f16047552abfebe167e6b22e529522b1c","byte_start":11181,"byte_end":11190,"input_label":"1.18.35","decision":"keep","reason":"Alias rejects prior major despite support for stock opencode."},{"index":2,"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":282,"end_line":282,"start":11192,"end":11200,"source":"'2.0.13'","value":{"kind":"string","value":"2.0.13"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e3e8138e07f266360d7d71a7bee93df9c14d81e775db5f987a87b9f26dee5956","byte_start":11192,"byte_end":11200,"input_label":"2.0.13","decision":"keep","reason":"One patch below alias minimum."},{"index":3,"path":"src/main/acp/acp-structured-launch-resolution-opencode.test.ts","line":282,"end_line":282,"start":11202,"end":11215,"source":"'2.0.14-rc.1'","value":{"kind":"string","value":"2.0.14-rc.1"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"2faaf6ee856821da0754a9abe04eb2526c2fb73ae213238f6f628e7d39a06ef3","byte_start":11202,"byte_end":11215,"input_label":"2.0.14-rc.1","decision":"keep","reason":"Same-patch prerelease is below required stable minimum."}],"original_row_count":3}],"body_support_cleanup_loops":[],"implemented_changes":[{"proposal_id":"acp-main-0001-043","summary":"Removed opencode2 sign-in manifest equality, retaining actual client launch command behavior.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"},{"proposal_id":"acp-main-0001-044","summary":"Title now promises unreadable-version launch resolution only.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/acp-launch-specs.ts","src/main/opencode/opencode-structured-account-home.ts","src/main/acp/acp-structured-launch-resolution.ts","src/main/runtime/structured-agent-launch-composition.test-support.ts","src/shared/managed-data-account-environment.ts","src/main/opencode/opencode-acp-environment.ts","src/main/runtime/structured-agent-launch-composition.ts"],"evidence_sha256":{"src/main/acp/acp-launch-specs.ts":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","src/main/opencode/opencode-structured-account-home.ts":"d3239c9ba8bf4f2100c911d514eac8a60056db029fffc130d23f09cc481fe187","src/main/acp/acp-structured-launch-resolution.ts":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","src/main/runtime/structured-agent-launch-composition.test-support.ts":"a5d109637e695829b306570250295316ac6f653492f66bd9da7126808a70a962","src/shared/managed-data-account-environment.ts":"5c5106b2c706f848b338dd451a9683cd750b89c5eb040a0c018b58b9c61d43b5","src/main/opencode/opencode-acp-environment.ts":"98749577ca67168c25b12a63bbd011b79d2c0625371e17f4ecc3ef23f5b368bc","src/main/runtime/structured-agent-launch-composition.ts":"647e06f46a4321a1081540dc9c7cf64c069268c6c3eb422d7c63fd74f27d6aae"},"evidence_source_sha256":{"src/main/acp/acp-launch-specs.ts":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","src/main/opencode/opencode-structured-account-home.ts":"d3239c9ba8bf4f2100c911d514eac8a60056db029fffc130d23f09cc481fe187","src/main/acp/acp-structured-launch-resolution.ts":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","src/main/runtime/structured-agent-launch-composition.test-support.ts":"a5d109637e695829b306570250295316ac6f653492f66bd9da7126808a70a962","src/shared/managed-data-account-environment.ts":"5c5106b2c706f848b338dd451a9683cd750b89c5eb040a0c018b58b9c61d43b5","src/main/opencode/opencode-acp-environment.ts":"98749577ca67168c25b12a63bbd011b79d2c0625371e17f4ecc3ef23f5b368bc","src/main/runtime/structured-agent-launch-composition.ts":"647e06f46a4321a1081540dc9c7cf64c069268c6c3eb422d7c63fd74f27d6aae"},"original_evidence_detail":[{"path":"src/main/acp/acp-launch-specs.ts","sha256":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","lines":352,"read_state":"full_body_read"},{"path":"src/main/opencode/opencode-structured-account-home.ts","sha256":"d3239c9ba8bf4f2100c911d514eac8a60056db029fffc130d23f09cc481fe187","lines":95,"read_state":"stored_not_claimed_read"},{"path":"src/main/acp/acp-structured-launch-resolution.ts","sha256":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","lines":342,"read_state":"full_body_read"},{"path":"src/main/runtime/structured-agent-launch-composition.test-support.ts","sha256":"a5d109637e695829b306570250295316ac6f653492f66bd9da7126808a70a962","lines":152,"read_state":"full_body_read"},{"path":"src/shared/managed-data-account-environment.ts","sha256":"5c5106b2c706f848b338dd451a9683cd750b89c5eb040a0c018b58b9c61d43b5","lines":83,"read_state":"stored_not_claimed_read"},{"path":"src/main/opencode/opencode-acp-environment.ts","sha256":"98749577ca67168c25b12a63bbd011b79d2c0625371e17f4ecc3ef23f5b368bc","lines":69,"read_state":"stored_not_claimed_read"},{"path":"src/main/runtime/structured-agent-launch-composition.ts","sha256":"647e06f46a4321a1081540dc9c7cf64c069268c6c3eb422d7c63fd74f27d6aae","lines":249,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"OpenCode ACP launch resolution runs `opencode acp` as an ACP client with no question tool, whatever the user set","status":"passed"},{"full_name":"OpenCode ACP launch resolution starts OpenCode with the user's own folders, database and inline credentials","status":"passed"},{"full_name":"OpenCode ACP launch resolution leaves unset what the user left unset, whatever Orca itself inherited","status":"passed"},{"full_name":"OpenCode ACP launch resolution points a managed profile at its own directories","status":"passed"},{"full_name":"OpenCode ACP launch resolution restores the user's own config directory over Orca's status overlay","status":"passed"},{"full_name":"OpenCode ACP launch resolution drops an inherited overlay with no recorded source, so the default config is read","status":"passed"},{"full_name":"OpenCode ACP launch resolution drops Orca's retired shared plugin directory an old shell still exports","status":"passed"},{"full_name":"OpenCode ACP launch resolution keeps a config directory the user set for OpenCode's launches","status":"passed"},{"full_name":"OpenCode ACP launch resolution refuses a record that pins a single directory instead of an OpenCode account","status":"passed"},{"full_name":"OpenCode ACP launch resolution runs an `opencode` 2.0.21","status":"passed"},{"full_name":"OpenCode ACP launch resolution runs an `opencode` 3.0.0","status":"passed"},{"full_name":"OpenCode ACP launch resolution runs an `opencode` 3.0.0-beta.1","status":"passed"},{"full_name":"OpenCode ACP launch resolution resolves a launch when the version cannot be read","status":"passed"},{"full_name":"OpenCode ACP launch resolution refuses a too-old release before spawning it, naming OpenCode and both versions","status":"passed"},{"full_name":"OpenCode ACP launch resolution asks the version of exactly the binary, folder and environment it spawns","status":"passed"},{"full_name":"OpenCode 2 ACP launch resolution runs `opencode2 acp` as an ACP client","status":"passed"},{"full_name":"OpenCode 2 ACP launch resolution runs a later major or a pre-release of one","status":"passed"},{"full_name":"OpenCode 2 ACP launch resolution refuses 1.18.35 as too old","status":"passed"},{"full_name":"OpenCode 2 ACP launch resolution refuses 2.0.13 as too old","status":"passed"},{"full_name":"OpenCode 2 ACP launch resolution refuses 2.0.14-rc.1 as too old","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-launch-resolution.test.ts","sha256":"ffad3867433b628965882ac5849f845b7fff249494aad1ba06f6f859ba618b03","reviewed_sha256":"9dd69a846ab9a6b155f9a31c81092288048d7efb22d33233a728747f4469248a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":45,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 10, fix 2, remove 1. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":13,"original_declarations":13,"final_declarations":12,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":83,"end_line":98,"title":"pins the record account home and searches the agent install dir","decision":"keep","reason":"Account home, install-dir PATH search, cwd, env overlay, argv/fullAccess and initial resume emerge from real composed resolver.","source_body_sha256":"9c2e21905ea6847e021d2dedc4841566a5a2efb681b477e932eca63182dabfa7","path":"src/main/acp/acp-structured-launch-resolution.test.ts","start":3291,"end":3836,"byte_start":3291,"byte_end":3836,"source":"it('pins the record account home and searches the agent install dir', async () => {\n const { resolve, searched } = resolver(grokRecord())\n const launch = await resolve({ identity })\n expect(launch).toMatchObject({\n command: '/resolved/grok',\n args: ['agent', 'stdio'],\n cwd: '/repo/worktree',\n fullAccess: false,\n resume: null\n })\n expect(launch.env).toMatchObject({\n GROK_HOME: '/home/user/.grok-work',\n GROK_EXTRA: '1'\n })\n expect(searched[0]).toContain('/home/user/.grok-work/bin')\n })","source_sha256":"9c2e21905ea6847e021d2dedc4841566a5a2efb681b477e932eca63182dabfa7","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution.test.ts","line":82,"title":"pins the record account home and searches the agent install dir","body_sha256":"9c2e21905ea6847e021d2dedc4841566a5a2efb681b477e932eca63182dabfa7"},"proposal_ids":[],"explicit_input_controls":[]},{"line":100,"end_line":110,"title":"creates a new ACP session after clear instead of probing the old session","decision":"fix","reason":"Cleared record has empty chain and returns no resume. Throwing readJournal alone is an insufficient no-read oracle because journal callbacks can be caught or lazy; assert a spy remains uncalled.","source_body_sha256":"36de9a43606104b7579f2f2beb4ccf3da1f0e00d765f4b13a8d7a50df748e1f4","proposed_changes":[{"line":100,"action":"repair no-call oracle","reason":"Use vi.fn for readJournal and expect not called; thrown sentinel is not a direct observable and lazy callbacks are caught when called."}],"path":"src/main/acp/acp-structured-launch-resolution.test.ts","start":3840,"end":4312,"byte_start":3840,"byte_end":4312,"source":"it('creates a new ACP session after clear instead of probing the old session', async () => {\n const value = grokRecord({\n providerContextBoundary: { operationId: 'clear', afterFence: 2, clearedAt: 100 },\n providerHandleChain: []\n })\n const readJournal = () => {\n throw new Error('old history must not be sampled for resume')\n }\n const launch = await resolver(value, readJournal).resolve({ identity })\n expect(launch.resume).toBeNull()\n })","source_sha256":"36de9a43606104b7579f2f2beb4ccf3da1f0e00d765f4b13a8d7a50df748e1f4","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-launch-resolution.test.ts","line":99,"title":"creates a new ACP session after clear instead of probing the old session","body_sha256":"00cd6b168a891623f7c812fe3f8b8072aa61275645a2b0491dc17bfd64fec239"},"proposal_ids":["acp-main-0001-045"],"explicit_input_controls":[]},{"line":112,"end_line":117,"title":"asks the agent to approve everything only under the chat's full access","decision":"keep","reason":"Concrete Grok argv gains always-approve only when host permission mode is full-access; both modes exercised.","source_body_sha256":"cbf738dcee92928b3365e5451b17b3427ab89b65faf5b924b404c4c5c4465f91","path":"src/main/acp/acp-structured-launch-resolution.test.ts","start":4316,"end":4708,"byte_start":4316,"byte_end":4708,"source":"it(\"asks the agent to approve everything only under the chat's full access\", async () => {\n const start = (permissionMode: 'ask' | 'full-access') =>\n resolver(grokRecord()).resolve({ identity, spawnToken: 'token', permissionMode })\n expect((await start('full-access')).args).toContain('--always-approve')\n expect((await start('ask')).args).not.toContain('--always-approve')\n })","source_sha256":"cbf738dcee92928b3365e5451b17b3427ab89b65faf5b924b404c4c5c4465f91","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution.test.ts","line":110,"title":"asks the agent to approve everything only under the chat's full access","body_sha256":"cbf738dcee92928b3365e5451b17b3427ab89b65faf5b924b404c4c5c4465f91"},"proposal_ids":[],"explicit_input_controls":[]},{"line":120,"end_line":125,"title":"gives %s chats a Full access mode","decision":"remove","reason":"Full-access mode membership repeats launch-agent capability inventory without exercising actual admission/approval delivery; remove after retaining permission-mode launch and permission-request behavioral cases.","source_body_sha256":"3a79d916f9bf786afdb49ce8a32c764ed51ed17989992869b4270b25dc8e47d4","proposed_changes":[{"line":120,"action":"remove declaration/table","reason":"All five rows copy configured permission-mode inventory. Retain actual ask/full-access argv and permission-request enforcement cases."}],"parameter_groups":[{"path":"src/main/acp/acp-structured-launch-resolution.test.ts","line":120,"source":"ACP_LAUNCH_SPECS.map((spec) => spec.agent)","decision":"remove","reason":"","rows":[{"input":"grok","decision":"remove","reason":"Copied full-access capability membership; actual permission-mode launch/enforcement tests retain behavior."},{"input":"opencode","decision":"remove","reason":"Copied full-access capability membership; actual permission-mode launch/enforcement tests retain behavior."},{"input":"opencode2","decision":"remove","reason":"Copied full-access capability membership; actual permission-mode launch/enforcement tests retain behavior."},{"input":"omp","decision":"remove","reason":"Copied full-access capability membership; actual permission-mode launch/enforcement tests retain behavior."},{"input":"antigravity","decision":"remove","reason":"Copied full-access capability membership; actual permission-mode launch/enforcement tests retain behavior."}],"row_count":5}],"path":"src/main/acp/acp-structured-launch-resolution.test.ts","start":4809,"end":5007,"byte_start":4809,"byte_end":5007,"source":"it.each(ACP_LAUNCH_SPECS.map((spec) => spec.agent))(\n 'gives %s chats a Full access mode',\n (agent) => {\n expect(agentChatPermissionModes(agent)?.modes).toContain('full-access')\n }\n )","source_sha256":"3a79d916f9bf786afdb49ce8a32c764ed51ed17989992869b4270b25dc8e47d4","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"remove","implementation":"removed","destination":null,"proposal_ids":["acp-main-0001-046"],"preservation":"Full-access mode membership repeats launch-agent capability inventory without exercising actual admission/approval delivery; remove after retaining permission-mode launch and permission-request behavioral cases.","explicit_input_controls":["src/main/acp/acp-structured-launch-resolution.test.ts:120:parameter-table"]},{"line":127,"end_line":152,"title":"resumes the chain head by its key, possibly unsaved only when this chat created it","decision":"keep","reason":"Created versus resumed head origin changes mayBeUnsaved and uses head nativeId/serialized key; real lazy resume computation.","source_body_sha256":"af675d103e747673f8bee088b38f1c29d908da9748621cb7063659df80f2006b","path":"src/main/acp/acp-structured-launch-resolution.test.ts","start":5011,"end":6064,"byte_start":5011,"byte_end":6064,"source":"it('resumes the chain head by its key, possibly unsaved only when this chat created it', async () => {\n const link = (origin: 'created' | 'resumed') => ({\n linkId: `link-${origin}`,\n origin,\n mintedAtFence: 1,\n observedAt: 1,\n handle: { transport: 'acp', agent: 'grok', nativeId: 'acp-1' }\n })\n const created = await resolver(grokRecord({ providerHandleChain: [link('created')] })).resolve({\n identity\n })\n const handle: AgentSessionProviderHandle = {\n transport: 'acp',\n agent: 'grok',\n nativeId: 'acp-1'\n }\n const key = agentSessionProviderHandleKey(handle)\n expect(created.resume).toMatchObject({ sessionId: 'acp-1', key })\n expect(created.resume?.mayBeUnsaved()).toBe(true)\n const resumed = await resolver(\n grokRecord({ providerHandleChain: [link('created'), link('resumed')] }),\n () => journalWithTurns()\n ).resolve({ identity })\n expect(resumed.resume).toMatchObject({ sessionId: 'acp-1', key })\n expect(resumed.resume?.mayBeUnsaved()).toBe(false)\n })","source_sha256":"af675d103e747673f8bee088b38f1c29d908da9748621cb7063659df80f2006b","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution.test.ts","line":117,"title":"resumes the chain head by its key, possibly unsaved only when this chat created it","body_sha256":"af675d103e747673f8bee088b38f1c29d908da9748621cb7063659df80f2006b"},"proposal_ids":[],"explicit_input_controls":[]},{"line":154,"end_line":193,"title":"counts a created session as possibly unsaved only while the journal proves no turn on it","decision":"keep","reason":"Lazy read plus empty/other-session/matching-turn/damaged/newer/throwing journal workloads exercise true no-exchange evidence and conservative refusals.","source_body_sha256":"7d23b5cabfccda617d2a16fd0bb0047fe7b7715ecbaf98b0c717cfa3d1a4d071","path":"src/main/acp/acp-structured-launch-resolution.test.ts","start":6068,"end":7592,"byte_start":6068,"byte_end":7592,"source":"it('counts a created session as possibly unsaved only while the journal proves no turn on it', async () => {\n const created = grokRecord({\n providerHandleChain: [\n {\n linkId: 'link-created',\n origin: 'created',\n mintedAtFence: 1,\n observedAt: 1,\n handle: { transport: 'acp', agent: 'grok', nativeId: 'acp-1' }\n }\n ]\n })\n const unsaved = async (readJournal: () => JournalLoad | null) =>\n (await resolver(created, readJournal).resolve({ identity })).resume?.mayBeUnsaved()\n const reads: string[] = []\n const launch = await resolver(created, () => {\n reads.push('read')\n return null\n }).resolve({ identity })\n // Read only when asked: a reopen that works never replays the journal.\n expect(reads).toEqual([])\n expect(launch.resume?.mayBeUnsaved()).toBe(true)\n\n expect(await unsaved(() => journalWithTurns())).toBe(true)\n expect(await unsaved(() => journalWithTurns('acp-other'))).toBe(true)\n expect(await unsaved(() => journalWithTurns('acp-other', 'acp-1'))).toBe(false)\n // A journal that does not read whole, or at all, proves nothing.\n expect(\n await unsaved(() => ({\n ...journalWithTurns(),\n damage: { sequence: 3, cause: 'sequence-gap' }\n }))\n ).toBe(false)\n expect(await unsaved(() => ({ ...journalWithTurns(), newer: { sequence: 3 } }))).toBe(false)\n expect(\n await unsaved(() => {\n throw new Error('journal_closed')\n })\n ).toBe(false)\n })","source_sha256":"7d23b5cabfccda617d2a16fd0bb0047fe7b7715ecbaf98b0c717cfa3d1a4d071","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution.test.ts","line":144,"title":"counts a created session as possibly unsaved only while the journal proves no turn on it","body_sha256":"7d23b5cabfccda617d2a16fd0bb0047fe7b7715ecbaf98b0c717cfa3d1a4d071"},"proposal_ids":[],"explicit_input_controls":[]},{"line":195,"end_line":274,"title":"names the lost conversations whose warning row no session of the chat wrote","decision":"keep","reason":"Chain loss reconciliation excludes already-announced rows regardless of writing namespace and conservatively avoids damaged/unreadable journals; no-loss branch proves no reads.","source_body_sha256":"01ce65f73b8312990dc7f35b212bb26103631d31d020324dab322763d5517e9f","path":"src/main/acp/acp-structured-launch-resolution.test.ts","start":7596,"end":10478,"byte_start":7596,"byte_end":10478,"source":"it('names the lost conversations whose warning row no session of the chat wrote', async () => {\n const link = (nativeId: string, replaced?: string) => ({\n linkId: `link-${nativeId}`,\n origin: 'created' as const,\n mintedAtFence: 1,\n observedAt: 1,\n handle: { transport: 'acp', agent: 'grok', nativeId },\n ...(replaced\n ? {\n replaces: {\n key: agentSessionProviderHandleKey({\n transport: 'acp',\n agent: 'grok',\n nativeId: replaced\n }),\n reason: 'restore-failed',\n replacedAt: 1\n }\n }\n : {})\n })\n const lostKey = agentSessionProviderHandleKey({\n transport: 'acp',\n agent: 'grok',\n nativeId: 'acp-1'\n })\n const replaced = grokRecord({ providerHandleChain: [link('acp-1'), link('acp-2', 'acp-1')] })\n /** A journal holding the row for `lostKey`, written while `providerSession` ran. */\n const withRow = (providerSession: string): JournalLoad => {\n const load = journalWithTurns()\n const itemId = agentJournalItemKey(\n createLegacyProviderTimelineIdentityScheme({\n agent: 'grok',\n sessionId: identity.sessionId\n }).item({\n namespace: providerSession,\n family: 'item',\n key: { source: 'provider', value: acpSessionNotRestoredItem(lostKey) },\n thread: providerSession\n })\n )\n load.state.items.set(itemId, {\n itemId,\n revision: 1,\n sequence: 2,\n observedAt: 1,\n body: { kind: 'status', tone: 'warning', text: 'forgot' }\n })\n return load\n }\n const losses = async (record: AgentSessionRecord, readJournal: () => JournalLoad | null) =>\n (await resolver(record, readJournal).resolve({ identity })).resume?.unannouncedLosses()\n\n const reads: string[] = []\n // A chain that lost nothing never reads the journal.\n expect(\n await losses(grokRecord({ providerHandleChain: [link('acp-1')] }), () => {\n reads.push('read')\n return null\n })\n ).toEqual([])\n expect(reads).toEqual([])\n expect(await losses(replaced, () => null)).toEqual([lostKey])\n expect(await losses(replaced, () => journalWithTurns('acp-2'))).toEqual([lostKey])\n expect(await losses(replaced, () => withRow('acp-2'))).toEqual([])\n // A row the superseded replacement wrote still counts.\n expect(await losses(replaced, () => withRow('acp-gone'))).toEqual([])\n // A journal that does not read whole proves nothing, so no row is written.\n expect(\n await losses(replaced, () => ({\n ...journalWithTurns(),\n damage: { sequence: 3, cause: 'sequence-gap' }\n }))\n ).toEqual([])\n expect(\n await losses(replaced, () => {\n throw new Error('journal_closed')\n })\n ).toEqual([])\n })","source_sha256":"01ce65f73b8312990dc7f35b212bb26103631d31d020324dab322763d5517e9f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution.test.ts","line":185,"title":"names the lost conversations whose warning row no session of the chat wrote","body_sha256":"01ce65f73b8312990dc7f35b212bb26103631d31d020324dab322763d5517e9f"},"proposal_ids":[],"explicit_input_controls":[]},{"line":276,"end_line":283,"title":"refuses a record pinned to another host or another agent","decision":"keep","reason":"Host mismatch and provider mismatch are distinct ownership guards in composed launch.","source_body_sha256":"8a440642b355e736069bdf0652d8af6c9420ed7a5816c5eee1c4d0d9153fde5b","path":"src/main/acp/acp-structured-launch-resolution.test.ts","start":10482,"end":10890,"byte_start":10482,"byte_end":10890,"source":"it('refuses a record pinned to another host or another agent', async () => {\n const remote = grokRecord()\n remote.location = { ...remote.location, executionHostId: 'ssh:box' }\n await expect(resolver(remote).resolve({ identity })).rejects.toThrow(/run on the local host/)\n await expect(resolver(agentSessionRecordFixture()).resolve({ identity })).rejects.toThrow(\n /claude session/\n )\n })","source_sha256":"8a440642b355e736069bdf0652d8af6c9420ed7a5816c5eee1c4d0d9153fde5b","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution.test.ts","line":266,"title":"refuses a record pinned to another host or another agent","body_sha256":"8a440642b355e736069bdf0652d8af6c9420ed7a5816c5eee1c4d0d9153fde5b"},"proposal_ids":[],"explicit_input_controls":[]},{"line":287,"end_line":311,"title":"strips every pane identity and hook endpoint an inherited environment carries","decision":"keep","reason":"Actual Windows process-spawn environment assembly strips every supplied pane/hook identity while retaining PATH/provider home.","source_body_sha256":"e945ef037aafac8f7b4b2470dcf5d50fa34a267e5911c46b50e4684d29e9122c","path":"src/main/acp/acp-structured-launch-resolution.test.ts","start":10974,"end":11856,"byte_start":10974,"byte_end":11856,"source":"it('strips every pane identity and hook endpoint an inherited environment carries', () => {\n const inherited = {\n PATH: '/usr/bin',\n ORCA_PANE_KEY: 'tab-1:pane-1',\n ORCA_AGENT_PANE: 'tab-1:pane-1',\n ORCA_TAB_ID: 'tab-1',\n ORCA_WORKTREE_ID: 'wt-1',\n ORCA_AGENT_LAUNCH_TOKEN: 'launch-1',\n ORCA_AGENT_HOOK_PORT: '4321',\n ORCA_AGENT_HOOK_TOKEN: 'secret',\n ORCA_AGENT_HOOK_ENDPOINT: '/tmp/endpoint'\n }\n const spec = createProviderSpawnSpec(\n {\n command: 'grok',\n args: ['agent', 'stdio'],\n env: { GROK_HOME: '/home/user/.grok' },\n envToDelete: STRUCTURED_CHILD_ENV_TO_DELETE\n },\n inherited,\n 'win32'\n )\n expect(Object.keys(spec.env).filter((key) => key.startsWith('ORCA_'))).toEqual([])\n expect(spec.env).toMatchObject({ PATH: '/usr/bin', GROK_HOME: '/home/user/.grok' })\n })","source_sha256":"e945ef037aafac8f7b4b2470dcf5d50fa34a267e5911c46b50e4684d29e9122c","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution.test.ts","line":277,"title":"strips every pane identity and hook endpoint an inherited environment carries","body_sha256":"e945ef037aafac8f7b4b2470dcf5d50fa34a267e5911c46b50e4684d29e9122c"},"proposal_ids":[],"explicit_input_controls":[]},{"line":333,"end_line":342,"title":"launches in the folder the chat was pinned to after the floating setting moved","decision":"keep","reason":"Pinned floating directory survives changed setting and bypasses workspace lookup, using a real temporary existing folder with finally cleanup.","source_body_sha256":"6db572d6ab3172faedc783ae3b22f6e989ac081522370fa4976a39cbb22be3ed","path":"src/main/acp/acp-structured-launch-resolution.test.ts","start":12721,"end":13215,"byte_start":12721,"byte_end":13215,"source":"it('launches in the folder the chat was pinned to after the floating setting moved', async () => {\n const pinned = mkdtempSync(join(tmpdir(), 'orca-acp-floating-'))\n try {\n const { resolve, resolveWorkspacePath } = resolveIn(floating(pinned), '/floating/moved')\n await expect(resolve({ identity })).resolves.toMatchObject({ cwd: pinned })\n expect(resolveWorkspacePath).not.toHaveBeenCalled()\n } finally {\n rmSync(pinned, { recursive: true, force: true })\n }\n })","source_sha256":"6db572d6ab3172faedc783ae3b22f6e989ac081522370fa4976a39cbb22be3ed","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution.test.ts","line":323,"title":"launches in the folder the chat was pinned to after the floating setting moved","body_sha256":"6db572d6ab3172faedc783ae3b22f6e989ac081522370fa4976a39cbb22be3ed"},"proposal_ids":[],"explicit_input_controls":[]},{"line":344,"end_line":351,"title":"refuses with the folder-missing reason when the pinned folder is gone","decision":"fix","reason":"Missing pinned folder refuses before fallback with concrete pre-spawn error reason; current fixed tmp path is not owned and may already exist.","source_body_sha256":"f660940cc20a29a08b8210136821d81e685a75555434590dab0fc7eede2f8f20","proposed_changes":[{"line":344,"action":"own missing-path fixture","reason":"Create unique tmpdir, remove it before resolution, and finally clean up; fixed global path can be present from unrelated activity."}],"path":"src/main/acp/acp-structured-launch-resolution.test.ts","start":13219,"end":13602,"byte_start":13219,"byte_end":13602,"source":"it('refuses with the folder-missing reason when the pinned folder is gone', async () => {\n const gone = join(tmpdir(), 'orca-acp-floating-gone-never-created')\n const { resolve } = resolveIn(floating(gone), '/floating/moved')\n await expect(resolve({ identity })).rejects.toMatchObject({\n name: 'AgentSessionPreSpawnError',\n reason: 'launchFolderMissing'\n })\n })","source_sha256":"f660940cc20a29a08b8210136821d81e685a75555434590dab0fc7eede2f8f20","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-launch-resolution.test.ts","line":334,"title":"refuses with the folder-missing reason when the pinned folder is gone","body_sha256":"b1f0172af07d636f749af0b2b304a67095711828da40ced3636bbf48948da62c"},"proposal_ids":["acp-main-0001-047"],"explicit_input_controls":[]},{"line":353,"end_line":360,"title":"pins an unpinned floating record to the folder its first launch runs in","decision":"keep","reason":"First floating launch resolves directory and requests durable store pin at exact session/path; observable persistence boundary with actual returned cwd.","source_body_sha256":"74988c0510cc532294c47759ccda82a209c7a9c9e95f66ab3800f1763288aa21","path":"src/main/acp/acp-structured-launch-resolution.test.ts","start":13606,"end":13998,"byte_start":13606,"byte_end":13998,"source":"it('pins an unpinned floating record to the folder its first launch runs in', async () => {\n const { resolve, pinLaunchDirectory } = resolveIn(floating(), '/floating/start')\n await expect(resolve({ identity })).resolves.toMatchObject({ cwd: '/floating/start' })\n expect(pinLaunchDirectory).toHaveBeenCalledExactlyOnceWith(\n identity.sessionId,\n '/floating/start'\n )\n })","source_sha256":"74988c0510cc532294c47759ccda82a209c7a9c9e95f66ab3800f1763288aa21","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution.test.ts","line":345,"title":"pins an unpinned floating record to the folder its first launch runs in","body_sha256":"74988c0510cc532294c47759ccda82a209c7a9c9e95f66ab3800f1763288aa21"},"proposal_ids":[],"explicit_input_controls":[]},{"line":362,"end_line":370,"title":"keeps resolving a worktree chat by its workspace, ignoring any recorded folder","decision":"keep","reason":"Workspace chat ignores recorded floating-style folder and resolves current workspace cwd without repinning.","source_body_sha256":"c8711c25305e3c6e41286098179f2b6789e845768600eaf78141363c5872679f","path":"src/main/acp/acp-structured-launch-resolution.test.ts","start":14002,"end":14482,"byte_start":14002,"byte_end":14482,"source":"it('keeps resolving a worktree chat by its workspace, ignoring any recorded folder', async () => {\n const { resolve, resolveWorkspacePath, pinLaunchDirectory } = resolveIn(\n grokRecord({ launchDirectory: '/somewhere/else' }),\n '/repo/worktree'\n )\n await expect(resolve({ identity })).resolves.toMatchObject({ cwd: '/repo/worktree' })\n expect(resolveWorkspacePath).toHaveBeenCalledWith('workspace-1')\n expect(pinLaunchDirectory).not.toHaveBeenCalled()\n })","source_sha256":"c8711c25305e3c6e41286098179f2b6789e845768600eaf78141363c5872679f","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-resolution.test.ts","line":354,"title":"keeps resolving a worktree chat by its workspace, ignoring any recorded folder","body_sha256":"c8711c25305e3c6e41286098179f2b6789e845768600eaf78141363c5872679f"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-structured-launch-resolution.test.ts:120:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-launch-resolution.test.ts","line":120,"end_line":125,"start":4809,"end":5007,"byte_start":4809,"byte_end":5007,"source":"ACP_LAUNCH_SPECS.map((spec) => spec.agent)","source_sha256":"9d42f8e14e92aeaf7de136dffb4df731603cf77f808ed829743ea5073f7b910e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-launch-resolution.test.ts","line":120,"end_line":120,"start":4817,"end":4859,"byte_start":4817,"byte_end":4859},"binding":"it.each","resolution":[{"name":"ACP_LAUNCH_SPECS","path":"src/main/acp/acp-launch-specs.ts","line":342,"end_line":348,"start":16600,"end":16762,"source":"[\n GROK_LAUNCH_SPEC,\n OPENCODE_LAUNCH_SPEC,\n OPENCODE2_LAUNCH_SPEC,\n OMP_LAUNCH_SPEC,\n ANTIGRAVITY_LAUNCH_SPEC\n]"}],"transform":"ACP_LAUNCH_SPECS.map((spec) => spec.agent)","enclosing_case":{"line":120,"title":"gives %s chats a Full access mode"},"affected_case_lines":[120],"decision":"remove","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-launch-specs.ts","line":343,"end_line":343,"start":16649,"end":16665,"source":"GROK_LAUNCH_SPEC","value":{"kind":"reference","source":"GROK_LAUNCH_SPEC","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":173,"end_line":206,"start":9146,"end":10501},"resolved":{"kind":"object","value":[{"key":"agent","value":{"kind":"string","value":"grok"}},{"key":"command","value":{"kind":"string","value":"grok"}},{"key":"args","value":{"kind":"source-expression","source":"({ fullAccess, pluginDir }) => [\n 'agent',\n ...(fullAccess ? ['--always-approve'] : []),\n ...(pluginDir ? ['--plugin-dir', pluginDir] : []),\n 'stdio'\n ]"}},{"key":"env","value":{"kind":"object","value":[]}},{"key":"dialect","value":{"kind":"reference","source":"GROK_ACP_DIALECT","resolved_at":{"path":"src/main/acp/acp-dialects/grok-dialect.ts","line":210,"end_line":229,"start":8162,"end":8835},"resolved":{"kind":"object","value":[{"key":"subagentStop","value":{"kind":"reference","source":"grokSubagentStop","resolved_at":{"path":"src/main/acp/acp-dialects/grok-subagent-stop.ts","line":14,"end_line":46,"start":441,"end":1607},"resolved":{"kind":"object","value":[{"key":"probe","value":{"kind":"object","value":[{"key":"method","value":{"kind":"string","value":"_x.ai/subagent/cancel"}},{"key":"params","value":{"kind":"object","value":[]}}]}},{"key":"recognizesProbeError","value":{"kind":"source-expression","source":"(error) =>\n error.code === -32602 &&\n typeof error.data === 'string' &&\n error.data.includes('missing field `subagentId`')"}},{"key":"request","value":{"kind":"source-expression","source":"(sessionId, id) => ({\n method: '_x.ai/subagent/cancel',\n params: { sessionId, subagentId: id }\n })"}},{"key":"response","value":{"kind":"source-expression","source":"(value, id) => {\n const parsed = response.safeParse(value)\n if (!parsed.success || parsed.data.result.subagentId !== id) {\n throw new Error('Grok returned an invalid child cancellation response')\n }\n const { cancelled, outcome } = parsed.data.result\n if (outcome?.kind === 'not_found') {\n return { cancelled: false }\n }\n if (outcome?.kind === 'already_finished') {\n if (outcome.status === undefined) {\n throw new Error('Grok returned an invalid child cancellation response')\n }\n const update = grokSubagentNotification({\n sessionUpdate: 'subagent_finished',\n subagent_id: id,\n status: outcome.status\n })\n return { cancelled: false, state: update?.state }\n }\n return { cancelled: outcome?.kind === 'cancelled' || cancelled }\n }"}}]}}},{"key":"backgroundTaskStop","value":{"kind":"reference","source":"grokBackgroundTaskStop","resolved_at":{"path":"src/main/acp/acp-dialects/grok-background-task-stop.ts","line":16,"end_line":29,"start":495,"end":1138},"resolved":{"kind":"object","value":[{"key":"probe","value":{"kind":"object","value":[{"key":"method","value":{"kind":"string","value":"_x.ai/task/kill"}},{"key":"params","value":{"kind":"object","value":[]}}]}},{"key":"lacksRoute","value":{"kind":"source-expression","source":"(error) => error.code === -32601"}},{"key":"request","value":{"kind":"source-expression","source":"(sessionId, taskId) => ({ method: '_x.ai/task/kill', params: { sessionId, taskId } })"}},{"key":"response","value":{"kind":"source-expression","source":"(value, taskId) => {\n const parsed = response.safeParse(value)\n if (!parsed.success || (parsed.data.result && parsed.data.result.taskId !== taskId)) {\n throw new Error('Grok returned an invalid background task kill response')\n }\n const { result } = parsed.data\n return !result ? 'refused' : result.outcome === 'killed' ? 'killed' : 'gone'\n }"}}]}}},{"key":"injectedPromptIdentity","value":{"kind":"boolean","value":true}},{"key":"toolName","value":{"kind":"source-expression","source":"(update) => {\n const parsed = toolMetaSchema.safeParse(update._meta)\n return parsed.success ? parsed.data['x.ai/tool'].name : undefined\n }"}},{"key":"request","value":{"kind":"source-expression","source":"grokRequest"}},{"key":"settleRequest","value":{"kind":"source-expression","source":"grokSettleRequest"}},{"key":"toolBackgroundTasks","value":{"kind":"source-expression","source":"grokToolBackgroundTasks"}},{"key":"toolSubagents","value":{"kind":"source-expression","source":"grokToolSubagents"}},{"source":"subagentSessionEnd"},{"source":"notification"},{"source":"contextWindow"},{"key":"modelEfforts","value":{"kind":"source-expression","source":"grokModelEfforts"}},{"source":"hookBlock"},{"key":"promptErrorDetail","value":{"kind":"source-expression","source":"(error) => promptErrorDataSchema.safeParse(error.data).data?.message"}},{"key":"failedTurnText","value":{"kind":"source-expression","source":"() => 'Grok ended this turn with an error.'"}}]}}},{"key":"loginCommand","value":{"kind":"source-expression","source":"agentSessionSignInFor('grok')?.loginCommand ?? []"}},{"key":"authMethod","value":{"kind":"source-expression","source":"({ advertised, env }) =>\n env.XAI_API_KEY?.trim() && advertised.includes('xai.api_key')\n ? 'xai.api_key'\n : advertised.includes('cached_token')\n ? 'cached_token'\n : undefined"}},{"key":"account","value":{"kind":"call-source","callee":"directoryAccountBinding","arguments":[{"kind":"string","value":"GROK_HOME"},{"kind":"source-expression","source":"(homePath) => join(homePath, '.grok')"}],"source":"directoryAccountBinding('GROK_HOME', (homePath) => join(homePath, '.grok'))"}},{"key":"installDirectories","value":{"kind":"source-expression","source":"({ env }) => (env.GROK_HOME ? [join(env.GROK_HOME, 'bin')] : [])"}},{"key":"modelDiscovery","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"initialize"}},{"key":"read","value":{"kind":"source-expression","source":"readGrokModelCatalog"}},{"key":"listingNamesConfiguredModel","value":{"kind":"boolean","value":false}}]}},{"key":"visualsSkill","value":{"kind":"reference","source":"loadGrokVisualsSkill","resolved_at":{"path":"src/main/acp/acp-visuals-skill.ts","line":31,"end_line":34,"start":1379,"end":1539},"resolved":{"kind":"source-expression","source":"async ({ skill, version }) =>\n version !== null && hasReachedAppVersion(version, GROK_PLUGIN_DIR_FIRST_VERSION)\n ? { pluginDir: skill.pluginDir }\n : null"}}},{"key":"compaction","value":{"kind":"boolean","value":true}},{"key":"transcriptImport","value":{"kind":"reference","source":"GROK_TRANSCRIPT_IMPORT","resolved_at":{"path":"src/main/grok/grok-transcript-import.ts","line":6,"end_line":20,"start":339,"end":974},"resolved":{"kind":"call-source","callee":"directoryTranscriptImport","arguments":[{"kind":"object","value":[{"key":"conversationStore","value":{"kind":"source-expression","source":"({ accountHomePath }) => join(accountHomePath, 'sessions')"}},{"key":"accountHomeCandidates","value":{"kind":"source-expression","source":"({ selectedAccountHomePath }) => [\n selectedAccountHomePath,\n resolveGrokHomeDir()\n ]"}},{"key":"findTranscript","value":{"kind":"source-expression","source":"async ({ providerSessionId, store, workspaceCwd, strictErrors }) =>\n (await findGrokChatHistoryByCwd({\n sessionId: providerSessionId,\n cwd: workspaceCwd,\n sessionsDir: store\n })) ??\n resolveSessionFilePath('grok', providerSessionId, { grokSessionsDir: store, strictErrors })"}}]}],"source":"directoryTranscriptImport({\n conversationStore: ({ accountHomePath }) => join(accountHomePath, 'sessions'),\n // The chat's own home, then the one Session History lists Grok's conversations from.\n accountHomeCandidates: ({ selectedAccountHomePath }) => [\n selectedAccountHomePath,\n resolveGrokHomeDir()\n ],\n findTranscript: async ({ providerSessionId, store, workspaceCwd, strictErrors }) =>\n (await findGrokChatHistoryByCwd({\n sessionId: providerSessionId,\n cwd: workspaceCwd,\n sessionsDir: store\n })) ??\n resolveSessionFilePath('grok', providerSessionId, { grokSessionsDir: store, strictErrors })\n})"}}},{"key":"sessionHistory","value":{"kind":"reference","source":"GROK_SESSION_HISTORY","resolved_at":{"path":"src/main/grok/grok-session-history.ts","line":9,"end_line":24,"start":305,"end":920},"resolved":{"kind":"object","value":[{"key":"rowAgents","value":{"kind":"array","value":[{"kind":"string","value":"grok"}]}},{"key":"rowSessionId","value":{"kind":"source-expression","source":"(link) => link.handle.nativeId"}},{"key":"parseResumeArgs","value":{"kind":"source-expression","source":"(args) => {\n // `--fork-session` resumes into a new session id, so it writes no owned one.\n if (ownOptionsInclude(args, ['--fork-session'])) {\n return null\n }\n const invocation = resumeInvocationFromOptions(args, {\n targetless: ['-c', '--continue'],\n markers: ['-r', '--resume', '--load']\n })\n // Grok reads a non-UUID value as a session title, which may name any of the folder's sessions.\n return invocation?.target && !UUID.test(invocation.target) ? { target: null } : invocation\n }"}}]}}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"2fa9e57d87fe100f7054f0888e387bf41d808160cbf97c67479ca371055268dd","byte_start":16649,"byte_end":16665,"input_label":"grok","decision":"remove","reason":"Copied full-access capability membership; actual permission-mode launch/enforcement tests retain behavior."},{"index":2,"path":"src/main/acp/acp-launch-specs.ts","line":344,"end_line":344,"start":16669,"end":16689,"source":"OPENCODE_LAUNCH_SPEC","value":{"kind":"reference","source":"OPENCODE_LAUNCH_SPEC","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":239,"end_line":254,"start":12087,"end":12751},"resolved":{"kind":"call-source","callee":"openCodeLaunchSpec","arguments":[{"kind":"object","value":[{"key":"agent","value":{"kind":"string","value":"opencode"}},{"key":"command","value":{"kind":"string","value":"opencode"}},{"key":"minimumVersions","value":{"kind":"reference","source":"OPENCODE_MINIMUM_VERSIONS","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":210,"end_line":210,"start":10663,"end":10684},"resolved":{"kind":"array","value":[{"kind":"string","value":"1.18.31"},{"kind":"string","value":"2.0.14"}]}}},{"key":"modelDiscovery","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"command"}},{"key":"args","value":{"kind":"reference","source":"OPENCODE_MODEL_LISTING_ARGS","resolved_at":{"path":"src/main/opencode/opencode-model-catalog-listing.ts","line":9,"end_line":9,"start":448,"end":471},"resolved":{"kind":"array","value":[{"kind":"string","value":"models"},{"kind":"string","value":"--verbose"}]}}},{"key":"parse","value":{"kind":"source-expression","source":"parseOpenCodeModelListing"}},{"key":"listingNamesConfiguredModel","value":{"kind":"boolean","value":false}},{"key":"supportsVersion","value":{"kind":"source-expression","source":"(version) => compareAppVersions(version, '2.0.0') < 0"}},{"key":"otherReleasesListInSession","value":{"kind":"boolean","value":true}}]}}]}],"source":"openCodeLaunchSpec({\n agent: 'opencode',\n command: 'opencode',\n minimumVersions: OPENCODE_MINIMUM_VERSIONS,\n // Its `initialize` names no models; 1.x lists them with a command, 2.x in a session it deletes.\n modelDiscovery: {\n kind: 'command',\n args: OPENCODE_MODEL_LISTING_ARGS,\n parse: parseOpenCodeModelListing,\n // The listing marks no default; a chat started with no pick names it.\n listingNamesConfiguredModel: false,\n // 2.x and later reject `--verbose`, and their listings omit providers that report after startup.\n supportsVersion: (version) => compareAppVersions(version, '2.0.0') < 0,\n otherReleasesListInSession: true\n }\n})"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"4e7cfd829c7de6245c7971a649286033a96c260496c7642a864b6bd7fb92238e","byte_start":16669,"byte_end":16689,"input_label":"opencode","decision":"remove","reason":"Copied full-access capability membership; actual permission-mode launch/enforcement tests retain behavior."},{"index":3,"path":"src/main/acp/acp-launch-specs.ts","line":345,"end_line":345,"start":16693,"end":16714,"source":"OPENCODE2_LAUNCH_SPEC","value":{"kind":"reference","source":"OPENCODE2_LAUNCH_SPEC","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":258,"end_line":263,"start":12982,"end":13156},"resolved":{"kind":"call-source","callee":"openCodeLaunchSpec","arguments":[{"kind":"object","value":[{"key":"agent","value":{"kind":"string","value":"opencode2"}},{"key":"command","value":{"kind":"string","value":"opencode2"}},{"key":"minimumVersions","value":{"kind":"array","value":[{"kind":"string","value":"2.0.14"}]}},{"key":"modelDiscovery","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"session"}},{"key":"listingNamesConfiguredModel","value":{"kind":"boolean","value":false}}]}}]}],"source":"openCodeLaunchSpec({\n agent: 'opencode2',\n command: 'opencode2',\n minimumVersions: ['2.0.14'],\n modelDiscovery: { kind: 'session', listingNamesConfiguredModel: false }\n})"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"f609f0d3036d4485faed1968c9f10054eec577bf2d33b2da0490b6f55d680b3b","byte_start":16693,"byte_end":16714,"input_label":"opencode2","decision":"remove","reason":"Copied full-access capability membership; actual permission-mode launch/enforcement tests retain behavior."},{"index":4,"path":"src/main/acp/acp-launch-specs.ts","line":346,"end_line":346,"start":16718,"end":16733,"source":"OMP_LAUNCH_SPEC","value":{"kind":"reference","source":"OMP_LAUNCH_SPEC","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":266,"end_line":294,"start":13281,"end":14541},"resolved":{"kind":"object","value":[{"key":"agent","value":{"kind":"string","value":"omp"}},{"key":"command","value":{"kind":"string","value":"omp"}},{"key":"args","value":{"kind":"source-expression","source":"({ pluginDir }) => ['acp', ...(pluginDir ? ['--plugin-dir', pluginDir] : [])]"}},{"key":"env","value":{"kind":"object","value":[]}},{"key":"dialect","value":{"kind":"reference","source":"OMP_ACP_DIALECT","resolved_at":{"path":"src/main/acp/acp-dialects/omp-dialect.ts","line":112,"end_line":123,"start":4474,"end":4799},"resolved":{"kind":"object","value":[{"source":"normalizeToolUpdate"},{"source":"compactionReply"},{"key":"authenticationRequired","value":{"kind":"source-expression","source":"(error) => {\n const details = promptErrorDataSchema.safeParse(error.data).data?.details\n return (\n error.code === -32603 &&\n details !== undefined &&\n SIGNED_OUT_DETAIL_PREFIXES.some((prefix) => details.startsWith(prefix))\n )\n }"}}]}}},{"key":"loginCommand","value":{"kind":"source-expression","source":"agentSessionSignInFor('omp')?.loginCommand ?? []"}},{"key":"account","value":{"kind":"call-source","callee":"directoryAccountBinding","arguments":[{"kind":"string","value":"PI_CODING_AGENT_DIR"},{"kind":"source-expression","source":"(homePath) =>\n join(homePath, '.omp', 'agent')"}],"source":"directoryAccountBinding('PI_CODING_AGENT_DIR', (homePath) =>\n join(homePath, '.omp', 'agent')\n )"}},{"key":"installDirectories","value":{"kind":"source-expression","source":"() => []"}},{"key":"minimumVersions","value":{"kind":"array","value":[{"kind":"string","value":"17.0.5"}]}},{"key":"modelDiscovery","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"session"}},{"key":"listingNamesConfiguredModel","value":{"kind":"boolean","value":false}},{"key":"sessionFolderArgs","value":{"kind":"source-expression","source":"(folder) => ['--session-dir', folder]"}}]}},{"key":"visualsSkill","value":{"kind":"reference","source":"loadOmpVisualsSkill","resolved_at":{"path":"src/main/acp/acp-visuals-skill.ts","line":88,"end_line":90,"start":3708,"end":3763},"resolved":{"kind":"source-expression","source":"async ({ skill }) => ({\n pluginDir: skill.pluginDir\n})"}}},{"key":"compaction","value":{"kind":"boolean","value":true}},{"key":"transcriptImport","value":{"kind":"reference","source":"OMP_TRANSCRIPT_IMPORT","resolved_at":{"path":"src/main/omp/omp-transcript-import.ts","line":13,"end_line":26,"start":581,"end":1246},"resolved":{"kind":"call-source","callee":"directoryTranscriptImport","arguments":[{"kind":"object","value":[{"key":"conversationStore","value":{"kind":"source-expression","source":"({ accountHomePath, launchEnv }) => sessionsRoot(accountHomePath, launchEnv)"}},{"key":"accountHomeCandidates","value":{"kind":"source-expression","source":"({ selectedAccountHomePath }) => [selectedAccountHomePath]"}},{"key":"findTranscript","value":{"kind":"source-expression","source":"({ providerSessionId, store, launchEnv, workspaceCwd, strictErrors }) =>\n findOmpSessionByCwd({\n sessionsDir: store,\n sessionId: providerSessionId,\n cwd: workspaceCwd,\n homeDir: (process.platform === 'win32' ? launchEnv.USERPROFILE : launchEnv.HOME) || homedir(),\n env: launchEnv,\n strictErrors\n })"}}]}],"source":"directoryTranscriptImport({\n conversationStore: ({ accountHomePath, launchEnv }) => sessionsRoot(accountHomePath, launchEnv),\n accountHomeCandidates: ({ selectedAccountHomePath }) => [selectedAccountHomePath],\n // Where OMP itself keeps the account's sessions, which is not always under it (XDG_DATA_HOME).\n findTranscript: ({ providerSessionId, store, launchEnv, workspaceCwd, strictErrors }) =>\n findOmpSessionByCwd({\n sessionsDir: store,\n sessionId: providerSessionId,\n cwd: workspaceCwd,\n homeDir: (process.platform === 'win32' ? launchEnv.USERPROFILE : launchEnv.HOME) || homedir(),\n env: launchEnv,\n strictErrors\n })\n})"}}},{"key":"sessionHistory","value":{"kind":"reference","source":"OMP_SESSION_HISTORY","resolved_at":{"path":"src/main/omp/omp-session-history.ts","line":8,"end_line":18,"start":339,"end":729},"resolved":{"kind":"object","value":[{"key":"rowAgents","value":{"kind":"array","value":[{"kind":"string","value":"omp"}]}},{"key":"rowSessionId","value":{"kind":"source-expression","source":"(link) => link.handle.nativeId"}},{"key":"parseResumeArgs","value":{"kind":"source-expression","source":"(args) =>\n resumeInvocationFromOptions(args, {\n targetless: ['-c', '--continue'],\n markers: ['-r', '--resume', '--session']\n })"}},{"key":"resumeTargetMatches","value":{"kind":"source-expression","source":"sessionFileResumeTargetMatches"}}]}}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"60d0f8d746dd010c4899dd243b9e7635a6b4e7599d7d4448b9ea11158b146ba4","byte_start":16718,"byte_end":16733,"input_label":"omp","decision":"remove","reason":"Copied full-access capability membership; actual permission-mode launch/enforcement tests retain behavior."},{"index":5,"path":"src/main/acp/acp-launch-specs.ts","line":347,"end_line":347,"start":16737,"end":16760,"source":"ANTIGRAVITY_LAUNCH_SPEC","value":{"kind":"reference","source":"ANTIGRAVITY_LAUNCH_SPEC","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":305,"end_line":340,"start":15037,"end":16561},"resolved":{"kind":"object","value":[{"key":"agent","value":{"kind":"string","value":"antigravity"}},{"key":"command","value":{"kind":"reference","source":"ANTIGRAVITY_ACP_COMMAND","resolved_at":{"path":"src/main/antigravity/antigravity-acp-runtime.ts","line":11,"end_line":11,"start":573,"end":593},"resolved":{"kind":"string","value":"agy_acp_server.par"}}},{"key":"ignoreAgentCommandSetting","value":{"kind":"boolean","value":true}},{"key":"args","value":{"kind":"source-expression","source":"() => (process.platform === 'linux' ? ['--uid='] : [])"}},{"key":"env","value":{"kind":"reference","source":"ANTIGRAVITY_ACP_ENV","resolved_at":{"path":"src/main/antigravity/antigravity-acp-environment.ts","line":9,"end_line":13,"start":510,"end":612},"resolved":{"kind":"object","value":[{"key":"AGY_ACP_FORCE_FILE_STORAGE","value":{"kind":"string","value":"1"}},{"key":"BROWSER","value":{"kind":"reference","source":"ANTIGRAVITY_BROWSER_COMMAND","resolved_at":{"path":"src/main/antigravity/antigravity-browser-helper.ts","line":23,"end_line":25,"start":1421,"end":1490},"resolved":{"kind":"call-source","callee":"BROWSER_ARGV.map(\n quotePosixShellDoubleQuotedApostrophe\n).join","arguments":[{"kind":"string","value":" "}],"source":"BROWSER_ARGV.map(\n quotePosixShellDoubleQuotedApostrophe\n).join(' ')"}}},{"key":"PYTHONUNBUFFERED","value":{"kind":"string","value":"1"}}]}}},{"key":"scrubEnvironment","value":{"kind":"source-expression","source":"scrubAntigravityAcpEnvironment"}},{"key":"dialect","value":{"kind":"reference","source":"ANTIGRAVITY_ACP_DIALECT","resolved_at":{"path":"src/main/acp/acp-dialects/antigravity-dialect.ts","line":113,"end_line":120,"start":4576,"end":4992},"resolved":{"kind":"object","value":[{"key":"request","value":{"kind":"source-expression","source":"(method, params) => questionRequest(method, params) ?? warnedApproval(method, params)"}},{"source":"normalizeToolUpdate"},{"key":"toolName","value":{"kind":"source-expression","source":"(update) => (update.kind === 'execute' ? 'execute' : undefined)"}},{"key":"withheldCommands","value":{"kind":"array","value":[{"kind":"string","value":"logout"}]}}]}}},{"key":"loginCommand","value":{"kind":"source-expression","source":"agentSessionSignInFor('antigravity')?.loginCommand ?? []"}},{"key":"authMethod","value":{"kind":"source-expression","source":"({ advertised }) =>\n advertised.includes('oauth-personal') ? 'oauth-personal' : undefined"}},{"key":"signIn","value":{"kind":"object","value":[{"key":"read","value":{"kind":"source-expression","source":"readAntigravitySignInLine"}},{"key":"answered","value":{"kind":"source-expression","source":"answerAntigravityChatAuth"}}]}},{"key":"account","value":{"kind":"reference","source":"antigravityChatAccount","resolved_at":{"path":"src/main/antigravity/antigravity-chat-account.ts","line":60,"end_line":77,"start":2442,"end":2987},"resolved":{"kind":"object","value":[{"source":"...folder"},{"key":"prepare","value":{"kind":"source-expression","source":"async (env: Readonly>): Promise => {\n const home = env.GEMINI_HOME\n if (!home) {\n throw new Error('GEMINI_HOME is not set')\n }\n if (!(await retained.stopFailed(home))) {\n throw new AntigravitySignInCloseUnprovenError()\n }\n if (!(await antigravityBrowserHelperWorks())) {\n throw new AntigravitySignInSentence(\n \"Antigravity's sign-in link can't be captured on this host. Restart Orca and try again.\"\n )\n }\n await folder.prepare?.(env)\n }"}}]}}},{"key":"installDirectories","value":{"kind":"source-expression","source":"() => []"}},{"key":"managedRuntime","value":{"kind":"reference","source":"ANTIGRAVITY_ACP_RUNTIME","resolved_at":{"path":"src/main/antigravity/antigravity-acp-runtime.ts","line":82,"end_line":88,"start":3199,"end":3431},"resolved":{"kind":"object","value":[{"key":"label","value":{"kind":"string","value":"Antigravity"}},{"key":"root","value":{"kind":"source-expression","source":"(dataDirectory) => join(dataDirectory, 'agent-runtimes', 'antigravity')"}},{"source":"pin"},{"key":"validate","value":{"kind":"source-expression","source":"(folder, pinned, signal) =>\n probeAntigravityAcpServer(join(folder, COMMAND), pinned.version, signal)"}}]}}},{"key":"permissionModeConfig","value":{"kind":"object","value":[{"key":"values","value":{"kind":"object","value":[{"key":"ask","value":{"kind":"string","value":"default"}},{"key":"'accept-edits'","value":{"kind":"string","value":"auto_edit"}},{"key":"'full-access'","value":{"kind":"string","value":"yolo"}}]}}]}},{"key":"modelDiscovery","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"unavailable"}},{"key":"reason","value":{"kind":"string","value":"the Antigravity server lists its models only in a signed-in session"}}]}},{"key":"transcriptImport","value":{"kind":"null","value":null}},{"key":"sessionHistory","value":{"kind":"reference","source":"ANTIGRAVITY_SESSION_HISTORY","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":297,"end_line":301,"start":14706,"end":14817},"resolved":{"kind":"object","value":[{"key":"rowAgents","value":{"kind":"array","value":[{"kind":"string","value":"antigravity"}]}},{"key":"rowSessionId","value":{"kind":"source-expression","source":"(link) => link.handle.nativeId"}},{"key":"parseResumeArgs","value":{"kind":"source-expression","source":"() => null"}}]}}},{"key":"privateTempDirectory","value":{"kind":"boolean","value":true}},{"key":"resumePreference","value":{"kind":"string","value":"resume"}},{"key":"launchGate","value":{"kind":"reference","source":"ANTIGRAVITY_LAUNCH_GATE","resolved_at":{"path":"src/main/antigravity/antigravity-chat-account.ts","line":16,"end_line":16,"start":814,"end":846},"resolved":{"kind":"source-expression","source":"new AcpLaunchGate('Antigravity')"}}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"153062778900f24cb47f10716e91a0ebc604670d113c9c7765a1fc70d4fbcfa6","byte_start":16737,"byte_end":16760,"input_label":"antigravity","decision":"remove","reason":"Copied full-access capability membership; actual permission-mode launch/enforcement tests retain behavior."}],"original_row_count":5}],"parameter_groups":[{"id":"src/main/acp/acp-structured-launch-resolution.test.ts:120:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-launch-resolution.test.ts","line":120,"end_line":125,"start":4809,"end":5007,"byte_start":4809,"byte_end":5007,"source":"ACP_LAUNCH_SPECS.map((spec) => spec.agent)","source_sha256":"9d42f8e14e92aeaf7de136dffb4df731603cf77f808ed829743ea5073f7b910e","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-launch-resolution.test.ts","line":120,"end_line":120,"start":4817,"end":4859,"byte_start":4817,"byte_end":4859},"binding":"it.each","resolution":[{"name":"ACP_LAUNCH_SPECS","path":"src/main/acp/acp-launch-specs.ts","line":342,"end_line":348,"start":16600,"end":16762,"source":"[\n GROK_LAUNCH_SPEC,\n OPENCODE_LAUNCH_SPEC,\n OPENCODE2_LAUNCH_SPEC,\n OMP_LAUNCH_SPEC,\n ANTIGRAVITY_LAUNCH_SPEC\n]"}],"transform":"ACP_LAUNCH_SPECS.map((spec) => spec.agent)","enclosing_case":{"line":120,"title":"gives %s chats a Full access mode"},"affected_case_lines":[120],"decision":"remove","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-launch-specs.ts","line":343,"end_line":343,"start":16649,"end":16665,"source":"GROK_LAUNCH_SPEC","value":{"kind":"reference","source":"GROK_LAUNCH_SPEC","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":173,"end_line":206,"start":9146,"end":10501},"resolved":{"kind":"object","value":[{"key":"agent","value":{"kind":"string","value":"grok"}},{"key":"command","value":{"kind":"string","value":"grok"}},{"key":"args","value":{"kind":"source-expression","source":"({ fullAccess, pluginDir }) => [\n 'agent',\n ...(fullAccess ? ['--always-approve'] : []),\n ...(pluginDir ? ['--plugin-dir', pluginDir] : []),\n 'stdio'\n ]"}},{"key":"env","value":{"kind":"object","value":[]}},{"key":"dialect","value":{"kind":"reference","source":"GROK_ACP_DIALECT","resolved_at":{"path":"src/main/acp/acp-dialects/grok-dialect.ts","line":210,"end_line":229,"start":8162,"end":8835},"resolved":{"kind":"object","value":[{"key":"subagentStop","value":{"kind":"reference","source":"grokSubagentStop","resolved_at":{"path":"src/main/acp/acp-dialects/grok-subagent-stop.ts","line":14,"end_line":46,"start":441,"end":1607},"resolved":{"kind":"object","value":[{"key":"probe","value":{"kind":"object","value":[{"key":"method","value":{"kind":"string","value":"_x.ai/subagent/cancel"}},{"key":"params","value":{"kind":"object","value":[]}}]}},{"key":"recognizesProbeError","value":{"kind":"source-expression","source":"(error) =>\n error.code === -32602 &&\n typeof error.data === 'string' &&\n error.data.includes('missing field `subagentId`')"}},{"key":"request","value":{"kind":"source-expression","source":"(sessionId, id) => ({\n method: '_x.ai/subagent/cancel',\n params: { sessionId, subagentId: id }\n })"}},{"key":"response","value":{"kind":"source-expression","source":"(value, id) => {\n const parsed = response.safeParse(value)\n if (!parsed.success || parsed.data.result.subagentId !== id) {\n throw new Error('Grok returned an invalid child cancellation response')\n }\n const { cancelled, outcome } = parsed.data.result\n if (outcome?.kind === 'not_found') {\n return { cancelled: false }\n }\n if (outcome?.kind === 'already_finished') {\n if (outcome.status === undefined) {\n throw new Error('Grok returned an invalid child cancellation response')\n }\n const update = grokSubagentNotification({\n sessionUpdate: 'subagent_finished',\n subagent_id: id,\n status: outcome.status\n })\n return { cancelled: false, state: update?.state }\n }\n return { cancelled: outcome?.kind === 'cancelled' || cancelled }\n }"}}]}}},{"key":"backgroundTaskStop","value":{"kind":"reference","source":"grokBackgroundTaskStop","resolved_at":{"path":"src/main/acp/acp-dialects/grok-background-task-stop.ts","line":16,"end_line":29,"start":495,"end":1138},"resolved":{"kind":"object","value":[{"key":"probe","value":{"kind":"object","value":[{"key":"method","value":{"kind":"string","value":"_x.ai/task/kill"}},{"key":"params","value":{"kind":"object","value":[]}}]}},{"key":"lacksRoute","value":{"kind":"source-expression","source":"(error) => error.code === -32601"}},{"key":"request","value":{"kind":"source-expression","source":"(sessionId, taskId) => ({ method: '_x.ai/task/kill', params: { sessionId, taskId } })"}},{"key":"response","value":{"kind":"source-expression","source":"(value, taskId) => {\n const parsed = response.safeParse(value)\n if (!parsed.success || (parsed.data.result && parsed.data.result.taskId !== taskId)) {\n throw new Error('Grok returned an invalid background task kill response')\n }\n const { result } = parsed.data\n return !result ? 'refused' : result.outcome === 'killed' ? 'killed' : 'gone'\n }"}}]}}},{"key":"injectedPromptIdentity","value":{"kind":"boolean","value":true}},{"key":"toolName","value":{"kind":"source-expression","source":"(update) => {\n const parsed = toolMetaSchema.safeParse(update._meta)\n return parsed.success ? parsed.data['x.ai/tool'].name : undefined\n }"}},{"key":"request","value":{"kind":"source-expression","source":"grokRequest"}},{"key":"settleRequest","value":{"kind":"source-expression","source":"grokSettleRequest"}},{"key":"toolBackgroundTasks","value":{"kind":"source-expression","source":"grokToolBackgroundTasks"}},{"key":"toolSubagents","value":{"kind":"source-expression","source":"grokToolSubagents"}},{"source":"subagentSessionEnd"},{"source":"notification"},{"source":"contextWindow"},{"key":"modelEfforts","value":{"kind":"source-expression","source":"grokModelEfforts"}},{"source":"hookBlock"},{"key":"promptErrorDetail","value":{"kind":"source-expression","source":"(error) => promptErrorDataSchema.safeParse(error.data).data?.message"}},{"key":"failedTurnText","value":{"kind":"source-expression","source":"() => 'Grok ended this turn with an error.'"}}]}}},{"key":"loginCommand","value":{"kind":"source-expression","source":"agentSessionSignInFor('grok')?.loginCommand ?? []"}},{"key":"authMethod","value":{"kind":"source-expression","source":"({ advertised, env }) =>\n env.XAI_API_KEY?.trim() && advertised.includes('xai.api_key')\n ? 'xai.api_key'\n : advertised.includes('cached_token')\n ? 'cached_token'\n : undefined"}},{"key":"account","value":{"kind":"call-source","callee":"directoryAccountBinding","arguments":[{"kind":"string","value":"GROK_HOME"},{"kind":"source-expression","source":"(homePath) => join(homePath, '.grok')"}],"source":"directoryAccountBinding('GROK_HOME', (homePath) => join(homePath, '.grok'))"}},{"key":"installDirectories","value":{"kind":"source-expression","source":"({ env }) => (env.GROK_HOME ? [join(env.GROK_HOME, 'bin')] : [])"}},{"key":"modelDiscovery","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"initialize"}},{"key":"read","value":{"kind":"source-expression","source":"readGrokModelCatalog"}},{"key":"listingNamesConfiguredModel","value":{"kind":"boolean","value":false}}]}},{"key":"visualsSkill","value":{"kind":"reference","source":"loadGrokVisualsSkill","resolved_at":{"path":"src/main/acp/acp-visuals-skill.ts","line":31,"end_line":34,"start":1379,"end":1539},"resolved":{"kind":"source-expression","source":"async ({ skill, version }) =>\n version !== null && hasReachedAppVersion(version, GROK_PLUGIN_DIR_FIRST_VERSION)\n ? { pluginDir: skill.pluginDir }\n : null"}}},{"key":"compaction","value":{"kind":"boolean","value":true}},{"key":"transcriptImport","value":{"kind":"reference","source":"GROK_TRANSCRIPT_IMPORT","resolved_at":{"path":"src/main/grok/grok-transcript-import.ts","line":6,"end_line":20,"start":339,"end":974},"resolved":{"kind":"call-source","callee":"directoryTranscriptImport","arguments":[{"kind":"object","value":[{"key":"conversationStore","value":{"kind":"source-expression","source":"({ accountHomePath }) => join(accountHomePath, 'sessions')"}},{"key":"accountHomeCandidates","value":{"kind":"source-expression","source":"({ selectedAccountHomePath }) => [\n selectedAccountHomePath,\n resolveGrokHomeDir()\n ]"}},{"key":"findTranscript","value":{"kind":"source-expression","source":"async ({ providerSessionId, store, workspaceCwd, strictErrors }) =>\n (await findGrokChatHistoryByCwd({\n sessionId: providerSessionId,\n cwd: workspaceCwd,\n sessionsDir: store\n })) ??\n resolveSessionFilePath('grok', providerSessionId, { grokSessionsDir: store, strictErrors })"}}]}],"source":"directoryTranscriptImport({\n conversationStore: ({ accountHomePath }) => join(accountHomePath, 'sessions'),\n // The chat's own home, then the one Session History lists Grok's conversations from.\n accountHomeCandidates: ({ selectedAccountHomePath }) => [\n selectedAccountHomePath,\n resolveGrokHomeDir()\n ],\n findTranscript: async ({ providerSessionId, store, workspaceCwd, strictErrors }) =>\n (await findGrokChatHistoryByCwd({\n sessionId: providerSessionId,\n cwd: workspaceCwd,\n sessionsDir: store\n })) ??\n resolveSessionFilePath('grok', providerSessionId, { grokSessionsDir: store, strictErrors })\n})"}}},{"key":"sessionHistory","value":{"kind":"reference","source":"GROK_SESSION_HISTORY","resolved_at":{"path":"src/main/grok/grok-session-history.ts","line":9,"end_line":24,"start":305,"end":920},"resolved":{"kind":"object","value":[{"key":"rowAgents","value":{"kind":"array","value":[{"kind":"string","value":"grok"}]}},{"key":"rowSessionId","value":{"kind":"source-expression","source":"(link) => link.handle.nativeId"}},{"key":"parseResumeArgs","value":{"kind":"source-expression","source":"(args) => {\n // `--fork-session` resumes into a new session id, so it writes no owned one.\n if (ownOptionsInclude(args, ['--fork-session'])) {\n return null\n }\n const invocation = resumeInvocationFromOptions(args, {\n targetless: ['-c', '--continue'],\n markers: ['-r', '--resume', '--load']\n })\n // Grok reads a non-UUID value as a session title, which may name any of the folder's sessions.\n return invocation?.target && !UUID.test(invocation.target) ? { target: null } : invocation\n }"}}]}}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"2fa9e57d87fe100f7054f0888e387bf41d808160cbf97c67479ca371055268dd","byte_start":16649,"byte_end":16665,"input_label":"grok","decision":"remove","reason":"Copied full-access capability membership; actual permission-mode launch/enforcement tests retain behavior."},{"index":2,"path":"src/main/acp/acp-launch-specs.ts","line":344,"end_line":344,"start":16669,"end":16689,"source":"OPENCODE_LAUNCH_SPEC","value":{"kind":"reference","source":"OPENCODE_LAUNCH_SPEC","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":239,"end_line":254,"start":12087,"end":12751},"resolved":{"kind":"call-source","callee":"openCodeLaunchSpec","arguments":[{"kind":"object","value":[{"key":"agent","value":{"kind":"string","value":"opencode"}},{"key":"command","value":{"kind":"string","value":"opencode"}},{"key":"minimumVersions","value":{"kind":"reference","source":"OPENCODE_MINIMUM_VERSIONS","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":210,"end_line":210,"start":10663,"end":10684},"resolved":{"kind":"array","value":[{"kind":"string","value":"1.18.31"},{"kind":"string","value":"2.0.14"}]}}},{"key":"modelDiscovery","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"command"}},{"key":"args","value":{"kind":"reference","source":"OPENCODE_MODEL_LISTING_ARGS","resolved_at":{"path":"src/main/opencode/opencode-model-catalog-listing.ts","line":9,"end_line":9,"start":448,"end":471},"resolved":{"kind":"array","value":[{"kind":"string","value":"models"},{"kind":"string","value":"--verbose"}]}}},{"key":"parse","value":{"kind":"source-expression","source":"parseOpenCodeModelListing"}},{"key":"listingNamesConfiguredModel","value":{"kind":"boolean","value":false}},{"key":"supportsVersion","value":{"kind":"source-expression","source":"(version) => compareAppVersions(version, '2.0.0') < 0"}},{"key":"otherReleasesListInSession","value":{"kind":"boolean","value":true}}]}}]}],"source":"openCodeLaunchSpec({\n agent: 'opencode',\n command: 'opencode',\n minimumVersions: OPENCODE_MINIMUM_VERSIONS,\n // Its `initialize` names no models; 1.x lists them with a command, 2.x in a session it deletes.\n modelDiscovery: {\n kind: 'command',\n args: OPENCODE_MODEL_LISTING_ARGS,\n parse: parseOpenCodeModelListing,\n // The listing marks no default; a chat started with no pick names it.\n listingNamesConfiguredModel: false,\n // 2.x and later reject `--verbose`, and their listings omit providers that report after startup.\n supportsVersion: (version) => compareAppVersions(version, '2.0.0') < 0,\n otherReleasesListInSession: true\n }\n})"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"4e7cfd829c7de6245c7971a649286033a96c260496c7642a864b6bd7fb92238e","byte_start":16669,"byte_end":16689,"input_label":"opencode","decision":"remove","reason":"Copied full-access capability membership; actual permission-mode launch/enforcement tests retain behavior."},{"index":3,"path":"src/main/acp/acp-launch-specs.ts","line":345,"end_line":345,"start":16693,"end":16714,"source":"OPENCODE2_LAUNCH_SPEC","value":{"kind":"reference","source":"OPENCODE2_LAUNCH_SPEC","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":258,"end_line":263,"start":12982,"end":13156},"resolved":{"kind":"call-source","callee":"openCodeLaunchSpec","arguments":[{"kind":"object","value":[{"key":"agent","value":{"kind":"string","value":"opencode2"}},{"key":"command","value":{"kind":"string","value":"opencode2"}},{"key":"minimumVersions","value":{"kind":"array","value":[{"kind":"string","value":"2.0.14"}]}},{"key":"modelDiscovery","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"session"}},{"key":"listingNamesConfiguredModel","value":{"kind":"boolean","value":false}}]}}]}],"source":"openCodeLaunchSpec({\n agent: 'opencode2',\n command: 'opencode2',\n minimumVersions: ['2.0.14'],\n modelDiscovery: { kind: 'session', listingNamesConfiguredModel: false }\n})"}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"f609f0d3036d4485faed1968c9f10054eec577bf2d33b2da0490b6f55d680b3b","byte_start":16693,"byte_end":16714,"input_label":"opencode2","decision":"remove","reason":"Copied full-access capability membership; actual permission-mode launch/enforcement tests retain behavior."},{"index":4,"path":"src/main/acp/acp-launch-specs.ts","line":346,"end_line":346,"start":16718,"end":16733,"source":"OMP_LAUNCH_SPEC","value":{"kind":"reference","source":"OMP_LAUNCH_SPEC","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":266,"end_line":294,"start":13281,"end":14541},"resolved":{"kind":"object","value":[{"key":"agent","value":{"kind":"string","value":"omp"}},{"key":"command","value":{"kind":"string","value":"omp"}},{"key":"args","value":{"kind":"source-expression","source":"({ pluginDir }) => ['acp', ...(pluginDir ? ['--plugin-dir', pluginDir] : [])]"}},{"key":"env","value":{"kind":"object","value":[]}},{"key":"dialect","value":{"kind":"reference","source":"OMP_ACP_DIALECT","resolved_at":{"path":"src/main/acp/acp-dialects/omp-dialect.ts","line":112,"end_line":123,"start":4474,"end":4799},"resolved":{"kind":"object","value":[{"source":"normalizeToolUpdate"},{"source":"compactionReply"},{"key":"authenticationRequired","value":{"kind":"source-expression","source":"(error) => {\n const details = promptErrorDataSchema.safeParse(error.data).data?.details\n return (\n error.code === -32603 &&\n details !== undefined &&\n SIGNED_OUT_DETAIL_PREFIXES.some((prefix) => details.startsWith(prefix))\n )\n }"}}]}}},{"key":"loginCommand","value":{"kind":"source-expression","source":"agentSessionSignInFor('omp')?.loginCommand ?? []"}},{"key":"account","value":{"kind":"call-source","callee":"directoryAccountBinding","arguments":[{"kind":"string","value":"PI_CODING_AGENT_DIR"},{"kind":"source-expression","source":"(homePath) =>\n join(homePath, '.omp', 'agent')"}],"source":"directoryAccountBinding('PI_CODING_AGENT_DIR', (homePath) =>\n join(homePath, '.omp', 'agent')\n )"}},{"key":"installDirectories","value":{"kind":"source-expression","source":"() => []"}},{"key":"minimumVersions","value":{"kind":"array","value":[{"kind":"string","value":"17.0.5"}]}},{"key":"modelDiscovery","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"session"}},{"key":"listingNamesConfiguredModel","value":{"kind":"boolean","value":false}},{"key":"sessionFolderArgs","value":{"kind":"source-expression","source":"(folder) => ['--session-dir', folder]"}}]}},{"key":"visualsSkill","value":{"kind":"reference","source":"loadOmpVisualsSkill","resolved_at":{"path":"src/main/acp/acp-visuals-skill.ts","line":88,"end_line":90,"start":3708,"end":3763},"resolved":{"kind":"source-expression","source":"async ({ skill }) => ({\n pluginDir: skill.pluginDir\n})"}}},{"key":"compaction","value":{"kind":"boolean","value":true}},{"key":"transcriptImport","value":{"kind":"reference","source":"OMP_TRANSCRIPT_IMPORT","resolved_at":{"path":"src/main/omp/omp-transcript-import.ts","line":13,"end_line":26,"start":581,"end":1246},"resolved":{"kind":"call-source","callee":"directoryTranscriptImport","arguments":[{"kind":"object","value":[{"key":"conversationStore","value":{"kind":"source-expression","source":"({ accountHomePath, launchEnv }) => sessionsRoot(accountHomePath, launchEnv)"}},{"key":"accountHomeCandidates","value":{"kind":"source-expression","source":"({ selectedAccountHomePath }) => [selectedAccountHomePath]"}},{"key":"findTranscript","value":{"kind":"source-expression","source":"({ providerSessionId, store, launchEnv, workspaceCwd, strictErrors }) =>\n findOmpSessionByCwd({\n sessionsDir: store,\n sessionId: providerSessionId,\n cwd: workspaceCwd,\n homeDir: (process.platform === 'win32' ? launchEnv.USERPROFILE : launchEnv.HOME) || homedir(),\n env: launchEnv,\n strictErrors\n })"}}]}],"source":"directoryTranscriptImport({\n conversationStore: ({ accountHomePath, launchEnv }) => sessionsRoot(accountHomePath, launchEnv),\n accountHomeCandidates: ({ selectedAccountHomePath }) => [selectedAccountHomePath],\n // Where OMP itself keeps the account's sessions, which is not always under it (XDG_DATA_HOME).\n findTranscript: ({ providerSessionId, store, launchEnv, workspaceCwd, strictErrors }) =>\n findOmpSessionByCwd({\n sessionsDir: store,\n sessionId: providerSessionId,\n cwd: workspaceCwd,\n homeDir: (process.platform === 'win32' ? launchEnv.USERPROFILE : launchEnv.HOME) || homedir(),\n env: launchEnv,\n strictErrors\n })\n})"}}},{"key":"sessionHistory","value":{"kind":"reference","source":"OMP_SESSION_HISTORY","resolved_at":{"path":"src/main/omp/omp-session-history.ts","line":8,"end_line":18,"start":339,"end":729},"resolved":{"kind":"object","value":[{"key":"rowAgents","value":{"kind":"array","value":[{"kind":"string","value":"omp"}]}},{"key":"rowSessionId","value":{"kind":"source-expression","source":"(link) => link.handle.nativeId"}},{"key":"parseResumeArgs","value":{"kind":"source-expression","source":"(args) =>\n resumeInvocationFromOptions(args, {\n targetless: ['-c', '--continue'],\n markers: ['-r', '--resume', '--session']\n })"}},{"key":"resumeTargetMatches","value":{"kind":"source-expression","source":"sessionFileResumeTargetMatches"}}]}}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"60d0f8d746dd010c4899dd243b9e7635a6b4e7599d7d4448b9ea11158b146ba4","byte_start":16718,"byte_end":16733,"input_label":"omp","decision":"remove","reason":"Copied full-access capability membership; actual permission-mode launch/enforcement tests retain behavior."},{"index":5,"path":"src/main/acp/acp-launch-specs.ts","line":347,"end_line":347,"start":16737,"end":16760,"source":"ANTIGRAVITY_LAUNCH_SPEC","value":{"kind":"reference","source":"ANTIGRAVITY_LAUNCH_SPEC","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":305,"end_line":340,"start":15037,"end":16561},"resolved":{"kind":"object","value":[{"key":"agent","value":{"kind":"string","value":"antigravity"}},{"key":"command","value":{"kind":"reference","source":"ANTIGRAVITY_ACP_COMMAND","resolved_at":{"path":"src/main/antigravity/antigravity-acp-runtime.ts","line":11,"end_line":11,"start":573,"end":593},"resolved":{"kind":"string","value":"agy_acp_server.par"}}},{"key":"ignoreAgentCommandSetting","value":{"kind":"boolean","value":true}},{"key":"args","value":{"kind":"source-expression","source":"() => (process.platform === 'linux' ? ['--uid='] : [])"}},{"key":"env","value":{"kind":"reference","source":"ANTIGRAVITY_ACP_ENV","resolved_at":{"path":"src/main/antigravity/antigravity-acp-environment.ts","line":9,"end_line":13,"start":510,"end":612},"resolved":{"kind":"object","value":[{"key":"AGY_ACP_FORCE_FILE_STORAGE","value":{"kind":"string","value":"1"}},{"key":"BROWSER","value":{"kind":"reference","source":"ANTIGRAVITY_BROWSER_COMMAND","resolved_at":{"path":"src/main/antigravity/antigravity-browser-helper.ts","line":23,"end_line":25,"start":1421,"end":1490},"resolved":{"kind":"call-source","callee":"BROWSER_ARGV.map(\n quotePosixShellDoubleQuotedApostrophe\n).join","arguments":[{"kind":"string","value":" "}],"source":"BROWSER_ARGV.map(\n quotePosixShellDoubleQuotedApostrophe\n).join(' ')"}}},{"key":"PYTHONUNBUFFERED","value":{"kind":"string","value":"1"}}]}}},{"key":"scrubEnvironment","value":{"kind":"source-expression","source":"scrubAntigravityAcpEnvironment"}},{"key":"dialect","value":{"kind":"reference","source":"ANTIGRAVITY_ACP_DIALECT","resolved_at":{"path":"src/main/acp/acp-dialects/antigravity-dialect.ts","line":113,"end_line":120,"start":4576,"end":4992},"resolved":{"kind":"object","value":[{"key":"request","value":{"kind":"source-expression","source":"(method, params) => questionRequest(method, params) ?? warnedApproval(method, params)"}},{"source":"normalizeToolUpdate"},{"key":"toolName","value":{"kind":"source-expression","source":"(update) => (update.kind === 'execute' ? 'execute' : undefined)"}},{"key":"withheldCommands","value":{"kind":"array","value":[{"kind":"string","value":"logout"}]}}]}}},{"key":"loginCommand","value":{"kind":"source-expression","source":"agentSessionSignInFor('antigravity')?.loginCommand ?? []"}},{"key":"authMethod","value":{"kind":"source-expression","source":"({ advertised }) =>\n advertised.includes('oauth-personal') ? 'oauth-personal' : undefined"}},{"key":"signIn","value":{"kind":"object","value":[{"key":"read","value":{"kind":"source-expression","source":"readAntigravitySignInLine"}},{"key":"answered","value":{"kind":"source-expression","source":"answerAntigravityChatAuth"}}]}},{"key":"account","value":{"kind":"reference","source":"antigravityChatAccount","resolved_at":{"path":"src/main/antigravity/antigravity-chat-account.ts","line":60,"end_line":77,"start":2442,"end":2987},"resolved":{"kind":"object","value":[{"source":"...folder"},{"key":"prepare","value":{"kind":"source-expression","source":"async (env: Readonly>): Promise => {\n const home = env.GEMINI_HOME\n if (!home) {\n throw new Error('GEMINI_HOME is not set')\n }\n if (!(await retained.stopFailed(home))) {\n throw new AntigravitySignInCloseUnprovenError()\n }\n if (!(await antigravityBrowserHelperWorks())) {\n throw new AntigravitySignInSentence(\n \"Antigravity's sign-in link can't be captured on this host. Restart Orca and try again.\"\n )\n }\n await folder.prepare?.(env)\n }"}}]}}},{"key":"installDirectories","value":{"kind":"source-expression","source":"() => []"}},{"key":"managedRuntime","value":{"kind":"reference","source":"ANTIGRAVITY_ACP_RUNTIME","resolved_at":{"path":"src/main/antigravity/antigravity-acp-runtime.ts","line":82,"end_line":88,"start":3199,"end":3431},"resolved":{"kind":"object","value":[{"key":"label","value":{"kind":"string","value":"Antigravity"}},{"key":"root","value":{"kind":"source-expression","source":"(dataDirectory) => join(dataDirectory, 'agent-runtimes', 'antigravity')"}},{"source":"pin"},{"key":"validate","value":{"kind":"source-expression","source":"(folder, pinned, signal) =>\n probeAntigravityAcpServer(join(folder, COMMAND), pinned.version, signal)"}}]}}},{"key":"permissionModeConfig","value":{"kind":"object","value":[{"key":"values","value":{"kind":"object","value":[{"key":"ask","value":{"kind":"string","value":"default"}},{"key":"'accept-edits'","value":{"kind":"string","value":"auto_edit"}},{"key":"'full-access'","value":{"kind":"string","value":"yolo"}}]}}]}},{"key":"modelDiscovery","value":{"kind":"object","value":[{"key":"kind","value":{"kind":"string","value":"unavailable"}},{"key":"reason","value":{"kind":"string","value":"the Antigravity server lists its models only in a signed-in session"}}]}},{"key":"transcriptImport","value":{"kind":"null","value":null}},{"key":"sessionHistory","value":{"kind":"reference","source":"ANTIGRAVITY_SESSION_HISTORY","resolved_at":{"path":"src/main/acp/acp-launch-specs.ts","line":297,"end_line":301,"start":14706,"end":14817},"resolved":{"kind":"object","value":[{"key":"rowAgents","value":{"kind":"array","value":[{"kind":"string","value":"antigravity"}]}},{"key":"rowSessionId","value":{"kind":"source-expression","source":"(link) => link.handle.nativeId"}},{"key":"parseResumeArgs","value":{"kind":"source-expression","source":"() => null"}}]}}},{"key":"privateTempDirectory","value":{"kind":"boolean","value":true}},{"key":"resumePreference","value":{"kind":"string","value":"resume"}},{"key":"launchGate","value":{"kind":"reference","source":"ANTIGRAVITY_LAUNCH_GATE","resolved_at":{"path":"src/main/antigravity/antigravity-chat-account.ts","line":16,"end_line":16,"start":814,"end":846},"resolved":{"kind":"source-expression","source":"new AcpLaunchGate('Antigravity')"}}}]}},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"153062778900f24cb47f10716e91a0ebc604670d113c9c7765a1fc70d4fbcfa6","byte_start":16737,"byte_end":16760,"input_label":"antigravity","decision":"remove","reason":"Copied full-access capability membership; actual permission-mode launch/enforcement tests retain behavior."}],"original_row_count":5}],"body_support_cleanup_loops":[],"implemented_changes":[{"proposal_id":"acp-main-0001-045","summary":"Handleless launch reader spy explicitly proves zero journal reads.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"},{"proposal_id":"acp-main-0001-046","summary":"Removed five-agent full-access capability table; ask/full-access launch and runtime permission behavior remain.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"},{"proposal_id":"acp-main-0001-047","summary":"Missing workspace fixture uses a uniquely owned removed temp path with failure-safe cleanup.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/acp-launch-specs.ts","src/main/acp/acp-structured-launch-resolution.ts","src/main/runtime/structured-agent-launch-composition.test-support.ts","src/main/runtime/structured-agent-launch-composition.ts"],"evidence_sha256":{"src/main/acp/acp-launch-specs.ts":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","src/main/acp/acp-structured-launch-resolution.ts":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","src/main/runtime/structured-agent-launch-composition.test-support.ts":"a5d109637e695829b306570250295316ac6f653492f66bd9da7126808a70a962","src/main/runtime/structured-agent-launch-composition.ts":"647e06f46a4321a1081540dc9c7cf64c069268c6c3eb422d7c63fd74f27d6aae"},"evidence_source_sha256":{"src/main/acp/acp-launch-specs.ts":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","src/main/acp/acp-structured-launch-resolution.ts":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","src/main/runtime/structured-agent-launch-composition.test-support.ts":"a5d109637e695829b306570250295316ac6f653492f66bd9da7126808a70a962","src/main/runtime/structured-agent-launch-composition.ts":"647e06f46a4321a1081540dc9c7cf64c069268c6c3eb422d7c63fd74f27d6aae"},"original_evidence_detail":[{"path":"src/main/acp/acp-launch-specs.ts","sha256":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","lines":352,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-launch-resolution.ts","sha256":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","lines":342,"read_state":"full_body_read"},{"path":"src/main/runtime/structured-agent-launch-composition.test-support.ts","sha256":"a5d109637e695829b306570250295316ac6f653492f66bd9da7126808a70a962","lines":152,"read_state":"full_body_read"},{"path":"src/main/runtime/structured-agent-launch-composition.ts","sha256":"647e06f46a4321a1081540dc9c7cf64c069268c6c3eb422d7c63fd74f27d6aae","lines":249,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"ACP launch resolution pins the record account home and searches the agent install dir","status":"passed"},{"full_name":"ACP launch resolution creates a new ACP session after clear instead of probing the old session","status":"passed"},{"full_name":"ACP launch resolution asks the agent to approve everything only under the chat's full access","status":"passed"},{"full_name":"ACP launch resolution resumes the chain head by its key, possibly unsaved only when this chat created it","status":"passed"},{"full_name":"ACP launch resolution counts a created session as possibly unsaved only while the journal proves no turn on it","status":"passed"},{"full_name":"ACP launch resolution names the lost conversations whose warning row no session of the chat wrote","status":"passed"},{"full_name":"ACP launch resolution refuses a record pinned to another host or another agent","status":"passed"},{"full_name":"Grok status: the structured session is the only producer strips every pane identity and hook endpoint an inherited environment carries","status":"passed"},{"full_name":"ACP launch folder of a floating chat launches in the folder the chat was pinned to after the floating setting moved","status":"passed"},{"full_name":"ACP launch folder of a floating chat refuses with the folder-missing reason when the pinned folder is gone","status":"passed"},{"full_name":"ACP launch folder of a floating chat pins an unpinned floating record to the folder its first launch runs in","status":"passed"},{"full_name":"ACP launch folder of a floating chat keeps resolving a worktree chat by its workspace, ignoring any recorded folder","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-launch-visuals.test.ts","sha256":"8502ca67a35a270d0a1f021d72a79d8b2a1e28af786e5c48c1be709d0f472812","reviewed_sha256":"5edd74b2e5e487e54362d7a12e47ba2891e9074a1555894b40d85860de0a93da","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":46,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 6, fix 1. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":7,"original_declarations":7,"final_declarations":7,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":69,"end_line":74,"title":"gives Grok the plugin folder and the chat's visuals folder","decision":"keep","reason":"Real resolver adds Grok plugin argv and scratch env and does not schedule removal of owned folder.","source_body_sha256":"3cfad86797f7f4b333bd5995c73125069ae345340cdaa4e678e297e87344a53a","path":"src/main/acp/acp-structured-launch-visuals.test.ts","start":2698,"end":3053,"byte_start":2698,"byte_end":3053,"source":"it(\"gives Grok the plugin folder and the chat's visuals folder\", async () => {\n const launch = await resolve('grok').launch\n expect(launch.args).toEqual(['agent', '--plugin-dir', SKILL.pluginDir, 'stdio'])\n expect(launch.env[NATIVE_CHAT_SCRATCH_DIR_ENV]).toBe(FOLDER)\n expect(launch.envToDelete).not.toContain(NATIVE_CHAT_SCRATCH_DIR_ENV)\n })","source_sha256":"3cfad86797f7f4b333bd5995c73125069ae345340cdaa4e678e297e87344a53a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-visuals.test.ts","line":70,"title":"gives Grok the plugin folder and the chat's visuals folder","body_sha256":"3cfad86797f7f4b333bd5995c73125069ae345340cdaa4e678e297e87344a53a"},"proposal_ids":[],"explicit_input_controls":[]},{"line":76,"end_line":92,"title":"starts a Grok too old for --plugin-dir without visuals, never naming an inherited folder","decision":"keep","reason":"Too-old optional visuals capability drops plugin/folder in final child env and emits a concrete version diagnostic without blocking valid base launch.","source_body_sha256":"c7cc915a7e75e40c663debb4fc981cdde61d0d74de841a08f4959c439e77321b","path":"src/main/acp/acp-structured-launch-visuals.test.ts","start":3057,"end":3750,"byte_start":3057,"byte_end":3750,"source":"it('starts a Grok too old for --plugin-dir without visuals, never naming an inherited folder', async () => {\n const { launch, logger } = resolve('grok', {\n version: '1.0.10',\n inheritedEnv: { [NATIVE_CHAT_SCRATCH_DIR_ENV]: '/another/chat' }\n })\n const resolved = await launch\n expect(resolved.args).toEqual(['agent', 'stdio'])\n expect(\n resolveProviderChildEnv(resolved, { [NATIVE_CHAT_SCRATCH_DIR_ENV]: '/another/chat' })[\n NATIVE_CHAT_SCRATCH_DIR_ENV\n ]\n ).toBeUndefined()\n expect(logger.warn).toHaveBeenCalledWith(\n expect.stringContaining('cannot load the visuals skill'),\n expect.objectContaining({ version: '1.0.10' })\n )\n })","source_sha256":"c7cc915a7e75e40c663debb4fc981cdde61d0d74de841a08f4959c439e77321b","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-visuals.test.ts","line":77,"title":"starts a Grok too old for --plugin-dir without visuals, never naming an inherited folder","body_sha256":"c7cc915a7e75e40c663debb4fc981cdde61d0d74de841a08f4959c439e77321b"},"proposal_ids":[],"explicit_input_controls":[]},{"line":94,"end_line":98,"title":"asks Grok for its version only when the chat has visuals","decision":"keep","reason":"No prepared visuals avoids optional Grok version probe and retains base argv; returned launch plus explicit no-probe contract.","source_body_sha256":"ca3c784647d178a65ba0b8156d9f0d1c0a9913b3e87dae3b2384568d3fb6f595","path":"src/main/acp/acp-structured-launch-visuals.test.ts","start":3754,"end":4016,"byte_start":3754,"byte_end":4016,"source":"it('asks Grok for its version only when the chat has visuals', async () => {\n const { launch, probeVersion } = resolve('grok', { visuals: false })\n expect((await launch).args).toEqual(['agent', 'stdio'])\n expect(probeVersion).not.toHaveBeenCalled()\n })","source_sha256":"ca3c784647d178a65ba0b8156d9f0d1c0a9913b3e87dae3b2384568d3fb6f595","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-visuals.test.ts","line":95,"title":"asks Grok for its version only when the chat has visuals","body_sha256":"ca3c784647d178a65ba0b8156d9f0d1c0a9913b3e87dae3b2384568d3fb6f595"},"proposal_ids":[],"explicit_input_controls":[]},{"line":100,"end_line":111,"title":"adds the skills root to OpenCode's inline config, keeping the user's own","decision":"keep","reason":"OpenCode inline config merge retains user autoupdate while adding skills path and scratch folder.","source_body_sha256":"73afed07aac10b243490d17cd6b359d752c2a39e5d7da435ce182df06ef2f6fe","path":"src/main/acp/acp-structured-launch-visuals.test.ts","start":4020,"end":4541,"byte_start":4020,"byte_end":4541,"source":"it(\"adds the skills root to OpenCode's inline config, keeping the user's own\", async () => {\n const launch = await resolve('opencode', {\n version: '2.0.14',\n inheritedEnv: { OPENCODE_CONFIG_CONTENT: JSON.stringify({ autoupdate: false }) }\n }).launch\n expect(launch.args).toEqual(['acp'])\n expect(JSON.parse(launch.env.OPENCODE_CONFIG_CONTENT)).toEqual({\n autoupdate: false,\n skills: { paths: [SKILL.skillsRoot] }\n })\n expect(launch.env[NATIVE_CHAT_SCRATCH_DIR_ENV]).toBe(FOLDER)\n })","source_sha256":"73afed07aac10b243490d17cd6b359d752c2a39e5d7da435ce182df06ef2f6fe","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-visuals.test.ts","line":101,"title":"adds the skills root to OpenCode's inline config, keeping the user's own","body_sha256":"73afed07aac10b243490d17cd6b359d752c2a39e5d7da435ce182df06ef2f6fe"},"proposal_ids":[],"explicit_input_controls":[]},{"line":115,"end_line":123,"title":"gives OMP the plugin folder, leaving the user's config files as they set them","decision":"keep","reason":"OMP visuals append plugin argv without replacing user config overlay env.","source_body_sha256":"d3375aa746aba9fcbedff590c8878d87fd0b2f6b57b747b606042b077489b508","path":"src/main/acp/acp-structured-launch-visuals.test.ts","start":4728,"end":5173,"byte_start":4728,"byte_end":5173,"source":"it(\"gives OMP the plugin folder, leaving the user's config files as they set them\", async () => {\n const launch = await resolve('omp', {\n version: '17.0.5',\n launchEnv: { PI_CONFIG_FILES: '/user/overlay.yml' }\n }).launch\n expect(launch.args).toEqual(['acp', '--plugin-dir', SKILL.pluginDir])\n expect(launch.env.PI_CONFIG_FILES).toBe('/user/overlay.yml')\n expect(launch.env[NATIVE_CHAT_SCRATCH_DIR_ENV]).toBe(FOLDER)\n })","source_sha256":"d3375aa746aba9fcbedff590c8878d87fd0b2f6b57b747b606042b077489b508","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-visuals.test.ts","line":116,"title":"gives OMP the plugin folder, leaving the user's config files as they set them","body_sha256":"d3375aa746aba9fcbedff590c8878d87fd0b2f6b57b747b606042b077489b508"},"proposal_ids":[],"explicit_input_controls":[]},{"line":125,"end_line":141,"title":"still starts the chat when the skill cannot be prepared","decision":"keep","reason":"Failed visuals loader falls back to usable base argv, excludes scratch inheritance and logs preparation failure.","source_body_sha256":"cee5cde408444db7fc8be95db4dab53f5e527fc125625035752199b993090378","path":"src/main/acp/acp-structured-launch-visuals.test.ts","start":5177,"end":5726,"byte_start":5177,"byte_end":5726,"source":"it('still starts the chat when the skill cannot be prepared', async () => {\n const { launch, logger } = resolve('omp', {\n version: '17.0.5',\n spec: {\n visualsSkill: async () => {\n throw new Error('unreadable')\n }\n }\n })\n const resolved = await launch\n expect(resolved.args).toEqual(['acp'])\n expect(resolved.envToDelete).toContain(NATIVE_CHAT_SCRATCH_DIR_ENV)\n expect(logger.warn).toHaveBeenCalledWith(\n expect.stringContaining('could not be prepared'),\n expect.anything()\n )\n })","source_sha256":"cee5cde408444db7fc8be95db4dab53f5e527fc125625035752199b993090378","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-launch-visuals.test.ts","line":126,"title":"still starts the chat when the skill cannot be prepared","body_sha256":"cee5cde408444db7fc8be95db4dab53f5e527fc125625035752199b993090378"},"proposal_ids":[],"explicit_input_controls":[]},{"line":143,"end_line":145,"title":"still refuses a release the agent does not run structured chats on","decision":"fix","reason":"Unsupported OMP version must still reject even when visuals are requested; currently any thrown error passes, so require installation diagnostics.","source_body_sha256":"263e0d21ce7076ae65447cbd654de816e9fd94f317aaa0253c097ea358c4e9cd","proposed_changes":[{"line":143,"action":"strengthen rejection","reason":"Assert AgentCliInstallationError installation.agent/installedVersion/minimumVersion (16.0.0/17.0.5), so visuals preparation or unrelated resolver failure cannot satisfy intended version-guard case."}],"path":"src/main/acp/acp-structured-launch-visuals.test.ts","start":5730,"end":5902,"byte_start":5730,"byte_end":5902,"source":"it('still refuses a release the agent does not run structured chats on', async () => {\n await expect(resolve('omp', { version: '16.0.0' }).launch).rejects.toThrow()\n })","source_sha256":"263e0d21ce7076ae65447cbd654de816e9fd94f317aaa0253c097ea358c4e9cd","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-launch-visuals.test.ts","line":144,"title":"still refuses a release the agent does not run structured chats on","body_sha256":"1198fe918be9e06a9d982a45fd385a414edbe8e45d2de1b92741affe0b4f3e0a"},"proposal_ids":["acp-main-0001-048"],"explicit_input_controls":[]}],"explicit_input_controls":[],"parameter_groups":[],"body_support_cleanup_loops":[],"implemented_changes":[{"proposal_id":"acp-main-0001-048","summary":"Too-old OMP must reject with typed installation error and agent/version/minimum fields.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/acp-launch-specs.ts","src/main/acp/acp-structured-launch-resolution.ts","src/main/runtime/structured-agent-launch-composition.test-support.ts","src/main/acp/acp-structured-launch-visuals.ts","src/main/runtime/structured-agent-launch-composition.ts"],"evidence_sha256":{"src/main/acp/acp-launch-specs.ts":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","src/main/acp/acp-structured-launch-resolution.ts":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","src/main/runtime/structured-agent-launch-composition.test-support.ts":"a5d109637e695829b306570250295316ac6f653492f66bd9da7126808a70a962","src/main/acp/acp-structured-launch-visuals.ts":"2f6be7d7e000075b46756fa602689df4a91c13e0fd3dc3a5c5401dd76d691d60","src/main/runtime/structured-agent-launch-composition.ts":"647e06f46a4321a1081540dc9c7cf64c069268c6c3eb422d7c63fd74f27d6aae"},"evidence_source_sha256":{"src/main/acp/acp-launch-specs.ts":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","src/main/acp/acp-structured-launch-resolution.ts":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","src/main/runtime/structured-agent-launch-composition.test-support.ts":"a5d109637e695829b306570250295316ac6f653492f66bd9da7126808a70a962","src/main/acp/acp-structured-launch-visuals.ts":"2f6be7d7e000075b46756fa602689df4a91c13e0fd3dc3a5c5401dd76d691d60","src/main/runtime/structured-agent-launch-composition.ts":"647e06f46a4321a1081540dc9c7cf64c069268c6c3eb422d7c63fd74f27d6aae"},"original_evidence_detail":[{"path":"src/main/acp/acp-launch-specs.ts","sha256":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","lines":352,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-launch-resolution.ts","sha256":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","lines":342,"read_state":"full_body_read"},{"path":"src/main/runtime/structured-agent-launch-composition.test-support.ts","sha256":"a5d109637e695829b306570250295316ac6f653492f66bd9da7126808a70a962","lines":152,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-launch-visuals.ts","sha256":"2f6be7d7e000075b46756fa602689df4a91c13e0fd3dc3a5c5401dd76d691d60","lines":77,"read_state":"full_body_read"},{"path":"src/main/runtime/structured-agent-launch-composition.ts","sha256":"647e06f46a4321a1081540dc9c7cf64c069268c6c3eb422d7c63fd74f27d6aae","lines":249,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"ACP launch visuals gives Grok the plugin folder and the chat's visuals folder","status":"passed"},{"full_name":"ACP launch visuals starts a Grok too old for --plugin-dir without visuals, never naming an inherited folder","status":"passed"},{"full_name":"ACP launch visuals asks Grok for its version only when the chat has visuals","status":"passed"},{"full_name":"ACP launch visuals adds the skills root to OpenCode's inline config, keeping the user's own","status":"passed"},{"full_name":"ACP launch visuals gives OMP the plugin folder, leaving the user's config files as they set them","status":"passed"},{"full_name":"ACP launch visuals still starts the chat when the skill cannot be prepared","status":"passed"},{"full_name":"ACP launch visuals still refuses a release the agent does not run structured chats on","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-mail-admission.test.ts","sha256":"7221b532629537b32d329ad820ec1509eab8694bab3afac80a0331ff08065db3","reviewed_sha256":"992e5707a223b7850ce3f3e77fb08d62cf5b048a82f59e793ab54e30f26a94a9","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":47,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: fix 1. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":1,"original_declarations":1,"final_declarations":1,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":17,"end_line":54,"title":"holds mail without interrupting an answerable ACP question","decision":"fix","reason":"Real host with actionable in-flight ACP question holds incoming orchestration pointer mail, adds no submission/receipt/cancel and closes through real host. One existing submission is observed; strengthen to preserve its concrete id/body and pending question identity.","source_body_sha256":"95589f96ee63def5d0fb93b8934c5ddea4603797ecadab7014f8323246b6b5ff","proposed_changes":[{"line":17,"action":"strengthen retained-state oracle","reason":"Capture exact pre-mail submissions and pending question id/body, assert unchanged after held send; real sendAgentTurn beforeRun returns held before durable admission, and count 1 alone permits row replacement."}],"path":"src/main/acp/acp-structured-mail-admission.test.ts","start":1087,"end":2537,"byte_start":1087,"byte_end":2537,"source":"it('holds mail without interrupting an answerable ACP question', async () => {\n const { host, rig } = await openAttachedHostRig()\n setStructuredAgentSessionHost(host)\n await send(host, 'work')\n await rig.frame('session/prompt')\n void rig.child().agent.request(601, 'x.ai/ask_user_question', {\n sessionId: PROVIDER_SESSION,\n toolCallId: 'question-1',\n questions: [{ question: 'Which file?', options: [{ label: 'a.ts' }] }]\n })\n const pointer = createStructuredMailboxPointerHost()\n await waitFor(() => expect(pointer.hasActionablePromptNow(SESSION)).toBe(true))\n const body: AgentJournalMessageItem = {\n ...hello,\n from: {\n kind: 'agent',\n senders: [],\n orchestration: { message: 'mail-notice', mailbox: 'run:r1', dispatchId: null, messages: [] }\n }\n }\n const operationId = mintAgentSessionOperationId(Date.now())\n const expectedRuntimeFence = host.deps.store.getRecord(SESSION)!.lease.runtimeFence\n expect(\n await pointer.send({\n sessionId: SESSION,\n dispatchId: null,\n operationId,\n expectedRuntimeFence,\n body\n })\n ).toEqual({ kind: 'held' })\n expect((await host.journalSnapshot(SESSION)).submissions).toHaveLength(1)\n expect(\n host.deps.store.readCommandReceipt(commandReceiptScope('any', 'global'), operationId)\n ).toMatchObject({ verdict: 'absent' })\n expect(framesOf(rig.child(), 'session/cancel')).toHaveLength(0)\n await host.close(SESSION, 'user-close')\n})","source_sha256":"95589f96ee63def5d0fb93b8934c5ddea4603797ecadab7014f8323246b6b5ff","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-mail-admission.test.ts","line":17,"title":"holds mail without interrupting an answerable ACP question","body_sha256":"c36028841da15918d60e5c8d6346eb75c6934c56677015279bef3233e2df09cd"},"proposal_ids":["acp-main-0001-049"],"explicit_input_controls":[]}],"explicit_input_controls":[],"parameter_groups":[],"body_support_cleanup_loops":[],"implemented_changes":[{"proposal_id":"acp-main-0001-049","summary":"Held mail preserves exact prior submissions and question items with actionable prompt and no new receipt/cancel.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/acp-structured-host.test-support.ts","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","src/main/runtime/orchestration/structured-mailbox-pointer-host.ts"],"evidence_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/runtime/orchestration/structured-mailbox-pointer-host.ts":"6e53f727a3dad905a12304ab93376f4511cdb98ca3fd9be9f502cf954b16af18"},"evidence_source_sha256":{"src/main/acp/acp-structured-host.test-support.ts":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","src/main/native-chat/agent-session-wire/structured-agent-session-host.ts":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","src/main/runtime/orchestration/structured-mailbox-pointer-host.ts":"6e53f727a3dad905a12304ab93376f4511cdb98ca3fd9be9f502cf954b16af18"},"original_evidence_detail":[{"path":"src/main/acp/acp-structured-host.test-support.ts","sha256":"ea68ae4c9835b20b712b55b0c97d0fa2c9766199a6eb0da7647a08b435c59380","lines":234,"read_state":"full_body_read"},{"path":"src/main/native-chat/agent-session-wire/structured-agent-session-host.ts","sha256":"b73df27e61a64332a2083afbfc4ee72d9264ce57b1464999144bcc7116100e74","lines":371,"read_state":"full_body_read"},{"path":"src/main/runtime/orchestration/structured-mailbox-pointer-host.ts","sha256":"6e53f727a3dad905a12304ab93376f4511cdb98ca3fd9be9f502cf954b16af18","lines":170,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"holds mail without interrupting an answerable ACP question","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-managed-runtime.test.ts","sha256":"1ba234a0ee4c90b76cf2c5c1636db6e262398569c3eeb8a9e11687f9abba12a0","reviewed_sha256":"2796f5b90bddb4dac2ecaa4b9e50dd5a0c668ef5636ea54db1489939855b61a8","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":48,"decision":"fix","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: fix 1. Completed the mapped improvements, transfers and removals; final bytes are bound by reviewed_sha256.","declarations":1,"original_declarations":1,"final_declarations":1,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[{"line":13,"end_line":80,"title":"starts the installed release first, else a copy beside every pinned member","decision":"fix","reason":"Real filesystem release receipt/member sizes and resolver-to-adapter launch boundary prove missing runtime, incomplete external copy, preferred installed release, and fallback beside all pinned companions after release corruption; fake connection proves selection not OS execution.","source_body_sha256":"daac206bb54848390966ceb3d9a02dfb955bc1d488d2d7bcb7a44dd5f7b59025","proposed_changes":[{"line":14,"action":"failure-safe owned cleanup","reason":"Register removal immediately after mkdtemp or enclose full body in try/finally; trailing rm leaks on assertion/start failure."}],"path":"src/main/acp/acp-structured-managed-runtime.test.ts","start":747,"end":3327,"byte_start":747,"byte_end":3327,"source":"it('starts the installed release first, else a copy beside every pinned member', async () => {\n const dataDirectory = await mkdtemp(join(tmpdir(), 'orca-acp-managed-'))\n const homePath = join(dataDirectory, 'home')\n const command = `orca-managed-${basename(dataDirectory)}`\n const root = join(dataDirectory, 'agent-runtimes', 'grok')\n const pin = {\n version: '1.0',\n url: 'https://example.test/grok-1.0.zip',\n archiveSha256: 'a'.repeat(64),\n archiveBytes: 10,\n members: [\n { path: command, sha256: 'b'.repeat(64), bytes: 6 },\n { path: 'harness', sha256: 'c'.repeat(64), bytes: 7 }\n ]\n }\n const spec = {\n ...GROK,\n command,\n managedRuntime: { label: 'Grok', root: () => root, pin: () => pin }\n }\n const spawn = async () => {\n const resolveLaunch = createAcpStructuredLaunchResolver(spec, {\n store: {\n getRecord: () => ({\n ...agentSessionRecordFixture(),\n provider: 'grok',\n providerHandleChain: [],\n accountHome: { variable: 'GROK_HOME', path: join(dataDirectory, '.grok') }\n }),\n pinLaunchDirectory: vi.fn()\n },\n readJournal: () => null,\n resolveEnvironment: async () => ({ PATH: '', HOME: homePath }),\n dataDirectory\n })\n const rig = await openAcpAdapterRig({ spec, deps: { resolveLaunch } })\n await rig.acquire()\n return rig.child().launch.command\n }\n await expect(spawn()).rejects.toMatchObject({ reason: 'runtimeNotInstalled' })\n\n // A server without its companion beside it is no copy.\n const localBin = join(homePath, '.local', 'bin')\n await mkdir(localBin, { recursive: true })\n await writeFile(join(localBin, command), '', { mode: 0o755 })\n await expect(spawn()).rejects.toMatchObject({ reason: 'runtimeNotInstalled' })\n\n const release = join(root, '1.0')\n await mkdir(release, { recursive: true })\n await writeFile(join(release, command), 'server', { mode: 0o755 })\n await writeFile(join(release, 'harness'), 'harness', { mode: 0o755 })\n await writeFile(\n join(release, RUNTIME_RELEASE_RECEIPT),\n JSON.stringify({\n releaseId: pin.archiveSha256,\n version: '1.0',\n platform: process.platform,\n arch: process.arch,\n members: pin.members.map(({ path, bytes }) => ({ path, bytes }))\n })\n )\n await writeFile(join(localBin, 'harness'), '', { mode: 0o755 })\n expect(await spawn()).toBe(join(release, command))\n\n await truncate(join(release, command), 2)\n expect(await spawn()).toBe(await realpath(join(localBin, command)))\n await rm(dataDirectory, { recursive: true, force: true })\n})","source_sha256":"daac206bb54848390966ceb3d9a02dfb955bc1d488d2d7bcb7a44dd5f7b59025","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"fix","implementation":"retained_modified","destination":{"path":"src/main/acp/acp-structured-managed-runtime.test.ts","line":13,"title":"starts the installed release first, else a copy beside every pinned member","body_sha256":"542d61ee45853155fabfba60c87551ebe5cf9b44231c92efd7a22ac484bd8229"},"proposal_ids":["acp-main-0001-050"],"explicit_input_controls":[]}],"explicit_input_controls":[],"parameter_groups":[],"body_support_cleanup_loops":[],"implemented_changes":[{"proposal_id":"acp-main-0001-050","summary":"Managed runtime temp root cleanup is registered immediately through onTestFinished.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"not_separately_executed"}],"evidence":["src/main/acp/acp-launch-specs.ts","src/main/acp/acp-structured-launch-resolution.ts","src/main/runtime/structured-agent-launch-composition.test-support.ts","src/main/node-runtime/managed-runtime-release.ts","src/main/runtime/structured-agent-launch-composition.ts"],"evidence_sha256":{"src/main/acp/acp-launch-specs.ts":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","src/main/acp/acp-structured-launch-resolution.ts":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","src/main/runtime/structured-agent-launch-composition.test-support.ts":"a5d109637e695829b306570250295316ac6f653492f66bd9da7126808a70a962","src/main/node-runtime/managed-runtime-release.ts":"248c1803c956aa548c2c5805f26c328b0fdf5bbf5c2d6f0521e41d62e47c8450","src/main/runtime/structured-agent-launch-composition.ts":"647e06f46a4321a1081540dc9c7cf64c069268c6c3eb422d7c63fd74f27d6aae"},"evidence_source_sha256":{"src/main/acp/acp-launch-specs.ts":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","src/main/acp/acp-structured-launch-resolution.ts":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","src/main/runtime/structured-agent-launch-composition.test-support.ts":"a5d109637e695829b306570250295316ac6f653492f66bd9da7126808a70a962","src/main/node-runtime/managed-runtime-release.ts":"248c1803c956aa548c2c5805f26c328b0fdf5bbf5c2d6f0521e41d62e47c8450","src/main/runtime/structured-agent-launch-composition.ts":"647e06f46a4321a1081540dc9c7cf64c069268c6c3eb422d7c63fd74f27d6aae"},"original_evidence_detail":[{"path":"src/main/acp/acp-launch-specs.ts","sha256":"6febb3d241d6b59dfe8054c499e88e103b41c9267f97513a43d326364ec89279","lines":352,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-launch-resolution.ts","sha256":"9c3774bb0f1477aacd6364b92f302d682be62fea4bb08a1fdd91b56a13e46870","lines":342,"read_state":"full_body_read"},{"path":"src/main/runtime/structured-agent-launch-composition.test-support.ts","sha256":"a5d109637e695829b306570250295316ac6f653492f66bd9da7126808a70a962","lines":152,"read_state":"full_body_read"},{"path":"src/main/node-runtime/managed-runtime-release.ts","sha256":"248c1803c956aa548c2c5805f26c328b0fdf5bbf5c2d6f0521e41d62e47c8450","lines":184,"read_state":"full_body_read"},{"path":"src/main/runtime/structured-agent-launch-composition.ts","sha256":"647e06f46a4321a1081540dc9c7cf64c069268c6c3eb422d7c63fd74f27d6aae","lines":249,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"starts the installed release first, else a copy beside every pinned member","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-missing-model.test.ts","sha256":"51627f8046a7219ad4e4b6a8887082d6486173a72d9b391f28417870df325061","reviewed_sha256":"51627f8046a7219ad4e4b6a8887082d6486173a72d9b391f28417870df325061","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":49,"decision":"keep","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 4. Retained the reviewed behavioral coverage; final bytes match the pinned original.","declarations":4,"original_declarations":4,"final_declarations":4,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"implementation_status":"reviewed-unchanged","cases":[{"line":66,"end_line":75,"title":"writes the captured Windows OMP startup through the provider reader","decision":"keep","reason":"Captured Windows OMP new-session response parses through actual protocol schema/options reader into persistent record row writes and record validator, preserving effort without inventing model.","source_body_sha256":"1a896f3f3b86f45c5e392b7223149303d2ef6d83df8a47b60faa69d1724aec89","path":"src/main/acp/acp-structured-missing-model.test.ts","start":2390,"end":2805,"byte_start":2390,"byte_end":2805,"source":"it('writes the captured Windows OMP startup through the provider reader', async () => {\n const reader = new AcpStructuredOptions()\n reader.adoptSession(response)\n expect(reader.read()).toEqual({\n models: [],\n current: { effort: 'off', confirmed: ['effort'] }\n })\n expect(reader.reported()).toEqual({ effort: 'off' })\n expect(writtenOptions('omp', reader)).toEqual({ effort: 'off' })\n })","source_sha256":"1a896f3f3b86f45c5e392b7223149303d2ef6d83df8a47b60faa69d1724aec89","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-missing-model.test.ts","line":66,"title":"writes the captured Windows OMP startup through the provider reader","body_sha256":"1a896f3f3b86f45c5e392b7223149303d2ef6d83df8a47b60faa69d1724aec89"},"proposal_ids":[],"explicit_input_controls":[]},{"line":77,"end_line":82,"title":"writes missing-model options for %s","decision":"keep","reason":"Both providers persist empty reported options without an absent model; provider parameter matters to actual persisted-record discriminator validation.","source_body_sha256":"75e583d25cf91d508ae97c5384e699ed560743057b854914865f3f5abe49d92a","parameter_groups":[{"path":"src/main/acp/acp-structured-missing-model.test.ts","line":77,"source":"['grok', 'opencode']","decision":"keep","reason":"","rows":[{"input":"grok","decision":"keep","reason":"Persisted Grok provider discriminator accepts options without model."},{"input":"opencode","decision":"keep","reason":"Persisted OpenCode provider discriminator accepts options without model."}],"row_count":2}],"path":"src/main/acp/acp-structured-missing-model.test.ts","start":2809,"end":3097,"byte_start":2809,"byte_end":3097,"source":"it.each(['grok', 'opencode'])('writes missing-model options for %s', async (provider) => {\n const reader = new AcpStructuredOptions()\n reader.adoptSession({})\n expect(reader.read().current).not.toHaveProperty('model')\n expect(writtenOptions(provider, reader)).toEqual({})\n })","source_sha256":"75e583d25cf91d508ae97c5384e699ed560743057b854914865f3f5abe49d92a","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-missing-model.test.ts","line":77,"title":"writes missing-model options for %s","body_sha256":"75e583d25cf91d508ae97c5384e699ed560743057b854914865f3f5abe49d92a"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-missing-model.test.ts:77:parameter-table"]},{"line":84,"end_line":93,"title":"does not expose an empty %s model value","decision":"keep","reason":"Config and legacy wire representations of empty model have separate reader branches and must both omit model/report no option.","source_body_sha256":"f72196213d4b3f731b55470645a7ba8972765d5f25a3e8ab8f50f1b1c50aaf15","parameter_groups":[{"path":"src/main/acp/acp-structured-missing-model.test.ts","line":84,"source":"['config', 'legacy'] as const","decision":"keep","reason":"","rows":[{"input":"config","decision":"keep","reason":"Empty config currentValue omitted from report."},{"input":"legacy","decision":"keep","reason":"Empty legacy currentModelId omitted from report."}],"row_count":2}],"path":"src/main/acp/acp-structured-missing-model.test.ts","start":3101,"end":3555,"byte_start":3101,"byte_end":3555,"source":"it.each(['config', 'legacy'] as const)('does not expose an empty %s model value', (source) => {\n const reader = new AcpStructuredOptions()\n reader.adoptSession(\n source === 'config'\n ? { configOptions: [{ ...modelOption, currentValue: '', options: [] }] }\n : { models: { currentModelId: '', availableModels: [] } }\n )\n expect(reader.read().current).not.toHaveProperty('model')\n expect(reader.reported()).toEqual({})\n })","source_sha256":"f72196213d4b3f731b55470645a7ba8972765d5f25a3e8ab8f50f1b1c50aaf15","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-missing-model.test.ts","line":84,"title":"does not expose an empty %s model value","body_sha256":"f72196213d4b3f731b55470645a7ba8972765d5f25a3e8ab8f50f1b1c50aaf15"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-missing-model.test.ts:84:parameter-table"]},{"line":95,"end_line":106,"title":"records a model reported after a startup with no model","decision":"keep","reason":"Real options reader merges later model announcement with retained startup effort; actual row serialization persists both.","source_body_sha256":"ad2f56762091fdd62dbd0d489736df94e9ddd60af4b1440101f549cecaf7ab83","path":"src/main/acp/acp-structured-missing-model.test.ts","start":3559,"end":4101,"byte_start":3559,"byte_end":4101,"source":"it('records a model reported after a startup with no model', async () => {\n const reader = new AcpStructuredOptions()\n reader.adoptSession(response)\n expect(writtenOptions('omp', reader)).toEqual({ effort: 'off' })\n reader.adoptConfigOptions([...(response.configOptions ?? []), modelOption])\n expect(reader.read().current).toEqual({\n model: 'reported-model',\n effort: 'off',\n confirmed: ['model', 'effort']\n })\n expect(writtenOptions('omp', reader)).toEqual({ model: 'reported-model', effort: 'off' })\n })","source_sha256":"ad2f56762091fdd62dbd0d489736df94e9ddd60af4b1440101f549cecaf7ab83","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-missing-model.test.ts","line":95,"title":"records a model reported after a startup with no model","body_sha256":"ad2f56762091fdd62dbd0d489736df94e9ddd60af4b1440101f549cecaf7ab83"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-structured-missing-model.test.ts:77:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-missing-model.test.ts","line":77,"end_line":82,"start":2809,"end":3097,"byte_start":2809,"byte_end":3097,"source":"['grok', 'opencode']","source_sha256":"6da3e3ba909efdc64b18316eebfbe3395c46c11b10c6873a72606cc41ee745ea","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-missing-model.test.ts","line":77,"end_line":77,"start":2817,"end":2837,"byte_start":2817,"byte_end":2837},"binding":"it.each","resolution":[],"enclosing_case":{"line":77,"title":"writes missing-model options for %s"},"affected_case_lines":[77],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-missing-model.test.ts","line":77,"end_line":77,"start":2818,"end":2824,"source":"'grok'","value":{"kind":"string","value":"grok"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"d3baf8572a12c98af2e0ca919addc8c6e180d524aa8be813d753921d08768880","byte_start":2818,"byte_end":2824,"input_label":"grok","decision":"keep","reason":"Persisted Grok provider discriminator accepts options without model."},{"index":2,"path":"src/main/acp/acp-structured-missing-model.test.ts","line":77,"end_line":77,"start":2826,"end":2836,"source":"'opencode'","value":{"kind":"string","value":"opencode"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e52f090977516f88e9a87d94dd486ce40fe014c11fdcc92d5d5441fd323bf713","byte_start":2826,"byte_end":2836,"input_label":"opencode","decision":"keep","reason":"Persisted OpenCode provider discriminator accepts options without model."}],"original_row_count":2},{"id":"src/main/acp/acp-structured-missing-model.test.ts:84:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-missing-model.test.ts","line":84,"end_line":93,"start":3101,"end":3555,"byte_start":3101,"byte_end":3555,"source":"['config', 'legacy'] as const","source_sha256":"e223368124e52876d7e7149c193f64fba3e59faca0c3480341cea017de9bb6e6","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-missing-model.test.ts","line":84,"end_line":84,"start":3109,"end":3138,"byte_start":3109,"byte_end":3138},"binding":"it.each","resolution":[],"enclosing_case":{"line":84,"title":"does not expose an empty %s model value"},"affected_case_lines":[84],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-missing-model.test.ts","line":84,"end_line":84,"start":3110,"end":3118,"source":"'config'","value":{"kind":"string","value":"config"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"40b711ede203799a969c040d718d5ac5a9164709f5bac2b09b67ed32b4d7eae0","byte_start":3110,"byte_end":3118,"input_label":"config","decision":"keep","reason":"Empty config currentValue omitted from report."},{"index":2,"path":"src/main/acp/acp-structured-missing-model.test.ts","line":84,"end_line":84,"start":3120,"end":3128,"source":"'legacy'","value":{"kind":"string","value":"legacy"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"eab5403434b5a51be4a1de87955cc81aac1d2423fd0f1ec722722a596a55a8f1","byte_start":3120,"byte_end":3128,"input_label":"legacy","decision":"keep","reason":"Empty legacy currentModelId omitted from report."}],"original_row_count":2}],"parameter_groups":[{"id":"src/main/acp/acp-structured-missing-model.test.ts:77:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-missing-model.test.ts","line":77,"end_line":82,"start":2809,"end":3097,"byte_start":2809,"byte_end":3097,"source":"['grok', 'opencode']","source_sha256":"6da3e3ba909efdc64b18316eebfbe3395c46c11b10c6873a72606cc41ee745ea","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-missing-model.test.ts","line":77,"end_line":77,"start":2817,"end":2837,"byte_start":2817,"byte_end":2837},"binding":"it.each","resolution":[],"enclosing_case":{"line":77,"title":"writes missing-model options for %s"},"affected_case_lines":[77],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-missing-model.test.ts","line":77,"end_line":77,"start":2818,"end":2824,"source":"'grok'","value":{"kind":"string","value":"grok"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"d3baf8572a12c98af2e0ca919addc8c6e180d524aa8be813d753921d08768880","byte_start":2818,"byte_end":2824,"input_label":"grok","decision":"keep","reason":"Persisted Grok provider discriminator accepts options without model."},{"index":2,"path":"src/main/acp/acp-structured-missing-model.test.ts","line":77,"end_line":77,"start":2826,"end":2836,"source":"'opencode'","value":{"kind":"string","value":"opencode"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"e52f090977516f88e9a87d94dd486ce40fe014c11fdcc92d5d5441fd323bf713","byte_start":2826,"byte_end":2836,"input_label":"opencode","decision":"keep","reason":"Persisted OpenCode provider discriminator accepts options without model."}],"original_row_count":2},{"id":"src/main/acp/acp-structured-missing-model.test.ts:84:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-missing-model.test.ts","line":84,"end_line":93,"start":3101,"end":3555,"byte_start":3101,"byte_end":3555,"source":"['config', 'legacy'] as const","source_sha256":"e223368124e52876d7e7149c193f64fba3e59faca0c3480341cea017de9bb6e6","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-missing-model.test.ts","line":84,"end_line":84,"start":3109,"end":3138,"byte_start":3109,"byte_end":3138},"binding":"it.each","resolution":[],"enclosing_case":{"line":84,"title":"does not expose an empty %s model value"},"affected_case_lines":[84],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-missing-model.test.ts","line":84,"end_line":84,"start":3110,"end":3118,"source":"'config'","value":{"kind":"string","value":"config"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"40b711ede203799a969c040d718d5ac5a9164709f5bac2b09b67ed32b4d7eae0","byte_start":3110,"byte_end":3118,"input_label":"config","decision":"keep","reason":"Empty config currentValue omitted from report."},{"index":2,"path":"src/main/acp/acp-structured-missing-model.test.ts","line":84,"end_line":84,"start":3120,"end":3128,"source":"'legacy'","value":{"kind":"string","value":"legacy"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"eab5403434b5a51be4a1de87955cc81aac1d2423fd0f1ec722722a596a55a8f1","byte_start":3120,"byte_end":3128,"input_label":"legacy","decision":"keep","reason":"Empty legacy currentModelId omitted from report."}],"original_row_count":2}],"body_support_cleanup_loops":[],"implemented_changes":[],"evidence":["src/main/acp/acp-structured-options.ts","src/shared/agent-session-record.ts","src/main/runtime/agent-session-record-options.ts","src/main/runtime/agent-session-store-draft.ts"],"evidence_sha256":{"src/main/acp/acp-structured-options.ts":"c48779f4e1eac30464580f487872106c1d2bb3d626e753be7ab3c906e6da5ce5","src/shared/agent-session-record.ts":"842c4dbd8395a26ff50adf7da3fafdfe959e04eb314c7caf6c725a6df7050747","src/main/runtime/agent-session-record-options.ts":"746c183a3ba9bbeea0aa0c2a8a7dd6a2891541a8f3224317fa57c2d1536f0baf","src/main/runtime/agent-session-store-draft.ts":"895d9c16270501d33b1b53b133376782b6e5aa7b4cc4dcc737d0943ba1ec6198"},"evidence_source_sha256":{"src/main/acp/acp-structured-options.ts":"c48779f4e1eac30464580f487872106c1d2bb3d626e753be7ab3c906e6da5ce5","src/shared/agent-session-record.ts":"842c4dbd8395a26ff50adf7da3fafdfe959e04eb314c7caf6c725a6df7050747","src/main/runtime/agent-session-record-options.ts":"746c183a3ba9bbeea0aa0c2a8a7dd6a2891541a8f3224317fa57c2d1536f0baf","src/main/runtime/agent-session-store-draft.ts":"895d9c16270501d33b1b53b133376782b6e5aa7b4cc4dcc737d0943ba1ec6198"},"original_evidence_detail":[{"path":"src/main/acp/acp-structured-options.ts","sha256":"c48779f4e1eac30464580f487872106c1d2bb3d626e753be7ab3c906e6da5ce5","lines":309,"read_state":"full_body_read"},{"path":"src/shared/agent-session-record.ts","sha256":"842c4dbd8395a26ff50adf7da3fafdfe959e04eb314c7caf6c725a6df7050747","lines":385,"read_state":"stored_not_claimed_read"},{"path":"src/main/runtime/agent-session-record-options.ts","sha256":"746c183a3ba9bbeea0aa0c2a8a7dd6a2891541a8f3224317fa57c2d1536f0baf","lines":140,"read_state":"stored_not_claimed_read"},{"path":"src/main/runtime/agent-session-store-draft.ts","sha256":"895d9c16270501d33b1b53b133376782b6e5aa7b4cc4dcc737d0943ba1ec6198","lines":140,"read_state":"stored_not_claimed_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"ACP sessions without a reported model writes the captured Windows OMP startup through the provider reader","status":"passed"},{"full_name":"ACP sessions without a reported model writes missing-model options for grok","status":"passed"},{"full_name":"ACP sessions without a reported model writes missing-model options for opencode","status":"passed"},{"full_name":"ACP sessions without a reported model does not expose an empty config model value","status":"passed"},{"full_name":"ACP sessions without a reported model does not expose an empty legacy model value","status":"passed"},{"full_name":"ACP sessions without a reported model records a model reported after a startup with no model","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-omp-recordings.test.ts","sha256":"4934b3c55093a7d32389794f42051d7ce8783b8afc4fcb50d0c38af1edabd498","reviewed_sha256":"4934b3c55093a7d32389794f42051d7ce8783b8afc4fcb50d0c38af1edabd498","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":50,"decision":"keep","classification":"behavioral test suite","rationale":"Reviewed the complete original body, parameter tables, factories and cleanup against the recorded production boundaries. Original case decisions: keep 4. Retained the reviewed behavioral coverage; final bytes match the pinned original.","declarations":4,"original_declarations":4,"final_declarations":4,"signals":["named","declarations","ci-unit"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","status":"unreviewed","batch":"main-0001","selected_original":true},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":false,"implementation_status":"reviewed-unchanged","cases":[{"line":71,"end_line":130,"title":"keeps both ordinary answers from %s","decision":"keep","reason":"Two-turn captured OMP replies, with and without thought, traverse real adapter/translator/journal; preserve answer bytes, terminal outcomes, reasoning row and durable reopened messages.","source_body_sha256":"8f65108db0862ec2d653fe97c002f36585d6758f56d5e800c61735c234d9d713","parameter_groups":[{"path":"src/main/acp/acp-structured-omp-recordings.test.ts","line":71,"source":"['omp-v17-reply-without-thought', 'omp-v17-reply-after-thought']","decision":"keep","reason":"","rows":[{"input":"omp-v17-reply-without-thought","decision":"keep","reason":"Two ordinary replies retain bytes/outcomes and reopen durably without reasoning."},{"input":"omp-v17-reply-after-thought","decision":"keep","reason":"Distinct reasoning stream must not swallow following ordinary answers; durability preserved."}],"row_count":2}],"path":"src/main/acp/acp-structured-omp-recordings.test.ts","start":2428,"end":4741,"byte_start":2428,"byte_end":4741,"source":"it.each(['omp-v17-reply-without-thought', 'omp-v17-reply-after-thought'])(\n 'keeps both ordinary answers from %s',\n async (name) => {\n const frames = await readAcpFixture(name)\n const replay = new GrokFixtureReplay(frames)\n const rig = await openAcpAdapterRig({\n spec: acpLaunchSpecFor('omp')!,\n script: (scripted) => replay.attach(scripted)\n })\n await rig.acquire()\n await rig.adapter.dispatch({\n sessionId: SESSION,\n clientMessageId: 'send-1',\n body: ask,\n fence: 1\n })\n await waitFor(async () => expect(await turns(rig)).toHaveLength(1))\n await rig.adapter.dispatch({\n sessionId: SESSION,\n clientMessageId: 'send-2',\n body: ask,\n fence: 1\n })\n await waitFor(() => expect(replay.awaiting).toBeNull())\n await waitFor(async () => expect(await turns(rig)).toHaveLength(2))\n const recordedAnswers = frames\n .flatMap((frame) => {\n const parsed = SessionNotificationSchema.safeParse(frame.message.params)\n const update = parsed.data?.update\n return update?.sessionUpdate === 'agent_message_chunk' && update.content.type === 'text'\n ? [update.content.text]\n : []\n })\n .join('')\n const rows = await rig.rig.rows()\n const answers = rows\n .flatMap((row) =>\n row.body.kind === 'message' && row.body.role === 'assistant'\n ? row.body.blocks.flatMap((block) => (block.type === 'text' ? [block.text] : []))\n : []\n )\n .join('')\n expect(await turns(rig)).toMatchObject([\n { state: 'completed', outcome: 'success' },\n { state: 'completed', outcome: 'success' }\n ])\n expect(answers).toBe(recordedAnswers)\n if (name === 'omp-v17-reply-after-thought') {\n expect(\n rows.filter((row) => row.body.kind === 'message' && row.body.role === 'reasoning')\n ).toHaveLength(1)\n }\n await rig.adapter.closeSession(SESSION)\n const savedMessages = (await rig.rig.rows()).filter((row) => row.body.kind === 'message')\n const reopened = await rig.rig.reopenJournal()\n expect(reopened.snapshot().items.filter((row) => row.body.kind === 'message')).toEqual(\n savedMessages\n )\n }\n )","source_sha256":"8f65108db0862ec2d653fe97c002f36585d6758f56d5e800c61735c234d9d713","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-omp-recordings.test.ts","line":71,"title":"keeps both ordinary answers from %s","body_sha256":"8f65108db0862ec2d653fe97c002f36585d6758f56d5e800c61735c234d9d713"},"proposal_ids":[],"explicit_input_controls":["src/main/acp/acp-structured-omp-recordings.test.ts:71:parameter-table"]},{"line":132,"end_line":145,"title":"a failed command's row shows its output and exit code, not the command again","decision":"keep","reason":"Captured failed shell request/response produces actual persisted failed tool with output hi and exit 3 after user approval.","source_body_sha256":"fa668862ef7c5297da33f00f0928d973cf68a9e504151ccd88f531a43887e12d","path":"src/main/acp/acp-structured-omp-recordings.test.ts","start":4745,"end":5324,"byte_start":4745,"byte_end":5324,"source":"it(\"a failed command's row shows its output and exit code, not the command again\", async () => {\n const { rig, replay } = await replaying('omp-v17-shell-exit-3')\n await allowOnce(rig, replay)\n await waitFor(() => expect(replay.awaiting).toBeNull())\n await waitFor(async () =>\n expect(await turns(rig)).toMatchObject([{ state: 'completed', outcome: 'success' }])\n )\n expect(await toolRow(rig)).toMatchObject({\n state: 'failed',\n input: { command: 'printf hi; exit 3' },\n exitCode: 3,\n output: { head: 'hi', truncated: false }\n })\n })","source_sha256":"fa668862ef7c5297da33f00f0928d973cf68a9e504151ccd88f531a43887e12d","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-omp-recordings.test.ts","line":132,"title":"a failed command's row shows its output and exit code, not the command again","body_sha256":"fa668862ef7c5297da33f00f0928d973cf68a9e504151ccd88f531a43887e12d"},"proposal_ids":[],"explicit_input_controls":[]},{"line":147,"end_line":160,"title":"a successful command's row shows its output and exit code 0","decision":"keep","reason":"Captured successful shell lacking explicit exit code produces actual completed tool with output ok and inferred exit 0.","source_body_sha256":"d1277ff5c46e7a5744e1fa61b221a7fff43ecde82998202c432fdc53b93d9587","path":"src/main/acp/acp-structured-omp-recordings.test.ts","start":5328,"end":5941,"byte_start":5328,"byte_end":5941,"source":"it(\"a successful command's row shows its output and exit code 0\", async () => {\n const { rig, replay } = await replaying('omp-v17-shell-ok')\n await allowOnce(rig, replay)\n await waitFor(() => expect(replay.awaiting).toBeNull())\n await waitFor(async () =>\n expect(await turns(rig)).toMatchObject([{ state: 'completed', outcome: 'success' }])\n )\n // OMP reports an exit code only when it is not zero; a completed foreground command exited 0.\n expect(await toolRow(rig)).toMatchObject({\n state: 'completed',\n exitCode: 0,\n output: { head: 'ok', truncated: false }\n })\n })","source_sha256":"d1277ff5c46e7a5744e1fa61b221a7fff43ecde82998202c432fdc53b93d9587","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-omp-recordings.test.ts","line":147,"title":"a successful command's row shows its output and exit code 0","body_sha256":"d1277ff5c46e7a5744e1fa61b221a7fff43ecde82998202c432fdc53b93d9587"},"proposal_ids":[],"explicit_input_controls":[]},{"line":162,"end_line":180,"title":"Stop during a running command ends the turn and leaves the row without the command as output","decision":"keep","reason":"Captured cancelled shell requires actual session/cancel frame and interrupted turn/tool without inventing command text as output.","source_body_sha256":"c93f36e6535f23af15183d9e5887b1caf3f2be6997ecbd05c0b95b25bde5dc74","path":"src/main/acp/acp-structured-omp-recordings.test.ts","start":5945,"end":6846,"byte_start":5945,"byte_end":6846,"source":"it('Stop during a running command ends the turn and leaves the row without the command as output', async () => {\n const { rig, replay } = await replaying('omp-v17-stop-mid-tool')\n await allowOnce(rig, replay)\n await waitFor(() => expect(replay.awaiting).toBe('session/cancel'))\n await expect(rig.adapter.cancelTurn({ sessionId: SESSION, fence: 1 })).resolves.toEqual({\n cancelled: true\n })\n await waitFor(() => expect(replay.awaiting).toBeNull())\n await waitFor(async () =>\n expect(await turns(rig)).toMatchObject([{ state: 'interrupted', outcome: 'cancellation' }])\n )\n // OMP sends nothing more for the stopped command; Orca settles its row with the turn.\n const tool = await toolRow(rig)\n expect(tool).toMatchObject({\n endedAs: 'interrupted',\n input: { command: 'sleep 30', timeout: 60 }\n })\n expect(tool).not.toHaveProperty('output')\n })","source_sha256":"c93f36e6535f23af15183d9e5887b1caf3f2be6997ecbd05c0b95b25bde5dc74","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_decision":"keep","implementation":"retained_unchanged","destination":{"path":"src/main/acp/acp-structured-omp-recordings.test.ts","line":162,"title":"Stop during a running command ends the turn and leaves the row without the command as output","body_sha256":"c93f36e6535f23af15183d9e5887b1caf3f2be6997ecbd05c0b95b25bde5dc74"},"proposal_ids":[],"explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/main/acp/acp-structured-omp-recordings.test.ts:71:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-omp-recordings.test.ts","line":71,"end_line":130,"start":2428,"end":4741,"byte_start":2428,"byte_end":4741,"source":"['omp-v17-reply-without-thought', 'omp-v17-reply-after-thought']","source_sha256":"b82a18d6990b1613de373e8686091c815c538e16f26b6823b68ab0d7e3001b05","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-omp-recordings.test.ts","line":71,"end_line":71,"start":2436,"end":2500,"byte_start":2436,"byte_end":2500},"binding":"it.each","resolution":[],"enclosing_case":{"line":71,"title":"keeps both ordinary answers from %s"},"affected_case_lines":[71],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-omp-recordings.test.ts","line":71,"end_line":71,"start":2437,"end":2468,"source":"'omp-v17-reply-without-thought'","value":{"kind":"string","value":"omp-v17-reply-without-thought"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"155f4ece97ae7dd5827b35022958e8d1e29cef67abfde96ef286e21eb08540a1","byte_start":2437,"byte_end":2468,"input_label":"omp-v17-reply-without-thought","decision":"keep","reason":"Two ordinary replies retain bytes/outcomes and reopen durably without reasoning."},{"index":2,"path":"src/main/acp/acp-structured-omp-recordings.test.ts","line":71,"end_line":71,"start":2470,"end":2499,"source":"'omp-v17-reply-after-thought'","value":{"kind":"string","value":"omp-v17-reply-after-thought"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"a28edfe2ba4e9ba17e3331478b4eae6f7264dcb167b0c4a4fdf460d54f2c6501","byte_start":2470,"byte_end":2499,"input_label":"omp-v17-reply-after-thought","decision":"keep","reason":"Distinct reasoning stream must not swallow following ordinary answers; durability preserved."}],"original_row_count":2}],"parameter_groups":[{"id":"src/main/acp/acp-structured-omp-recordings.test.ts:71:parameter-table","kind":"parameter-table","path":"src/main/acp/acp-structured-omp-recordings.test.ts","line":71,"end_line":130,"start":2428,"end":4741,"byte_start":2428,"byte_end":4741,"source":"['omp-v17-reply-without-thought', 'omp-v17-reply-after-thought']","source_sha256":"b82a18d6990b1613de373e8686091c815c538e16f26b6823b68ab0d7e3001b05","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","input_position":{"path":"src/main/acp/acp-structured-omp-recordings.test.ts","line":71,"end_line":71,"start":2436,"end":2500,"byte_start":2436,"byte_end":2500},"binding":"it.each","resolution":[],"enclosing_case":{"line":71,"title":"keeps both ordinary answers from %s"},"affected_case_lines":[71],"decision":"keep","reason":"Retain the individually assessed original protocol/runtime inputs; each row has its own behavioral reason.","rows":[{"index":1,"path":"src/main/acp/acp-structured-omp-recordings.test.ts","line":71,"end_line":71,"start":2437,"end":2468,"source":"'omp-v17-reply-without-thought'","value":{"kind":"string","value":"omp-v17-reply-without-thought"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"155f4ece97ae7dd5827b35022958e8d1e29cef67abfde96ef286e21eb08540a1","byte_start":2437,"byte_end":2468,"input_label":"omp-v17-reply-without-thought","decision":"keep","reason":"Two ordinary replies retain bytes/outcomes and reopen durably without reasoning."},{"index":2,"path":"src/main/acp/acp-structured-omp-recordings.test.ts","line":71,"end_line":71,"start":2470,"end":2499,"source":"'omp-v17-reply-after-thought'","value":{"kind":"string","value":"omp-v17-reply-after-thought"},"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","source_sha256":"a28edfe2ba4e9ba17e3331478b4eae6f7264dcb167b0c4a4fdf460d54f2c6501","byte_start":2470,"byte_end":2499,"input_label":"omp-v17-reply-after-thought","decision":"keep","reason":"Distinct reasoning stream must not swallow following ordinary answers; durability preserved."}],"original_row_count":2}],"body_support_cleanup_loops":[],"implemented_changes":[{"proposal_id":"acp-main-0001-051","summary":"Shared replay compares complete normalized actual RPC id/result/error with next recorded reply before emitting subsequent traffic; all three OMP approval captures select allow_once.","verification_status":"Normal selected/dependent focused suite passed. Only explicitly listed mutation evidence was executed.","mutation_status":"executed_see_scope_limits","mutation_evidence":["permission-cancelled","permission-wrong-option"]}],"evidence":["src/main/acp/acp-dialects/omp-dialect.ts","src/main/acp/acp-structured-fixture-replay.test-support.ts","src/main/acp/acp-timeline-translator.ts"],"evidence_sha256":{"src/main/acp/acp-dialects/omp-dialect.ts":"f0be0ff957f30cdcd7c9326e64292f797a54f2da9e5e3c2c6758998819a79d54","src/main/acp/acp-structured-fixture-replay.test-support.ts":"18ca0b27aec30b6ae51b5df5899eee5d614c5e88af6c799bed9248a861b54eb9","src/main/acp/acp-timeline-translator.ts":"286f5183234b304ce856d2190bd62405f95200a9be7a5529ef1169a3aaf5c1f9"},"evidence_source_sha256":{"src/main/acp/acp-dialects/omp-dialect.ts":"f0be0ff957f30cdcd7c9326e64292f797a54f2da9e5e3c2c6758998819a79d54","src/main/acp/acp-structured-fixture-replay.test-support.ts":"18ca0b27aec30b6ae51b5df5899eee5d614c5e88af6c799bed9248a861b54eb9","src/main/acp/acp-timeline-translator.ts":"286f5183234b304ce856d2190bd62405f95200a9be7a5529ef1169a3aaf5c1f9"},"original_evidence_detail":[{"path":"src/main/acp/acp-dialects/omp-dialect.ts","sha256":"f0be0ff957f30cdcd7c9326e64292f797a54f2da9e5e3c2c6758998819a79d54","lines":123,"read_state":"full_body_read"},{"path":"src/main/acp/acp-structured-fixture-replay.test-support.ts","sha256":"18ca0b27aec30b6ae51b5df5899eee5d614c5e88af6c799bed9248a861b54eb9","lines":105,"read_state":"full_body_read"},{"path":"src/main/acp/acp-timeline-translator.ts","sha256":"286f5183234b304ce856d2190bd62405f95200a9be7a5529ef1169a3aaf5c1f9","lines":337,"read_state":"full_body_read"}],"boundary_read_ledger":{"path":"/tmp/orca-main-0001-boundary-review.json","sha256":"a8607fcf428c77ac20117f60d98534aef54d286cbdc2902730cedc8eb21f0a80"},"implementation_evidence":[{"path":"/tmp/orca-main-0001-implementation/implementation-ledger.json","sha256":"38b5b05ecbf775bfa19e7dd00e7b9a06b7d24d79185a18b331dbf110fc823e13"}],"validation":"reviews/main-0001-validation.json","tests_executed":true,"runtime_validation":{"tests":[{"full_name":"OMP recordings through the adapter keeps both ordinary answers from omp-v17-reply-without-thought","status":"passed"},{"full_name":"OMP recordings through the adapter keeps both ordinary answers from omp-v17-reply-after-thought","status":"passed"},{"full_name":"OMP recordings through the adapter a failed command's row shows its output and exit code, not the command again","status":"passed"},{"full_name":"OMP recordings through the adapter a successful command's row shows its output and exit code 0","status":"passed"},{"full_name":"OMP recordings through the adapter Stop during a running command ends the turn and leaves the row without the command as output","status":"passed"}],"normal_summary":{"report":"restored-final.json","command":"restored-final-command.json","additional_final_assertion_control":"child-transfer-final-corrected.json","test_files":50,"total":404,"passed":404,"failed":0,"skipped":0,"selected_tests":393,"additional_replay_tests":11},"final_control":"restored-final.json"},"original_review_limits":["Selected complete body, all inline factories/callbacks and all parameter/loop inputs inspected. Stored dependencies are not claimed read; see boundary ledger.","Two selected test-fixture support files intentionally have zero source declarations."],"original_validation_plan":"/tmp/orca-main-0001-validation-plan.json"}
+{"path":"src/main/acp/acp-structured-fixture-replay.test-support.ts","sha256":"18ca0b27aec30b6ae51b5df5899eee5d614c5e88af6c799bed9248a861b54eb9","reviewed_sha256":"b3161ea99b49a3aa29966b2c4414b131428886e2325e4e9e6e5503e2a0867780","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","reviewer":"audit_cloud","status":"reviewed","index":51,"decision":"fix","classification":"auxiliary captured-protocol replay fixture","rationale":"Complete original and final replay helper bodies reviewed as the shared dependency implementing proposal51. Require full normalized actual reply id/result/error equality before advancing recorded traffic, surface asynchronous comparison failures through awaited replay state, and preserve prompt/session identity rewriting. Exact permission outcomes are covered by all three OMP command recordings and two killed response mutations. This support class declares no runnable tests.","original_declarations":0,"final_declarations":0,"declarations":0,"signals":["manual-auxiliary-review"],"selection_checkpoint":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","selected_original":false,"discovery":{"path":"src/main/acp/acp-structured-fixture-replay.test-support.ts","original_sha256":"18ca0b27aec30b6ae51b5df5899eee5d614c5e88af6c799bed9248a861b54eb9","tracked_at_original":true,"original_inventory_entry":null,"original_review_matches":[],"current_inventory_entry":null,"current_review_matches":[],"named_pattern_matches":false,"auxiliary_pattern_matches":false,"explanation":"The tracked .test-support.ts basename matches neither .test. test names nor the current auxiliary directory/name patterns, and has no recognized declarations. Explicit review adds it to refresh through reviews.has(path)."}},"complete_body_and_tables_reviewed":true,"phase":"implemented-review","checkout_edits":true,"implementation_status":"implemented","cases":[],"explicit_input_controls":[{"id":"src/main/acp/acp-structured-fixture-replay.test-support.ts:70:loop","kind":"while","path":"src/main/acp/acp-structured-fixture-replay.test-support.ts","line":70,"end_line":92,"start":2745,"end":3670,"byte_start":2745,"byte_end":3670,"source":"while (agent && this.frames[this.cursor]?.direction === 'in') {\n const recorded = this.frames[this.cursor]!\n this.cursor += 1\n const message = this.rewrite(recorded.message)\n if (message.method !== undefined && message.id !== undefined) {\n // The agent asks Orca something; the recording resumes once Orca answers it.\n void agent.request(message.id, message.method, message.params).then(() => {\n expect(this.frames[this.cursor]?.direction).toBe('out')\n this.cursor += 1\n this.play()\n })\n return\n }\n if (message.method !== undefined) {\n agent.notify(message.method, message.params)\n } else {\n agent.send({\n jsonrpc: '2.0',\n id: this.requestIds.get(message.id ?? '') ?? message.id,\n ...(message.error === undefined ? { result: message.result } : { error: message.error })\n })\n }\n }","source_sha256":"deacc63e806fca592431434855984d62b61f138ed53ebd2c1591dd46a780ada3","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"while (agent && this.frames[this.cursor]?.direction === 'in') ","header_sha256":"1c02a35b6b2a3acd782153f4957e50689bcf9e832613490b1df01632fae5e668","input_position":null,"binding":null,"resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"fixture replay traversal","decision":"fix","reason":"Replay inbound frames in original order, pausing at each provider request; compare the complete recorded response before advancement and surface mismatch to awaited replay state.","rows":[],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-structured-fixture-replay.test-support.ts:100:loop","kind":"for-of","path":"src/main/acp/acp-structured-fixture-replay.test-support.ts","line":100,"end_line":102,"start":3888,"end":4019,"byte_start":3888,"byte_end":4019,"source":"for (const [recorded, sent] of this.promptIds) {\n text = text.replaceAll(JSON.stringify(recorded), JSON.stringify(sent))\n }","source_sha256":"71c1ae48e2e0ebfcac1b5d22cd65668ee1ab98510d6881028229836f96300141","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const [recorded, sent] of this.promptIds) ","header_sha256":"654f6aea0ecbd7f1d0fd9ae188f2dae339218cdc13ba5011bea03338c2384a90","input_position":{"path":"src/main/acp/acp-structured-fixture-replay.test-support.ts","line":100,"end_line":100,"start":3919,"end":3933,"byte_start":3919,"byte_end":3933},"binding":"const [recorded, sent]","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"fixture replay traversal","decision":"keep","reason":"Rewrite every recorded prompt identity to its actual run identity before comparing or emitting frames; runtime map traversal is not an independent test case.","rows":[],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"body_support_cleanup_loops":[{"id":"src/main/acp/acp-structured-fixture-replay.test-support.ts:70:loop","kind":"while","path":"src/main/acp/acp-structured-fixture-replay.test-support.ts","line":70,"end_line":92,"start":2745,"end":3670,"byte_start":2745,"byte_end":3670,"source":"while (agent && this.frames[this.cursor]?.direction === 'in') {\n const recorded = this.frames[this.cursor]!\n this.cursor += 1\n const message = this.rewrite(recorded.message)\n if (message.method !== undefined && message.id !== undefined) {\n // The agent asks Orca something; the recording resumes once Orca answers it.\n void agent.request(message.id, message.method, message.params).then(() => {\n expect(this.frames[this.cursor]?.direction).toBe('out')\n this.cursor += 1\n this.play()\n })\n return\n }\n if (message.method !== undefined) {\n agent.notify(message.method, message.params)\n } else {\n agent.send({\n jsonrpc: '2.0',\n id: this.requestIds.get(message.id ?? '') ?? message.id,\n ...(message.error === undefined ? { result: message.result } : { error: message.error })\n })\n }\n }","source_sha256":"deacc63e806fca592431434855984d62b61f138ed53ebd2c1591dd46a780ada3","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"while (agent && this.frames[this.cursor]?.direction === 'in') ","header_sha256":"1c02a35b6b2a3acd782153f4957e50689bcf9e832613490b1df01632fae5e668","input_position":null,"binding":null,"resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"fixture replay traversal","decision":"fix","reason":"Replay inbound frames in original order, pausing at each provider request; compare the complete recorded response before advancement and surface mismatch to awaited replay state.","rows":[],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."},{"id":"src/main/acp/acp-structured-fixture-replay.test-support.ts:100:loop","kind":"for-of","path":"src/main/acp/acp-structured-fixture-replay.test-support.ts","line":100,"end_line":102,"start":3888,"end":4019,"byte_start":3888,"byte_end":4019,"source":"for (const [recorded, sent] of this.promptIds) {\n text = text.replaceAll(JSON.stringify(recorded), JSON.stringify(sent))\n }","source_sha256":"71c1ae48e2e0ebfcac1b5d22cd65668ee1ab98510d6881028229836f96300141","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","header_source":"for (const [recorded, sent] of this.promptIds) ","header_sha256":"654f6aea0ecbd7f1d0fd9ae188f2dae339218cdc13ba5011bea03338c2384a90","input_position":{"path":"src/main/acp/acp-structured-fixture-replay.test-support.ts","line":100,"end_line":100,"start":3919,"end":3933,"byte_start":3919,"byte_end":3933},"binding":"const [recorded, sent]","resolution":[],"enclosing_case":null,"affected_case_lines":[],"classification":"fixture replay traversal","decision":"keep","reason":"Rewrite every recorded prompt identity to its actual run identity before comparing or emitting frames; runtime map traversal is not an independent test case.","rows":[],"policy":"Runtime traversal or counted policy preserved exactly; no concrete row count is fabricated."}],"implemented_changes":[{"proposal_id":"acp-main-0001-051","summary":"Shared replay compares complete normalized actual RPC id/result/error with next recorded reply before emitting subsequent traffic; all three OMP approval captures select allow_once."}],"evidence":["src/main/acp/acp-structured-grok-subagent-recordings.test.ts","src/main/acp/acp-structured-compaction.test.ts","src/main/acp/acp-structured-child-work.test.ts","src/main/acp/acp-structured-session-adapter-recordings.test.ts","src/main/acp/acp-structured-antigravity.test.ts","src/main/acp/acp-structured-opencode-recordings.test.ts","src/main/acp/acp-structured-omp-recordings.test.ts"],"evidence_sha256":{"src/main/acp/acp-structured-grok-subagent-recordings.test.ts":"3ad01ddde1af05fa5ed1cffc2813d06295d8bc743f4b89e3e02b8ef1cc4de52c","src/main/acp/acp-structured-compaction.test.ts":"068cb25b4f2da0fc292d768dbf6012623d68a50fec90cb160b4fc2957966ba39","src/main/acp/acp-structured-child-work.test.ts":"35b97748340e0ce1b7ea92d5adc136c131d7f44093a555fccdb389ad06a76583","src/main/acp/acp-structured-session-adapter-recordings.test.ts":"53b65b968401272a83387d1d3b64c132345c1af4509dc0507d78a947bafa9c6e","src/main/acp/acp-structured-antigravity.test.ts":"ff6fc7c8995f74a768b3c31033ec99712aa6d49fd63983dfe646ad8881292d9f","src/main/acp/acp-structured-opencode-recordings.test.ts":"7cc8a8725c092c08d32aee6b443138b40614764c77cc2fd4758761dc8ce9489f","src/main/acp/acp-structured-omp-recordings.test.ts":"4934b3c55093a7d32389794f42051d7ce8783b8afc4fcb50d0c38af1edabd498"},"evidence_source_sha256":{"src/main/acp/acp-structured-grok-subagent-recordings.test.ts":"0c73b87e2ba3aea581b9a5b8828db4368218491b4e57f19e4a8742bf2b219e27","src/main/acp/acp-structured-compaction.test.ts":"4d400dbc1d3fbe3781c5011829340f15ebec1feb2204b45fcd51351419e05706","src/main/acp/acp-structured-child-work.test.ts":"cfa37edd52a8ad1bbb40cd1bbd1555106194ece80db55ea62416286207a68e1e","src/main/acp/acp-structured-session-adapter-recordings.test.ts":"53b65b968401272a83387d1d3b64c132345c1af4509dc0507d78a947bafa9c6e","src/main/acp/acp-structured-antigravity.test.ts":"1b44303eaf2a6dd61b44f0fc755584c0aeaa49b61c9b857a968ce32d51c2a062","src/main/acp/acp-structured-opencode-recordings.test.ts":"7cc8a8725c092c08d32aee6b443138b40614764c77cc2fd4758761dc8ce9489f","src/main/acp/acp-structured-omp-recordings.test.ts":"4934b3c55093a7d32389794f42051d7ce8783b8afc4fcb50d0c38af1edabd498"},"validation":"reviews/main-0001-validation.json","tests_executed":true,"validation_summary":"All seven replay consumers were included in the restored 50-file/404-case normal run; final child-work transfer control passed14. Wrong-option and cancelled response mutations each failed all three OMP command captures. No separate support runtime case is invented.","limitations":["Only the exact legacy fs/write_text_file request, -32601 error code and old diagnostic string have the error message normalized. All permission payloads and other normalized response fields remain exact."],"original_source":{"source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","path":"src/main/acp/acp-structured-fixture-replay.test-support.ts","sha256":"18ca0b27aec30b6ae51b5df5899eee5d614c5e88af6c799bed9248a861b54eb9","source":"// Plays a recorded Grok session back as the agent behind the real adapter. Orca's own frames\n// advance the recording: the agent's lines after each one are sent until the recording waits on\n// Orca again. The recording's prompt ids and session id are rewritten to the ones this run uses,\n// as the real agent echoes the prompt id it was sent.\n\nimport { expect } from 'vitest'\nimport { z } from 'zod'\nimport type { AcpFixtureFrame } from './acp-timeline-fixture.test-support'\nimport type { AcpScriptedAgent, FakeFrame } from './acp-scripted-agent.test-support'\nimport { PROVIDER_SESSION } from './acp-structured-adapter.test-support'\n\n/** Recordings name their sessions `session-N`; a replay plays them all as this run's one. */\nconst RECORDED_SESSION = /\"session-\\d+\"/g\nconst promptMetaSchema = z.object({ _meta: z.object({ promptId: z.string() }) })\nconst messageSchema = z.object({\n id: z.union([z.string(), z.number()]).optional(),\n method: z.string().optional(),\n params: z.unknown().optional(),\n result: z.unknown().optional(),\n error: z\n .object({ code: z.number(), message: z.string(), data: z.unknown().optional() })\n .optional()\n})\n\nfunction promptIdOf(params: unknown): string | undefined {\n return promptMetaSchema.safeParse(params).data?._meta.promptId\n}\n\nexport class GrokFixtureReplay {\n private cursor = 0\n private agent: AcpScriptedAgent | null = null\n private readonly promptIds = new Map()\n private readonly requestIds = new Map()\n\n constructor(private readonly frames: AcpFixtureFrame[]) {}\n\n attach(agent: AcpScriptedAgent): void {\n this.agent = agent\n agent.on('session/prompt', (frame) => this.orcaSent('session/prompt', frame))\n agent.on('session/cancel', (frame) => this.orcaSent('session/cancel', frame))\n }\n\n /** What the recording waits for Orca to send next; null once it has played to the end. */\n get awaiting(): string | null {\n const next = this.frames[this.cursor]\n if (!next) {\n return null\n }\n return next.direction === 'out' ? (next.message.method ?? 'reply') : 'agent'\n }\n\n private orcaSent(method: string, frame: FakeFrame): void {\n const recorded = this.frames[this.cursor]\n expect(recorded?.direction).toBe('out')\n expect(recorded?.message.method).toBe(method)\n if (method === 'session/prompt' && recorded) {\n const recordedId = promptIdOf(recorded.message.params)\n const sentId = promptIdOf(frame.params)\n if (recordedId && sentId) {\n this.promptIds.set(recordedId, sentId)\n }\n this.requestIds.set(recorded.message.id ?? '', frame.id)\n }\n this.cursor += 1\n this.play()\n }\n\n private play(): void {\n const agent = this.agent\n while (agent && this.frames[this.cursor]?.direction === 'in') {\n const recorded = this.frames[this.cursor]!\n this.cursor += 1\n const message = this.rewrite(recorded.message)\n if (message.method !== undefined && message.id !== undefined) {\n // The agent asks Orca something; the recording resumes once Orca answers it.\n void agent.request(message.id, message.method, message.params).then(() => {\n expect(this.frames[this.cursor]?.direction).toBe('out')\n this.cursor += 1\n this.play()\n })\n return\n }\n if (message.method !== undefined) {\n agent.notify(message.method, message.params)\n } else {\n agent.send({\n jsonrpc: '2.0',\n id: this.requestIds.get(message.id ?? '') ?? message.id,\n ...(message.error === undefined ? { result: message.result } : { error: message.error })\n })\n }\n }\n }\n\n private rewrite(message: AcpFixtureFrame['message']): z.infer {\n let text = JSON.stringify(message).replaceAll(\n RECORDED_SESSION,\n JSON.stringify(PROVIDER_SESSION)\n )\n for (const [recorded, sent] of this.promptIds) {\n text = text.replaceAll(JSON.stringify(recorded), JSON.stringify(sent))\n }\n return messageSchema.parse(JSON.parse(text))\n }\n}\n"}}
diff --git a/docs/audits/test-value/reviews/root-0066-validation.json b/docs/audits/test-value/reviews/root-0066-validation.json
new file mode 100644
index 00000000000..ab35d9740a4
--- /dev/null
+++ b/docs/audits/test-value/reviews/root-0066-validation.json
@@ -0,0 +1,159 @@
+{
+ "batch": "root-0066",
+ "reviewer": "root",
+ "source_commit": "5d32f372e76983b6436d5700ce688990662e7243",
+ "reviewed_files": 4,
+ "original_declarations": 27,
+ "case_records": 27,
+ "explicit_parameter_rows": 2,
+ "passing_runtime_cases": 28,
+ "decisions": {
+ "keep": 20,
+ "fix": 7
+ },
+ "production_changes": false,
+ "checks": [
+ {
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm test --reporter=default --reporter=json --outputFile=/tmp/orca-root-0066-final-tests.json",
+ "result": "4 suites /28 tests passed",
+ "report": "/tmp/orca-root-0066-final-tests.json",
+ "log": "/tmp/orca-root-0066-final-tests.log",
+ "log_sha256": "907e66ae150e9d83b783cd4e3862fee8de27e93aff781ebff09d9baf4f07767e",
+ "report_sha256": "7dcc1759322f3e01fd104eb1edc3cfc50991989909cea8d0efeafb2cc1168ffc"
+ },
+ {
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm tc:cli",
+ "result": "passed",
+ "log": "/tmp/orca-root-0066-typecheck.log",
+ "log_sha256": "64350cfafba2dd6bb61adf325923dc3c41762eb81a276ff9302796e6e77b09bc"
+ },
+ {
+ "command": "pnpm exec oxlint ",
+ "result": "passed",
+ "log": "/tmp/orca-root-0066-final-lint.log",
+ "log_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ {
+ "command": "pnpm exec oxfmt --check ",
+ "result": "passed",
+ "log": "/tmp/orca-root-0066-final-format.log",
+ "log_sha256": "35207f2f3e89aaf068e034763d42e61db5af1469492b58685c7fdd9b6f5aef93"
+ }
+ ],
+ "mutation": {
+ "batch": "root-0066",
+ "defect": "Suppress printing only for successful relayed receipts immediately before printResult.",
+ "production_path": "src/cli/handlers/orchestration/message-send-handler.ts",
+ "original_source_sha256": "b8e8e7941f3fa99a9dd782de98be1a296904e0a57e5257a9f75869fdda3036d3",
+ "mutated_source_sha256": "4875b014d0a01e89f59469eb7e96dd23e579d80f1d1e0e12c30463fe62c757f8",
+ "restored_source_sha256": "b8e8e7941f3fa99a9dd782de98be1a296904e0a57e5257a9f75869fdda3036d3",
+ "original_test_sha256": "9209192ecb573e7ae00d21d7fa15fa6c0754529cec40279d2ef6ac382bd6f34a",
+ "reviewed_test_sha256": "514366e8b85ec3fa2aa60384334bf456f239b860155a0666cb2470b61bd84875",
+ "entire_warning_suite_executed_each_phase": true,
+ "results": {
+ "original-control": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/orchestration-send-receipt-warnings.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0066-original-control.json"
+ ],
+ "exit_code": 0,
+ "passed": 4,
+ "failed": 0,
+ "failures": [],
+ "report": "/tmp/orca-root-0066-original-control.json",
+ "report_sha256": "9bcf6eb3a66b5bfcc9849a8b203bc49c76ff7bc922283c416c51368060d495f4",
+ "log": "/tmp/orca-root-0066-original-control.log",
+ "log_sha256": "855dd3b940da652e8f9d5ab3c4eea7b29569c8ca2e7dde6eb14410b5b72199ce",
+ "test_sha256": "9209192ecb573e7ae00d21d7fa15fa6c0754529cec40279d2ef6ac382bd6f34a",
+ "production_sha256": "b8e8e7941f3fa99a9dd782de98be1a296904e0a57e5257a9f75869fdda3036d3"
+ },
+ "original-relay-output-mutant": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/orchestration-send-receipt-warnings.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0066-original-relay-output-mutant.json"
+ ],
+ "exit_code": 0,
+ "passed": 4,
+ "failed": 0,
+ "failures": [],
+ "report": "/tmp/orca-root-0066-original-relay-output-mutant.json",
+ "report_sha256": "aea7ea9b5960ffb3c4dbac6a07caf7b392ed52bbc26e999b668a558202932575",
+ "log": "/tmp/orca-root-0066-original-relay-output-mutant.log",
+ "log_sha256": "99618318fa3a3a7a29185b76222d0f8e64013166786339f01be641d94e27146f",
+ "test_sha256": "9209192ecb573e7ae00d21d7fa15fa6c0754529cec40279d2ef6ac382bd6f34a",
+ "production_sha256": "4875b014d0a01e89f59469eb7e96dd23e579d80f1d1e0e12c30463fe62c757f8"
+ },
+ "reviewed-relay-output-mutant": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/orchestration-send-receipt-warnings.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0066-reviewed-relay-output-mutant.json"
+ ],
+ "exit_code": 1,
+ "passed": 3,
+ "failed": 1,
+ "failures": [
+ {
+ "title": "prints delivery limitations on relayed receipts",
+ "messages": [
+ "AssertionError: expected \"vi.fn()\" to be called once, but got 0 times\n at formatSend (/home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/cli/handlers/orchestration-send-receipt-warnings.test.ts:23:23)\n at process.processTicksAndRejections (node:internal/process/task_queues:104:5)\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/cli/handlers/orchestration-send-receipt-warnings.test.ts:69:16\n at async file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:20"
+ ]
+ }
+ ],
+ "report": "/tmp/orca-root-0066-reviewed-relay-output-mutant.json",
+ "report_sha256": "e798c5e215076a7aa91d1ea0c4d2792ca94f478e70a9cb481f846798ef31d07e",
+ "log": "/tmp/orca-root-0066-reviewed-relay-output-mutant.log",
+ "log_sha256": "e73be6fdcb1d0b0a34732683254956bcc0a0f7d89e54f30db498b3a014e18a06",
+ "test_sha256": "514366e8b85ec3fa2aa60384334bf456f239b860155a0666cb2470b61bd84875",
+ "production_sha256": "4875b014d0a01e89f59469eb7e96dd23e579d80f1d1e0e12c30463fe62c757f8"
+ },
+ "reviewed-restored": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/orchestration-send-receipt-warnings.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0066-reviewed-restored.json"
+ ],
+ "exit_code": 0,
+ "passed": 4,
+ "failed": 0,
+ "failures": [],
+ "report": "/tmp/orca-root-0066-reviewed-restored.json",
+ "report_sha256": "2f4bd9ba37c5ab6672a79bd90d87516b62a04c8e5a095909ef348972f755cb1c",
+ "log": "/tmp/orca-root-0066-reviewed-restored.log",
+ "log_sha256": "522157aa39792378a29a9c880720decac5a8403c6459462f532f98aab1f8ffad",
+ "test_sha256": "514366e8b85ec3fa2aa60384334bf456f239b860155a0666cb2470b61bd84875",
+ "production_sha256": "b8e8e7941f3fa99a9dd782de98be1a296904e0a57e5257a9f75869fdda3036d3"
+ }
+ }
+ },
+ "integrity": {
+ "records_sha256": "1f3691a62b359745106926b8ad678bfb2eefd3e4d0d7d5c005c9997de17341da",
+ "original_and_final_hashes_verified": true,
+ "original_case_source_hashes_verified": 27,
+ "parameter_source_hashes_verified": 2,
+ "production_and_supporting_evidence_hashes_verified": true,
+ "original_snapshot_sha256": "aa34141067f193cdda5fdf60eed09e36ac56be2a4f4f849674261c9928d980eb",
+ "plan_sha256": "4fe91304994f071fc5684f37e4e41d98d03a47c75d1d2356c567f8605879a756",
+ "declaration_parser_sha256": "8eced726500958f3b4cfd5687cf2f0cc98d1190dfd83570c31706ad182332f90",
+ "production_source_restored": true
+ },
+ "limitations": [
+ "Injected runtime/selector/output writer ports execute actual CLI handlers, receipt formatters, identity resolution, settlement compatibility and scope parsing. No live remote host, terminal or workspace is mutated.",
+ "Both reset refusal rows are reviewed separately; static declarations and runtime expansions are distinct counts.",
+ "Mutation executes the entire warning file in original and reviewed variants so a stale prior callback remains observable; successful original mutant is a demonstrated test gap, not a production pass."
+ ]
+}
diff --git a/docs/audits/test-value/reviews/root-0066.jsonl b/docs/audits/test-value/reviews/root-0066.jsonl
new file mode 100644
index 00000000000..5880af6dc9b
--- /dev/null
+++ b/docs/audits/test-value/reviews/root-0066.jsonl
@@ -0,0 +1,4 @@
+{"path":"src/cli/handlers/orchestration-lifecycle-rejection.test.ts","sha256":"8b2d560da3763ca385fd597098ee101af9f38b4251015a68d51b55142f66bae4","reviewed_sha256":"8b2d560da3763ca385fd597098ee101af9f38b4251015a68d51b55142f66bae4","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","reviewer":"root","status":"reviewed","decision":"keep","classification":"vitest-cli-orchestration-rpc-output-and-settlement-boundary","rationale":"Read all original test bodies, hooks, fixed fixtures and both reset parameter rows against the actual handlers and producer/output contracts. Keep distinct settlement and compatibility behavior; repair inaccurate envelopes, environment leakage and stale writer-callback reuse.","evidence":["src/cli/handlers/orchestration/message-send-handler.ts","src/cli/handlers/orchestration-worker-settlement.ts","src/cli/handlers/orchestration/message-payload.ts","src/cli/handlers/orchestration/mutation-request.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/message-send-handler.ts":"b8e8e7941f3fa99a9dd782de98be1a296904e0a57e5257a9f75869fdda3036d3","src/cli/handlers/orchestration-worker-settlement.ts":"5f2b7946d08cbcead9de95d8b56697502d2f11e7eefd3d462c4d4ced1a875ce9","src/cli/handlers/orchestration/message-payload.ts":"c27711a5b5f875ec5e93d9eaa0ba4fb23b679596f4ff9d7375fea80cf02db33c","src/cli/handlers/orchestration/mutation-request.ts":"66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408"},"evidence_source_sha256":{"src/cli/handlers/orchestration/message-send-handler.ts":"b8e8e7941f3fa99a9dd782de98be1a296904e0a57e5257a9f75869fdda3036d3","src/cli/handlers/orchestration-worker-settlement.ts":"5f2b7946d08cbcead9de95d8b56697502d2f11e7eefd3d462c4d4ced1a875ce9","src/cli/handlers/orchestration/message-payload.ts":"c27711a5b5f875ec5e93d9eaa0ba4fb23b679596f4ff9d7375fea80cf02db33c","src/cli/handlers/orchestration/mutation-request.ts":"66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408"},"cases":[{"line":17,"title":"raises a lifecycle rejection for the CLI error boundary","decision":"keep","reason":"Actual send handler rejects a current sender-not-assignee verdict at the CLI boundary and prints no successful receipt.","source_sha256":"e121e21607c4033428aa58effb1fb5dfd454bdb3b9c5767728870037e72d11ef","start":441,"end":1327,"parameter_inputs":[]},{"line":50,"title":"raises a Run-home relay rejection for the CLI error boundary","decision":"keep","reason":"Run-home-authoritative relay rejection preserves task-dispatch mismatch and prints no successful receipt.","source_sha256":"e1e2e5641bdf1c65ac9485aa47f6632550d7b981b9873525c688386c2213361b","start":1329,"end":2313,"parameter_inputs":[]},{"line":87,"title":"accepts an explicit current settlement without a compatibility read","decision":"keep","reason":"Explicit current completed verdict succeeds with the original send as the sole RPC, avoiding legacy compatibility reads.","source_sha256":"abd8b7d58cd3383685314d19ff4765888490de037b21b0e6faad8874836384da","start":2315,"end":2917,"parameter_inputs":[]},{"line":109,"title":"fails closed when an older runtime leaves worker_done dispatched without a verdict","decision":"keep","reason":"Legacy dispatched state and absent completed task cannot authorize success; exact task/run verification reads precede operation_unknown.","source_sha256":"1bc6e60bf4a47aeb3c11beaf0dd8310feb666af46519ba457bbeda617dc3d5c6","start":2919,"end":3958,"parameter_inputs":[]},{"line":142,"title":"normalizes compatibility-read failures to operation_unknown","decision":"keep","reason":"A disconnected authoritative compatibility read becomes operation_unknown rather than success or a raw transport error.","source_sha256":"d86e96617898b3e4eefa5f0b4374f2f09cb1f232c4cc18e17d9407c06a43d11e","start":3960,"end":4717,"parameter_inputs":[]},{"line":167,"title":"preserves the worker_done mutation identity when post-verification fails","decision":"keep","reason":"Unconfirmed settlement preserves the accepted mutation request identity and exact safe retry guidance.","source_sha256":"0b2815c529194121c4d61d8b4dfa2774f30a7e4b13c3d5167a007063b0c4491b","start":4719,"end":5804,"parameter_inputs":[]},{"line":203,"title":"accepts a legacy response only after the authoritative dispatch is terminal","decision":"keep","reason":"Legacy success requires the matching terminal Dispatch and completed Task carrying the exact worker-report receipt.","source_sha256":"3b83166c354a5d120b2e17e7af974c93bc4a5f7eba99349c97aae2097b9985e0","start":5806,"end":6966,"parameter_inputs":[]},{"line":245,"title":"accepts a legacy failed report only after the authoritative dispatch failed","decision":"keep","reason":"Legacy failure requires a failed Dispatch and failed Task with failed worker-report outcome.","source_sha256":"080ac8070a0e60051398a16757c23f53579dd37539400ac23b3b61c701ee8695","start":6968,"end":8006,"parameter_inputs":[]},{"line":284,"title":"accepts an idempotent retry whose first report already settled","decision":"keep","reason":"Idempotent retry accepts the already-settled report by the same worker even when its original message ID differs.","source_sha256":"d16f517fcf6f166c88aa9de26d9f76239dbd5394745896ec0c0bf801a70d7fe0","start":8008,"end":9110,"parameter_inputs":[]},{"line":326,"title":"rejects an unrelated failed Dispatch that left its Task blocked","decision":"keep","reason":"A failed Dispatch without a matching failed Task report remains ambiguous and cannot claim settlement.","source_sha256":"a159287ebeabe9da15167f8426282ac26a59bf76ba6fa8fcfc582c904da50d4f","start":9112,"end":9897,"parameter_inputs":[]},{"line":351,"title":"rejects a terminal Dispatch with the wrong identity","decision":"keep","reason":"A terminal Dispatch belonging to another identity remains rejected even when the Task has an otherwise matching report.","source_sha256":"fa59cfee2f547b9b33ff196b4252382111d5642055bb82b3c904b7b98a16c120","start":9899,"end":10975,"parameter_inputs":[]}],"original_declarations":11,"final_declarations":11,"validation":"reviews/root-0066-validation.json"}
+{"path":"src/cli/handlers/orchestration-request-show-cli.test.ts","sha256":"5fec130163c7191cc880f725e0d7e6e1ba6deca70217617c255724266d3654a5","reviewed_sha256":"2fe9b87adb3299d6e51bef12d88d6b4dff3109ee2a4912c694b329484f07e491","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","reviewer":"root","status":"reviewed","decision":"fix","classification":"vitest-cli-orchestration-rpc-output-and-settlement-boundary","rationale":"Read all original test bodies, hooks, fixed fixtures and both reset parameter rows against the actual handlers and producer/output contracts. Keep distinct settlement and compatibility behavior; repair inaccurate envelopes, environment leakage and stale writer-callback reuse.","evidence":["src/cli/handlers/orchestration/mutation-request-show-handler.ts","src/main/runtime/rpc/methods/orchestration/runs/mutation-request-show.ts","src/shared/orchestration-mutation-request.ts","src/cli/test-fixtures.ts","src/cli/format.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/mutation-request-show-handler.ts":"66a907a2193da3be14664a91e6ff2d20635303f0ec459705232fb03a88454cbd","src/main/runtime/rpc/methods/orchestration/runs/mutation-request-show.ts":"20d225c00febf29e7320137b75dc896a70b1de9a31f110207890d2febad4c402","src/shared/orchestration-mutation-request.ts":"c134b85cf814ba68cd5541f51e9cab37bb5e0113368f0312f42e1add05cede6b","src/cli/test-fixtures.ts":"de24d3f101b8617a402e27a895fc1e45f88fb79f6229a1771107622d243f9a7b","src/cli/format.ts":"f4ff6e2216c90a2a7ddc706957cd966f1510e7ff7304bdfd89d935d9665778d9"},"evidence_source_sha256":{"src/cli/handlers/orchestration/mutation-request-show-handler.ts":"66a907a2193da3be14664a91e6ff2d20635303f0ec459705232fb03a88454cbd","src/main/runtime/rpc/methods/orchestration/runs/mutation-request-show.ts":"20d225c00febf29e7320137b75dc896a70b1de9a31f110207890d2febad4c402","src/shared/orchestration-mutation-request.ts":"c134b85cf814ba68cd5541f51e9cab37bb5e0113368f0312f42e1add05cede6b","src/cli/test-fixtures.ts":"de24d3f101b8617a402e27a895fc1e45f88fb79f6229a1771107622d243f9a7b","src/cli/format.ts":"f4ff6e2216c90a2a7ddc706957cd966f1510e7ff7304bdfd89d935d9665778d9"},"cases":[{"line":29,"title":"asks the runtime without sending a mutation request id","decision":"fix","reason":"Keep the exact read-only requestShow method and params; repair its successful fixture with the existing RPC envelope factory so the actual output boundary receives a real response shape.","source_sha256":"045721c45d78d8113c2232e3710864e4468b5ca3f69ee38d94a0e3aaea0aad7f","start":963,"end":1268,"parameter_inputs":[]},{"line":37,"title":"renders the state and the honest reading of it","decision":"fix","reason":"Repair the raw-result double and manually bypassed unwrap: capture the current output call, verify its envelope/plain mode and execute its formatter with that response.result. Preserve the exact honest state text.","source_sha256":"55d875223aa52be00ad8d122e0f9104a4c55e44bf4d6b1fb6cd04b988c9818ed","start":1272,"end":1875,"parameter_inputs":[]},{"line":58,"title":"names the version gap when the server predates the command","decision":"keep","reason":"An older server method_not_found becomes incompatible_runtime with actionable server-update guidance; remote clients and hosts can update independently.","source_sha256":"fac449af49c6236c03eb698684a6e673e9fb1c39758537190198a30f34d03998","start":1879,"end":2265,"parameter_inputs":[]}],"original_declarations":3,"final_declarations":3,"validation":"reviews/root-0066-validation.json"}
+{"path":"src/cli/handlers/orchestration-run-cli.test.ts","sha256":"00569e8049618ed26ef5cc017f362cebe3c1f2cc8b64c31413db149461b77526","reviewed_sha256":"1f6f50709a6b16f5aa79326fd081e2baabd250eca250713f3facb0db70f114e0","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","reviewer":"root","status":"reviewed","decision":"fix","classification":"vitest-cli-orchestration-rpc-output-and-settlement-boundary","rationale":"Read all original test bodies, hooks, fixed fixtures and both reset parameter rows against the actual handlers and producer/output contracts. Keep distinct settlement and compatibility behavior; repair inaccurate envelopes, environment leakage and stale writer-callback reuse.","evidence":["src/cli/handlers/orchestration/run-handlers.ts","src/cli/handlers/orchestration/reset-handler.ts","src/cli/handlers/orchestration/terminal-identity.ts","src/shared/agent-session-caller-env.ts","src/cli/test-fixtures.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/run-handlers.ts":"85d4473a779a59f9c23ebd833ac257e63ddf53c2dacbc569db42162a08dbccb0","src/cli/handlers/orchestration/reset-handler.ts":"46c1aeb2d4ef3d21cf050deeaf45a32cce0d052032930c6c7ba35432ec53cc73","src/cli/handlers/orchestration/terminal-identity.ts":"17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306","src/shared/agent-session-caller-env.ts":"5bd635cb3fbcf59fa5784580e501e4223401cd69601d986075d84007017d67cc","src/cli/test-fixtures.ts":"de24d3f101b8617a402e27a895fc1e45f88fb79f6229a1771107622d243f9a7b"},"evidence_source_sha256":{"src/cli/handlers/orchestration/run-handlers.ts":"85d4473a779a59f9c23ebd833ac257e63ddf53c2dacbc569db42162a08dbccb0","src/cli/handlers/orchestration/reset-handler.ts":"46c1aeb2d4ef3d21cf050deeaf45a32cce0d052032930c6c7ba35432ec53cc73","src/cli/handlers/orchestration/terminal-identity.ts":"17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306","src/shared/agent-session-caller-env.ts":"5bd635cb3fbcf59fa5784580e501e4223401cd69601d986075d84007017d67cc","src/cli/test-fixtures.ts":"de24d3f101b8617a402e27a895fc1e45f88fb79f6229a1771107622d243f9a7b"},"cases":[{"line":18,"title":"creates a Run with the resolved coordinator terminal","decision":"fix","reason":"Repair inherited environment isolation and restore it after each case. Supply a live terminal.resolveIdentity response followed by the Run response; observe the exact probe and sole mutation instead of accidentally falling through to terminal.show on a Run-shaped identity answer.","source_sha256":"e611a8366234d746dd821fba3094463e169b53e01f78fa0347c141594bcf042f","start":530,"end":1157,"parameter_inputs":[]},{"line":37,"title":"reuses the same explicit binding path for run-use and run-current","decision":"keep","reason":"Keep both distinct explicit Run binding and current-Run reads; exact ordered method/ID/sender arguments exercise CLI routing rather than only observing fixture values.","source_sha256":"0208fc3131216d06fa37c719bd40cc300132f96444e08e9666327f01b4b1ac5a","start":1161,"end":2114,"parameter_inputs":[]},{"line":65,"title":"passes Run pagination flags to the runtime","decision":"keep","reason":"Keep the CLI conversion of explicit limit/cursor flags into bounded runtime pagination arguments.","source_sha256":"654388ef36015fd4c34141bcdb71fe6b41bbf9f2b3ed1bf46b762a595ae2dc76","start":2118,"end":2609,"parameter_inputs":[]},{"line":85,"title":"opts into bounded Run pagination by default","decision":"keep","reason":"Keep default pagination limit 100 and absent cursor as an independently stated wire contract.","source_sha256":"e1c292c25cdf536134613c6746a5d821eca303e0b50f14bb7bcafea6e490f2f2","start":2613,"end":3028,"parameter_inputs":[]},{"line":100,"title":"passes explicit legacy takeover only when requested","decision":"keep","reason":"Keep explicit legacy takeover propagation through the actual Run-use handler; the other Run-use control proves normal calls omit it.","source_sha256":"453a83d1a709c05a3736c18b9452727151a3bcc4e390303e6f47cfda206746a8","start":3032,"end":3687,"parameter_inputs":[]},{"line":134,"title":"rejects a bare reset before calling the runtime","decision":"keep","reason":"A bare reset is rejected locally with actionable scope guidance and zero runtime mutation.","source_sha256":"e21e7b1be6628bd50bac09e878f549e4e9b78e59bad37c84c43f3fa441a7175d","start":4037,"end":4332,"parameter_inputs":[]},{"line":142,"title":"sends only the tasks scope for --tasks","decision":"keep","reason":"Tasks-only reset sends the tasks scope and leaves all/messages unset.","source_sha256":"c7c5179e03a2be7ed1c9481fc3aa87899807ae13d28322e581a1d7bb1a92f0e1","start":4336,"end":4585,"parameter_inputs":[]},{"line":151,"title":"sends only the all scope for --all","decision":"keep","reason":"All-scope reset sends all and leaves tasks/messages unset.","source_sha256":"f0f36b7868ff1159ccd153f05d9e5f3000264d8d6164fc5b30619a722249f1d5","start":4589,"end":4832,"parameter_inputs":[]},{"line":160,"title":"rejects multiple reset scopes before calling the runtime","decision":"keep","reason":"Preserve both concrete multiple-scope refusals, tasks+messages and all+tasks; neither may reach the runtime.","source_sha256":"96bfa563b3279914735c315c1a899c51bd7a139e492fa8f541abe8c6fa8a965a","start":4836,"end":5248,"parameter_inputs":[{"line":161,"expression":"new Map([\n ['tasks', true],\n ['messages', true]\n ])","row":1,"decision":"keep","reason":"Two distinct destructive scopes, tasks and messages, must be rejected before RPC.","source_sha256":"0a9e08fc5940b90ab758297d4de37bc67ee61ccc78412dcb0fcc2a1a8478752e"},{"line":165,"expression":"new Map([\n ['all', true],\n ['tasks', true]\n ])","row":2,"decision":"keep","reason":"All and tasks are conflicting destructive scopes and must be rejected before RPC.","source_sha256":"f71071a28984d00874713e069580cf1ab54dcefce9933365b5cd53ab29368224"}]}],"original_declarations":9,"final_declarations":9,"validation":"reviews/root-0066-validation.json"}
+{"path":"src/cli/handlers/orchestration-send-receipt-warnings.test.ts","sha256":"9209192ecb573e7ae00d21d7fa15fa6c0754529cec40279d2ef6ac382bd6f34a","reviewed_sha256":"514366e8b85ec3fa2aa60384334bf456f239b860155a0666cb2470b61bd84875","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","reviewer":"root","status":"reviewed","decision":"fix","classification":"vitest-cli-orchestration-rpc-output-and-settlement-boundary","rationale":"Read all original test bodies, hooks, fixed fixtures and both reset parameter rows against the actual handlers and producer/output contracts. Keep distinct settlement and compatibility behavior; repair inaccurate envelopes, environment leakage and stale writer-callback reuse.","evidence":["src/cli/handlers/orchestration/message-send-handler.ts","src/cli/handlers/orchestration/mutation-request.ts","src/cli/format.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/message-send-handler.ts":"b8e8e7941f3fa99a9dd782de98be1a296904e0a57e5257a9f75869fdda3036d3","src/cli/handlers/orchestration/mutation-request.ts":"66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408","src/cli/format.ts":"f4ff6e2216c90a2a7ddc706957cd966f1510e7ff7304bdfd89d935d9665778d9"},"evidence_source_sha256":{"src/cli/handlers/orchestration/message-send-handler.ts":"b8e8e7941f3fa99a9dd782de98be1a296904e0a57e5257a9f75869fdda3036d3","src/cli/handlers/orchestration/mutation-request.ts":"66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408","src/cli/format.ts":"f4ff6e2216c90a2a7ddc706957cd966f1510e7ff7304bdfd89d935d9665778d9"},"cases":[{"line":27,"title":"prints a live terminal-only delivery limitation","decision":"fix","reason":"Require one fresh output call and format its actual response.result so a previous callback cannot mask omitted output. Keep exact live terminal-only durability warning text.","source_sha256":"f4ec4896aef1a439386949785ffda687622e3e3f35552d4051d0d2862bb0a41e","start":817,"end":1282,"parameter_inputs":[]},{"line":44,"title":"shows partial fan-out omissions without hiding delivered recipients","decision":"fix","reason":"Require the current writer invocation before rendering; preserve both delivered-recipient count and unreachable-recipient warning in the same fan-out receipt.","source_sha256":"0d4f730f5f15fb402b95a90185e5076d88777dd752ac8b4bd974c2d34cbc6325","start":1284,"end":1779,"parameter_inputs":[]},{"line":62,"title":"prints delivery limitations on relayed receipts","decision":"fix","reason":"Require a fresh writer invocation for the actual relay envelope. Entire-file mutation proves the original suite passed with relay output suppressed, while the repaired test fails on zero output calls.","source_sha256":"89700e1ae2d5cad14da1f61dae1d33625af1576e7a489283be1475aada91b5b0","start":1781,"end":2377,"parameter_inputs":[]},{"line":85,"title":"leaves a canonical receipt unchanged","decision":"fix","reason":"Require current canonical output through the writer and preserve the unchanged warning-free Sent receipt.","source_sha256":"e9c030713433e7095d6b7066a1535a9b7f08702329f5e6fd02ebd204d780cea5","start":2379,"end":2523,"parameter_inputs":[]}],"original_declarations":4,"final_declarations":4,"validation":"reviews/root-0066-validation.json"}
diff --git a/docs/audits/test-value/reviews/root-0067-validation.json b/docs/audits/test-value/reviews/root-0067-validation.json
new file mode 100644
index 00000000000..fa04c365a1d
--- /dev/null
+++ b/docs/audits/test-value/reviews/root-0067-validation.json
@@ -0,0 +1,93 @@
+{
+ "batch": "root-0067",
+ "reviewer": "root",
+ "source_commit": "5d32f372e76983b6436d5700ce688990662e7243",
+ "reviewed_files": 3,
+ "original_declarations": 5,
+ "case_records": 5,
+ "explicit_parameter_rows": 2,
+ "passing_runtime_cases": 6,
+ "decisions": {
+ "keep": 3,
+ "fix": 2
+ },
+ "production_changes": false,
+ "checks": [
+ {
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm test --reporter=default --reporter=json --outputFile=/tmp/orca-root-0067-baseline-tests.json",
+ "result": "passed",
+ "exit_code": 0,
+ "log": "/tmp/orca-root-0067-baseline-tests.log",
+ "log_sha256": "ac5e1b6e101fdcb130689badd321e322d7ea7cadc527f700b52ac20c902864a0",
+ "report": "/tmp/orca-root-0067-baseline-tests.json",
+ "report_sha256": "393f15de3fdcf53a9013a1b220585d3c6e86d906f2ca340ebdcd5b7aa8ee7382",
+ "suites": 3,
+ "passing_runtime_cases": 6
+ },
+ {
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm test --reporter=default --reporter=json --outputFile=/tmp/orca-root-0067-final-tests.json",
+ "result": "passed",
+ "exit_code": 0,
+ "log": "/tmp/orca-root-0067-final-tests.log",
+ "log_sha256": "6473942d2bc827ce9849f591829b2aee6f06b668879c152efd2d455a18055062",
+ "report": "/tmp/orca-root-0067-final-tests.json",
+ "report_sha256": "089cb0e5fcc943e0dcad95e44196f326c17d56e2ca35de65d7d5330160deb288",
+ "suites": 3,
+ "passing_runtime_cases": 6
+ },
+ {
+ "command": "pnpm exec oxlint ",
+ "result": "passed",
+ "exit_code": 0,
+ "log": "/tmp/orca-root-0067-lint.log",
+ "log_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ {
+ "command": "pnpm exec oxfmt --check ",
+ "result": "passed",
+ "exit_code": 0,
+ "log": "/tmp/orca-root-0067-format.log",
+ "log_sha256": "07c5d3df0cf07d357bc16cc189aae990c80dd6c994bdf824a1d745385a55272f"
+ },
+ {
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm tc:cli",
+ "result": "passed",
+ "exit_code": 0,
+ "log": "/tmp/orca-root-0067-typecheck.log",
+ "log_sha256": "64350cfafba2dd6bb61adf325923dc3c41762eb81a276ff9302796e6e77b09bc"
+ }
+ ],
+ "integrity": {
+ "records_sha256": "19d03f735f1b102b6ea9a26a380e20255d188560d8624398ba0fae06efe6efaa",
+ "original_and_final_hashes_verified": true,
+ "exact_original_case_slices_verified": 5,
+ "exact_parameter_rows_verified": 2,
+ "original_snapshot_sha256": "596be3a2856dd0ed55c386fdefe0696127aecb98e1c6723349367d11c03c68d7",
+ "plan_sha256": "c21133b350245058f87ac613debb94a73a1e8ac9dbc4f8d24ff36d60f8df5bc1",
+ "record_generator_sha256": "893a81bbfa8c9ac10f7d188cf405b53833fad89254e3a883538dc39ee6a56b43",
+ "prior_records_sha256": "a9c61c6242e684dd748b4bb01f945c5ae5533955568374327008f3c6dea8cc57"
+ },
+ "limitations": [
+ "Injected RPC and writer ports exercise real task mapping, mixed-version brief preprocessing and question handoff logic. The Windows launcher guard is selected through its documented environment variables; no PowerShell, cmd.exe, native launcher, remote host or app window executes.",
+ "Both existing brief controls remain; the server-row oracle compares preserved values instead of imposing reference identity. No new test declaration or production-only seam was added."
+ ],
+ "integration_followup": {
+ "reason": "Changed-code quality rejected new context assertions. Use actual RuntimeClient instances with a stubbed call method and checked handler contexts. All same26 combined runtime cases and CLI typecheck pass. Original mutation evidence remains explicitly historical for its recorded pre-integration test hashes.",
+ "files": [
+ "src/cli/handlers/orchestration-task-list-brief.test.ts",
+ "src/cli/handlers/orchestration-worker-cli.test.ts"
+ ],
+ "test_report": "/tmp/orca-audit-7-checked-client-tests.json",
+ "test_report_sha256": "b04eff93ae15df51b827ae57e36d0c3d8dfe6dfe1d014ac890a275a52eecef78",
+ "test_log": "/tmp/orca-audit-7-checked-client-tests.log",
+ "test_log_sha256": "e90a1e7c905dba85c5d7f7da2456d3d5579e2a18569e39a9f96ee4fd2a082c3d",
+ "typecheck_command": "ORCA_BACKGROUND_LAUNCH=1 pnpm tc:cli",
+ "typecheck_log": "/tmp/orca-audit-7-checked-client-typecheck.log",
+ "typecheck_log_sha256": "64350cfafba2dd6bb61adf325923dc3c41762eb81a276ff9302796e6e77b09bc",
+ "exit_codes": {
+ "tests": 0,
+ "typecheck": 0
+ },
+ "checked_plan_sha256": "82387c9f3601dd003ab197517d8146224b7df6e9237db765219435011e8ea2f4"
+ }
+}
diff --git a/docs/audits/test-value/reviews/root-0067.jsonl b/docs/audits/test-value/reviews/root-0067.jsonl
new file mode 100644
index 00000000000..36ba910decd
--- /dev/null
+++ b/docs/audits/test-value/reviews/root-0067.jsonl
@@ -0,0 +1,3 @@
+{"path":"src/cli/handlers/orchestration-task-create-cli.test.ts","sha256":"db3b6ba9b605342a769ebfaa8cbb1dddad86a4e3d67cb46e32a85bb8a6f441c7","reviewed_sha256":"db3b6ba9b605342a769ebfaa8cbb1dddad86a4e3d67cb46e32a85bb8a6f441c7","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","reviewer":"root","status":"reviewed","decision":"keep","classification":"vitest-cli-task-dependency-wire-mapping","rationale":"Read complete fixture, hooks and actual task/coordinator-identity handlers. The test supplies separate identity/task responses, restores terminal environment and preserves the shell-stripped dependency string at the correct mutation boundary.","evidence":["src/cli/handlers/orchestration/task-handlers.ts","src/cli/handlers/orchestration/terminal-identity.ts","src/cli/handlers/orchestration/mutation-request.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/task-handlers.ts":"a3421ada9a349c1ffde7ba38203459d9a7cb83502b9adf8eb6038661872c7988","src/cli/handlers/orchestration/terminal-identity.ts":"17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306","src/cli/handlers/orchestration/mutation-request.ts":"66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408"},"evidence_source_sha256":{"src/cli/handlers/orchestration/task-handlers.ts":"a3421ada9a349c1ffde7ba38203459d9a7cb83502b9adf8eb6038661872c7988","src/cli/handlers/orchestration/terminal-identity.ts":"17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306","src/cli/handlers/orchestration/mutation-request.ts":"66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408"},"cases":[{"line":28,"title":"passes PowerShell-stripped deps through to the runtime","start":906,"end":1826,"source_sha256":"1c98da1b7cd528452077c92cacf745f6bd8b92f4e13752ed82ea6e4db245fc31","decision":"keep","reason":"Explicit PowerShell-stripped dependency text reaches taskCreate as-is after a live creator identity response; coordinator identity is carried and fallback terminal selection is forbidden. This is a CLI mapping control, not execution of PowerShell or server-side dependency parsing.","parameter_inputs":[]}],"original_declarations":1,"final_declarations":1,"validation":"reviews/root-0067-validation.json"}
+{"path":"src/cli/handlers/orchestration-task-list-brief.test.ts","sha256":"27d991c760d18e14864b8b647a412a695e805ad455bede60d374aed3de460c89","reviewed_sha256":"d96abac2198f698f6765f04b1aedd37a6d1a82e9c6db8be7b774db185a8aa3db","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","reviewer":"root","status":"reviewed","decision":"fix","classification":"vitest-cli-task-brief-mixed-version-output","rationale":"Read both cases and actual task-list/summary/output contracts. Name a Run to isolate brief preprocessing from caller identity RPCs; require one exact list RPC and one fresh JSON writer call. Replace unchecked casts and length-only output oracle; preserve server row values without imposing object identity. Final integration uses an actual RuntimeClient instance with a stubbed call method and complete checked handler context, removing unsafe context casts.","evidence":["src/cli/handlers/orchestration/task-handlers.ts","src/shared/orchestration-task-summary.ts","src/cli/handlers/orchestration/terminal-identity.ts","src/cli/format.ts","src/cli/test-fixtures.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/task-handlers.ts":"a3421ada9a349c1ffde7ba38203459d9a7cb83502b9adf8eb6038661872c7988","src/shared/orchestration-task-summary.ts":"71564bbb614278f5cc0882c08e0d255696b1333dc42174471c64f0777e9ea288","src/cli/handlers/orchestration/terminal-identity.ts":"17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306","src/cli/format.ts":"f4ff6e2216c90a2a7ddc706957cd966f1510e7ff7304bdfd89d935d9665778d9","src/cli/test-fixtures.ts":"de24d3f101b8617a402e27a895fc1e45f88fb79f6229a1771107622d243f9a7b"},"evidence_source_sha256":{"src/cli/handlers/orchestration/task-handlers.ts":"a3421ada9a349c1ffde7ba38203459d9a7cb83502b9adf8eb6038661872c7988","src/shared/orchestration-task-summary.ts":"71564bbb614278f5cc0882c08e0d255696b1333dc42174471c64f0777e9ea288","src/cli/handlers/orchestration/terminal-identity.ts":"17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306","src/cli/format.ts":"f4ff6e2216c90a2a7ddc706957cd966f1510e7ff7304bdfd89d935d9665778d9","src/cli/test-fixtures.ts":"de24d3f101b8617a402e27a895fc1e45f88fb79f6229a1771107622d243f9a7b"},"cases":[{"line":26,"title":"requests server-side brief and falls back client-side for older runtimes","start":817,"end":1473,"source_sha256":"4103a7e70fb30c8870568d4c2e4f680712380443aabb8ebe817afc79ca049bbc","decision":"fix","reason":"Use an actual RPC response envelope and a Run-scoped read, require exactly one taskList request and its current JSON output, and compare the independently stated normalized 160-character text plus truncation flag instead of length alone.","parameter_inputs":[]},{"line":45,"title":"passes server-abbreviated rows through untouched","start":1477,"end":1991,"source_sha256":"830de9bbfeb7d96452c60c5c400376f3e3fd877750a169f20c838a2fe53a7630","decision":"fix","reason":"Preserve the server-provided brief row and true truncation flag by comparing output values. Remove array-identity requirement; a semantically equivalent copy is valid, while incorrectly re-abbreviating the short server result flips its flag and fails.","parameter_inputs":[]}],"original_declarations":2,"final_declarations":2,"validation":"reviews/root-0067-validation.json"}
+{"path":"src/cli/handlers/orchestration-windows-ask-cli.test.ts","sha256":"242dc570843aa4d8286c9356b9c81af2250fa2843734389af8af1d653e8060aa","reviewed_sha256":"242dc570843aa4d8286c9356b9c81af2250fa2843734389af8af1d653e8060aa","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","reviewer":"root","status":"reviewed","decision":"keep","classification":"vitest-cli-packaged-windows-question-handoff","rationale":"Read complete launcher rows, direct console observations, exit-code/environment cleanup and actual question/compatibility handler. Preserve commit/resume distinction and both supported launcher names. No shell/native app executes.","evidence":["src/cli/handlers/orchestration/question-handler.ts","src/cli/handlers/orchestration/runtime-compatibility.ts","src/cli/handlers/orchestration/terminal-identity.ts","src/cli/handlers/orchestration/mutation-request.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/question-handler.ts":"f5219b0475299896027c5a50e26a5a19839365908e91a6d6114197c13ad1015f","src/cli/handlers/orchestration/runtime-compatibility.ts":"a102ef1800a19043e2f39efcc12d44d67b8c038ec010fca91e8fa541ec3b19b7","src/cli/handlers/orchestration/terminal-identity.ts":"17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306","src/cli/handlers/orchestration/mutation-request.ts":"66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408"},"evidence_source_sha256":{"src/cli/handlers/orchestration/question-handler.ts":"f5219b0475299896027c5a50e26a5a19839365908e91a6d6114197c13ad1015f","src/cli/handlers/orchestration/runtime-compatibility.ts":"a102ef1800a19043e2f39efcc12d44d67b8c038ec010fca91e8fa541ec3b19b7","src/cli/handlers/orchestration/terminal-identity.ts":"17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306","src/cli/handlers/orchestration/mutation-request.ts":"66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408"},"cases":[{"line":30,"title":"commits with the %s launcher and exits 75 before resume","start":1062,"end":2223,"source_sha256":"a0e2cc24f3f689868bc0b837afe8a96ae9cbe68aec58ebf50ad790031055e88d","decision":"keep","reason":"Each packaged launcher name is propagated to the question RPC, printed in the committed-question resume command, and causes exit code 75 after the actual stdout flush.","parameter_inputs":[{"line":30,"expression":"'orca'","decision":"keep","reason":"Primary packaged launcher must round-trip to RPC and resume output.","row":1,"source_sha256":"46b25bbfb7fbc04c7e951b8206d2f6b6d243ddfa4b90cef990d35372293db2db"},{"line":30,"expression":"'orca-ide'","decision":"keep","reason":"Linux-associated packaged executable spelling remains a valid Windows launcher alias and must round-trip exactly.","row":2,"source_sha256":"44f95e445d3483c399a30526385c55deb2cc505f258e62b8c3e0bc7c8f62502d"}]},{"line":67,"title":"resumes the committed question without another exit-75 handoff","start":2227,"end":3004,"source_sha256":"8592f8b3372cf61fd9379e42f3c0500ad809b20f7def822fc5bc59ab03eb2369","decision":"keep","reason":"Resuming a committed question sends resume without a new question, prints the returned answer and leaves exit code unset instead of another exit-75 handoff.","parameter_inputs":[]}],"original_declarations":2,"final_declarations":2,"validation":"reviews/root-0067-validation.json"}
diff --git a/docs/audits/test-value/reviews/root-0068-validation.json b/docs/audits/test-value/reviews/root-0068-validation.json
new file mode 100644
index 00000000000..667da004f81
--- /dev/null
+++ b/docs/audits/test-value/reviews/root-0068-validation.json
@@ -0,0 +1,222 @@
+{
+ "batch": "root-0068",
+ "reviewer": "root",
+ "source_commit": "5d32f372e76983b6436d5700ce688990662e7243",
+ "reviewed_files": 1,
+ "original_declarations": 21,
+ "case_records": 21,
+ "explicit_parameter_rows": 5,
+ "passing_runtime_cases": 24,
+ "decisions": {
+ "keep": 7,
+ "fix": 14
+ },
+ "production_changes": false,
+ "checks": [
+ {
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm test src/cli/handlers/orchestration-worker-cli.test.ts --reporter=json --outputFile=/tmp/orca-root-0068-baseline-tests.json",
+ "result": "passed",
+ "exit_code": 0,
+ "report": "/tmp/orca-root-0068-baseline-tests.json",
+ "report_sha256": "7004e00e55d57cf224fe8f1a1008e29bf1b27479c373b1a86b8bfe9d3833fbaf",
+ "log": "/tmp/orca-root-0068-baseline-tests.log",
+ "log_sha256": "7b13cb7f8fd765c1f85495ccf3166676b4f9da74b8a97dcf80d56aaa8a1b91da",
+ "passing_runtime_cases": 24,
+ "evidence_phase": "original baseline"
+ },
+ {
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm test src/cli/handlers/orchestration-worker-cli.test.ts --reporter=json --outputFile=/tmp/orca-root-0068-reviewed-tests.json",
+ "result": "passed",
+ "exit_code": 0,
+ "report": "/tmp/orca-root-0068-reviewed-tests.json",
+ "report_sha256": "9c974f94890db510dcda02106e13add8c03eb2f4847a8d16a7c05f05db5d2dfe",
+ "log": "/tmp/orca-root-0068-reviewed-tests.log",
+ "log_sha256": "21638432933389d88372167a3f4d0f6312410b61d1663a53a3133923de5c7c61",
+ "passing_runtime_cases": 24,
+ "evidence_phase": "historical reviewed pass before final style/parsed-flag adjustment"
+ },
+ {
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm test src/cli/handlers/orchestration-worker-cli.test.ts --reporter=json --outputFile=/tmp/orca-root-0068-final-tests.json",
+ "result": "passed",
+ "exit_code": 0,
+ "report": "/tmp/orca-root-0068-final-tests.json",
+ "report_sha256": "edf13018ac65e985d315f494f88670a7425eb5f1d1cfc9459f6eca631abf6c70",
+ "log": "/tmp/orca-root-0068-final-tests.log",
+ "log_sha256": "e74556e4776c702cd351397407db19268275ec7f0609fe1c9096ba88a06f4eb1",
+ "passing_runtime_cases": 24,
+ "evidence_phase": "historical reviewed pass before final style/parsed-flag adjustment"
+ },
+ {
+ "command": "pnpm exec oxlint src/cli/handlers/orchestration-worker-cli.test.ts",
+ "result": "passed",
+ "exit_code": 0,
+ "log": "/tmp/orca-root-0068-lint.log",
+ "log_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ {
+ "command": "pnpm exec oxfmt --check src/cli/handlers/orchestration-worker-cli.test.ts",
+ "result": "passed",
+ "exit_code": 0,
+ "log": "/tmp/orca-root-0068-format.log",
+ "log_sha256": "40b223ad82c15debd657ab48f9473de002f232b3b9952793cf227fcea706bc3e"
+ },
+ {
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm tc:cli",
+ "result": "passed",
+ "exit_code": 0,
+ "log": "/tmp/orca-root-0068-final-typecheck.log",
+ "log_sha256": "64350cfafba2dd6bb61adf325923dc3c41762eb81a276ff9302796e6e77b09bc"
+ },
+ {
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm test src/cli/handlers/orchestration-worker-cli.test.ts --reporter=default --reporter=json --outputFile=/tmp/orca-root-0068-reviewed-restored.json",
+ "exit_code": 0,
+ "passed": 24,
+ "failed": 0,
+ "failures": [],
+ "report": "/tmp/orca-root-0068-reviewed-restored.json",
+ "report_sha256": "514195fb4e8d6c99669a7604bdb33d31aa6d03346a5deb5523c0c43e01fa5f55",
+ "log": "/tmp/orca-root-0068-reviewed-restored.log",
+ "log_sha256": "ea04f39c701cbf4d1724739192b9192e80d396480703e447b4d0cd698481e916",
+ "test_sha256": "2a798f348da32d1642984346f0f574fc98d47e0aabef0935babbf8193e8d4dda",
+ "production_sha256": "e93e6413b9fb5c25827b77f83b99e68c097d94bf230f22a8caaca4ea9f67f584",
+ "result": "passed",
+ "evidence_phase": "final reviewed bytes after all changes"
+ }
+ ],
+ "mutation": {
+ "batch": "root-0068",
+ "defect": "Strip only the host warning from the response passed to the actual worker-start writer, preserving the formatter.",
+ "production_path": "src/cli/handlers/orchestration/worker-launch-handler.ts",
+ "original_source_sha256": "e93e6413b9fb5c25827b77f83b99e68c097d94bf230f22a8caaca4ea9f67f584",
+ "mutated_source_sha256": "08c96d426105aacc81df0f87409c20749e5ebc60100fe6897940b39696ae6283",
+ "restored_source_sha256": "e93e6413b9fb5c25827b77f83b99e68c097d94bf230f22a8caaca4ea9f67f584",
+ "original_test_sha256": "e333252d2d76586f3c48f9330fc3b43eaf4b9e3fbe9181d5a85b55f14f59a830",
+ "reviewed_test_sha256": "2a798f348da32d1642984346f0f574fc98d47e0aabef0935babbf8193e8d4dda",
+ "entire_worker_suite_executed_each_phase": true,
+ "results": {
+ "original-control": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/orchestration-worker-cli.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0068-original-control.json"
+ ],
+ "exit_code": 0,
+ "passed": 24,
+ "failed": 0,
+ "failures": [],
+ "report": "/tmp/orca-root-0068-original-control.json",
+ "report_sha256": "6253423741106fe5fb1f3343132a1dd78bece3866cc21251b532e320b8e5b8e7",
+ "log": "/tmp/orca-root-0068-original-control.log",
+ "log_sha256": "2765fc0b091558f3622257091557fefa8f083d5b92947c68059c99dcfbb54ce2",
+ "test_sha256": "e333252d2d76586f3c48f9330fc3b43eaf4b9e3fbe9181d5a85b55f14f59a830",
+ "production_sha256": "e93e6413b9fb5c25827b77f83b99e68c097d94bf230f22a8caaca4ea9f67f584"
+ },
+ "original-warning-mutant": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/orchestration-worker-cli.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0068-original-warning-mutant.json"
+ ],
+ "exit_code": 0,
+ "passed": 24,
+ "failed": 0,
+ "failures": [],
+ "report": "/tmp/orca-root-0068-original-warning-mutant.json",
+ "report_sha256": "e6fe0a187367effc3d71634fa0fe537a1f9d79be0105922aba6455ab80912548",
+ "log": "/tmp/orca-root-0068-original-warning-mutant.log",
+ "log_sha256": "010a1e24ec8559a235ced9fa009955f77458f2843a5fd963277577b256dcbadd",
+ "test_sha256": "e333252d2d76586f3c48f9330fc3b43eaf4b9e3fbe9181d5a85b55f14f59a830",
+ "production_sha256": "08c96d426105aacc81df0f87409c20749e5ebc60100fe6897940b39696ae6283"
+ },
+ "reviewed-warning-mutant": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/orchestration-worker-cli.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0068-reviewed-warning-mutant.json"
+ ],
+ "exit_code": 1,
+ "passed": 23,
+ "failed": 1,
+ "failures": [
+ {
+ "title": "prints a reveal warning for a live background worker",
+ "messages": [
+ "AssertionError: expected 'Worker ctx_1 [ready] for task_1' to contain 'Warning: Terminal term_worker is runn\u2026'\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/cli/handlers/orchestration-worker-cli.test.ts:315:27\n at process.processTicksAndRejections (node:internal/process/task_queues:104:5)\n at async file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:20"
+ ]
+ }
+ ],
+ "report": "/tmp/orca-root-0068-reviewed-warning-mutant.json",
+ "report_sha256": "0735eb4fb01df27590bda2c72fa690a3c10c50f5ec794f8c99552ba35bcfd1d3",
+ "log": "/tmp/orca-root-0068-reviewed-warning-mutant.log",
+ "log_sha256": "0874751a36d21ae460306b299eb3c6db8fd206a2eb4f0a289b6e772feebc5bfe",
+ "test_sha256": "2a798f348da32d1642984346f0f574fc98d47e0aabef0935babbf8193e8d4dda",
+ "production_sha256": "08c96d426105aacc81df0f87409c20749e5ebc60100fe6897940b39696ae6283"
+ },
+ "reviewed-restored": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/orchestration-worker-cli.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0068-reviewed-restored.json"
+ ],
+ "exit_code": 0,
+ "passed": 24,
+ "failed": 0,
+ "failures": [],
+ "report": "/tmp/orca-root-0068-reviewed-restored.json",
+ "report_sha256": "514195fb4e8d6c99669a7604bdb33d31aa6d03346a5deb5523c0c43e01fa5f55",
+ "log": "/tmp/orca-root-0068-reviewed-restored.log",
+ "log_sha256": "ea04f39c701cbf4d1724739192b9192e80d396480703e447b4d0cd698481e916",
+ "test_sha256": "2a798f348da32d1642984346f0f574fc98d47e0aabef0935babbf8193e8d4dda",
+ "production_sha256": "e93e6413b9fb5c25827b77f83b99e68c097d94bf230f22a8caaca4ea9f67f584"
+ }
+ }
+ },
+ "integrity": {
+ "records_sha256": "350d6cd3495001129f3c7fa34b9332418d34b55b5d3b5e8987b2241fa56ed7b9",
+ "original_and_final_hashes_verified": true,
+ "exact_original_case_slices_verified": 21,
+ "exact_parameter_rows_verified": 5,
+ "evidence_files_verified": 12,
+ "production_restoration_verified": true,
+ "original_snapshot_sha256": "77668c081400d717af6d4495fb81751e0c939efef0ed72df6e7a6fab9bdfc6db",
+ "plan_sha256": "0df58e0f6879c7db51f3e3ab2d274ef8c57d732246e10e063931420abf26b7be",
+ "record_generator_sha256": "893a81bbfa8c9ac10f7d188cf405b53833fad89254e3a883538dc39ee6a56b43",
+ "mutation_script_sha256": "81e58d0ccb344a2047f8e1d643b4248cff2c17dac79643363503473c2b6999f2",
+ "prior_records_sha256": "8df51a1a3e0bfd415f9a468863909543a73ffdc90f8f7bf2c7cda73b5c905881"
+ },
+ "limitations": [
+ "Injected RPC ports exercise actual CLI request mapping, flag validation and real writer/formatter/console data flow. No actual worker, remote host, native app or shell launches.",
+ "Existing21 declarations and all24 runtime cases are retained; temporary production warning stripping is fully restored. The regression proof shows the old full suite passes and the reviewed suite fails only the intended reveal-warning case."
+ ],
+ "integration_followup": {
+ "reason": "Changed-code quality rejected new context assertions. Use actual RuntimeClient instances with a stubbed call method and checked handler contexts. All same26 combined runtime cases and CLI typecheck pass. Original mutation evidence remains explicitly historical for its recorded pre-integration test hashes.",
+ "files": [
+ "src/cli/handlers/orchestration-task-list-brief.test.ts",
+ "src/cli/handlers/orchestration-worker-cli.test.ts"
+ ],
+ "test_report": "/tmp/orca-audit-7-checked-client-tests.json",
+ "test_report_sha256": "b04eff93ae15df51b827ae57e36d0c3d8dfe6dfe1d014ac890a275a52eecef78",
+ "test_log": "/tmp/orca-audit-7-checked-client-tests.log",
+ "test_log_sha256": "e90a1e7c905dba85c5d7f7da2456d3d5579e2a18569e39a9f96ee4fd2a082c3d",
+ "typecheck_command": "ORCA_BACKGROUND_LAUNCH=1 pnpm tc:cli",
+ "typecheck_log": "/tmp/orca-audit-7-checked-client-typecheck.log",
+ "typecheck_log_sha256": "64350cfafba2dd6bb61adf325923dc3c41762eb81a276ff9302796e6e77b09bc",
+ "exit_codes": {
+ "tests": 0,
+ "typecheck": 0
+ },
+ "checked_plan_sha256": "3fd7c446736855386e9f63134ec2fdd79ac205a76a649751a2a6f5b08be7dec5"
+ }
+}
diff --git a/docs/audits/test-value/reviews/root-0068.jsonl b/docs/audits/test-value/reviews/root-0068.jsonl
new file mode 100644
index 00000000000..25c4ae78d63
--- /dev/null
+++ b/docs/audits/test-value/reviews/root-0068.jsonl
@@ -0,0 +1 @@
+{"path":"src/cli/handlers/orchestration-worker-cli.test.ts","sha256":"e333252d2d76586f3c48f9330fc3b43eaf4b9e3fbe9181d5a85b55f14f59a830","reviewed_sha256":"4bd566b92e4621dc7963ae0df106337dfea79027946eea767262d5365f3edd3c","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","reviewer":"root","status":"reviewed","decision":"fix","classification":"vitest-cli-worker-contract-and-output","rationale":"Review all21 declarations, both parameter tables and actual launch/read/list/terminal handlers, parser/spec/help/format/scoping contracts. Replace duplicated formatter fixtures with real writer output, isolate environment/exit/console state, route scope RPCs independently and exercise actual flag validation. Retain all24 runtime controls with fewer lines; temporary warning mutation distinguishes old/new coverage. Final integration uses an actual RuntimeClient instance with a stubbed call method and complete checked handler context, removing unsafe context casts.","evidence":["src/cli/handlers/orchestration/worker-launch-handler.ts","src/cli/handlers/orchestration/worker-terminal-handlers.ts","src/cli/handlers/orchestration/worker-observation-handlers.ts","src/cli/handlers/orchestration/worker-output.ts","src/cli/handlers/orchestration/worker-list-run-scope.ts","src/cli/handlers/orchestration/terminal-identity.ts","src/cli/handlers/orchestration/mutation-request.ts","src/cli/specs/orchestration-worker-specs.ts","src/cli/args.ts","src/cli/help.ts","src/cli/format.ts","src/cli/test-fixtures.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/worker-launch-handler.ts":"e93e6413b9fb5c25827b77f83b99e68c097d94bf230f22a8caaca4ea9f67f584","src/cli/handlers/orchestration/worker-terminal-handlers.ts":"dfba8229284864bd4babfb6d542f000c3aef0542667c7a51021f7a9ce65025b2","src/cli/handlers/orchestration/worker-observation-handlers.ts":"cb4233d5ec2469db2efe5dacb74f1e622d0a61bdaba7a0beaef2be5bdca6d9aa","src/cli/handlers/orchestration/worker-output.ts":"6fcd061ec6aa88d174eca5e51ef53eceb8f3f40f63c417f5dab9d764d66be4cf","src/cli/handlers/orchestration/worker-list-run-scope.ts":"a1fb99643fd1fa72ef2491b323b40906294034df8a9b5b7d323c352b8ebca135","src/cli/handlers/orchestration/terminal-identity.ts":"17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306","src/cli/handlers/orchestration/mutation-request.ts":"66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408","src/cli/specs/orchestration-worker-specs.ts":"ffcd3e08792a5fdde24d2c149ea5a16a48861f8fcbbb5d4a7e83acf6a43e09d3","src/cli/args.ts":"25e5670ee14e1bbc29b6eff5893fdf16aab868947e9dd079854219245cbe3536","src/cli/help.ts":"2240c133948e5bca9a2281a74fcbbf624b51206108c88e08d27aad8a9af38cce","src/cli/format.ts":"f4ff6e2216c90a2a7ddc706957cd966f1510e7ff7304bdfd89d935d9665778d9","src/cli/test-fixtures.ts":"de24d3f101b8617a402e27a895fc1e45f88fb79f6229a1771107622d243f9a7b"},"evidence_source_sha256":{"src/cli/handlers/orchestration/worker-launch-handler.ts":"e93e6413b9fb5c25827b77f83b99e68c097d94bf230f22a8caaca4ea9f67f584","src/cli/handlers/orchestration/worker-terminal-handlers.ts":"dfba8229284864bd4babfb6d542f000c3aef0542667c7a51021f7a9ce65025b2","src/cli/handlers/orchestration/worker-observation-handlers.ts":"cb4233d5ec2469db2efe5dacb74f1e622d0a61bdaba7a0beaef2be5bdca6d9aa","src/cli/handlers/orchestration/worker-output.ts":"6fcd061ec6aa88d174eca5e51ef53eceb8f3f40f63c417f5dab9d764d66be4cf","src/cli/handlers/orchestration/worker-list-run-scope.ts":"a1fb99643fd1fa72ef2491b323b40906294034df8a9b5b7d323c352b8ebca135","src/cli/handlers/orchestration/terminal-identity.ts":"17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306","src/cli/handlers/orchestration/mutation-request.ts":"66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408","src/cli/specs/orchestration-worker-specs.ts":"ffcd3e08792a5fdde24d2c149ea5a16a48861f8fcbbb5d4a7e83acf6a43e09d3","src/cli/args.ts":"25e5670ee14e1bbc29b6eff5893fdf16aab868947e9dd079854219245cbe3536","src/cli/help.ts":"2240c133948e5bca9a2281a74fcbbf624b51206108c88e08d27aad8a9af38cce","src/cli/format.ts":"f4ff6e2216c90a2a7ddc706957cd966f1510e7ff7304bdfd89d935d9665778d9","src/cli/test-fixtures.ts":"de24d3f101b8617a402e27a895fc1e45f88fb79f6229a1771107622d243f9a7b"},"cases":[{"line":51,"title":"passes the complete supported creation contract and retry receipt","start":1570,"end":3183,"source_sha256":"283684dd2c2e901d94ea3d1a5098fc5e8ea06063ab3c1229f7090f1eba7d5162","decision":"keep","reason":"Retain exact workerStart mapping of all creation flags and retry receipt id; explicit coordinator avoids identity lookup and successful state leaves the exit code unset.","parameter_inputs":[]},{"line":107,"title":"capability-gates and forwards per-invocation launch preferences","start":3187,"end":4204,"source_sha256":"65e8ea6f13560a467c163a93903dbb4d8110c28531bb3ad3f1d597c7cc0136a6","decision":"keep","reason":"Retain ordered runtime capability probe before forwarding per-invocation model/effort; mutation must be the second request with the chosen agent and preferences.","parameter_inputs":[]},{"line":147,"title":"forwards --spec without a task for atomic creation","start":4208,"end":4769,"source_sha256":"b88aced361f82942dd07354128a84bd4c01ec7e07f5b0f00ea093b431fe7ab7c","decision":"keep","reason":"Retain atomic --spec creation without --task at the actual workerStart request boundary.","parameter_inputs":[]},{"line":164,"title":"fails before worker-start when the runtime would strip launch preferences","start":4773,"end":5285,"source_sha256":"b3c7813d605e085e44f3b1c2419c3ffcd6864956c517916a06ed66a7b30d3da4","decision":"keep","reason":"An older host with no launch-preference capability must reject before mutation; exactly one status probe is allowed.","parameter_inputs":[]},{"line":181,"title":"sets an unsuccessful exit code for failed and unknown receipts","start":5289,"end":5792,"source_sha256":"35c98920c733a722526e36b8aeeb09a7d0c892123c030633dfc0f190c1c0ab6b","decision":"keep","reason":"Retain unknown receipt exit-1 control; rename the reviewed title to unknown only and independently check the failed receipt exit in the existing refused-start case.","parameter_inputs":[]},{"line":203,"title":"renders %s recovery commands through the resolved %s executable","start":5796,"end":7300,"source_sha256":"ef47af9eda3c2f7d598319b7dc603a0085383003d003604051b2a89670e6c763","decision":"fix","reason":"Require one fresh real writer/console call; verify resolved nextCommands in the actual receipt and printed plain output, removing the unchecked cast and preserving both executable/format rows.","parameter_inputs":[{"line":204,"expression":"['JSON', 'orca-dev', true]","decision":"keep","reason":"JSON recovery receipt uses dev executable and unknown exit state.","row":1,"source_sha256":"58efc15fedf0d476e89e37bef0d75d2589dc18211e88aeafb9f9fbb4e95f4886"},{"line":205,"expression":"['plain', 'orca-ide', false]","decision":"keep","reason":"Plain recovery output uses Linux packaged alias and must show resolved next command.","row":2,"source_sha256":"82bc7016b6613cc6cb8c522cde13ee18740e71d363129a7905ba903dd7bb9e20"}]},{"line":250,"title":"prints the host error for a refused worker start","start":7304,"end":8478,"source_sha256":"8e31e3632b142d6edc3f70bbbdc74c0dc0b15c540db0bb2989da8fd38af5f90a","decision":"fix","reason":"Observe the host lastError through actual console output rather than reconstructed formatter data; also assert failed state sets exit 1.","parameter_inputs":[]},{"line":294,"title":"prints a reveal warning for a live background worker","start":8482,"end":9654,"source_sha256":"028a9c6cab7ec9fb7ade4ee188f3477dcd8896bd7774a65dcf790611057e4614","decision":"fix","reason":"Observe the reveal warning through the actual response-to-writer path. The original suite passes when the handler drops warning; the reviewed case fails, with all other cases passing.","parameter_inputs":[]},{"line":335,"title":"states the worker mode that actually ran, so a fallback is never silent","start":9658,"end":11319,"source_sha256":"1b84c1f03948c86000d93afb6ad69a535aaed2c2832753826f6e029bcdf5bd7b","decision":"fix","reason":"Assert actual printed fallback mode detail from the host receipt; remove duplicated fixture and formatter cast that bypassed handler data flow.","parameter_inputs":[]},{"line":388,"title":"prints the retained-process warning for a manual worker-stop","start":11323,"end":12482,"source_sha256":"2143d6727c8c58433fdf8857c09f7ad48ebe01287eb0feb386fd4c72e724e897","decision":"fix","reason":"Assert actual printed retained-process warning from workerStop; remove reconstructed receipt and unchecked formatter cast.","parameter_inputs":[]},{"line":425,"title":"allows the initial zero cursor when paging worker output","start":12486,"end":13187,"source_sha256":"84ebe158c41c602804cd6a9aa67e9e853af3744557676d1a3430d0fd48892aa3","decision":"keep","reason":"Retain initial string zero cursor normalization to number 0 with explicit limit at the workerRead wire boundary.","parameter_inputs":[]},{"line":452,"title":"passes opaque source-pinned cursors and explicit source selection","start":13191,"end":13969,"source_sha256":"ec0afb0a8b98e56b873288274660343087bebe3836003a58e4a06257124e1f3c","decision":"keep","reason":"Retain opaque cursor unchanged and explicit transcript source at workerRead; numeric coercion would corrupt pinned opaque cursor semantics.","parameter_inputs":[]},{"line":480,"title":"formats a legacy worker-list response without projection or page fields","start":13973,"end":15353,"source_sha256":"530b87b60728fbd5b7f9a3ecee5953f5d93f87361994d2ab231f92a1cd4ce929","decision":"fix","reason":"Give bound-Run lookup a real distinct no-current-Run envelope and assert legacy worker row through actual output; preserve absent projection/page compatibility.","parameter_inputs":[]},{"line":528,"title":"passes a truncation warning to the receipt and still prints the cursor hint","start":15357,"end":16473,"source_sha256":"7fc27737409599142984e8cfbb398b640b8fe08ef0ad64a32e794ac25bedcdca","decision":"fix","reason":"Select actual plain output and check its warning/cursor; retain receipt warning preservation and return the worker response only to workerList, never runCurrent.","parameter_inputs":[]},{"line":559,"title":"fails closed when an older runtime strips explicit %s semantics","start":16477,"end":17418,"source_sha256":"227c22910cd012c60fa19b7054da5dc3e28901c27bd2fa23f90fcb87cab77d87","decision":"fix","reason":"Each explicit modern flag must reject a page-less old-host result without output or enumeration retry. Return real no-current-Run response for scope probe, keeping three independent flag rows.","parameter_inputs":[{"line":560,"expression":"['--include-remote', new Map([['include-remote', true]])]","decision":"keep","reason":"Remote opt-in cannot silently degrade to local-only enumeration on old hosts.","row":1,"source_sha256":"8cbb0688fd10023e45ee98969373629ec1d103355381cf1b40e69c0b8214f978"},{"line":561,"expression":"['--limit', new Map([['limit', '10']])]","decision":"keep","reason":"An explicit limit cannot be silently ignored by an old host.","row":2,"source_sha256":"c57094c2cebb90d27df3ad6c3ee690bdb38ce2571cc3ed239f496d8f1b4b4d93"},{"line":562,"expression":"['--cursor', new Map([['cursor', 'legacy_cursor']])]","decision":"keep","reason":"An explicit opaque cursor cannot be silently ignored by an old host.","row":3,"source_sha256":"1208b18410ae29f7b16938ba73e81a80405073694a1f7629c33aeca1b94ab3da"}]},{"line":582,"title":"prints each projected row with its literal next-action argv","start":17422,"end":19919,"source_sha256":"bcec578790670f92c73a66be7ff08bc3dd223204000c0476fa1ef01355a95ce3","decision":"fix","reason":"Read live/released projected rows and literal next-action argv from actual printed output; remove captured formatter casts and feed scope lookup a distinct valid envelope.","parameter_inputs":[]},{"line":652,"title":"prints partial host warnings alongside worker rows","start":19923,"end":21435,"source_sha256":"eee22b7d6e2f1813a318d7ab063e8a0c09c6b966f186bb037583c5b4b6827d70","decision":"fix","reason":"Observe remote worker row plus exact partial-host warning in actual printed output, preserving environment identity, error code and dispatch identity.","parameter_inputs":[]},{"line":698,"title":"prints partial host warnings when no worker rows are available","start":21439,"end":22603,"source_sha256":"79be8c22372f2dcfebf7f69998b454d43a03f6f1f1ac8b1c7c3a41acb0519113","decision":"fix","reason":"Observe actual empty-worker output and its partial-host warning, preserving fallback scope and empty dispatch list wording.","parameter_inputs":[]},{"line":732,"title":"preserves partial host errors in JSON output","start":22607,"end":23503,"source_sha256":"9bb02a87198a43eb9d78889acb0ec9e7c67356e53db6aa07905787e28ec774cb","decision":"fix","reason":"Keep exact JSON writer receipt/format control while routing scope and workerList mocks separately, preventing malformed scope fixtures from silently falling back.","parameter_inputs":[]},{"line":764,"title":"parses, forwards, and documents the remote fleet opt-in","start":23507,"end":25090,"source_sha256":"90eb5226565851bfeef74e8fddef55f576344113a1e4107a1d4d69e1d4ebe247","decision":"fix","reason":"Parse and validate the real remote opt-in and pass those parsed flags to the handler. Retain help, forwarding and default-omission controls while removing copied BOOLEAN_FLAGS/allowedFlags inventories.","parameter_inputs":[]},{"line":809,"title":"keeps cleanup and retention TTL controls off the public CLI surface","start":25094,"end":26134,"source_sha256":"bcb8646307b9fcc2e5a16d4b2992ffb07b0bbce1b065f80b68bfeadad5d1db86","decision":"fix","reason":"Invoke real command/flag validation for unsupported cleanup, until and policy with a valid retain control; pass parsed retain flags to actual handler instead of asserting copied spec inventories.","parameter_inputs":[]}],"original_declarations":21,"final_declarations":21,"validation":"reviews/root-0068-validation.json"}
diff --git a/docs/audits/test-value/reviews/root-0069-validation.json b/docs/audits/test-value/reviews/root-0069-validation.json
new file mode 100644
index 00000000000..b42bbf0e42f
--- /dev/null
+++ b/docs/audits/test-value/reviews/root-0069-validation.json
@@ -0,0 +1,187 @@
+{
+ "batch": "root-0069",
+ "reviewer": "root",
+ "source_commit": "427fab262ca5c2db953b37cace69b906e8f13310",
+ "reviewed_files": 2,
+ "original_declarations": 32,
+ "case_records": 32,
+ "explicit_parameter_rows": 24,
+ "passing_runtime_cases": 50,
+ "decisions": {
+ "keep": 26,
+ "fix": 6
+ },
+ "production_changes": false,
+ "checks": [
+ {
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm test src/cli/handlers/orchestration-worker-show-wait-cli.test.ts src/cli/handlers/orchestration.test.ts --reporter=default --reporter=json --outputFile=/tmp/orca-root-0069-baseline-tests.json",
+ "result": "passed",
+ "exit_code": 0,
+ "report": "/tmp/orca-root-0069-baseline-tests.json",
+ "report_sha256": "8a7d6f144507f8f22d6f315eaf0a961ef62444631b665da8cf9d91a384279a8e",
+ "log": "/tmp/orca-root-0069-baseline-tests.log",
+ "log_sha256": "80501079e3ef8dea4e18735cb8ff8a1af1e22a03482544f8458a51e13e326e76",
+ "passing_runtime_cases": 50,
+ "evidence_phase": "original baseline"
+ },
+ {
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm test src/cli/handlers/orchestration-worker-show-wait-cli.test.ts src/cli/handlers/orchestration.test.ts --reporter=default --reporter=json --outputFile=/tmp/orca-root-0069-reviewed-tests.json",
+ "result": "passed",
+ "exit_code": 0,
+ "report": "/tmp/orca-root-0069-reviewed-tests.json",
+ "report_sha256": "e9d73116e4831bf46b20b792557aa333bc1499913d0054feba1ea379079e2cc7",
+ "log": "/tmp/orca-root-0069-reviewed-tests.log",
+ "log_sha256": "36f4762cab679a45dfcd7e55af0a112e4ae43eb96d6cd3a2ee69e8fb42b6364b",
+ "passing_runtime_cases": 50,
+ "evidence_phase": "final reviewed bytes"
+ },
+ {
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm test src/cli/handlers/orchestration-worker-show-wait-cli.test.ts src/cli/handlers/orchestration.test.ts --reporter=default --reporter=json --outputFile=/tmp/orca-root-0069-final-tests.json",
+ "result": "passed",
+ "exit_code": 0,
+ "report": "/tmp/orca-root-0069-final-tests.json",
+ "report_sha256": "9e082290994cc9d1c08c6092fe0828ed07291245cf378c5897f0652e55c488a3",
+ "log": "/tmp/orca-root-0069-final-tests.log",
+ "log_sha256": "fa9c4b42fb52bd1aab2a908f616d6ba297ff9b0170e8a46a79ddd431a8e3bca8",
+ "passing_runtime_cases": 50,
+ "evidence_phase": "final reviewed bytes"
+ },
+ {
+ "command": "pnpm exec oxlint ",
+ "result": "passed",
+ "exit_code": 0,
+ "log": "/tmp/orca-root-0069-lint.log",
+ "log_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ {
+ "command": "pnpm exec oxfmt --check ",
+ "result": "passed",
+ "exit_code": 0,
+ "log": "/tmp/orca-root-0069-format.log",
+ "log_sha256": "db18dad3f63a09aac07c06d926b7ad30fe62fa1a7057638a0ec63e29eb052d36"
+ },
+ {
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm tc:cli",
+ "result": "passed",
+ "exit_code": 0,
+ "log": "/tmp/orca-root-0069-typecheck.log",
+ "log_sha256": "64350cfafba2dd6bb61adf325923dc3c41762eb81a276ff9302796e6e77b09bc"
+ }
+ ],
+ "mutation": {
+ "batch": "root-0069",
+ "defect": "Rethrow the raw no_active_terminal error from implicit sender lookup instead of translating it to no_active_sender_terminal.",
+ "production_path": "src/cli/handlers/orchestration/terminal-identity.ts",
+ "original_source_sha256": "17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306",
+ "mutated_source_sha256": "f22b4177bb23c2d9ad1a62cc262f1b3b33e4f0f5c1ab2f6662f5b74109d900f1",
+ "restored_source_sha256": "17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306",
+ "original_test_sha256": "eb716b6081b21da25d22287081657dcaffc68a18734f400836c8beb10859da70",
+ "reviewed_test_sha256": "7b4d7cec11b53639a118d9222cb8464031a9f81104fe65d0cbc9ef9477b1c75a",
+ "entire_general_orchestration_suite_executed_each_phase": true,
+ "results": {
+ "original-control": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/orchestration.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0069-original-control.json"
+ ],
+ "exit_code": 0,
+ "passed": 46,
+ "failed": 0,
+ "failures": [],
+ "report": "/tmp/orca-root-0069-original-control.json",
+ "report_sha256": "17f793b57b7efa8e115d27404de02fab965579816dfa0959034e5c55464211ea",
+ "log": "/tmp/orca-root-0069-original-control.log",
+ "log_sha256": "0978af3563bb26459158336748b0d61add126f0d2e0477542e4cb43346b97325",
+ "test_sha256": "eb716b6081b21da25d22287081657dcaffc68a18734f400836c8beb10859da70",
+ "production_sha256": "17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306"
+ },
+ "original-sender-translation-mutant": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/orchestration.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0069-original-sender-translation-mutant.json"
+ ],
+ "exit_code": 0,
+ "passed": 46,
+ "failed": 0,
+ "failures": [],
+ "report": "/tmp/orca-root-0069-original-sender-translation-mutant.json",
+ "report_sha256": "ac92a47a73bbc5897cd3f4641412a492d4b16adb53e130034d039bfe0b0d40b0",
+ "log": "/tmp/orca-root-0069-original-sender-translation-mutant.log",
+ "log_sha256": "59175bb3f689bc48423d0ad41eafb53d1d43e1130016cf38778db96caaff619f",
+ "test_sha256": "eb716b6081b21da25d22287081657dcaffc68a18734f400836c8beb10859da70",
+ "production_sha256": "f22b4177bb23c2d9ad1a62cc262f1b3b33e4f0f5c1ab2f6662f5b74109d900f1"
+ },
+ "reviewed-sender-translation-mutant": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/orchestration.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0069-reviewed-sender-translation-mutant.json"
+ ],
+ "exit_code": 1,
+ "passed": 45,
+ "failed": 1,
+ "failures": [
+ {
+ "title": "reports sender resolution failure instead of raw no_active_terminal",
+ "messages": [
+ "Error: expected Error: no_active_terminal { \u2026(2) } to match object { \u2026(2) }\n(1 matching property omitted from actual)\n at Assertion.__VITEST_REJECTS__ (file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/index.aTZaPVhf.js:2480:33)\n at Assertion.propertyGetter (file:///home/neil/.local/share/pnpm/store/v11/links/@/chai/6.3.0/25b5fcf6626be1440275f25f04f4b64170f3760bb1da107f5691c470b8dd65d1/node_modules/chai/index.js:1607:27)\n at Reflect.get ()\n at Object.proxyGetter [as get] (file:///home/neil/.local/share/pnpm/store/v11/links/@/chai/6.3.0/25b5fcf6626be1440275f25f04f4b64170f3760bb1da107f5691c470b8dd65d1/node_modules/chai/index.js:1696:22)\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/cli/handlers/orchestration.test.ts:310:6\n at file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:1632:35\n at file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:26\n at file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3338:20\n at new Promise ()\n at runWithCancel (file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3333:10)"
+ ]
+ }
+ ],
+ "report": "/tmp/orca-root-0069-reviewed-sender-translation-mutant.json",
+ "report_sha256": "43639469a144bb8e51e32b8303a240e03d112fad9394d2b82e0def28bc8cc236",
+ "log": "/tmp/orca-root-0069-reviewed-sender-translation-mutant.log",
+ "log_sha256": "8dd018decbe654ce9aede6f152cda00f65727d4d3ee21f03fd2125029fd0317d",
+ "test_sha256": "7b4d7cec11b53639a118d9222cb8464031a9f81104fe65d0cbc9ef9477b1c75a",
+ "production_sha256": "f22b4177bb23c2d9ad1a62cc262f1b3b33e4f0f5c1ab2f6662f5b74109d900f1"
+ },
+ "reviewed-restored": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/orchestration.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0069-reviewed-restored.json"
+ ],
+ "exit_code": 0,
+ "passed": 46,
+ "failed": 0,
+ "failures": [],
+ "report": "/tmp/orca-root-0069-reviewed-restored.json",
+ "report_sha256": "f59ea72649e8de2af9ff15660f657c564d7cd5a26bb12df3d39af865791d2774",
+ "log": "/tmp/orca-root-0069-reviewed-restored.log",
+ "log_sha256": "cbce6fbd4ed7d9b720433f95213bf9174ea9d54b2054608678c4646f3433b4a5",
+ "test_sha256": "7b4d7cec11b53639a118d9222cb8464031a9f81104fe65d0cbc9ef9477b1c75a",
+ "production_sha256": "17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306"
+ }
+ }
+ },
+ "integrity": {
+ "records_sha256": "73bd2930a3e998336732872691caff9759ee12fd324c9b9d22f4c977e359de23",
+ "original_and_final_hashes_verified": true,
+ "exact_original_case_slices_verified": 32,
+ "exact_parameter_rows_verified": 24,
+ "production_restoration_verified": true,
+ "original_snapshot_sha256": "50f972519926ca732571a0d86a6f11577ccd466fb27c5a09670c5244248da31c",
+ "plan_sha256": "1f8f9bec2c9035a453ed7baa642ceae9e651dc18a177022be3edda1d49f14319",
+ "record_generator_sha256": "893a81bbfa8c9ac10f7d188cf405b53833fad89254e3a883538dc39ee6a56b43",
+ "mutation_script_sha256": "820687ce00bdd7ce65c402765e5c73b61aed30a54d15fcf8aab2658523b81d9a"
+ },
+ "limitations": [
+ "Injected RPC ports exercise actual CLI handler and shared writer logic. No app window, real terminal, remote host or shell launches; package-Windows behavior is isolated from these general CLI cases and reviewed separately.",
+ "The100-row legacy-peek fixture supplies the actual page-warning threshold; its generated rows are not separate test declarations. Six explicit parameter tables contribute24 source rows and18 additional runtime cases.",
+ "All original32 declarations and50 runtime cases remain. A sender-translation mutant passes all46 original general-handler cases and fails exactly the repaired sender-error case; production and tests are restored by hash."
+ ]
+}
diff --git a/docs/audits/test-value/reviews/root-0069.jsonl b/docs/audits/test-value/reviews/root-0069.jsonl
new file mode 100644
index 00000000000..3f8f22a191d
--- /dev/null
+++ b/docs/audits/test-value/reviews/root-0069.jsonl
@@ -0,0 +1,2 @@
+{"path":"src/cli/handlers/orchestration-worker-show-wait-cli.test.ts","sha256":"7a3d43373ddf7f971c6d7b2bb1216e863d9e2afd7a4d5f8e8ec9a3eb29a6427b","reviewed_sha256":"7b8a37bfde13936b093e46eda0911484b403603f85556138b335febd7b0b9c7c","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","reviewer":"root","status":"reviewed","decision":"fix","classification":"vitest-cli-worker-wait-mixed-version-output","rationale":"Read all4 cases and actual worker-show handler/printResult. Replace malformed raw RPC result, snake_case fields, reference-identity/cast formatter bypass with real envelopes, actual writer output, exact dispatch request and fresh console observation. Retain evaluated-none versus unknown compatibility cases.","evidence":["src/cli/handlers/orchestration/worker-observation-handlers.ts","src/cli/format.ts","src/cli/test-fixtures.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/worker-observation-handlers.ts":"cb4233d5ec2469db2efe5dacb74f1e622d0a61bdaba7a0beaef2be5bdca6d9aa","src/cli/format.ts":"f4ff6e2216c90a2a7ddc706957cd966f1510e7ff7304bdfd89d935d9665778d9","src/cli/test-fixtures.ts":"de24d3f101b8617a402e27a895fc1e45f88fb79f6229a1771107622d243f9a7b"},"evidence_source_sha256":{"src/cli/handlers/orchestration/worker-observation-handlers.ts":"cb4233d5ec2469db2efe5dacb74f1e622d0a61bdaba7a0beaef2be5bdca6d9aa","src/cli/format.ts":"f4ff6e2216c90a2a7ddc706957cd966f1510e7ff7304bdfd89d935d9665778d9","src/cli/test-fixtures.ts":"de24d3f101b8617a402e27a895fc1e45f88fb79f6229a1771107622d243f9a7b"},"cases":[{"line":44,"title":"names the prompt when a worker is waiting on a human","start":1389,"end":1733,"source_sha256":"446b4b6a609888cd0044249e060f1d97e9434602a070f58cb049a395ec768980","decision":"fix","reason":"Use real RPC envelope and camelCase contract fields; observe actual writer-to-console human-wait reason/source instead of calling captured formatter on a raw object.","parameter_inputs":[]},{"line":54,"title":"says none when the pane was evaluated and nothing was waiting","start":1737,"end":1967,"source_sha256":"33c449df9437ae6d1c03ad74d2f3c6947de01351dcace78a7e0c8fa047585ba4","decision":"fix","reason":"Use actual printed output for evaluated null agentWait, preserving explicit none rather than unknown.","parameter_inputs":[]},{"line":60,"title":"says unknown when the field is absent, not none","start":1971,"end":2436,"source_sha256":"6ced1e381576ce0b62d8bdc53b2814e3475dfdc1aedaa882628b0e59227dd0e8","decision":"fix","reason":"Use actual printed output for absent agentWait inside an observation; preserve unknown and forbid false none.","parameter_inputs":[]},{"line":69,"title":"says unknown when the host sent no observation at all","start":2440,"end":2636,"source_sha256":"3b982502fc7d6ad6b34a9ba8ea8c00085c8dae73f1c8d3a231788ddd353c88bc","decision":"fix","reason":"Use actual printed output for entirely absent observation, preserving older-host unknown state.","parameter_inputs":[]}],"original_declarations":4,"final_declarations":4,"validation":"reviews/root-0069-validation.json"}
+{"path":"src/cli/handlers/orchestration.test.ts","sha256":"eb716b6081b21da25d22287081657dcaffc68a18734f400836c8beb10859da70","reviewed_sha256":"7b4d7cec11b53639a118d9222cb8464031a9f81104fe65d0cbc9ef9477b1c75a","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","reviewer":"root","status":"reviewed","decision":"fix","classification":"vitest-cli-orchestration-message-and-question-contracts","rationale":"Read all28 declarations,6 parameter tables with24 rows, generated100-message warning fixture and actual send/check/ask/payload/identity/numeric/runtime contracts. Repair a sender-error test that stopped at an earlier guard, make writer/environment state isolated for every invocation, use a real send envelope and replace unchecked peek result cast. Preserve all46 runtime cases.","evidence":["src/cli/handlers/orchestration/message-send-handler.ts","src/cli/handlers/orchestration/message-check-handler.ts","src/cli/handlers/orchestration/question-handler.ts","src/cli/handlers/orchestration/message-payload.ts","src/cli/handlers/orchestration/numeric-flags.ts","src/cli/handlers/orchestration/terminal-identity.ts","src/cli/handlers/orchestration/runtime-compatibility.ts","src/shared/orchestration-check-output.ts","src/shared/orchestration-ask-timeout.ts","src/shared/timer-delay.ts","src/shared/agent-session-caller-env.ts","src/shared/structured-session-marker.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/message-send-handler.ts":"b8e8e7941f3fa99a9dd782de98be1a296904e0a57e5257a9f75869fdda3036d3","src/cli/handlers/orchestration/message-check-handler.ts":"34bd1b02a753a0a249aebf3d5f39548bddea7e6afae102e42ee23a669abbff39","src/cli/handlers/orchestration/question-handler.ts":"f5219b0475299896027c5a50e26a5a19839365908e91a6d6114197c13ad1015f","src/cli/handlers/orchestration/message-payload.ts":"c27711a5b5f875ec5e93d9eaa0ba4fb23b679596f4ff9d7375fea80cf02db33c","src/cli/handlers/orchestration/numeric-flags.ts":"4597506912c474a62f22a2e09d7e9d002adb9a154c7cfffc427c01c3c2159841","src/cli/handlers/orchestration/terminal-identity.ts":"17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306","src/cli/handlers/orchestration/runtime-compatibility.ts":"a102ef1800a19043e2f39efcc12d44d67b8c038ec010fca91e8fa541ec3b19b7","src/shared/orchestration-check-output.ts":"900597c3285f8e5a541ee9c190943ff9426ef4d6603f3eca2cd0dfa5211e7b01","src/shared/orchestration-ask-timeout.ts":"6f6cafcfd2e4133736d3f861c728db98dad615e23e54cf6b3925c76c5579f930","src/shared/timer-delay.ts":"7e529ed30d1b25521f5d72d7c2a6d05d16efe66faf2619b859d67b330cca767f","src/shared/agent-session-caller-env.ts":"5bd635cb3fbcf59fa5784580e501e4223401cd69601d986075d84007017d67cc","src/shared/structured-session-marker.ts":"ee5721b69ac9ecd2aeec64f165dec4b97549a102fd87c0dde93345b03582a683"},"evidence_source_sha256":{"src/cli/handlers/orchestration/message-send-handler.ts":"b8e8e7941f3fa99a9dd782de98be1a296904e0a57e5257a9f75869fdda3036d3","src/cli/handlers/orchestration/message-check-handler.ts":"34bd1b02a753a0a249aebf3d5f39548bddea7e6afae102e42ee23a669abbff39","src/cli/handlers/orchestration/question-handler.ts":"f5219b0475299896027c5a50e26a5a19839365908e91a6d6114197c13ad1015f","src/cli/handlers/orchestration/message-payload.ts":"c27711a5b5f875ec5e93d9eaa0ba4fb23b679596f4ff9d7375fea80cf02db33c","src/cli/handlers/orchestration/numeric-flags.ts":"4597506912c474a62f22a2e09d7e9d002adb9a154c7cfffc427c01c3c2159841","src/cli/handlers/orchestration/terminal-identity.ts":"17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306","src/cli/handlers/orchestration/runtime-compatibility.ts":"a102ef1800a19043e2f39efcc12d44d67b8c038ec010fca91e8fa541ec3b19b7","src/shared/orchestration-check-output.ts":"900597c3285f8e5a541ee9c190943ff9426ef4d6603f3eca2cd0dfa5211e7b01","src/shared/orchestration-ask-timeout.ts":"6f6cafcfd2e4133736d3f861c728db98dad615e23e54cf6b3925c76c5579f930","src/shared/timer-delay.ts":"7e529ed30d1b25521f5d72d7c2a6d05d16efe66faf2619b859d67b330cca767f","src/shared/agent-session-caller-env.ts":"5bd635cb3fbcf59fa5784580e501e4223401cd69601d986075d84007017d67cc","src/shared/structured-session-marker.ts":"ee5721b69ac9ecd2aeec64f165dec4b97549a102fd87c0dde93345b03582a683"},"cases":[{"line":69,"title":"serializes common worker payload fields as JSON","start":2665,"end":3811,"source_sha256":"c86aceb0103552921815b5c79fb0cdeea0976fdf3a62537cec1afa90bb704e74","decision":"keep","reason":"Retain complete structured worker payload serialization at the send RPC boundary, including trimmed nonempty file list, task/dispatch/outcome/report/phase and settlement request.","parameter_inputs":[]},{"line":110,"title":"forwards multiline message bodies without normalization","start":3815,"end":4278,"source_sha256":"372276ce2771887ce44aacbf5131c56c4fb169dfc1dbe229282147793fb72618","decision":"keep","reason":"Retain exact multiline body forwarding with paragraph boundaries; no formatter normalization should change message content.","parameter_inputs":[]},{"line":125,"title":"carries Dispatch authority in the RPC envelope instead of message params","start":4282,"end":4991,"source_sha256":"6a981a80cfdae7c5b43f0808ec324373d288cc465cfad323d9804ed81af81c3c","decision":"keep","reason":"Retain dispatch capability and retry id solely in RPC options rather than public message params.","parameter_inputs":[]},{"line":147,"title":"rejects mixing raw payload with structured payload flags","start":4995,"end":5439,"source_sha256":"37a6ca97faf5d9089f171f6ff4c91e12f36e0af320346e28a6e57f8fbeacc99c","decision":"keep","reason":"Retain mutually exclusive raw/structured payload refusal before send RPC.","parameter_inputs":[]},{"line":162,"title":"rejects worker_done group sends before resolving a sender handle","start":5443,"end":6044,"source_sha256":"32beb78b8081047b39e25db678622adf56287c64e03981229fae1a91413d6721","decision":"keep","reason":"Retain worker_done group-address refusal before sender lookup and RPC, with exact lifecycle group error.","parameter_inputs":[]},{"line":182,"title":"rejects heartbeat group sends before resolving a sender handle","start":6048,"end":6645,"source_sha256":"2820ffb0720997fc12e3e24c7ce6c9be9845c3019bedbdaa079906f7d7890345","decision":"keep","reason":"Retain heartbeat group-address refusal before sender lookup and RPC, separate from worker_done retry/settlement behavior.","parameter_inputs":[]},{"line":202,"title":"continues to allow worker_done to a concrete terminal handle","start":6649,"end":7408,"source_sha256":"23383f8f2e5ba5e1c31b78ebf03564bf1a0a6ae27926b4db1286c2d8df90878d","decision":"keep","reason":"Retain concrete terminal recipient positive control, structured outcome and lifecycle settlement request.","parameter_inputs":[]},{"line":231,"title":"sends lifecycle messages from ORCA_TERMINAL_HANDLE without a liveness probe","start":7412,"end":8261,"source_sha256":"0a063e3168951677dcbb1b4df6b129b5b2c5703a3e0fb95d62fb5a20c622bc1f","decision":"keep","reason":"Retain environment sender verbatim with exactly one send RPC and no liveness probe; mixed-version lifecycle authority depends on the original handle.","parameter_inputs":[]},{"line":262,"title":"never probes or remints a %s sender even when a pane key is set","start":8265,"end":9360,"source_sha256":"0699eed3bc7d3e2e50f291e7a869eb3f0fc69bc5e9c1748cf5adef1a19c7aa4f","decision":"keep","reason":"Retain both lifecycle types without liveness/reminting despite pane identity; exact one-call count detects accidental scope/probe RPCs.","parameter_inputs":[{"line":262,"expression":"'worker_done'","decision":"keep","reason":"worker_done retains settlement/retry authority.","row":1,"source_sha256":"bb3275af4dadd1627a638b0acd07a88b1432378c3f0a1d8da95e138cbfaa5c22"},{"line":262,"expression":"'heartbeat'","decision":"keep","reason":"heartbeat retains nonsettlement lifecycle authority.","row":2,"source_sha256":"9ee555574fb5ddbed9f6c58bbbb6f256624fb6dd79ebb9ffb0551fbca85cf446"}]},{"line":290,"title":"passes ORCA_PANE_KEY as the sender pane identity","start":9364,"end":9936,"source_sha256":"92ebb41a67b003f4fbba2cf974a12bfb444f068e43064431e7e1ef1b209df7e6","decision":"keep","reason":"Retain senderPaneKey forwarding for environment terminal authority and worker_done request envelope.","parameter_inputs":[]},{"line":310,"title":"reports sender resolution failure instead of raw no_active_terminal","start":9940,"end":10565,"source_sha256":"52b3471326a9671a8ed0796161ec8033fe4aacec9276fa16fed31235957c9e8e","decision":"fix","reason":"Use an ordinary send so implicit sender lookup actually executes; lifecycle sends fail earlier and previously bypassed the mocked no_active_terminal rejection. Require lookup once and translated error before send. Targeted production mutation passes the original whole46-case suite and fails exactly this reviewed case.","parameter_inputs":[]},{"line":331,"title":"refuses a structured session without naming a handle it could pass","start":10569,"end":11433,"source_sha256":"3f3f9d163d5cfb8ea1ac9c58581e7fc1732fc1bef886d095a940f912513edc53","decision":"keep","reason":"Retain old structured-session refusal without unsafe --from advice and without focus-based sender or runtime lookup.","parameter_inputs":[]},{"line":354,"title":"does not resolve an identity-less %s sender from the active terminal","start":11437,"end":12132,"source_sha256":"c71d2e8819e447bd41d5b161ae3b77593d9e3dc42cfc56bb5804014180cb83aa","decision":"keep","reason":"Retain both identity-less lifecycle types refusing before active-terminal guessing or RPC; arbitrary focused coordinator cannot become worker authority.","parameter_inputs":[{"line":354,"expression":"'worker_done'","decision":"keep","reason":"worker_done retains settlement/retry authority.","row":1,"source_sha256":"bb3275af4dadd1627a638b0acd07a88b1432378c3f0a1d8da95e138cbfaa5c22"},{"line":354,"expression":"'heartbeat'","decision":"keep","reason":"heartbeat retains nonsettlement lifecycle authority.","row":2,"source_sha256":"9ee555574fb5ddbed9f6c58bbbb6f256624fb6dd79ebb9ffb0551fbca85cf446"}]},{"line":420,"title":"rejects invalid check --timeout-ms: %s","start":13398,"end":13783,"source_sha256":"3499c032a15efa1ccce947df2d424978d6c96ae8ef62c506637c11bcd80e91ec","decision":"keep","reason":"Retain all8 distinct invalid check timeout representations rejecting before identity/RPC, including missing, empty, sign, fractional rounding and safe-integer boundary.","parameter_inputs":[{"line":378,"expression":"['missing', true]","decision":"keep","reason":"Reject missing value boolean before caller resolution or RPC.","row":1,"source_sha256":"b69befb887c9f5f2230f384c62605201d30f288181cedd3d2e2ea4e5709e48f0"},{"line":379,"expression":"['empty', '']","decision":"keep","reason":"Reject empty value before caller resolution or RPC.","row":2,"source_sha256":"fa0ea37190f52604e936eab677c899ca7e295980f8b8c58d21f24fb3f99645ec"},{"line":380,"expression":"['non-numeric', 'not-a-number']","decision":"keep","reason":"Reject nonnumeric text before caller resolution or RPC.","row":3,"source_sha256":"d3832f9bd97782b2452801d2bd12bd8eba4e8b5e82e60f96db4c7449a8dfa4a4"},{"line":381,"expression":"['zero', '0']","decision":"keep","reason":"Reject zero before caller resolution or RPC.","row":4,"source_sha256":"8fcb9d4a5c92994ef84f2f7d3b5f03c4df3c354cf6be4f8fc0f5a569d3f6efd9"},{"line":382,"expression":"['negative', '-1']","decision":"keep","reason":"Reject negative integer before caller resolution or RPC.","row":5,"source_sha256":"5cdd316d9f61e6bd83104a6639106c76f5c170541972d7ce003092570b4164f6"},{"line":383,"expression":"['fractional', '1.5']","decision":"keep","reason":"Reject visible fractional text before caller resolution or RPC.","row":6,"source_sha256":"dbc5cb02fc1bc10d7db7352856fc6360c30427f0502d1ab1325632063711bffb"},{"line":384,"expression":"['rounded fractional', '9007199254740991.1']","decision":"keep","reason":"Reject fraction that rounds to a safe integer before caller resolution or RPC.","row":7,"source_sha256":"620bc5f640a92e403a70b550e968100f1421fbefb04fe9317d20b16802018ead"},{"line":385,"expression":"['unsafe integer', String(Number.MAX_SAFE_INTEGER + 1)]","decision":"keep","reason":"Reject unsafe integer before caller resolution or RPC.","row":8,"source_sha256":"22d0824281f3ef09a1da19b40051f09a10bc31472234b1e7edafbc9a90462c41"}]},{"line":431,"title":"passes a parsed check timeout and peek mode into the RPC payload","start":13787,"end":14722,"source_sha256":"8a60de5e8ac20a7e92dce443a77175e2983c71e3e378b21ad79126ab4f82ea4f","decision":"keep","reason":"Retain parsed check timeout and peek=true/unread=false wire contract so older hosts fall back to nonconsuming all mode.","parameter_inputs":[]},{"line":461,"title":"filters already-read rows from a peek response for pre-peek runtimes","start":14726,"end":15742,"source_sha256":"0aad973913828cacb688f5f5a02fe4fecb8b3fd9b2dd869bb48c26c4ad824c88","decision":"fix","reason":"Require one fresh writer call; compare exact surviving unread row, count and cleared stale formatted banner through checked property matchers instead of unchecked result cast. Central reset prevents earlier output satisfying the case.","parameter_inputs":[]},{"line":487,"title":"rejects combined read modes before calling the runtime","start":15746,"end":16222,"source_sha256":"e4dfd54cd034dc22a6fcbf503a40fa1b3943e23b628d78e82688d8ee32f4f0bd","decision":"keep","reason":"Retain conflicting unread+peek rejection before runtime access.","parameter_inputs":[]},{"line":505,"title":"warns when a pre-peek runtime returned a full 100-row page","start":16226,"end":16872,"source_sha256":"d7897c38d6c28f9c2a1dd28d83e7cbc59cfece18c766fae442e23c3c98d14fd5","decision":"keep","reason":"Retain actual100-row page boundary warning with one unread/99read fixture rows; this is a generated fixture population, not100 separate runtime tests.","parameter_inputs":[]},{"line":522,"title":"fails --peek --wait against a runtime that returned only read rows","start":16876,"end":17399,"source_sha256":"b3f7e03553b8acd99ffa98a841094208daa63ce2d8482724612e920c0983d21a","decision":"keep","reason":"Retain pre-peek wait refusal when legacy host returns only read rows rather than pretending the requested wait was honored.","parameter_inputs":[]},{"line":541,"title":"rejects invalid ask --timeout-ms: %s","start":17403,"end":17822,"source_sha256":"3de63f42cd203ee7f327b0bb9a02838bdbe75e0e799ab938848105931d870357","decision":"keep","reason":"Retain all8 invalid ask timeout representations before resolving caller or creating question.","parameter_inputs":[{"line":378,"expression":"['missing', true]","decision":"keep","reason":"Reject missing value boolean before caller resolution or RPC.","row":1,"source_sha256":"b69befb887c9f5f2230f384c62605201d30f288181cedd3d2e2ea4e5709e48f0"},{"line":379,"expression":"['empty', '']","decision":"keep","reason":"Reject empty value before caller resolution or RPC.","row":2,"source_sha256":"fa0ea37190f52604e936eab677c899ca7e295980f8b8c58d21f24fb3f99645ec"},{"line":380,"expression":"['non-numeric', 'not-a-number']","decision":"keep","reason":"Reject nonnumeric text before caller resolution or RPC.","row":3,"source_sha256":"d3832f9bd97782b2452801d2bd12bd8eba4e8b5e82e60f96db4c7449a8dfa4a4"},{"line":381,"expression":"['zero', '0']","decision":"keep","reason":"Reject zero before caller resolution or RPC.","row":4,"source_sha256":"8fcb9d4a5c92994ef84f2f7d3b5f03c4df3c354cf6be4f8fc0f5a569d3f6efd9"},{"line":382,"expression":"['negative', '-1']","decision":"keep","reason":"Reject negative integer before caller resolution or RPC.","row":5,"source_sha256":"5cdd316d9f61e6bd83104a6639106c76f5c170541972d7ce003092570b4164f6"},{"line":383,"expression":"['fractional', '1.5']","decision":"keep","reason":"Reject visible fractional text before caller resolution or RPC.","row":6,"source_sha256":"dbc5cb02fc1bc10d7db7352856fc6360c30427f0502d1ab1325632063711bffb"},{"line":384,"expression":"['rounded fractional', '9007199254740991.1']","decision":"keep","reason":"Reject fraction that rounds to a safe integer before caller resolution or RPC.","row":7,"source_sha256":"620bc5f640a92e403a70b550e968100f1421fbefb04fe9317d20b16802018ead"},{"line":385,"expression":"['unsafe integer', String(Number.MAX_SAFE_INTEGER + 1)]","decision":"keep","reason":"Reject unsafe integer before caller resolution or RPC.","row":8,"source_sha256":"22d0824281f3ef09a1da19b40051f09a10bc31472234b1e7edafbc9a90462c41"}]},{"line":553,"title":"accepts an ask timeout %s within the supported range with transport headroom","start":17826,"end":18619,"source_sha256":"e3d49a33dc280764abb9b9fc20910c3b76e7bd0d9d68f09727fc94e2cac16c90","decision":"keep","reason":"Retain minimum1ms and maximum1800000ms asks, both carrying5000ms client transport headroom.","parameter_inputs":[{"line":553,"expression":"'1'","decision":"keep","reason":"Minimum positive wait accepted with transport grace.","row":1,"source_sha256":"9a7622b24ae73586214f453f44ed438ce5c63aa07c720c2ccc29ae5bd7ec5322"},{"line":553,"expression":"'1800000'","decision":"keep","reason":"Maximum supported wait accepted with transport grace.","row":2,"source_sha256":"5871eafa9c400cbed6d98a8346de9bffb08e92f21a98c076041a1be593912c05"}]},{"line":578,"title":"rejects an oversized ask timeout %s before resolving identity or creating a question","start":18623,"end":19438,"source_sha256":"669f76e0b08b4b8795165f2845be974bb4ac7492f1be3663594dd3ec3f626a82","decision":"keep","reason":"Retain just-over-max and max-safe oversized timeout refusals before caller/question access.","parameter_inputs":[{"line":578,"expression":"'1800001'","decision":"keep","reason":"First wait beyond maximum refuses.","row":1,"source_sha256":"015eefa2c57d5bf2e0431dd04878cba3a81a75dddd3bde0503ec6bb70d227a2c"},{"line":578,"expression":"String(Number.MAX_SAFE_INTEGER)","decision":"keep","reason":"Large safe integer is still outside supported wait budget.","row":2,"source_sha256":"c4850a542de407534b9534599dea1e168aeeaf741ab0af144a0f86a4de31cc0c"}]},{"line":601,"title":"keeps an omitted ask timeout out of the payload while using default headroom","start":19442,"end":20090,"source_sha256":"f154e60c2361bcf5c3cf33e26d40a0bd3e3163095934d55a839c48fbe2ee3b92","decision":"keep","reason":"Retain omitted ask timeout absent from request and exact default605000ms client budget.","parameter_inputs":[]},{"line":622,"title":"prints the pending message ID and exact capability-bound resume command on timeout","start":20094,"end":21153,"source_sha256":"41ed14e53e8b9db56f10ea72d8d528b3423654117030a1e6db18a0988d85a656","decision":"keep","reason":"Retain actual plain timeout diagnostic with pending message id, capability-bound resolved executable resume command, effective server timeout and exit1.","parameter_inputs":[]},{"line":653,"title":"uses the parsed ask timeout for both runtime wait and client timeout","start":21157,"end":22170,"source_sha256":"f2671f23e4ca07d46b4e6d99db6f8052b3cd3d9342e6d18b5fb8c392952c8df6","decision":"keep","reason":"Retain parsed123ms ask timeout at request boundary and5123ms transport timeout plus exact caller/compatibility fields.","parameter_inputs":[]},{"line":690,"title":"envelopes ask --json through the shared result printer","start":22174,"end":22925,"source_sha256":"4c51e6148ebdd21afc386a92c3d6524863d58e02ef6b3519b7622dacfb7100a8","decision":"keep","reason":"Retain shared JSON printer envelope rather than direct console output, with full id/ok/result/runtime metadata. Shared per-case reset now makes writer history fresh.","parameter_inputs":[]},{"line":713,"title":"passes an ask resume without creating a new question payload","start":22929,"end":23867,"source_sha256":"235bfd50cc72db779a843686a0ba6184cdf4e0349b3d8bcb887863482ed0e4f9","decision":"keep","reason":"Retain resume RPC with no new question/options, original message id and default client headroom.","parameter_inputs":[]},{"line":744,"title":"rejects ambiguous ask create/resume input before RPC","start":23871,"end":24264,"source_sha256":"378478f6afee35d65bed3f1958a661aae48337378f0faeef3c28c099eb510962","decision":"keep","reason":"Retain ambiguous create+resume rejection before runtime mutation.","parameter_inputs":[]}],"original_declarations":28,"final_declarations":28,"validation":"reviews/root-0069-validation.json"}
diff --git a/docs/audits/test-value/reviews/root-0070-validation.json b/docs/audits/test-value/reviews/root-0070-validation.json
new file mode 100644
index 00000000000..c008405ea9b
--- /dev/null
+++ b/docs/audits/test-value/reviews/root-0070-validation.json
@@ -0,0 +1,293 @@
+{
+ "batch": "root-0070",
+ "reviewer": "root",
+ "source_commit": "3afac4f41829c86da99f6268c5676c0533ad2f32",
+ "reviewed_files": 4,
+ "original_declarations": 32,
+ "case_records": 32,
+ "explicit_parameter_rows": 2,
+ "passing_runtime_cases": 33,
+ "decisions": {
+ "keep": 21,
+ "fix": 11
+ },
+ "production_changes": false,
+ "checks": [
+ {
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm test src/cli/handlers/orchestration/mutation-request.test.ts src/cli/handlers/orchestration/terminal-identity-codex-filtered.test.ts src/cli/handlers/orchestration/worker-list-run-scope.test.ts src/cli/handlers/orchestration/worker-output.test.ts --reporter=default --reporter=json --outputFile=/tmp/orca-root-0070-baseline-tests.json",
+ "result": "passed",
+ "exit_code": 0,
+ "report": "/tmp/orca-root-0070-baseline-tests.json",
+ "report_sha256": "4893482a99964b988e57cb9118e9ea0d4d23347352e9eb4c23fd524b65a82bae",
+ "log": "/tmp/orca-root-0070-baseline-tests.log",
+ "log_sha256": "3166744cfffd99fd324893f79367d6f366d8e8b85ad71285b0fbb058667f8bb0",
+ "passing_runtime_cases": 33,
+ "evidence_phase": "original baseline"
+ },
+ {
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm test src/cli/handlers/orchestration/mutation-request.test.ts src/cli/handlers/orchestration/terminal-identity-codex-filtered.test.ts src/cli/handlers/orchestration/worker-list-run-scope.test.ts src/cli/handlers/orchestration/worker-output.test.ts --reporter=default --reporter=json --outputFile=/tmp/orca-root-0070-reviewed-tests.json",
+ "result": "passed",
+ "exit_code": 0,
+ "report": "/tmp/orca-root-0070-reviewed-tests.json",
+ "report_sha256": "3e39ee02080236f14752d0b147e306589f8a82a89a8405797c86e47e786f4fb1",
+ "log": "/tmp/orca-root-0070-reviewed-tests.log",
+ "log_sha256": "5c25aa59bd4ecdac9cf9dc70df89db47f0c77ff1f3a1a2ea07c681ed7d474ba4",
+ "passing_runtime_cases": 33,
+ "evidence_phase": "reviewed bytes, restored identically after mutation"
+ },
+ {
+ "command": "pnpm exec oxlint ",
+ "result": "passed",
+ "exit_code": 0,
+ "log": "/tmp/orca-root-0070-lint.log",
+ "log_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ {
+ "command": "pnpm exec oxfmt --check ",
+ "result": "passed",
+ "exit_code": 0,
+ "log": "/tmp/orca-root-0070-format.log",
+ "log_sha256": "35ee3988aac8bc6d864d11c4439e914cb311b470610a854a7fc0436d2abcdf6b"
+ },
+ {
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm tc:cli",
+ "result": "passed",
+ "exit_code": 0,
+ "log": "/tmp/orca-root-0070-typecheck.log",
+ "log_sha256": "64350cfafba2dd6bb61adf325923dc3c41762eb81a276ff9302796e6e77b09bc"
+ }
+ ],
+ "mutation": {
+ "batch": "root-0070-retry-budget-opt-in",
+ "defect": "retry-budget",
+ "production_path": "src/cli/handlers/orchestration/mutation-request.ts",
+ "original_source_sha256": "66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408",
+ "mutated_source_sha256": "cd3fd5b5073716a41a915aa84d727e5885d3af2d424774109ed50d1ccb2208d9",
+ "restored_source_sha256": "66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408",
+ "original_test_sha256": "cb8429bd9eee1b442e991dfc3a7ffd0ae9d7572a8822d70d92c3eb963aa32f76",
+ "reviewed_test_sha256": "3390a87bda316491b8dbbe706a0e6bf49a5fd5c11acb99719e34be167f147645",
+ "entire_selected_suite_executed_each_phase": true,
+ "results": {
+ "original-control": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/orchestration/mutation-request.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0070-retry-budget-opt-in-original-control.json"
+ ],
+ "exit_code": 0,
+ "passed": 7,
+ "failed": 0,
+ "failures": [],
+ "report": "/tmp/orca-root-0070-retry-budget-opt-in-original-control.json",
+ "report_sha256": "8c3f1f748e9a907504a310492117fb0df2a854aea6ff3b2249a7dd9250cf6668",
+ "log": "/tmp/orca-root-0070-retry-budget-opt-in-original-control.log",
+ "log_sha256": "e141486f5a1cbdae5c1e44812f164c90aa1886c105944d8947ac8b9635157580",
+ "test_sha256": "cb8429bd9eee1b442e991dfc3a7ffd0ae9d7572a8822d70d92c3eb963aa32f76",
+ "production_sha256": "66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408"
+ },
+ "original-retry-budget-mutant": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/orchestration/mutation-request.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0070-retry-budget-opt-in-original-retry-budget-mutant.json"
+ ],
+ "exit_code": 0,
+ "passed": 7,
+ "failed": 0,
+ "failures": [],
+ "report": "/tmp/orca-root-0070-retry-budget-opt-in-original-retry-budget-mutant.json",
+ "report_sha256": "a3c022fcf046dd1f72e6894fca667d61f3b5af81dc4098aecbcf39857ac35759",
+ "log": "/tmp/orca-root-0070-retry-budget-opt-in-original-retry-budget-mutant.log",
+ "log_sha256": "0e65afbe4f9ebf93c87e5f682c23ec384ed7722071ab94e9aa03fbaf66657a23",
+ "test_sha256": "cb8429bd9eee1b442e991dfc3a7ffd0ae9d7572a8822d70d92c3eb963aa32f76",
+ "production_sha256": "cd3fd5b5073716a41a915aa84d727e5885d3af2d424774109ed50d1ccb2208d9"
+ },
+ "reviewed-retry-budget-mutant": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/orchestration/mutation-request.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0070-retry-budget-opt-in-reviewed-retry-budget-mutant.json"
+ ],
+ "exit_code": 1,
+ "passed": 6,
+ "failed": 1,
+ "failures": [
+ {
+ "title": "gives up after about two minutes and prints the recovery command with the same id",
+ "messages": [
+ "Error: mutation kept retrying beyond its two-minute budget\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/cli/handlers/orchestration/mutation-request.test.ts:164:13\n at async file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:20"
+ ]
+ }
+ ],
+ "report": "/tmp/orca-root-0070-retry-budget-opt-in-reviewed-retry-budget-mutant.json",
+ "report_sha256": "a4d7746b8992249e83fc84ee71fd5b1023af3d1aa4f7585c40aedf22886898b5",
+ "log": "/tmp/orca-root-0070-retry-budget-opt-in-reviewed-retry-budget-mutant.log",
+ "log_sha256": "5c94f086e932b972ab4db408a82fe4bcc2369378d17c58507f9f1318addcb983",
+ "test_sha256": "3390a87bda316491b8dbbe706a0e6bf49a5fd5c11acb99719e34be167f147645",
+ "production_sha256": "cd3fd5b5073716a41a915aa84d727e5885d3af2d424774109ed50d1ccb2208d9"
+ },
+ "reviewed-restored": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/orchestration/mutation-request.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0070-retry-budget-opt-in-reviewed-restored.json"
+ ],
+ "exit_code": 0,
+ "passed": 7,
+ "failed": 0,
+ "failures": [],
+ "report": "/tmp/orca-root-0070-retry-budget-opt-in-reviewed-restored.json",
+ "report_sha256": "e11d71b9b13c0f3917b2dd067dd8ea8d5a1431180fcdec6d77ec1ff138ca49d6",
+ "log": "/tmp/orca-root-0070-retry-budget-opt-in-reviewed-restored.log",
+ "log_sha256": "a47249720bdf527cce141af98de7aeb7d63d52cb22b5b2fce5b18e45783ec62c",
+ "test_sha256": "3390a87bda316491b8dbbe706a0e6bf49a5fd5c11acb99719e34be167f147645",
+ "production_sha256": "66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408"
+ }
+ }
+ },
+ "supplemental_rejected_mutation": {
+ "reason": "Initial deadline extension also affected opt-out calls and was already caught by original no-opt-in coverage. Retained as historical evidence; refined opted-in-only extension isolates the reviewed budget gap.",
+ "evidence": {
+ "batch": "root-0070-retry-budget",
+ "defect": "retry-budget",
+ "production_path": "src/cli/handlers/orchestration/mutation-request.ts",
+ "original_source_sha256": "66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408",
+ "mutated_source_sha256": "28fa1f600fbfc761cdb04f7b2001252aa578571cdc1ba0a622f8897e2813700e",
+ "restored_source_sha256": "66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408",
+ "original_test_sha256": "cb8429bd9eee1b442e991dfc3a7ffd0ae9d7572a8822d70d92c3eb963aa32f76",
+ "reviewed_test_sha256": "3390a87bda316491b8dbbe706a0e6bf49a5fd5c11acb99719e34be167f147645",
+ "entire_selected_suite_executed_each_phase": true,
+ "results": {
+ "original-control": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/orchestration/mutation-request.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0070-retry-budget-original-control.json"
+ ],
+ "exit_code": 0,
+ "passed": 7,
+ "failed": 0,
+ "failures": [],
+ "report": "/tmp/orca-root-0070-retry-budget-original-control.json",
+ "report_sha256": "f28d1bddbf8b1da7560c72f776e766b888a0e398aa4767c019ff5a5df7b04694",
+ "log": "/tmp/orca-root-0070-retry-budget-original-control.log",
+ "log_sha256": "fae8c73f9d4a021cfb2d4fb2631b6173018775a87b8f234f8842441e6b071c7a",
+ "test_sha256": "cb8429bd9eee1b442e991dfc3a7ffd0ae9d7572a8822d70d92c3eb963aa32f76",
+ "production_sha256": "66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408"
+ },
+ "original-retry-budget-mutant": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/orchestration/mutation-request.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0070-retry-budget-original-retry-budget-mutant.json"
+ ],
+ "exit_code": 1,
+ "passed": 6,
+ "failed": 1,
+ "failures": [
+ {
+ "title": "does not retry mutations that did not opt in",
+ "messages": [
+ "AssertionError: expected [ undefined, undefined, \u2026(3) ] to deeply equal [ undefined ]\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/cli/handlers/orchestration/mutation-request.test.ts:119:24\n at async file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:20"
+ ]
+ }
+ ],
+ "report": "/tmp/orca-root-0070-retry-budget-original-retry-budget-mutant.json",
+ "report_sha256": "2c02df0a4e4f8cbff67cbd7d506f5ad3f332b65f23a5d70c21ff07ddd3c69f66",
+ "log": "/tmp/orca-root-0070-retry-budget-original-retry-budget-mutant.log",
+ "log_sha256": "9ffcdb1d36b1763177d4d1972754be233165be754bfa239d87436371385d4f42",
+ "test_sha256": "cb8429bd9eee1b442e991dfc3a7ffd0ae9d7572a8822d70d92c3eb963aa32f76",
+ "production_sha256": "28fa1f600fbfc761cdb04f7b2001252aa578571cdc1ba0a622f8897e2813700e"
+ },
+ "reviewed-retry-budget-mutant": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/orchestration/mutation-request.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0070-retry-budget-reviewed-retry-budget-mutant.json"
+ ],
+ "exit_code": 1,
+ "passed": 5,
+ "failed": 2,
+ "failures": [
+ {
+ "title": "does not retry mutations that did not opt in",
+ "messages": [
+ "AssertionError: expected [ undefined, undefined, \u2026(3) ] to deeply equal [ undefined ]\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/cli/handlers/orchestration/mutation-request.test.ts:119:24\n at async file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:20"
+ ]
+ },
+ {
+ "title": "gives up after about two minutes and prints the recovery command with the same id",
+ "messages": [
+ "Error: mutation kept retrying beyond its two-minute budget\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/cli/handlers/orchestration/mutation-request.test.ts:164:13\n at async file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:20"
+ ]
+ }
+ ],
+ "report": "/tmp/orca-root-0070-retry-budget-reviewed-retry-budget-mutant.json",
+ "report_sha256": "4a19ccfd1773b24ad52f24caa3ce788cf93226b850c65166d4054b010069e1e4",
+ "log": "/tmp/orca-root-0070-retry-budget-reviewed-retry-budget-mutant.log",
+ "log_sha256": "0eac7205152727e109e11c3a2523c33a56c88bb623dc253e837f9012e1e8298d",
+ "test_sha256": "3390a87bda316491b8dbbe706a0e6bf49a5fd5c11acb99719e34be167f147645",
+ "production_sha256": "28fa1f600fbfc761cdb04f7b2001252aa578571cdc1ba0a622f8897e2813700e"
+ },
+ "reviewed-restored": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/orchestration/mutation-request.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0070-retry-budget-reviewed-restored.json"
+ ],
+ "exit_code": 0,
+ "passed": 7,
+ "failed": 0,
+ "failures": [],
+ "report": "/tmp/orca-root-0070-retry-budget-reviewed-restored.json",
+ "report_sha256": "d44bdc07553a009245a658713d832b55f9ffe27c1de2c624ea768d99c1affb63",
+ "log": "/tmp/orca-root-0070-retry-budget-reviewed-restored.log",
+ "log_sha256": "8037f456603a4fabf426fd2a8e11d177fee9238235895c0cf73449c89be7d760",
+ "test_sha256": "3390a87bda316491b8dbbe706a0e6bf49a5fd5c11acb99719e34be167f147645",
+ "production_sha256": "66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408"
+ }
+ }
+ }
+ },
+ "integrity": {
+ "records_sha256": "e22b7a43cceafa3c235957d07cf0f44a9b0eab76df555123712642110f14d16c",
+ "original_and_final_hashes_verified": true,
+ "exact_original_case_slices_verified": 32,
+ "exact_parameter_rows_verified": 2,
+ "production_restoration_verified": true,
+ "original_snapshot_sha256": "e8f30ad4101c6929980128108053ba40417485092e79141454474e6e300c98a7",
+ "plan_sha256": "bd25ee51a3e654cdd8ca15f017a10511086666ab5f35cb0e425bb779584ed3f7",
+ "record_generator_sha256": "893a81bbfa8c9ac10f7d188cf405b53833fad89254e3a883538dc39ee6a56b43",
+ "mutation_script_sha256": "be683c3c06feef828f2cb75eb42fa20cc22817fbb7d349c6d8e017f28700fa13"
+ },
+ "limitations": [
+ "Actual RuntimeClient recovery uses a real local Unix socket and deliberately dropped request; that existing integration case is explicitly skipped on Windows. Scheduler/flag/output cases use injected ports/fake clocks or pure formatters, and no app window launches.",
+ "Literal roster expectations retain real producer inputs while breaking the borrowed expected-wording oracle; malformed newer-host states/blocks remain intentional RPC-boundary fixtures with line-specific cast explanations.",
+ "The budget test allows the existing15-second maximum-backoff window before the deadline and proves settlement by120000ms with no subsequent attempts. Refined +30000ms opted-in-only defect passes all7 original mutation-request cases and fails exactly the reviewed budget assertion.",
+ "The separate roster-oracle mutation script is prepared but has not run; no mutation result is claimed for that path."
+ ]
+}
diff --git a/docs/audits/test-value/reviews/root-0070.jsonl b/docs/audits/test-value/reviews/root-0070.jsonl
new file mode 100644
index 00000000000..0b4ee21a3a4
--- /dev/null
+++ b/docs/audits/test-value/reviews/root-0070.jsonl
@@ -0,0 +1,4 @@
+{"path":"src/cli/handlers/orchestration/mutation-request.test.ts","sha256":"cb8429bd9eee1b442e991dfc3a7ffd0ae9d7572a8822d70d92c3eb963aa32f76","reviewed_sha256":"3390a87bda316491b8dbbe706a0e6bf49a5fd5c11acb99719e34be167f147645","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","reviewer":"root","status":"reviewed","decision":"fix","classification":"vitest-cli-mutation-retry-identity-and-live-runtime-recovery","rationale":"Review all6 declarations,2 explicit identity rows, actual retry/recovery loop and real RuntimeClient/Unix socket fixture. Replace count-only approximate deadline evidence with settled-by-budget/no-further-attempt observations, preserving all7 expanded cases and explicit Windows integration skip.","evidence":["src/cli/handlers/orchestration/mutation-request.ts","src/cli/orchestration-mutation-recovery.ts","src/cli/runtime/client.ts","src/cli/runtime/runtime-source-fence.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/mutation-request.ts":"66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408","src/cli/orchestration-mutation-recovery.ts":"2a122b19241be3aea3355f0ad9d59c18e60f442f2a84de294e116ed3409e64f4","src/cli/runtime/client.ts":"c36891f1f51cb15108b03a38012545f4c95f9f86d308f25532298ca40165edf2","src/cli/runtime/runtime-source-fence.ts":"22e8c3c368473695b7625302e5e7dd81e5c2bd4971a9ab4b9965b98cb8127fd4"},"evidence_source_sha256":{"src/cli/handlers/orchestration/mutation-request.ts":"66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408","src/cli/orchestration-mutation-recovery.ts":"2a122b19241be3aea3355f0ad9d59c18e60f442f2a84de294e116ed3409e64f4","src/cli/runtime/client.ts":"c36891f1f51cb15108b03a38012545f4c95f9f86d308f25532298ca40165edf2","src/cli/runtime/runtime-source-fence.ts":"22e8c3c368473695b7625302e5e7dd81e5c2bd4971a9ab4b9965b98cb8127fd4"},"cases":[{"line":65,"title":"retries with %s request id until the runtime answers","start":2218,"end":3206,"source_sha256":"238292525741505901ecf5d046397cf3dd72522b40375a2ab943707b0a1271f0","decision":"keep","reason":"Both fresh and explicit mutation identities survive two unavailable responses and reach successful third attempt; fake timers advance actual retry loop and all request ids must match.","parameter_inputs":[{"line":66,"expression":"['a fresh', new Map(), expect.stringMatching(/^[0-9a-f-]{36}$/)]","decision":"keep","reason":"Fresh opt-in mutation mints one valid UUID reused for every attempt.","row":1,"source_sha256":"e271d0426e03ca156af94523352d311f5db93d5e6c6cac27884c2c22b9251a26"},{"line":67,"expression":" [\n 'an explicit --retry-request',\n new Map([['retry-request', '11111111-2222-4333-8444-555555555555']]),\n '11111111-2222-4333-8444-555555555555'\n ]","decision":"keep","reason":"Explicit retry request remains verbatim across every unavailable attempt.","row":2,"source_sha256":"58ab0656a0e9d5bb9ec13c2d64fd07bd23867ae583e8b769f330a9c7f36d85bf"}]},{"line":95,"title":"does not retry an error other than runtime_unavailable","start":3210,"end":3695,"source_sha256":"1b1a07813db67c2eed8f755aba3c63aef7ef53b21dfcc6f8e5a0d1463dc9ef2c","decision":"keep","reason":"runtime_timeout is a terminal response with exactly one attempt even when unavailable retry was requested.","parameter_inputs":[]},{"line":112,"title":"does not retry mutations that did not opt in","start":3699,"end":4088,"source_sha256":"5a35acc9c63c4e480490b4205961560d9deb9f25c735966a26b9fd6980ba328c","decision":"keep","reason":"Mutations without opt-in preserve undefined request id and refuse unavailable immediately without another attempt.","parameter_inputs":[]},{"line":122,"title":"keeps the recovery command when the last attempt fails before its request id is attached","start":4092,"end":4812,"source_sha256":"72d45d9bdc260dbb774d25130004d479776fa6a951fda6ffc98eb139c30116c3","decision":"keep","reason":"Later unavailable errors without metadata retain the first sent recovery identity after the actual retry budget.","parameter_inputs":[]},{"line":143,"title":"gives up after about two minutes and prints the recovery command with the same id","start":4816,"end":5798,"source_sha256":"5b6178f98639f99e3a61f82e55dce7a142a90f6fee6c985d8137cb3bcffeea5f","decision":"fix","reason":"Observe settlement by the120000ms budget and within one max-backoff of its end, then assert no further attempts for30000ms. Replace arbitrary attempt-count threshold with actual time-bound behavior while retaining stable recovery id/command. The refined opted-in30-second-overrun mutant passes all7 original cases and fails only this reviewed budget case.","parameter_inputs":[]},{"line":180,"title":"reaches a runtime that comes back after the first attempt found it down","start":5891,"end":8144,"source_sha256":"afdb38f617921a0124cb7f6cf41189347e41509e77f2b9389c541fea26de2124","decision":"keep","reason":"Actual RuntimeClient starts while metadata is absent, then reconnects to a real Unix socket and replays the same request id after a dropped send connection. Windows skip is explicit because this endpoint is a Unix filesystem socket.","parameter_inputs":[]}],"original_declarations":6,"final_declarations":6,"validation":"reviews/root-0070-validation.json"}
+{"path":"src/cli/handlers/orchestration/terminal-identity-codex-filtered.test.ts","sha256":"f4301df084a7a29cedb68b4a30fb49992a233690482eadb31d954ee0dddd91e7","reviewed_sha256":"f4301df084a7a29cedb68b4a30fb49992a233690482eadb31d954ee0dddd91e7","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","reviewer":"root","status":"reviewed","decision":"keep","classification":"vitest-cli-identity-filter-refusal-advice","rationale":"Read both exact refusal cases, dedicated throw path and environment cleanup. They exercise distinct user-visible Codex policy guidance versus generic advice, not an inventory of static declarations.","evidence":["src/cli/handlers/orchestration/terminal-identity.ts","src/shared/structured-session-marker.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/terminal-identity.ts":"17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306","src/shared/structured-session-marker.ts":"ee5721b69ac9ecd2aeec64f165dec4b97549a102fd87c0dde93345b03582a683"},"evidence_source_sha256":{"src/cli/handlers/orchestration/terminal-identity.ts":"17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306","src/shared/structured-session-marker.ts":"ee5721b69ac9ecd2aeec64f165dec4b97549a102fd87c0dde93345b03582a683"},"cases":[{"line":21,"title":"names Codex's shell_environment_policy when Codex dropped the terminal identity","start":490,"end":939,"source_sha256":"03e4a523a7bd144c5dfb2b43e041c4d67bafab38ec8bcf1fd2d89ef07f866558","decision":"keep","reason":"Dedicated refusal under Codex identifies filtered Orca identity and actionable shell_environment_policy/inherit guidance; stubbed Codex/terminal/structured flags are restored.","parameter_inputs":[]},{"line":33,"title":"keeps the generic advice outside Codex","start":943,"end":1276,"source_sha256":"8776b505844cabb8d3db61e3db497b5cf6effb1bb898740156b499b10fed5627","decision":"keep","reason":"Outside Codex, same refusal code retains generic advice without unrelated shell_environment_policy text; restored env isolates the branch.","parameter_inputs":[]}],"original_declarations":2,"final_declarations":2,"validation":"reviews/root-0070-validation.json"}
+{"path":"src/cli/handlers/orchestration/worker-list-run-scope.test.ts","sha256":"7a902e72f2ef78348f0a79802b09ed3ab3564bfaa4e70cbff975311d9a719200","reviewed_sha256":"f49c1d6f02367a1768521b57c1cbcbc85be492dae239c0f7c5033eba9f0bb839","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","reviewer":"root","status":"reviewed","decision":"fix","classification":"vitest-cli-worker-list-run-scope-output","rationale":"Read4 cases and actual list/scope/identity/writer contracts. Use real response envelopes, isolated restored caller env, exact per-invocation RPC order/count and one real output; keep parsed receipt unknown and compare properties instead of unchecked any access.","evidence":["src/cli/handlers/orchestration/worker-list-run-scope.ts","src/cli/handlers/orchestration/worker-terminal-handlers.ts","src/cli/handlers/orchestration/terminal-identity.ts","src/cli/format.ts","src/cli/test-fixtures.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/worker-list-run-scope.ts":"a1fb99643fd1fa72ef2491b323b40906294034df8a9b5b7d323c352b8ebca135","src/cli/handlers/orchestration/worker-terminal-handlers.ts":"dfba8229284864bd4babfb6d542f000c3aef0542667c7a51021f7a9ce65025b2","src/cli/handlers/orchestration/terminal-identity.ts":"17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306","src/cli/format.ts":"f4ff6e2216c90a2a7ddc706957cd966f1510e7ff7304bdfd89d935d9665778d9","src/cli/test-fixtures.ts":"de24d3f101b8617a402e27a895fc1e45f88fb79f6229a1771107622d243f9a7b"},"evidence_source_sha256":{"src/cli/handlers/orchestration/worker-list-run-scope.ts":"a1fb99643fd1fa72ef2491b323b40906294034df8a9b5b7d323c352b8ebca135","src/cli/handlers/orchestration/worker-terminal-handlers.ts":"dfba8229284864bd4babfb6d542f000c3aef0542667c7a51021f7a9ce65025b2","src/cli/handlers/orchestration/terminal-identity.ts":"17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306","src/cli/format.ts":"f4ff6e2216c90a2a7ddc706957cd966f1510e7ff7304bdfd89d935d9665778d9","src/cli/test-fixtures.ts":"de24d3f101b8617a402e27a895fc1e45f88fb79f6229a1771107622d243f9a7b"},"cases":[{"line":59,"title":"defaults an unscoped list to the Run bound to the calling terminal","start":1994,"end":2436,"source_sha256":"484e532850a0f45da7504828e64ffb5929fe96bfbe8d360b1a6942481faeb656","decision":"fix","reason":"Use real per-method response envelopes and isolate/restore terminal/session/structured/pane env. Require exactly runCurrent then workerList and one output; preserve bound Run wire filter and JSON source=bound.","parameter_inputs":[]},{"line":70,"title":"keeps --run as the override and never asks for the binding","start":2440,"end":2890,"source_sha256":"a221241283cf463335416fa970a8fc84d85121c963787e462363307e95990a8d","decision":"fix","reason":"Use isolated caller state and one real JSON output; require only workerList with explicit Run override and source=flag, never a binding lookup.","parameter_inputs":[]},{"line":81,"title":"still lists every Run when the caller has no bound Run","start":2894,"end":3204,"source_sha256":"4bec21f794c4a5ca71db2e8fe3c9aa19ace8fe26984d01cb132c321feddd0d6d","decision":"fix","reason":"Use distinct no-bound-Run response, exact two-request sequence and one JSON output; preserve omitted run filter and source=all.","parameter_inputs":[]},{"line":91,"title":"names the scope in the human-readable receipt","start":3208,"end":3477,"source_sha256":"162eb6c76ad2a8d3e69ccfe30e4e0f5acb06f183b01d84a891532e9d6f8576cc","decision":"fix","reason":"Use actual single plain writer output and exact binding/enumeration order; preserve human scope wording for bound Run.","parameter_inputs":[]}],"original_declarations":4,"final_declarations":4,"validation":"reviews/root-0070-validation.json"}
+{"path":"src/cli/handlers/orchestration/worker-output.test.ts","sha256":"416aa0ad005b61d97c77cdf202b73eaf038df619e4c61c4c3162df43be448f98","reviewed_sha256":"f298b6c7e256e591cf11b4f4403d0255620ac8474a41235e5eb938edfd20b4bf","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","reviewer":"root","status":"reviewed","decision":"fix","classification":"vitest-cli-worker-receipt-and-transcript-compatibility","rationale":"Read all20 cases, source unions, actual receipt formatter and shared transcript/subagent summary paths. Keep independent full output oracles, replace borrowed twin/roster expected wording with literal expectations, correct invalid archived terminal state and remove redundant casts. Retain all existing error/provenance/mixed-version controls.","evidence":["src/cli/handlers/orchestration/worker-output.ts","src/shared/orchestration-worker-output.ts","src/shared/runtime-terminal-contracts.ts","src/shared/worker-transcript-text.ts","src/shared/native-chat-subagent-summary.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/worker-output.ts":"6fcd061ec6aa88d174eca5e51ef53eceb8f3f40f63c417f5dab9d764d66be4cf","src/shared/orchestration-worker-output.ts":"789903dea4b7ede492695d63964893c9a27ba12bb91b52e334e9f662863d780e","src/shared/runtime-terminal-contracts.ts":"8ab7f0a522e8c025317fda7a2fa65b1ca5a7b52ab877ccd63bd4ccd16105d057","src/shared/worker-transcript-text.ts":"e92f8e99fb7c7cd379a343cb5701d5f2ff23026f45fc8293a99b9f6e4ac4f0d2","src/shared/native-chat-subagent-summary.ts":"8847ccff35206cea1ba67905cec6afa65b59a23dcddb204906ffcd65b3725bcd"},"evidence_source_sha256":{"src/cli/handlers/orchestration/worker-output.ts":"6fcd061ec6aa88d174eca5e51ef53eceb8f3f40f63c417f5dab9d764d66be4cf","src/shared/orchestration-worker-output.ts":"789903dea4b7ede492695d63964893c9a27ba12bb91b52e334e9f662863d780e","src/shared/runtime-terminal-contracts.ts":"8ab7f0a522e8c025317fda7a2fa65b1ca5a7b52ab877ccd63bd4ccd16105d057","src/shared/worker-transcript-text.ts":"e92f8e99fb7c7cd379a343cb5701d5f2ff23026f45fc8293a99b9f6e4ac4f0d2","src/shared/native-chat-subagent-summary.ts":"8847ccff35206cea1ba67905cec6afa65b59a23dcddb204906ffcd65b3725bcd"},"cases":[{"line":45,"title":"renders partial effects, residual resources, and exact recovery commands for unknown starts","start":1672,"end":2715,"source_sha256":"6fd21607c7cf38a8492a22105be53d4237cc4f6820f551a817b25e7017237b91","decision":"keep","reason":"Keep exact unknown-start effects/resources/error and ordered recovery commands; expected JSON text and labels are stated independently.","parameter_inputs":[]},{"line":72,"title":"renders nonempty effects and residual resources for failed starts","start":2719,"end":3406,"source_sha256":"06cef73f61c61fffce16f0dfcd4671e3f57986a1fcf89bf8aaadb04916205876","decision":"keep","reason":"Keep failed-start nonempty worktree effects/residual resource output distinct from ready success.","parameter_inputs":[]},{"line":91,"title":"keeps ready receipts concise when effects describe successful setup","start":3410,"end":3766,"source_sha256":"13553d7b5d08cd34c454467e37d0585a4183924eef8ec385a0eb5156eb174074","decision":"keep","reason":"Keep ready receipt concise despite successful setup effects, preventing verbose recovery evidence on success.","parameter_inputs":[]},{"line":105,"title":"renders transcript provenance, incomplete coverage, warnings, and opaque cursor guidance","start":3822,"end":5277,"source_sha256":"f49942a0a84b3bd9fbc424d419ddbb31b88e3fe30113d320c76ca26e3b020f88","decision":"keep","reason":"Keep exact transcript provenance/completeness/clipping/warning/opaque continuation output and source-identity privacy by full independent string.","parameter_inputs":[]},{"line":147,"title":"labels terminal fallback evidence and every warning","start":5281,"end":6514,"source_sha256":"a2a9b04e1696b4314325c628a63696eedecb3513710b9161e371a62ae77f71d2","decision":"keep","reason":"Keep terminal fallback reason, nonexact/incomplete metadata, clipping and both warning rows with exact independent text.","parameter_inputs":[]},{"line":183,"title":"truthfully labels an exact empty transcript without reading terminal evidence","start":6518,"end":7508,"source_sha256":"3f88e756ec128692f043ba3f50146b6910a4e4856cd2b5539e3dac274c3a2f1c","decision":"keep","reason":"Keep exact-empty transcript explanation and complete=true provenance without claiming the formatter itself performed a terminal read.","parameter_inputs":[]},{"line":213,"title":"separates the PTY verdict from the fleet agent verdict","start":7511,"end":8253,"source_sha256":"56c75aee2c5b365aa187351c538a83ad87a2b7c5c3e5f6dce39dbc913c78e9fb","decision":"keep","reason":"Keep conflicting live PTY/unverifiable agent verdicts separately labeled; bare ambiguous Liveness label is forbidden.","parameter_inputs":[]},{"line":237,"title":"omits the agent verdict when the host published no projection","start":8257,"end":8899,"source_sha256":"7cf05dd678833c1c3ad6667b519b7941c8681e2a427631e8b596eb7358ad2647","decision":"keep","reason":"Keep old-host absence of fleet projection omitting agent verdict rather than inventing one.","parameter_inputs":[]},{"line":259,"title":"distinguishes a released archive read from a live one","start":8903,"end":9677,"source_sha256":"824089c4c38487049e467f1aa902074dfc93cce597d057ebdc7452711c31f72f","decision":"fix","reason":"Use valid terminal state exited for released archive fixture and remove unnecessary unchecked result cast; preserve actual archive/worker/liveness output controls.","parameter_inputs":[]},{"line":339,"title":"replays a mid-flight roster row without claiming a child is still working","start":11470,"end":12158,"source_sha256":"416a55969f677a74668935d14bae93565e75e8563537cd53b9cb579b383211d4","decision":"keep","reason":"Keep independently stated durable midflight roster text without claiming live working children; real producer supplies input while expected text is literal.","parameter_inputs":[]},{"line":361,"title":"prints the roster sentence once for the two-block row the producer writes","start":12480,"end":12970,"source_sha256":"84b164f2f783f04677970ac3b546e4ea854945be64e61c5ad7e61c0983559d39","decision":"fix","reason":"Retain real producer twin input but state expected sentence/count independently, preventing the helper from also defining its own output oracle.","parameter_inputs":[]},{"line":380,"title":"stands in for the second roster block when only one twin accompanies two","start":13216,"end":13932,"source_sha256":"82e18fb2fdb6d4f6e24e482277a74859f5fcf64a7212692c046a19ca506bd00a","decision":"fix","reason":"Retain one twin plus two distinct groups with independent expected first sentence count and singular completed second sentence; input still uses real producer.","parameter_inputs":[]},{"line":403,"title":"claims a lone twin for the group it names, not the first group in the message","start":14252,"end":14972,"source_sha256":"eebb69c25daf49b826d20f6de6d8049beea09cea967dbee5285ae5ab69575c94","decision":"fix","reason":"Retain later-group twin identity matching with independent exact completed-group sentence count and earlier group stand-in, not production-derived expected text.","parameter_inputs":[]},{"line":425,"title":"claims a trailing twin for the group it names","start":15126,"end":15814,"source_sha256":"278236d434b37aaf4e08c0898b0f047d0a71818e4093a60eaa7bc93277d486e7","decision":"fix","reason":"Retain trailing later-group twin permutation with independent expected completed sentence count and earlier group stand-in.","parameter_inputs":[]},{"line":448,"title":"stands in for a roster block that arrived without its twin","start":16032,"end":16344,"source_sha256":"b94f613638bfc5c7312cdb794bfb2a2f93cb8fbe13a6d91ecb9ae245c929f32a","decision":"fix","reason":"Retain no-twin fallback with independently stated durable stand-in sentence rather than computing expected wording through the same production helper.","parameter_inputs":[]},{"line":461,"title":"prints the roster once when the twin names a state this build cannot reproduce","start":16704,"end":17475,"source_sha256":"b76410d56107f202af1e265e8cabb40d553c2481b50192eb7794bd28edc75101","decision":"keep","reason":"Keep unknown newer-host state and frozen cancelled twin displayed once without contradictory unverifiable sentence; unavoidable malformed-wire fixture cast is line-justified.","parameter_inputs":[]},{"line":489,"title":"degrades an unknown block type from a newer host instead of throwing","start":17763,"end":18166,"source_sha256":"86acc5886beb9ae70255ac53eb1ccb487ceba8dd71c1fccb658a6e1cf3bce2b1","decision":"keep","reason":"Keep unknown newer-host block degrading to unsupported marker between surrounding text, with line-specific rationale for the malformed-wire cast.","parameter_inputs":[]},{"line":503,"title":"renders terminal tails without changing line boundaries","start":18242,"end":18612,"source_sha256":"386c8050cd0b6624bc7bf9beed85cc88f9d6c3252b80be022d9be8aaad13a25b","decision":"keep","reason":"Keep legacy terminal tail preserving interior empty line exactly.","parameter_inputs":[]},{"line":518,"title":"renders transcript blocks and survives unserializable tool input","start":18616,"end":20064,"source_sha256":"c7b761d59489a46eea0578ce2417219de98051dffc8b67d094d5f4b43dcae7fb","decision":"keep","reason":"Keep actual cyclic tool input, tool result error and image blocks rendered safely with independent full text; no JSON shortcut erases the cyclic boundary.","parameter_inputs":[]},{"line":561,"title":"renders release evidence in receipt order","start":20068,"end":20657,"source_sha256":"978fd4bdfe304f3c89620ae69cfd815da032dfd723b9e3d6ab7eb05b0b2386a1","decision":"keep","reason":"Keep release evidence order for unknown state, reason, archive, last error and recovery using exact independent text.","parameter_inputs":[]}],"original_declarations":20,"final_declarations":20,"validation":"reviews/root-0070-validation.json"}
diff --git a/docs/audits/test-value/reviews/root-0071-validation.json b/docs/audits/test-value/reviews/root-0071-validation.json
new file mode 100644
index 00000000000..582172f595d
--- /dev/null
+++ b/docs/audits/test-value/reviews/root-0071-validation.json
@@ -0,0 +1,194 @@
+{
+ "batch": "root-0071",
+ "files": 2,
+ "original_declarations": 29,
+ "original_explicit_parameter_rows": 26,
+ "runtime_cases": 47,
+ "decisions": {
+ "keep": 24,
+ "fix": 5
+ },
+ "commands": [
+ {
+ "name": "baseline-tests",
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm test src/cli/handlers/profile-state-recovery-admission.test.ts src/cli/handlers/profile-state.test.ts --reporter=default --reporter=json --outputFile=/tmp/orca-root-0071-baseline-tests.json",
+ "exit_code": 0,
+ "log": "/tmp/orca-root-0071-baseline-tests.log",
+ "log_sha256": "8a26ff6bfaf0c41b0aa62e041f2881d47341a6a99cfb650e650f18a1ee72d179",
+ "report": "/tmp/orca-root-0071-baseline-tests.json",
+ "report_sha256": "9e963748960f99e9ef4ec0e3275571a707dd5266279c675ad822df4b863d6b62",
+ "passed": 47,
+ "failed": 0
+ },
+ {
+ "name": "reviewed-tests",
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm test src/cli/handlers/profile-state-recovery-admission.test.ts src/cli/handlers/profile-state.test.ts --reporter=default --reporter=json --outputFile=/tmp/orca-root-0071-reviewed-tests.json",
+ "exit_code": 0,
+ "log": "/tmp/orca-root-0071-reviewed-tests.log",
+ "log_sha256": "838fea66547c3287eb23e2aff36a3cd694dd532014feac882c73c8b05f33bb98",
+ "report": "/tmp/orca-root-0071-reviewed-tests.json",
+ "report_sha256": "9bef678b1ddc54a4d677ef29b07e508d6a53f3da5e4ff8a7cde5b72267611fa4",
+ "passed": 47,
+ "failed": 0
+ },
+ {
+ "name": "lint",
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm exec oxlint src/cli/handlers/profile-state-recovery-admission.test.ts src/cli/handlers/profile-state.test.ts",
+ "exit_code": 0,
+ "log": "/tmp/orca-root-0071-lint.log",
+ "log_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ {
+ "name": "format",
+ "command": "pnpm exec oxfmt --check src/cli/handlers/profile-state-recovery-admission.test.ts src/cli/handlers/profile-state.test.ts",
+ "exit_code": 0,
+ "log": "/tmp/orca-root-0071-format.log",
+ "log_sha256": "5c0f52f5d8f15d3ff304f5c12a57adb52867c58709673030f760592f495da3ec"
+ },
+ {
+ "name": "typecheck",
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm tc:cli",
+ "exit_code": 0,
+ "log": "/tmp/orca-root-0071-typecheck.log",
+ "log_sha256": "64350cfafba2dd6bb61adf325923dc3c41762eb81a276ff9302796e6e77b09bc"
+ },
+ {
+ "name": "final-tests",
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm test src/cli/handlers/profile-state-recovery-admission.test.ts src/cli/handlers/profile-state.test.ts --reporter=default --reporter=json --outputFile=/tmp/orca-root-0071-final-tests.json",
+ "exit_code": 0,
+ "passed": 47,
+ "failed": 0,
+ "report": "/tmp/orca-root-0071-final-tests.json",
+ "report_sha256": "c2d0d852b9b7bcf1892b33d071e06c6944f06f41e6581cb7c55f1706e68c308f",
+ "log": "/tmp/orca-root-0071-final-tests.log",
+ "log_sha256": "30e5c3dd8c2d18f457518cefdb8aef21ee1fda38cedfb4ea46478ecae55b4bc1"
+ }
+ ],
+ "mutation": {
+ "defect": "Ignore a reachable headless runtime during profile-state recovery",
+ "production_path": "src/cli/handlers/profile-state.ts",
+ "original_source_sha256": "fb42dc4e60312b6d8af85af302be4c59def1a92fc388579796598034c30617de",
+ "restored_source_sha256": "fb42dc4e60312b6d8af85af302be4c59def1a92fc388579796598034c30617de",
+ "original_test_sha256": "8cdb996571078bfbd43a5e5d2ab31dd3df2fc442753cb47e0cb16866c0981d6e",
+ "reviewed_test_sha256": "ba6e85e57389cfcd1bde3f7ca103cbbe647fa3db63baf425ae2f46933e3b6148",
+ "results": {
+ "original-control": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/profile-state.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0071-original-control.json"
+ ],
+ "exit_code": 0,
+ "passed": 32,
+ "failed": 0,
+ "failures": [],
+ "log": "/tmp/orca-root-0071-original-control.log",
+ "report": "/tmp/orca-root-0071-original-control.json",
+ "test_sha256": "8cdb996571078bfbd43a5e5d2ab31dd3df2fc442753cb47e0cb16866c0981d6e",
+ "production_sha256": "fb42dc4e60312b6d8af85af302be4c59def1a92fc388579796598034c30617de",
+ "log_sha256": "c7fcbf86c39833e0518129e76597a83a06e1408184359d7e11ef26cf77316830",
+ "report_sha256": "bb305e6045f4195bfeeaf201c97ca6e77b478d1007b2890471510c62fab9f5cc"
+ },
+ "original-unreachable-guard-mutant": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/profile-state.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0071-original-unreachable-guard-mutant.json"
+ ],
+ "exit_code": 0,
+ "passed": 32,
+ "failed": 0,
+ "failures": [],
+ "log": "/tmp/orca-root-0071-original-unreachable-guard-mutant.log",
+ "report": "/tmp/orca-root-0071-original-unreachable-guard-mutant.json",
+ "test_sha256": "8cdb996571078bfbd43a5e5d2ab31dd3df2fc442753cb47e0cb16866c0981d6e",
+ "production_sha256": "1030a3fc6b645ff3f9d0f74af708aa944d4fc6c3dd0d741670e1f9a3c1b64673",
+ "log_sha256": "1b4366d8d268869e8ac6606fefcfdeb89eb532fb05ba07255fc9e11e9393a26c",
+ "report_sha256": "f4d92caf625c35687a7d7cd99f27a9fdba6081d45d390d28e0ee4f89e3397f80"
+ },
+ "reviewed-unreachable-guard-mutant": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/profile-state.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0071-reviewed-unreachable-guard-mutant.json"
+ ],
+ "exit_code": 1,
+ "passed": 29,
+ "failed": 3,
+ "failures": [
+ {
+ "title": "refuses rollback while runtime is reachable: --revision",
+ "messages": [
+ "AssertionError: expected false to be true // Object.is equality\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/cli/handlers/profile-state.test.ts:416:48\n at process.processTicksAndRejections (node:internal/process/task_queues:104:5)\n at async file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:20"
+ ]
+ },
+ {
+ "title": "refuses rollback while runtime is reachable: --current-json",
+ "messages": [
+ "AssertionError: expected false to be true // Object.is equality\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/cli/handlers/profile-state.test.ts:416:48\n at process.processTicksAndRejections (node:internal/process/task_queues:104:5)\n at async file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:20"
+ ]
+ },
+ {
+ "title": "refuses rollback while runtime is reachable: --latest-json",
+ "messages": [
+ "AssertionError: expected 'Unable to read profile state database\u2026' to contain 'Stop Orca'\n at /home/neil/orca/workspaces/orca/comprehensive-test-audit-7/src/cli/handlers/profile-state.test.ts:420:63\n at process.processTicksAndRejections (node:internal/process/task_queues:104:5)\n at async file:///home/neil/.local/share/pnpm/store/v11/links/@/vitest/5.0.5/33cbff1369a4b9daff886ded552569e103d10620b524069c589409db81774c01/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:20"
+ ]
+ }
+ ],
+ "log": "/tmp/orca-root-0071-reviewed-unreachable-guard-mutant.log",
+ "report": "/tmp/orca-root-0071-reviewed-unreachable-guard-mutant.json",
+ "test_sha256": "ba6e85e57389cfcd1bde3f7ca103cbbe647fa3db63baf425ae2f46933e3b6148",
+ "production_sha256": "1030a3fc6b645ff3f9d0f74af708aa944d4fc6c3dd0d741670e1f9a3c1b64673",
+ "log_sha256": "c61dcd96e11a4a8795c8f27e217deaa6d54dcda8611eaedc52b452ce0c704589",
+ "report_sha256": "8007f3ba508d4c62ea2b0bd7d9266b05bd306cbc109bfe718112ba1e9617025b"
+ },
+ "reviewed-restored": {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/profile-state.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-root-0071-reviewed-restored.json"
+ ],
+ "exit_code": 0,
+ "passed": 32,
+ "failed": 0,
+ "failures": [],
+ "log": "/tmp/orca-root-0071-reviewed-restored.log",
+ "report": "/tmp/orca-root-0071-reviewed-restored.json",
+ "test_sha256": "ba6e85e57389cfcd1bde3f7ca103cbbe647fa3db63baf425ae2f46933e3b6148",
+ "production_sha256": "fb42dc4e60312b6d8af85af302be4c59def1a92fc388579796598034c30617de",
+ "log_sha256": "50be7414c52cae2999ea96b78de3953d5beed39f224309943b1aa88f2e203c3c",
+ "report_sha256": "624ddc51425d48a19f152a76e31d31b29be853c69679a17391c4a305f0c4acbf"
+ }
+ }
+ },
+ "rejected_initial_attempt": {
+ "kind": "rejected harness evidence",
+ "reason": "Unchecked initial string replacement did not change app.running fixture. Original and reviewed tests both32 pass; no mutation discrimination claimed."
+ },
+ "integrity": {
+ "records_sha256": "a459086b6f41224b95570547c2bb60d69bc1c8f7dd38a4189c59e83cc31c160f",
+ "exact_original_case_slices_verified": 29,
+ "exact_parameter_rows_verified": 26,
+ "original_and_reviewed_hashes_verified": true,
+ "production_restoration_verified": true,
+ "original_snapshot_sha256": "e2e8b1ea97ec67d81cc42ea4a3489ec1c8b4900eaf7af0ff8174a82037feec82",
+ "plan_sha256": "2373ca7c936ebb22bfe5befba0abf791eac48e6047996e10e86c25cfa6688762"
+ },
+ "limitations": [
+ "Actual filesystem and SQLite recovery ran on Linux with RuntimeClient status mocked. No native Windows/macOS execution or app launch is claimed.",
+ "All29 declarations retained;26 explicit parameter rows expand to47 runtime cases. Final whole two-file47-case run passed after the fixture correction and production restoration.",
+ "The initial unchecked fixture string replacement missed its target. It is preserved as rejected harness evidence; only the corrected fixture comparison demonstrates32 original passes and3 intended reviewed failures."
+ ]
+}
diff --git a/docs/audits/test-value/reviews/root-0071.jsonl b/docs/audits/test-value/reviews/root-0071.jsonl
new file mode 100644
index 00000000000..c030c4e0215
--- /dev/null
+++ b/docs/audits/test-value/reviews/root-0071.jsonl
@@ -0,0 +1,2 @@
+{"path":"src/cli/handlers/profile-state-recovery-admission.test.ts","sha256":"4cacf01920be971eb3db5f3d925822cd39cd1ab5967b9a342a5d9a66f204d728","reviewed_sha256":"4cacf01920be971eb3db5f3d925822cd39cd1ab5967b9a342a5d9a66f204d728","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","reviewer":"root","status":"reviewed","decision":"keep","classification":"runtime test suite","rationale":"Retain actual offline SQLite/JSON recovery, real admission ownership, archival preservation and failure injection; no duplicate or assertion-free case found.","evidence":["src/cli/handlers/profile-state.ts","src/main/persistence/profile-state/profile-state-recovery-command.ts","src/main/persistence/profile-state/profile-state-access.ts","src/main/persistence/profile-state/profile-state-database-recovery.ts","src/main/persistence/profile-state/legacy-json/profile-state-recovery.ts","src/main/persistence/profile-state/legacy-json/profile-state-versioned-export.ts","src/cli/remote-selection-flag-rejection.ts","src/cli/runtime/profile-state-recovery-launch.ts"],"evidence_sha256":{"src/cli/handlers/profile-state.ts":"fb42dc4e60312b6d8af85af302be4c59def1a92fc388579796598034c30617de","src/main/persistence/profile-state/profile-state-recovery-command.ts":"fb98a322e21059511d97caa6b2ba5c0d39267995ea43d694974cbbf5854c7f14","src/main/persistence/profile-state/profile-state-access.ts":"f45642235b4c06ec6829323a8ec6e6585735ae220272ad5919c23e3d50ede96e","src/main/persistence/profile-state/profile-state-database-recovery.ts":"43ed1aed82890237b11c86665d1e2127a6d231bf2db789e1e1c0fb27a1fc157a","src/main/persistence/profile-state/legacy-json/profile-state-recovery.ts":"7f246ccd6bcc4e468272f85c3e4b1372d7de28cb596dc8285fa0c1785aeb207d","src/main/persistence/profile-state/legacy-json/profile-state-versioned-export.ts":"bf5c6476b6e5ad40d15939302f64a4bf1eeaff2131b591e6d01efbb87e852dc2","src/cli/remote-selection-flag-rejection.ts":"b7185fb445f38fa73856078a70a42df48b28a3e33e6c4ca6adb778d66db9481b","src/cli/runtime/profile-state-recovery-launch.ts":"1509590ce21b2a3358d9fc2241f91906f3c097b746a9b7e91ead02b489106269"},"evidence_source_sha256":{"src/cli/handlers/profile-state.ts":"fb42dc4e60312b6d8af85af302be4c59def1a92fc388579796598034c30617de","src/main/persistence/profile-state/profile-state-recovery-command.ts":"fb98a322e21059511d97caa6b2ba5c0d39267995ea43d694974cbbf5854c7f14","src/main/persistence/profile-state/profile-state-access.ts":"f45642235b4c06ec6829323a8ec6e6585735ae220272ad5919c23e3d50ede96e","src/main/persistence/profile-state/profile-state-database-recovery.ts":"43ed1aed82890237b11c86665d1e2127a6d231bf2db789e1e1c0fb27a1fc157a","src/main/persistence/profile-state/legacy-json/profile-state-recovery.ts":"7f246ccd6bcc4e468272f85c3e4b1372d7de28cb596dc8285fa0c1785aeb207d","src/main/persistence/profile-state/legacy-json/profile-state-versioned-export.ts":"bf5c6476b6e5ad40d15939302f64a4bf1eeaff2131b591e6d01efbb87e852dc2","src/cli/remote-selection-flag-rejection.ts":"b7185fb445f38fa73856078a70a42df48b28a3e33e6c4ca6adb778d66db9481b","src/cli/runtime/profile-state-recovery-launch.ts":"1509590ce21b2a3358d9fc2241f91906f3c097b746a9b7e91ead02b489106269"},"cases":[{"line":141,"title":"refuses %s rollback without changing the database when a move journal is unresolved","start":4663,"end":5379,"source_sha256":"5db34e5f59f2fa976524ccbbb67ef8f528d37260b8144200d39058603c0b8d79","decision":"keep","reason":"Both retained-backup and latest-JSON rollback encounter a real unresolved project-move intent before touching the database or intent bytes.","parameter_inputs":[{"line":141,"expression":"'backup'","row":1,"source_sha256":"1a3cfeba8b44a1314112c22401cc398c8034659016b97a3fe1af338368bca28b"},{"line":141,"expression":"'latest-json'","row":2,"source_sha256":"5f5cd180f068c91666a40e6f8adec419e064a6c8267a38cf0468ab121cb81f11"}]},{"line":156,"title":"refuses %s recovery before any mutation when a runtime has already entered","start":5383,"end":6429,"source_sha256":"3be50bec70716c83650e59065351a4348cf86d44d467aeed88a243a50c252d37","decision":"keep","reason":"An acquired runtime admission and real open database reject both recovery selectors before even taking a stopped-runtime census; exact live and backup bytes survive.","parameter_inputs":[{"line":156,"expression":"'backup'","row":1,"source_sha256":"1a3cfeba8b44a1314112c22401cc398c8034659016b97a3fe1af338368bca28b"},{"line":156,"expression":"'latest-json'","row":2,"source_sha256":"5f5cd180f068c91666a40e6f8adec419e064a6c8267a38cf0468ab121cb81f11"}]},{"line":180,"title":"exports the latest SQLite revision through CLI before handing authority to an older build","start":6433,"end":8029,"source_sha256":"a2bf6d49ec77629515cbe214d1d829d322a4a63525f3808fa91335d9e75ef426","decision":"keep","reason":"An older stale JSON mirror is replaced by independently seeded SQLite revision2 while the maintenance owner excludes admission; original files and the new export are preserved in the actual quarantine.","parameter_inputs":[]},{"line":212,"title":"preserves all prior exports before archival (failure: %s)","start":8033,"end":10154,"source_sha256":"4ab510f4e8d5d4881c7e5d5ebf2e42a41cb0a255c2eb10088ebd6853d24af6ad","decision":"keep","reason":"Both actual archive success and injected durable archive failure retain all five separately seeded prior export payloads at the appropriate locations.","parameter_inputs":[{"line":212,"expression":"false","row":1,"source_sha256":"fcbcf165908dd18a9e49f7ff27810176db8e9f63b4352213741664245224f8aa"},{"line":212,"expression":"true","row":2,"source_sha256":"b5bea41b6c623f7c09f1bf24dcae58ebab3c0cdd90ad966bc43a45b44867e12b"}]},{"line":267,"title":"leaves canonical JSON and SQLite untouched when the latest export cannot be published","start":10158,"end":10951,"source_sha256":"d27fb8dd9f4883993b202085672b9106fdfac63e65bc7c2a9895b459caa3758d","decision":"keep","reason":"A directory collision prevents publication and the real recovery preserves canonical JSON, SQLite and the retained backup, creates no quarantine and releases admission.","parameter_inputs":[]},{"line":286,"title":"rejects fabricated or released maintenance before creating the latest export","start":10955,"end":11639,"source_sha256":"b6f285bc7d152f7ffcf256dfe93285e01054d6f3cf36f12b6019d74cf71bba3c","decision":"keep","reason":"Genuine ownership identity and lifetime are checked by passing cloned and released maintenance handles; neither creates an export or alters live state.","parameter_inputs":[]},{"line":303,"title":"refuses a latest JSON handoff from a %s database instead of selecting stale JSON","start":11643,"end":12982,"source_sha256":"130348c929f128e7e9aa455a18562130c6abcdbbf5b83b0fa88cdff57a71e41f","decision":"keep","reason":"Missing, corrupt and newer-schema real databases each refuse handoff while the stale JSON, retained backup and before-image survive without an export/quarantine.","parameter_inputs":[{"line":303,"expression":"'missing'","row":1,"source_sha256":"ce50122999e160c445fa02a9e3a0a7ed47bd947fee5a76d72dbd68787de14a7c"},{"line":303,"expression":"'corrupt'","row":2,"source_sha256":"5d3306edc4b6db55fe44bd38034017760d5fd7eb69dc8cfa21952469669c3216"},{"line":303,"expression":"'newer-schema'","row":3,"source_sha256":"39e4e7bf029d57f25211da85633e5a12841c6551d3fc5889335f35e86850d611"}]},{"line":336,"title":"blocks startup between the stopped census and restoration while preserving complete original and restored state","start":12986,"end":14467,"source_sha256":"fce4c7034828a252e9d795120b26c903f2beede7a23cfb73b63beff4f8e64e57","decision":"keep","reason":"The actual stopped census runs under exclusive maintenance; both competing admissions fail, restored independent backup data and all original bytes survive, then admission succeeds.","parameter_inputs":[]},{"line":367,"title":"keeps startup blocked after failed durable publication and permits an explicit successful retry","start":14471,"end":16070,"source_sha256":"0f6e6e3292c858390a0c929823e2ce72f571c4d82f6a87ce42309e089c637b6f","decision":"keep","reason":"Injected durable-rename failure leaves startup fail-closed on preserved recovery artifacts; restoring the publication operation permits an explicit real backup retry.","parameter_inputs":[]},{"line":410,"title":"rejects fabricated or released maintenance handles before replacing any database bytes","start":16074,"end":16716,"source_sha256":"67798d124037631bc733088ed55f639e3a8fe3a3ae350e2cf6852d56374c67d9","decision":"keep","reason":"Copied and released owner handles cannot replace real database bytes in the public backup recovery path.","parameter_inputs":[]}],"original_declarations":10,"final_declarations":10,"validation":"reviews/root-0071-validation.json"}
+{"path":"src/cli/handlers/profile-state.test.ts","sha256":"8cdb996571078bfbd43a5e5d2ab31dd3df2fc442753cb47e0cb16866c0981d6e","reviewed_sha256":"ba6e85e57389cfcd1bde3f7ca103cbbe647fa3db63baf425ae2f46933e3b6148","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","reviewer":"root","status":"reviewed","decision":"fix","classification":"runtime test suite","rationale":"Retain actual main-to-storage recovery boundaries; isolate headless runtime admission, preserve all claimed recovery bytes, verify retained SQLite and restore per-case environment/exit/mocks.","evidence":["src/cli/handlers/profile-state.ts","src/main/persistence/profile-state/profile-state-recovery-command.ts","src/main/persistence/profile-state/profile-state-access.ts","src/main/persistence/profile-state/profile-state-database-recovery.ts","src/main/persistence/profile-state/legacy-json/profile-state-recovery.ts","src/main/persistence/profile-state/legacy-json/profile-state-versioned-export.ts","src/cli/remote-selection-flag-rejection.ts","src/cli/runtime/profile-state-recovery-launch.ts"],"evidence_sha256":{"src/cli/handlers/profile-state.ts":"fb42dc4e60312b6d8af85af302be4c59def1a92fc388579796598034c30617de","src/main/persistence/profile-state/profile-state-recovery-command.ts":"fb98a322e21059511d97caa6b2ba5c0d39267995ea43d694974cbbf5854c7f14","src/main/persistence/profile-state/profile-state-access.ts":"f45642235b4c06ec6829323a8ec6e6585735ae220272ad5919c23e3d50ede96e","src/main/persistence/profile-state/profile-state-database-recovery.ts":"43ed1aed82890237b11c86665d1e2127a6d231bf2db789e1e1c0fb27a1fc157a","src/main/persistence/profile-state/legacy-json/profile-state-recovery.ts":"7f246ccd6bcc4e468272f85c3e4b1372d7de28cb596dc8285fa0c1785aeb207d","src/main/persistence/profile-state/legacy-json/profile-state-versioned-export.ts":"bf5c6476b6e5ad40d15939302f64a4bf1eeaff2131b591e6d01efbb87e852dc2","src/cli/remote-selection-flag-rejection.ts":"b7185fb445f38fa73856078a70a42df48b28a3e33e6c4ca6adb778d66db9481b","src/cli/runtime/profile-state-recovery-launch.ts":"1509590ce21b2a3358d9fc2241f91906f3c097b746a9b7e91ead02b489106269"},"evidence_source_sha256":{"src/cli/handlers/profile-state.ts":"fb42dc4e60312b6d8af85af302be4c59def1a92fc388579796598034c30617de","src/main/persistence/profile-state/profile-state-recovery-command.ts":"fb98a322e21059511d97caa6b2ba5c0d39267995ea43d694974cbbf5854c7f14","src/main/persistence/profile-state/profile-state-access.ts":"f45642235b4c06ec6829323a8ec6e6585735ae220272ad5919c23e3d50ede96e","src/main/persistence/profile-state/profile-state-database-recovery.ts":"43ed1aed82890237b11c86665d1e2127a6d231bf2db789e1e1c0fb27a1fc157a","src/main/persistence/profile-state/legacy-json/profile-state-recovery.ts":"7f246ccd6bcc4e468272f85c3e4b1372d7de28cb596dc8285fa0c1785aeb207d","src/main/persistence/profile-state/legacy-json/profile-state-versioned-export.ts":"bf5c6476b6e5ad40d15939302f64a4bf1eeaff2131b591e6d01efbb87e852dc2","src/cli/remote-selection-flag-rejection.ts":"b7185fb445f38fa73856078a70a42df48b28a3e33e6c4ca6adb778d66db9481b","src/cli/runtime/profile-state-recovery-launch.ts":"1509590ce21b2a3358d9fc2241f91906f3c097b746a9b7e91ead02b489106269"},"cases":[{"line":148,"title":"restores the selected export through the offline CLI command","start":4895,"end":5778,"source_sha256":"332a8858b4de373c625e37e98367b5d5b73388cb962ce4daad0d48644d004d3d","decision":"keep","reason":"Actual main parsing and recovery restore the selected independent export, remove the damaged database family and refresh the persisted HTTP1 marker before printing a receipt.","parameter_inputs":[]},{"line":169,"title":"adopts current JSON through CLI with an honest source description","start":5782,"end":6408,"source_sha256":"83b93083e91e446567e98b7a437f1dddd4502274eaa2c742bb2970150a569df0","decision":"keep","reason":"The current JSON bytes become authoritative through actual main/handler delivery and the real human receipt identifies current JSON without inventing a revision.","parameter_inputs":[]},{"line":181,"title":"keeps current SQLite through CLI and rewrites the diverged JSON","start":6412,"end":7361,"source_sha256":"61d5b348019bc7f2c7dc52eb524d2dec7878997afd7d56e22c91a051d7b927ad","decision":"fix","reason":"Also reopen retained SQLite read-only and verify its independent seeded document, so exporting correct JSON and then deleting or corrupting SQLite cannot satisfy the claimed preservation.","parameter_inputs":[]},{"line":203,"title":"refuses to keep an unreadable SQLite and leaves JSON untouched","start":7365,"end":7886,"source_sha256":"f592537531f7f2509a2f3603beb3dc83321b167748976c12cdbc2a759caa56d5","decision":"keep","reason":"An unreadable real SQLite primary fails the actual command with nonzero exit and preserves both original JSON and damaged database bytes.","parameter_inputs":[]},{"line":213,"title":"rejects ambiguous recovery arguments: %s","start":7890,"end":8733,"source_sha256":"69cde51eb50cbd7f5cdd3573e7f918fbb82a1c25ab761e4a0a5477018946e42b","decision":"keep","reason":"All ten explicit ambiguous or valued boolean-selector combinations stop before a runtime census and retain the database.","parameter_inputs":[{"line":214,"expression":"['--current-json', '--revision', '1']","row":1,"source_sha256":"0a303fab679f8757b1639792a168421afcc0c8db9e200d0d618f77fba1c4b291"},{"line":215,"expression":"['--current-json', '--backup', '1']","row":2,"source_sha256":"95343b13b21040a22c7d3024839c5500c9e1c26488dbc4e2c0f167cd502eaf64"},{"line":216,"expression":"['--current-json', '--current-sqlite']","row":3,"source_sha256":"f6f16407117f0ffc1425c00145d5e46b813f278489d1b8d170fcf29d236adc44"},{"line":217,"expression":"['--current-json=false']","row":4,"source_sha256":"778151e1b237ed0a0b3ba76f39403ed408187bd0e8b59949ea13c3bbf6b51145"},{"line":218,"expression":"['--current-sqlite=false']","row":5,"source_sha256":"fd48a86452146fe9facf60f8e92b1a10e8602ad582267d247ab387d40807104f"},{"line":219,"expression":"['--latest-json', '--revision', '1']","row":6,"source_sha256":"d30153c0cd4739e01127b4a8bcbca3f7f2344cf83432462cee5e334a060c60d3"},{"line":220,"expression":"['--latest-json', '--backup', '1']","row":7,"source_sha256":"9c8fcbe2a9e397ed2631e3c5e645555ff93fdae5a03305bd41dc173953874280"},{"line":221,"expression":"['--latest-json', '--current-json']","row":8,"source_sha256":"b40c2bd09d79778ffb06a402893ad48f58fa0ff55a488f4c35a74f2b46e967b8"},{"line":222,"expression":"['--latest-json', '--current-sqlite']","row":9,"source_sha256":"ea9a5bc081998b5327c181b66d16ba513c636c4b669f3f7a51159fd095450ec9"},{"line":223,"expression":"['--latest-json=false']","row":10,"source_sha256":"922e34d8a302fb46c23f4dc084925525defc523e13d1e7299ec46bdc7fc0e87d"}]},{"line":234,"title":"keeps profile-state recovery local when remote selection is configured","start":8737,"end":9319,"source_sha256":"a143c71c6c7c7ecb4fe8adaf3ebd2c816aaedd40fd5d63e708a2532614fcc679","decision":"fix","reason":"Restore all stubbed environment variables and the prior exit code after each invocation; reset status and constructor mocks before each case so remote defaults cannot leak into subsequent recovery controls.","parameter_inputs":[]},{"line":246,"title":"recovers an absent database and archives every export (legacy JSON present: %s)","start":9323,"end":11282,"source_sha256":"b5b539b998f55cfe16fa6ced00bc669a12adf20f0b73f7c6b290a6ae48605dc6","decision":"keep","reason":"Both absent-primary and absent-primary-plus-JSON paths restore the exact selected bytes and archive every independently seeded export while restoring startup settings.","parameter_inputs":[{"line":246,"expression":"true","row":1,"source_sha256":"b5bea41b6c623f7c09f1bf24dcae58ebab3c0cdd90ad966bc43a45b44867e12b"},{"line":246,"expression":"false","row":2,"source_sha256":"fcbcf165908dd18a9e49f7ff27810176db8e9f63b4352213741664245224f8aa"}]},{"line":291,"title":"preserves all live recovery sources when archiving an export fails","start":11286,"end":12020,"source_sha256":"08c82822a31fb7d3cbb47a3a11becb66364ecfd36ebf72897c60ab0822613f4a","decision":"fix","reason":"Check every original byte of JSON, selected export, damaged primary and WAL after the forced archive failure, replacing existence-only checks for three sources.","parameter_inputs":[]},{"line":307,"title":"falls back to restored settings when refreshing the marker fails","start":12024,"end":13199,"source_sha256":"f4594259981368ac8a3e62d81b015db15f9f40f7662f5793bfbcbc0870e12440","decision":"keep","reason":"A forced durable marker-write failure leaves the old marker invalidated and the actual restored JSON supplies the persisted startup setting.","parameter_inputs":[]},{"line":331,"title":"preserves SQLite authority when the old marker cannot be invalidated","start":13203,"end":14092,"source_sha256":"09d76d2501335d3c8f4b2564424043c1d2d4b54620faab52900f02cb56b50b4e","decision":"keep","reason":"A non-removable marker path rejects the actual transition, preserving SQLite authority, selected export and prior JSON with nonzero command exit.","parameter_inputs":[]},{"line":350,"title":"does not invalidate the active setting for an invalid recovery export","start":14096,"end":14764,"source_sha256":"d3dcca92b20d1651acd626638a90f558789d3b804a7e82e38a1177f731140af6","decision":"keep","reason":"Invalid JSON rejects before invalidating a real active HTTP1 marker or removing the primary.","parameter_inputs":[]},{"line":365,"title":"rejects an explicit remote selector instead of silently ignoring it","start":14768,"end":15308,"source_sha256":"b8ed09dcae51ec123069c0418dca9570a1482d85586b7242edefa8bf1f60bc0e","decision":"keep","reason":"An explicit remote selector reaches the actual local-command rejection message and leaves the damaged primary present.","parameter_inputs":[]},{"line":380,"title":"refuses rollback while runtime is reachable: %s","start":15312,"end":16252,"source_sha256":"99b2786e9e2957ad412c31512f348fae62e778323372f783a54394556518e7cc","decision":"fix","reason":"Make the runtime reachable while the desktop app is stopped, isolating headless-runtime rejection from the separately retained running-app guard. This catches removal of the reachable-runtime arm.","parameter_inputs":[{"line":380,"expression":"['--revision', '1']","row":1,"source_sha256":"1f716860a204ffd0c2591e1ca7f170fe94a0c9ff7f366c32a21284ca76ad8736"},{"line":380,"expression":"['--current-json']","row":2,"source_sha256":"b9283112b65e3b461c8ed691c20ec8fa59ca083b2b801e96d926b60f661c2d78"},{"line":380,"expression":"['--latest-json']","row":3,"source_sha256":"9e277a5017ce0e684d9d622416dd13c4c38b836114f3fe6d27da91e416a9bbb1"}]},{"line":406,"title":"lists SQLite backups alongside JSON exports without opening the damaged primary","start":16256,"end":16940,"source_sha256":"c45fba29faf0f0d62b698e614ccc45f5218761cc97cb876dff15021f8b601e23","decision":"keep","reason":"Actual exports listing enumerates a real self-contained SQLite backup and JSON export while the damaged primary remains unopened and no runtime census is taken.","parameter_inputs":[]},{"line":422,"title":"restores SQLite backup authority with damaged database present=%s","start":16944,"end":18413,"source_sha256":"77412907af191639e8b027e0350659a4107ed3fa53dec92917de54fd9426c8e1","decision":"keep","reason":"Both damaged-present and missing primary paths restore independently created SQLite backup data including sealed and extension values, retain the backup and refresh the startup marker.","parameter_inputs":[{"line":422,"expression":"true","row":1,"source_sha256":"b5bea41b6c623f7c09f1bf24dcae58ebab3c0cdd90ad966bc43a45b44867e12b"},{"line":422,"expression":"false","row":2,"source_sha256":"fcbcf165908dd18a9e49f7ff27810176db8e9f63b4352213741664245224f8aa"}]},{"line":462,"title":"rejects a backup belonging to another profile before invalidating the startup marker","start":18417,"end":19172,"source_sha256":"ff77b99f5205cbc6b789d91831012cbbae98c1b6d0c5ef0008e095ea78b53d59","decision":"keep","reason":"A real backup stamped with another profile fails before altering the damaged primary or active startup marker.","parameter_inputs":[]},{"line":480,"title":"requires an unambiguous retained backup selection","start":19176,"end":19767,"source_sha256":"e3180a9e5dc1b7a6dec174970924f02a12d1e6281a3f10ac95afa30691a156c3","decision":"keep","reason":"A retained backup plus a conflicting revision is rejected by main argument parsing with exact selection error and original primary bytes.","parameter_inputs":[]},{"line":495,"title":"rejects escaping backup IDs without touching any recovery artifact","start":19771,"end":20321,"source_sha256":"b277270862798f54f04c1349456145d25b7adf0e80a27f3f9a428de2ea160ef7","decision":"fix","reason":"Compare every original recovery source byte after an escaping backup selector, extending the database-only check to JSON, selected export and WAL.","parameter_inputs":[]},{"line":509,"title":"refuses database backup restoration while the app is running","start":20325,"end":21030,"source_sha256":"3238ee0a0516ebc9e49403225a43105764dc5b5d19b02abe4ca6abc7ad493a75","decision":"keep","reason":"With runtime unreachable but the app running, backup recovery rejects through the independent app-running arm and preserves original primary bytes.","parameter_inputs":[]}],"original_declarations":19,"final_declarations":19,"validation":"reviews/root-0071-validation.json"}
diff --git a/docs/audits/test-value/reviews/upstream-0001-validation.json b/docs/audits/test-value/reviews/upstream-0001-validation.json
new file mode 100644
index 00000000000..8e6c6a17698
--- /dev/null
+++ b/docs/audits/test-value/reviews/upstream-0001-validation.json
@@ -0,0 +1,122 @@
+{
+ "batch": "upstream-stale-10",
+ "reviewer": "audit_mobile",
+ "platform": "linux",
+ "source_commit": "427fab262ca5c2db953b37cace69b906e8f13310",
+ "source_commit_provenance": "Existing progress.json inventory source reference; exact source snapshots/hashes verified without Git. Root can independently verify the commit before installing records.",
+ "reviewed_files": 10,
+ "original_declarations": 87,
+ "case_records": 87,
+ "original_static_row_uses_retained": 231,
+ "production_derived_row_uses_retained": 49,
+ "quantified_loop_policies": 2,
+ "support_fixture_arrays": 12,
+ "support_fixture_row_uses_retained": 86,
+ "new_admission_rows": 10,
+ "changed_files": [
+ "config/scripts/ci-unit-module-cache.test.mjs",
+ "src/packages/process-host/src/run-process.test.ts"
+ ],
+ "changed_cases": 6,
+ "removed_cases": 0,
+ "checks": [
+ {
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm test config/scripts/ci-dependency-download-cache.test.mjs config/scripts/ci-unit-module-cache.test.mjs src/packages/process-host/src/posix-lsof-probe.test.ts src/packages/process-host/src/process-tree-termination.test.ts src/packages/process-host/src/run-process-windows-tree-kill.test.ts src/packages/process-host/src/run-process.test.ts src/packages/process-host/src/windows-command-line.test.ts src/packages/process-host/src/windows-tree-kill.test.ts",
+ "result": "8 suites / 190 tests passed",
+ "exit_code": 0,
+ "log": "/tmp/orca-upstream-stale-10/implementation/tests.log",
+ "log_sha256": "25f43f99160536ebb43d897c408dda3be6763bad2fd47743d263a4e2f651316d"
+ },
+ {
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm --filter @orca/process-host typecheck",
+ "result": "production and test tsconfigs passed",
+ "exit_code": 0,
+ "log": "/tmp/orca-upstream-stale-10/implementation/typecheck.log",
+ "log_sha256": "fcb72d8ef8d0349b9158f225344fb2215ab82ce1da6125d0856642fbf508965d"
+ },
+ {
+ "command": "pnpm exec oxlint config/scripts/ci-unit-module-cache.test.mjs src/packages/process-host/src/run-process.test.ts",
+ "result": "passed",
+ "exit_code": 0,
+ "log": "/tmp/orca-upstream-stale-10/implementation/lint.log",
+ "log_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ {
+ "command": "pnpm exec oxfmt --check config/scripts/ci-unit-module-cache.test.mjs src/packages/process-host/src/run-process.test.ts",
+ "result": "passed",
+ "exit_code": 0,
+ "log": "/tmp/orca-upstream-stale-10/implementation/format.log",
+ "log_sha256": "5c0f52f5d8f15d3ff304f5c12a57adb52867c58709673030f760592f495da3ec"
+ },
+ {
+ "command": "ORCA_BACKGROUND_LAUNCH=1 node /tmp/orca-upstream-stale-10/implementation/mutations.cjs",
+ "result": "four copied-guard and one copied-sink mutations escaped old assertions and failed repaired assertions; four original-source callback controls passed",
+ "exit_code": 0,
+ "log": "/tmp/orca-upstream-stale-10/implementation/mutations.log",
+ "log_sha256": "04ffa5b31424cb455166cbf549d45511b3a15f950bf0c6cf5c670cc02d379eb1"
+ }
+ ],
+ "production_changes": false,
+ "shared_production_mutations": false,
+ "isolated_mutation_results": "/tmp/orca-upstream-stale-10/implementation/mutations/results.json",
+ "isolated_mutation_results_sha256": "e42112fe991a0d6dd6d1f6cae2487567170a95e7b0dd7f8f7788c3e095baa9f2",
+ "mutation_scope": "Actual original/repaired callback bodies are evaluated with a Node assert matcher adapter. Guard input is a copied YAML file. Sink experiments run the actual runProcess implementation from isolated copied production modules and real Node children with ORCA_BACKGROUND_LAUNCH=1.",
+ "mutation_limits": [
+ "The callbacks use a Node assertion matcher adapter rather than Vitest for isolated mutation comparisons. The real eight-suite Vitest run separately passed.",
+ "Copied YAML mutations evaluate policy only; no GitHub workflow or cache service is executed.",
+ "Copied production runProcess/sink checks launch real hidden Node children on Linux; no Windows/macOS native claim is made.",
+ "No shared production mutation, tracker write, staging, hook or Git command was performed."
+ ],
+ "records_sha256": "d2d9f8c8438ebb9a12cac2eb7f58b8a0da23fb1b211266e00c1cbd1546a4ac35",
+ "original_plan_sha256": "f4902820ba48641dfbdb527f2403c5391046b6d4c66ac253be59d910504fafb2",
+ "integrity_sha256": "eb1716daa9609eaca6f2ad59035375afca93940e2509d9bb5ab967a77ddcc3eb",
+ "platform_limits": [
+ "All eight suites and isolated copied-process mutations passed on Linux; no native Windows/macOS test run was performed.",
+ "Windows property substitution and injected adapters exercise state-machine/spawn policy on Linux; no taskkill.exe, Windows scheduler, native PID reuse, cmd.exe or Windows filesystem execution was validated.",
+ "Real Windows argument delivery remains in windows-command-line.win32.test.ts and windows-cmd-shim-resolution.win32.test.ts; these were read to confirm all corpus/fixture consumers, not executed.",
+ "POSIX lsof lifecycle runs real helper subprocesses on macOS/Linux; /proc/net/unix corroboration cases are Linux-only. No fresh macOS native signal/process evidence is available.",
+ "CI suites parse shipped YAML and evaluate selected expressions with synthetic contexts; they do not contact GitHub cache services, execute workflow jobs, install dependencies or measure runner throughput.",
+ "No Electron app launch, visible/native-focus check, desktop activation or live network action is part of this proposal."
+ ],
+ "preservation": [
+ "All ten approved original snapshots, ten prior-reviewed snapshots, ten before snapshots and ten pinned final snapshots remain untouched; superseding checkout source is captured separately.",
+ "All 87 original declaration titles/lines/hashes have one final legal decision; 81 unchanged case bodies match exact original hashes.",
+ "All original static and production-derived input uses, two runtime traversal policies and all support fixture rows remain.",
+ "All eight copied prior review/validation files remain byte-identical to their source records.",
+ "No staging, hooks, Git commands or tracker edits were performed."
+ ],
+ "metadata_reconciliation": "/tmp/orca-upstream-stale-10/implementation/reconciliation.json",
+ "metadata_reconciliation_sha256": "dd8e3b27c059e9b925550fb03a2cbc038d1e60aecc294ea5b9fec29131564ce3",
+ "legal_file_decisions": {
+ "keep": 8,
+ "fix": 2
+ },
+ "legal_case_decisions": {
+ "keep": 81,
+ "fix": 6
+ },
+ "source_scope": "The ten immutable stale-10 pinned final snapshots. Root subsequently integrated a newer ci-dependency-download-cache.test.mjs with the Windows2025 case; its superseding review is separate. Nine other current paths still match this batch.",
+ "superseding_current_source": {
+ "path": "config/scripts/ci-dependency-download-cache.test.mjs",
+ "original_sha256": "5b56169c9a6e96bfad4113e6a4916e27053d3e94ad033c9c13377742d1536ae5",
+ "reviewed_sha256": "5b56169c9a6e96bfad4113e6a4916e27053d3e94ad033c9c13377742d1536ae5",
+ "current_sha256": "ae63abba36ffb633792b1a3a9ac880d17927f555f2b9885a4f22af721b47043a",
+ "current_source_matches": false,
+ "current_snapshot": "/tmp/orca-upstream-stale-10/implementation/01.current-after-root-integration",
+ "current_source_status": "Root integrated the newer Windows2025 upstream version after this pinned ten-path batch. Superseding review belongs to config/root; stale-10 decisions and tests apply to the pinned final snapshot.",
+ "cases": 17,
+ "original_tables": 15,
+ "final_tables": 15
+ },
+ "plan_sha256": "ce4b94983f0d1600db09859c43e9d24dc98f524f12efa7600497b67d0a8e7c37",
+ "integration": {
+ "batch": "upstream-0001",
+ "delivered_records_sha256": "49cb020389df5faf671811d6419da94baa7749ca28f286b9d95ce4e76bd557b8",
+ "manifest_entries_verified": 180,
+ "original_git_hashes_verified": 10,
+ "current_source_hashes_verified": 9,
+ "historical_cache_record_preserved": true,
+ "superseding_cache_review": "upstream-0005",
+ "installed_records_sha256": "d2d9f8c8438ebb9a12cac2eb7f58b8a0da23fb1b211266e00c1cbd1546a4ac35"
+ }
+}
diff --git a/docs/audits/test-value/reviews/upstream-0001.jsonl b/docs/audits/test-value/reviews/upstream-0001.jsonl
new file mode 100644
index 00000000000..83fe5917357
--- /dev/null
+++ b/docs/audits/test-value/reviews/upstream-0001.jsonl
@@ -0,0 +1,10 @@
+{"path":"config/scripts/ci-dependency-download-cache.test.mjs","sha256":"5b56169c9a6e96bfad4113e6a4916e27053d3e94ad033c9c13377742d1536ae5","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","reviewed_sha256":"5b56169c9a6e96bfad4113e6a4916e27053d3e94ad033c9c13377742d1536ae5","reviewer":"audit_mobile","status":"reviewed","decision":"keep","rationale":"Only the expected actual PR unit runner changes from Blacksmith four-core to eight-core; declaration/row domains are unchanged.","evidence":["config/scripts/ci-unit-module-cache.mjs","config/scripts/ci-unit-module-cache-contents.mjs","config/scripts/ci-unit-module-cache-trailer.mjs","config/scripts/pr-code-change-scope.mjs","config/scripts/pr-package-test-paths.mjs",".github/actions/install-node-dependencies/action.yml",".github/actions/prepare-native-runtime/action.yml",".github/workflows/unit-tests.yml",".github/workflows/unit-module-cache-benchmark.yml",".github/workflows/ci-cache-warmup.yml",".github/workflows/ci-cache-warmup-platforms.yml",".github/workflows/ci-cache-warmup-platform-jobs.yml",".github/workflows/pr.yml",".github/workflows/release-cut.yml",".github/workflows/dev-channel-win-build.yml",".github/workflows/windows-signing-rehearsal.yml",".github/workflows/node-server-tests.yml",".github/workflows/ssh-windows-hosts.yml",".github/workflows/mobile.yml",".github/workflows/adhoc-mac-build.yml",".github/workflows/daily-mac-build.yml",".github/workflows/hourly-mac-build.yml",".github/workflows/release-mac-build.yml","package.json"],"cases":[{"line":13,"endLine":33,"source_sha256":"e80585574c2c2f1cc71f50c1201d8966a543bf4b6dbf553e74cf14b98396f2a2","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","id":"1.1","title":"scopes desktop stores to the root lockfile and lets mixed installs opt in","decision":"keep","reason":"Root-only and mixed-lockfile cache identity is checked against actual installer/mobile YAML; script-free frozen installation and lockfile guard remain observable configuration contracts.","final_line":13,"final_title":"scopes desktop stores to the root lockfile and lets mixed installs opt in","final_source_sha256":"e80585574c2c2f1cc71f50c1201d8966a543bf4b6dbf553e74cf14b98396f2a2","implementation_status":"validated","input_decisions":[{"table_id":"1.T5","provenance":"pinned production-derived domain","row":1,"value":{"name":"Setup Node.js","id":"default-node","if":"inputs.node-version == ''","uses":"actions/setup-node@v6","with":{"node-version-file":"package.json","check-latest":true,"cache":"${{ github.event_name != 'pull_request' && inputs.cache-pnpm-store != 'false' && steps.pnpm-store-mode.outputs.lookup-only != 'true' && 'pnpm' || '' }}","cache-dependency-path":"${{ inputs.cache-dependency-path }}","package-manager-cache":false}},"value_json_sha256":"82d3cef26282b251c4b02164196cf10635b6f37862d4a05e70dd3543f10cd039","decision":"keep","reason":"Preserve this actual production-derived input to 1.1; its independently asserted behavior must apply to every current member."},{"table_id":"1.T5","provenance":"pinned production-derived domain","row":2,"value":{"name":"Setup requested Node.js","id":"requested-node","if":"inputs.node-version != ''","uses":"actions/setup-node@v6","with":{"node-version":"${{ inputs.node-version }}","check-latest":true,"cache":"${{ github.event_name != 'pull_request' && inputs.cache-pnpm-store != 'false' && steps.pnpm-store-mode.outputs.lookup-only != 'true' && 'pnpm' || '' }}","cache-dependency-path":"${{ inputs.cache-dependency-path }}","package-manager-cache":false}},"value_json_sha256":"6035dbedbdb8e6a728e019b8e1c5414bcaa713318024773b73ee55da02d20dec","decision":"keep","reason":"Preserve this actual production-derived input to 1.1; its independently asserted behavior must apply to every current member."}]},{"line":35,"endLine":46,"source_sha256":"44186b3fc2649c03bbb83b1e84903ce816667eec51c5391d19064f13e64137fe","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","id":"1.2","title":"builds internal packages before native preparation after a script-free install","decision":"keep","reason":"The internal-package build must remain unconditional between install and native preparation; --if-present supports older release refs.","final_line":35,"final_title":"builds internal packages before native preparation after a script-free install","final_source_sha256":"44186b3fc2649c03bbb83b1e84903ce816667eec51c5391d19064f13e64137fe","implementation_status":"validated"},{"line":48,"endLine":77,"source_sha256":"5120547e65ebf36754466c0f2df2175f51e8cd1d03f65a2d336e3f0a6a56eef3","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","id":"1.3","title":"restores PR stores except measured Windows, Linux and macOS installs, without a post-job save","decision":"keep","reason":"Actual restore-only cache action, exact archive key/path, restore-before-install order and sole verification-cache save prevent PR archive uploads and incompatible restoration.","final_line":48,"final_title":"restores PR stores except measured Windows, Linux and macOS installs, without a post-job save","final_source_sha256":"5120547e65ebf36754466c0f2df2175f51e8cd1d03f65a2d336e3f0a6a56eef3","implementation_status":"validated"},{"line":79,"endLine":96,"source_sha256":"f479f9f152f5433a898d8bd3fde22f769d5dc49a41ac026ec4899be978a0db87","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","id":"1.4","title":"keeps producer lookup optional and compatible with the existing store archive","decision":"keep","reason":"Lookup-only producer uses the same archive key as restoration, exports usable cache-hit provenance and runs before installation. This case checks downstream wiring, not execution of the mode-selection shell.","final_line":79,"final_title":"keeps producer lookup optional and compatible with the existing store archive","final_source_sha256":"f479f9f152f5433a898d8bd3fde22f769d5dc49a41ac026ec4899be978a0db87","implementation_status":"validated"},{"line":98,"endLine":270,"source_sha256":"dd6cdc2f53930fa48e43c97e4f31fab748740f7d91edaaada76bc8f6753441e1","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","id":"1.5","title":"%s keeps its scoped store policy","decision":"keep","reason":"All 42 platform/event/root/mixed/custom/opt-out/lookup fixture rows evaluate actual downstream workflow expressions against independently specified restore/cache outcomes. Lookup output is deliberately supplied as a boundary fixture; auto selection is outside this case.","final_line":98,"final_title":"%s keeps its scoped store policy","final_source_sha256":"dd6cdc2f53930fa48e43c97e4f31fab748740f7d91edaaada76bc8f6753441e1","implementation_status":"validated","input_decisions":[{"table_id":"1.T1","line":99,"endLine":99,"expression":"['Windows x64 mixed PR', 'pull_request', 'Windows', 'X64', true, false, '']","source_sha256":"784391694e277c8127f057e12947c2e2fe29dec0467154ccca9222d9f42f05e7","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":1,"decision":"keep","reason":"Windows x64 mixed PR: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=Windows, arch=X64, lockfile selector=True, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows x64 mixed PR","pull_request","Windows","X64",true,false,""]},{"table_id":"1.T1","line":100,"endLine":100,"expression":"['Windows ARM64 mixed PR', 'pull_request', 'Windows', 'ARM64', true, true, '']","source_sha256":"17d7a7eb706d7dec2444ba93c487400cf9efb8c425f5bc212fc2ce6a4b32bbab","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":2,"decision":"keep","reason":"Windows ARM64 mixed PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=Windows, arch=ARM64, lockfile selector=True, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows ARM64 mixed PR","pull_request","Windows","ARM64",true,true,""]},{"table_id":"1.T1","line":101,"endLine":101,"expression":"['Windows x86 mixed PR', 'pull_request', 'Windows', 'X86', true, true, '']","source_sha256":"91fc92a8cf65c78d41fbaaaf8618830ef7471f60ec1dfecc9d45df785293616e","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":3,"decision":"keep","reason":"Windows x86 mixed PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=Windows, arch=X86, lockfile selector=True, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows x86 mixed PR","pull_request","Windows","X86",true,true,""]},{"table_id":"1.T1","line":102,"endLine":102,"expression":"['Windows x64 root-only PR', 'pull_request', 'Windows', 'X64', false, false, '']","source_sha256":"f0ba44eeaf7257eed4699900dec2d5717d59316bbb8129e728bb8f11405f5f6d","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":4,"decision":"keep","reason":"Windows x64 root-only PR: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=Windows, arch=X64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows x64 root-only PR","pull_request","Windows","X64",false,false,""]},{"table_id":"1.T1","line":103,"endLine":103,"expression":"['Windows ARM64 root-only PR', 'pull_request', 'Windows', 'ARM64', false, false, '']","source_sha256":"5201fc7bdd28b6793e3b286e20205092d0128d3fdeb98057cb8bbc51e7ddb422","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":5,"decision":"keep","reason":"Windows ARM64 root-only PR: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=Windows, arch=ARM64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows ARM64 root-only PR","pull_request","Windows","ARM64",false,false,""]},{"table_id":"1.T1","line":104,"endLine":104,"expression":"['Windows x86 root-only PR', 'pull_request', 'Windows', 'X86', false, true, '']","source_sha256":"a9e49ea178498e1e62a884077f45f85f83cad8091db85c981dadc195250eb7b4","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":6,"decision":"keep","reason":"Windows x86 root-only PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=Windows, arch=X86, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows x86 root-only PR","pull_request","Windows","X86",false,true,""]},{"table_id":"1.T1","line":105,"endLine":105,"expression":"['Windows x64 custom PR', 'pull_request', 'Windows', 'X64', 'cloud/pnpm-lock.yaml', true, '']","source_sha256":"5a0212d56030b3e1c19588e28fed4b4063c850045a794b816ee0ed1d4f092c98","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":7,"decision":"keep","reason":"Windows x64 custom PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=Windows, arch=X64, lockfile selector='cloud/pnpm-lock.yaml', explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows x64 custom PR","pull_request","Windows","X64","cloud/pnpm-lock.yaml",true,""]},{"table_id":"1.T1","line":106,"endLine":114,"expression":"[\n 'Windows ARM64 custom PR',\n 'pull_request',\n 'Windows',\n 'ARM64',\n 'cloud/pnpm-lock.yaml',\n true,\n ''\n ]","source_sha256":"dededeb50bda8bd4ea0f1d67edfc867120fb7f9482490423ed13fc6e4874bbda","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":8,"decision":"keep","reason":"Windows ARM64 custom PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=Windows, arch=ARM64, lockfile selector='cloud/pnpm-lock.yaml', explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows ARM64 custom PR","pull_request","Windows","ARM64","cloud/pnpm-lock.yaml",true,""]},{"table_id":"1.T1","line":115,"endLine":115,"expression":"['Windows ARM64 root-only push', 'push', 'Windows', 'ARM64', false, false, 'pnpm']","source_sha256":"18c918770bbf9a2f3efb56302bcae7b1c33f442ee93ce4646b1389d008430a9a","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":9,"decision":"keep","reason":"Windows ARM64 root-only push: preserve expected restore=False and setup-node cache='pnpm'; retain event=push, OS=Windows, arch=ARM64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows ARM64 root-only push","push","Windows","ARM64",false,false,"pnpm"]},{"table_id":"1.T1","line":116,"endLine":124,"expression":"[\n 'Windows ARM64 root-only manual run',\n 'workflow_dispatch',\n 'Windows',\n 'ARM64',\n false,\n false,\n 'pnpm'\n ]","source_sha256":"32452c58fa626a95479429703a2c24b39b064c38eb04e33b5d4ecaf17591692c","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":10,"decision":"keep","reason":"Windows ARM64 root-only manual run: preserve expected restore=False and setup-node cache='pnpm'; retain event=workflow_dispatch, OS=Windows, arch=ARM64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows ARM64 root-only manual run","workflow_dispatch","Windows","ARM64",false,false,"pnpm"]},{"table_id":"1.T1","line":125,"endLine":125,"expression":"['Explicit Linux PR opt-out', 'pull_request', 'Linux', 'X64', false, false, '', 'false']","source_sha256":"dae28806ff4b9c2a6ebbbc984a075c8c43b75f732110c0467abfb4e523ae8f2c","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":11,"decision":"keep","reason":"Explicit Linux PR opt-out: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=Linux, arch=X64, lockfile selector=False, explicit store-cache='false', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Explicit Linux PR opt-out","pull_request","Linux","X64",false,false,"","false"]},{"table_id":"1.T1","line":126,"endLine":126,"expression":"['Explicit Windows push opt-out', 'push', 'Windows', 'ARM64', false, false, '', 'false']","source_sha256":"308616fe6e3da36d1fdf0b0a4fe1b0d94dc78623d915005ce2a175ae05bcb2ee","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":12,"decision":"keep","reason":"Explicit Windows push opt-out: preserve expected restore=False and setup-node cache=''; retain event=push, OS=Windows, arch=ARM64, lockfile selector=False, explicit store-cache='false', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Explicit Windows push opt-out","push","Windows","ARM64",false,false,"","false"]},{"table_id":"1.T1","line":127,"endLine":136,"expression":"[\n 'Explicit Windows manual opt-out',\n 'workflow_dispatch',\n 'Windows',\n 'X64',\n false,\n false,\n '',\n 'false'\n ]","source_sha256":"6bdf44047bae73fccd186a4ad40bd66a16b8094896e46be8b6371c53796e0e50","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":13,"decision":"keep","reason":"Explicit Windows manual opt-out: preserve expected restore=False and setup-node cache=''; retain event=workflow_dispatch, OS=Windows, arch=X64, lockfile selector=False, explicit store-cache='false', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Explicit Windows manual opt-out","workflow_dispatch","Windows","X64",false,false,"","false"]},{"table_id":"1.T1","line":137,"endLine":146,"expression":"[\n 'Explicit custom-store opt-out',\n 'pull_request',\n 'Windows',\n 'X64',\n 'cloud/pnpm-lock.yaml',\n false,\n '',\n 'false'\n ]","source_sha256":"68489a5897d20c5f548e5132f71e99fa64999b56812d7c62636c849e7aa41819","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":14,"decision":"keep","reason":"Explicit custom-store opt-out: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=Windows, arch=X64, lockfile selector='cloud/pnpm-lock.yaml', explicit store-cache='false', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Explicit custom-store opt-out","pull_request","Windows","X64","cloud/pnpm-lock.yaml",false,"","false"]},{"table_id":"1.T1","line":147,"endLine":147,"expression":"['Windows x64 root-only push', 'push', 'Windows', 'X64', false, false, 'pnpm']","source_sha256":"e5b93713cf2122fae4762a5c182dffe03068262e545c29305d9746f17e17ae7c","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":15,"decision":"keep","reason":"Windows x64 root-only push: preserve expected restore=False and setup-node cache='pnpm'; retain event=push, OS=Windows, arch=X64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows x64 root-only push","push","Windows","X64",false,false,"pnpm"]},{"table_id":"1.T1","line":148,"endLine":148,"expression":"['Linux x64 root-only PR', 'pull_request', 'Linux', 'X64', false, false, '']","source_sha256":"4a8f92c3d69860b34156c69172fc78cd1c0ed7fda821ed86d360339b9933932f","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":16,"decision":"keep","reason":"Linux x64 root-only PR: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=Linux, arch=X64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Linux x64 root-only PR","pull_request","Linux","X64",false,false,""]},{"table_id":"1.T1","line":149,"endLine":149,"expression":"['Linux ARM64 root-only PR', 'pull_request', 'Linux', 'ARM64', false, false, '']","source_sha256":"b2edb1ad2fd330a4f4cd1ae00944a889e694929cdb5610566624fbb881cad952","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":17,"decision":"keep","reason":"Linux ARM64 root-only PR: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=Linux, arch=ARM64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Linux ARM64 root-only PR","pull_request","Linux","ARM64",false,false,""]},{"table_id":"1.T1","line":150,"endLine":150,"expression":"['Linux x86 root-only PR', 'pull_request', 'Linux', 'X86', false, true, '']","source_sha256":"b50fdb17331565ad0178f75de117b95ae0af96e592a64814ccbb03b1036e2f5c","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":18,"decision":"keep","reason":"Linux x86 root-only PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=Linux, arch=X86, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Linux x86 root-only PR","pull_request","Linux","X86",false,true,""]},{"table_id":"1.T1","line":151,"endLine":151,"expression":"['Linux ARM root-only PR', 'pull_request', 'Linux', 'ARM', false, true, '']","source_sha256":"9a66a37c25ae0de68bc10d389dde60a22b269b383bc9ffc6e356c6958fca6790","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":19,"decision":"keep","reason":"Linux ARM root-only PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=Linux, arch=ARM, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Linux ARM root-only PR","pull_request","Linux","ARM",false,true,""]},{"table_id":"1.T1","line":152,"endLine":152,"expression":"['Linux x64 custom PR', 'pull_request', 'Linux', 'X64', 'cloud/pnpm-lock.yaml', true, '']","source_sha256":"e405914cf2ef6672fd6f8319551d53f90a07a70cda4975a0543d4259e0b74e95","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":20,"decision":"keep","reason":"Linux x64 custom PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=Linux, arch=X64, lockfile selector='cloud/pnpm-lock.yaml', explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Linux x64 custom PR","pull_request","Linux","X64","cloud/pnpm-lock.yaml",true,""]},{"table_id":"1.T1","line":153,"endLine":153,"expression":"['Linux x64 root-only push', 'push', 'Linux', 'X64', false, false, 'pnpm']","source_sha256":"7bdbd9ca2f3ab4ab976e06040e5936ced91f2117cf6e51e083961c2cda25f0d4","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":21,"decision":"keep","reason":"Linux x64 root-only push: preserve expected restore=False and setup-node cache='pnpm'; retain event=push, OS=Linux, arch=X64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Linux x64 root-only push","push","Linux","X64",false,false,"pnpm"]},{"table_id":"1.T1","line":154,"endLine":154,"expression":"['Linux ARM64 root-only manual', 'workflow_dispatch', 'Linux', 'ARM64', false, false, 'pnpm']","source_sha256":"708eb54784fcf7679efa9778f5fc4db15cf5b008fa1ac499b666d686a003d829","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":22,"decision":"keep","reason":"Linux ARM64 root-only manual: preserve expected restore=False and setup-node cache='pnpm'; retain event=workflow_dispatch, OS=Linux, arch=ARM64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Linux ARM64 root-only manual","workflow_dispatch","Linux","ARM64",false,false,"pnpm"]},{"table_id":"1.T1","line":155,"endLine":155,"expression":"['macOS x64 root-only PR', 'pull_request', 'macOS', 'X64', false, false, '']","source_sha256":"b803b6c4c579c48a5a02c1d32971c3895c82298d16795b1f333410cbaf9e4538","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":23,"decision":"keep","reason":"macOS x64 root-only PR: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=macOS, arch=X64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS x64 root-only PR","pull_request","macOS","X64",false,false,""]},{"table_id":"1.T1","line":156,"endLine":156,"expression":"['macOS ARM64 root-only PR', 'pull_request', 'macOS', 'ARM64', false, false, '']","source_sha256":"a02251f35e198e170c3f7cc0bd60b9304eb0190fecd70f5981a5898caf22fb3b","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":24,"decision":"keep","reason":"macOS ARM64 root-only PR: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=macOS, arch=ARM64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS ARM64 root-only PR","pull_request","macOS","ARM64",false,false,""]},{"table_id":"1.T1","line":157,"endLine":157,"expression":"['macOS x86 root-only PR', 'pull_request', 'macOS', 'X86', false, true, '']","source_sha256":"b90c2cde7a096a631b561defb4dc1792e9b1a908f56f6ee9807acec5b62ec40f","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":25,"decision":"keep","reason":"macOS x86 root-only PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=macOS, arch=X86, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS x86 root-only PR","pull_request","macOS","X86",false,true,""]},{"table_id":"1.T1","line":158,"endLine":158,"expression":"['macOS x64 mixed PR', 'pull_request', 'macOS', 'X64', true, true, '']","source_sha256":"ea6b1733b7e22d5aa512985f7c13125b13c6903079b4f8f67f11f6f296053d6d","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":26,"decision":"keep","reason":"macOS x64 mixed PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=macOS, arch=X64, lockfile selector=True, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS x64 mixed PR","pull_request","macOS","X64",true,true,""]},{"table_id":"1.T1","line":159,"endLine":159,"expression":"['macOS ARM64 mixed PR', 'pull_request', 'macOS', 'ARM64', true, true, '']","source_sha256":"7298737962d514318adac006cf9503397c909b951f70faa8094b40da9780b94e","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":27,"decision":"keep","reason":"macOS ARM64 mixed PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=macOS, arch=ARM64, lockfile selector=True, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS ARM64 mixed PR","pull_request","macOS","ARM64",true,true,""]},{"table_id":"1.T1","line":160,"endLine":160,"expression":"['macOS ARM64 custom PR', 'pull_request', 'macOS', 'ARM64', 'cloud/pnpm-lock.yaml', true, '']","source_sha256":"cf70d8f7849e1615b9959d49924b5340a54e47efa2b97d1939de979ed773547d","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":28,"decision":"keep","reason":"macOS ARM64 custom PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=macOS, arch=ARM64, lockfile selector='cloud/pnpm-lock.yaml', explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS ARM64 custom PR","pull_request","macOS","ARM64","cloud/pnpm-lock.yaml",true,""]},{"table_id":"1.T1","line":161,"endLine":161,"expression":"['macOS ARM64 opted-out PR', 'pull_request', 'macOS', 'ARM64', true, false, '', 'false']","source_sha256":"000ad813af3eebc21bf632bd15b9a3aa375f4eb966baaf0f722d0bb87f54394b","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":29,"decision":"keep","reason":"macOS ARM64 opted-out PR: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=macOS, arch=ARM64, lockfile selector=True, explicit store-cache='false', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS ARM64 opted-out PR","pull_request","macOS","ARM64",true,false,"","false"]},{"table_id":"1.T1","line":162,"endLine":162,"expression":"['macOS x64 root-only push', 'push', 'macOS', 'X64', false, false, 'pnpm']","source_sha256":"ac2dbc657b44876b034c4f8ee69dbc3e7200fe4588255797be96df97b0b2534c","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":30,"decision":"keep","reason":"macOS x64 root-only push: preserve expected restore=False and setup-node cache='pnpm'; retain event=push, OS=macOS, arch=X64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS x64 root-only push","push","macOS","X64",false,false,"pnpm"]},{"table_id":"1.T1","line":163,"endLine":163,"expression":"['macOS ARM64 root-only manual', 'workflow_dispatch', 'macOS', 'ARM64', false, false, 'pnpm']","source_sha256":"9c474eca89f7c788a6c8e080f5116d1701e2cf070e8438c7bed446f05909d657","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":31,"decision":"keep","reason":"macOS ARM64 root-only manual: preserve expected restore=False and setup-node cache='pnpm'; retain event=workflow_dispatch, OS=macOS, arch=ARM64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS ARM64 root-only manual","workflow_dispatch","macOS","ARM64",false,false,"pnpm"]},{"table_id":"1.T1","line":164,"endLine":164,"expression":"['Linux x64 mixed PR', 'pull_request', 'Linux', 'X64', true, true, '']","source_sha256":"cca563f4859437c1237a2a6ed93be466d43805296be3b9776a5af55030de7cc6","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":32,"decision":"keep","reason":"Linux x64 mixed PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=Linux, arch=X64, lockfile selector=True, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Linux x64 mixed PR","pull_request","Linux","X64",true,true,""]},{"table_id":"1.T1","line":165,"endLine":165,"expression":"['Linux ARM64 mixed PR', 'pull_request', 'Linux', 'ARM64', true, true, '']","source_sha256":"12bf1a65781a67bc2c77cdcdb558efc796fbd69ef74c8b0b19861fe89a097b2e","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":33,"decision":"keep","reason":"Linux ARM64 mixed PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=Linux, arch=ARM64, lockfile selector=True, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Linux ARM64 mixed PR","pull_request","Linux","ARM64",true,true,""]},{"table_id":"1.T1","line":166,"endLine":166,"expression":"['Windows x64 mixed push', 'push', 'Windows', 'X64', true, false, 'pnpm']","source_sha256":"6d8f262142aeb9eb9b1c762a68c2503442ee999f034faf5e568edd6a4d4591ed","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":34,"decision":"keep","reason":"Windows x64 mixed push: preserve expected restore=False and setup-node cache='pnpm'; retain event=push, OS=Windows, arch=X64, lockfile selector=True, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows x64 mixed push","push","Windows","X64",true,false,"pnpm"]},{"table_id":"1.T1","line":167,"endLine":167,"expression":"['Windows x64 mixed manual run', 'workflow_dispatch', 'Windows', 'X64', true, false, 'pnpm']","source_sha256":"2be7c01b659f64a1ec34768cb0bad49176f27456796b590b7e92bda3f0fda717","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":35,"decision":"keep","reason":"Windows x64 mixed manual run: preserve expected restore=False and setup-node cache='pnpm'; retain event=workflow_dispatch, OS=Windows, arch=X64, lockfile selector=True, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows x64 mixed manual run","workflow_dispatch","Windows","X64",true,false,"pnpm"]},{"table_id":"1.T1","line":168,"endLine":168,"expression":"['Windows x64 lookup producer', 'push', 'Windows', 'X64', false, false, '', 'true', 'true']","source_sha256":"f761e3d8dbb08d8c25d32d88c787998b4d56d92fe5df3ba477fcb38994109f59","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":36,"decision":"keep","reason":"Windows x64 lookup producer: preserve expected restore=False and setup-node cache=''; retain event=push, OS=Windows, arch=X64, lockfile selector=False, explicit store-cache='true', and lookup request='true'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows x64 lookup producer","push","Windows","X64",false,false,"","true","true"]},{"table_id":"1.T1","line":169,"endLine":179,"expression":"[\n 'Windows ARM64 lookup producer',\n 'schedule',\n 'Windows',\n 'ARM64',\n false,\n false,\n '',\n 'true',\n 'true'\n ]","source_sha256":"d3a0a3f0a72ecd328a89bbd741bb6f32612762ee05504343c5c9247d448e21bb","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":37,"decision":"keep","reason":"Windows ARM64 lookup producer: preserve expected restore=False and setup-node cache=''; retain event=schedule, OS=Windows, arch=ARM64, lockfile selector=False, explicit store-cache='true', and lookup request='true'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows ARM64 lookup producer","schedule","Windows","ARM64",false,false,"","true","true"]},{"table_id":"1.T1","line":180,"endLine":180,"expression":"['macOS ARM64 lookup producer', 'push', 'macOS', 'ARM64', false, false, '', 'true', 'true']","source_sha256":"c0f5d1b903889e234c7f7cb0ab4b04aeeb3b159f04c75139132e66f5aef1623d","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":38,"decision":"keep","reason":"macOS ARM64 lookup producer: preserve expected restore=False and setup-node cache=''; retain event=push, OS=macOS, arch=ARM64, lockfile selector=False, explicit store-cache='true', and lookup request='true'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS ARM64 lookup producer","push","macOS","ARM64",false,false,"","true","true"]},{"table_id":"1.T1","line":181,"endLine":191,"expression":"[\n 'Linux x64 lookup producer',\n 'workflow_dispatch',\n 'Linux',\n 'X64',\n false,\n false,\n '',\n 'true',\n 'true'\n ]","source_sha256":"1708a957e673baff1d71daaa66f829e621073d163687b702c506ce7fac124399","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":39,"decision":"keep","reason":"Linux x64 lookup producer: preserve expected restore=False and setup-node cache=''; retain event=workflow_dispatch, OS=Linux, arch=X64, lockfile selector=False, explicit store-cache='true', and lookup request='true'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Linux x64 lookup producer","workflow_dispatch","Linux","X64",false,false,"","true","true"]},{"table_id":"1.T1","line":192,"endLine":192,"expression":"['Opted-out lookup producer', 'push', 'Windows', 'ARM64', false, false, '', 'false', 'true']","source_sha256":"fcfe2272362042df72057c215ca38aa883254a1ac0fd804f23b05be2f5cdaf84","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":40,"decision":"keep","reason":"Opted-out lookup producer: preserve expected restore=False and setup-node cache=''; retain event=push, OS=Windows, arch=ARM64, lockfile selector=False, explicit store-cache='false', and lookup request='true'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Opted-out lookup producer","push","Windows","ARM64",false,false,"","false","true"]},{"table_id":"1.T1","line":193,"endLine":203,"expression":"[\n 'macOS root PR lookup flag',\n 'pull_request',\n 'macOS',\n 'ARM64',\n false,\n false,\n '',\n 'true',\n 'true'\n ]","source_sha256":"9809de25273dc16950a7a5c449870bf09b23f1f482cea4524ce02645ac09e871","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":41,"decision":"keep","reason":"macOS root PR lookup flag: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=macOS, arch=ARM64, lockfile selector=False, explicit store-cache='true', and lookup request='true'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS root PR lookup flag","pull_request","macOS","ARM64",false,false,"","true","true"]},{"table_id":"1.T1","line":204,"endLine":204,"expression":"['macOS mixed PR lookup flag', 'pull_request', 'macOS', 'ARM64', true, true, '', 'true', 'true']","source_sha256":"df7c242b33a204a8540d27eea9bf617354bcb401f038f6ee679bf15a73064a9f","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":42,"decision":"keep","reason":"macOS mixed PR lookup flag: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=macOS, arch=ARM64, lockfile selector=True, explicit store-cache='true', and lookup request='true'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS mixed PR lookup flag","pull_request","macOS","ARM64",true,true,"","true","true"]},{"table_id":"1.T6","provenance":"pinned production-derived domain","row":1,"value":{"name":"Resolve pnpm download store","id":"pnpm-store","if":"github.event_name == 'pull_request' && inputs.cache-pnpm-store != 'false' && !((runner.os == 'Linux' || runner.os == 'macOS') && (runner.arch == 'X64' || runner.arch == 'ARM64') && inputs.cache-dependency-path == 'pnpm-lock.yaml') && (runner.os != 'Windows' || !(runner.arch == 'X64' && contains(inputs.cache-dependency-path, 'mobile/pnpm-lock.yaml')) && !((runner.arch == 'X64' || runner.arch == 'ARM64') && inputs.cache-dependency-path == 'pnpm-lock.yaml')) || (github.event_name != 'pull_request' && inputs.cache-pnpm-store != 'false' && steps.pnpm-store-mode.outputs.lookup-only == 'true')","shell":"bash","env":{"LOCKFILE_HASH":"${{ hashFiles(inputs.cache-dependency-path) }}","STORE_LOOKUP_ONLY":"${{ steps.pnpm-store-mode.outputs.lookup-only == 'true' }}"},"run":"test -n \"$LOCKFILE_HASH\"\ncache_path=\"$(pnpm store path --silent)\"\ntest -n \"$cache_path\"\nprintf 'path=%s\\n' \"$cache_path\" >> \"$GITHUB_OUTPUT\"\nprintf 'arch=%s\\n' \"$(node -p 'require(\"node:os\").arch()')\" >> \"$GITHUB_OUTPUT\"\nif [ \"$STORE_LOOKUP_ONLY\" = 'true' ]; then\n printf 'ORCA_PNPM_STORE_CACHE_PATH=%s\\n' \"$cache_path\" >> \"$GITHUB_ENV\"\nfi\n"},"value_json_sha256":"e7b6c66cd4e8a06167c93326c5b88daed7059f46a69bea5e077230b8cf845a02","decision":"keep","reason":"Preserve this actual production-derived input to 1.5; its independently asserted behavior must apply to every current member."},{"table_id":"1.T6","provenance":"pinned production-derived domain","row":2,"value":{"name":"Restore pnpm download store without saving","id":"pnpm-store-restore","if":"github.event_name == 'pull_request' && inputs.cache-pnpm-store != 'false' && !((runner.os == 'Linux' || runner.os == 'macOS') && (runner.arch == 'X64' || runner.arch == 'ARM64') && inputs.cache-dependency-path == 'pnpm-lock.yaml') && (runner.os != 'Windows' || !(runner.arch == 'X64' && contains(inputs.cache-dependency-path, 'mobile/pnpm-lock.yaml')) && !((runner.arch == 'X64' || runner.arch == 'ARM64') && inputs.cache-dependency-path == 'pnpm-lock.yaml'))","uses":"actions/cache/restore@v5","with":{"path":"${{ steps.pnpm-store.outputs.path }}","key":"node-cache-${{ runner.os }}-${{ steps.pnpm-store.outputs.arch }}-pnpm-${{ hashFiles(inputs.cache-dependency-path) }}"}},"value_json_sha256":"3d100201105d0a44ebacbf9f379e8f595069eb3e60f246ba18c581aadc8bf583","decision":"keep","reason":"Preserve this actual production-derived input to 1.5; its independently asserted behavior must apply to every current member."},{"table_id":"1.T7","provenance":"pinned production-derived domain","row":1,"value":{"name":"Setup Node.js","id":"default-node","if":"inputs.node-version == ''","uses":"actions/setup-node@v6","with":{"node-version-file":"package.json","check-latest":true,"cache":"${{ github.event_name != 'pull_request' && inputs.cache-pnpm-store != 'false' && steps.pnpm-store-mode.outputs.lookup-only != 'true' && 'pnpm' || '' }}","cache-dependency-path":"${{ inputs.cache-dependency-path }}","package-manager-cache":false}},"value_json_sha256":"82d3cef26282b251c4b02164196cf10635b6f37862d4a05e70dd3543f10cd039","decision":"keep","reason":"Preserve this actual production-derived input to 1.5; its independently asserted behavior must apply to every current member."},{"table_id":"1.T7","provenance":"pinned production-derived domain","row":2,"value":{"name":"Setup requested Node.js","id":"requested-node","if":"inputs.node-version != ''","uses":"actions/setup-node@v6","with":{"node-version":"${{ inputs.node-version }}","check-latest":true,"cache":"${{ github.event_name != 'pull_request' && inputs.cache-pnpm-store != 'false' && steps.pnpm-store-mode.outputs.lookup-only != 'true' && 'pnpm' || '' }}","cache-dependency-path":"${{ inputs.cache-dependency-path }}","package-manager-cache":false}},"value_json_sha256":"6035dbedbdb8e6a728e019b8e1c5414bcaa713318024773b73ee55da02d20dec","decision":"keep","reason":"Preserve this actual production-derived input to 1.5; its independently asserted behavior must apply to every current member."}]},{"line":272,"endLine":296,"source_sha256":"2d828f7d8f511483630f371b91416d20842e8e7e47d84b95362842585ffa563c","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","id":"1.6","title":"opts Windows preparation out of download stores while retaining native caches","decision":"keep","reason":"Actual persistence/SSH/warmer YAML opts measured Windows installs out of download archives while retaining Node preparation and eligible producer lookup.","final_line":272,"final_title":"opts Windows preparation out of download stores while retaining native caches","final_source_sha256":"2d828f7d8f511483630f371b91416d20842e8e7e47d84b95362842585ffa563c","implementation_status":"validated","input_decisions":[{"table_id":"1.T8","line":292,"endLine":292,"expression":"workflow('ci-cache-warmup').jobs.warm","source_sha256":"7d4b0d94768002fde72941cb366e4a7d6b75a03b940ef9cdc6f43aab1de84312","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":1,"decision":"keep","reason":"Preserve exact original control workflow('ci-cache-warmup').jobs.warm; Actual persistence/SSH/warmer YAML opts measured Windows installs out of download archives while retaining Node preparation and eligible producer lookup.","value":{"$expression":"workflow('ci-cache-warmup').jobs.warm"}},{"table_id":"1.T8","line":292,"endLine":292,"expression":"platformJobs['warm-linux-runtime']","source_sha256":"893b012d6462462e026c865e6087fa50c83f2bcadba108b20438ceaced101b0f","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":2,"decision":"keep","reason":"Preserve exact original control platformJobs['warm-linux-runtime']; Actual persistence/SSH/warmer YAML opts measured Windows installs out of download archives while retaining Node preparation and eligible producer lookup.","value":{"$expression":"platformJobs['warm-linux-runtime']"}}]},{"line":298,"endLine":332,"source_sha256":"a63101d0dc324668042cb5df71afd046a58462e12f653688907f9fb3efc3f911","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","id":"1.7","title":"keeps PR warmer validation within the workflow family that runs it","decision":"keep","reason":"Warmer trigger paths select the relevant workflow family and share the producer jobs; push/schedule/manual and PR-concurrency contracts are preserved.","final_line":298,"final_title":"keeps PR warmer validation within the workflow family that runs it","final_source_sha256":"a63101d0dc324668042cb5df71afd046a58462e12f653688907f9fb3efc3f911","implementation_status":"validated","input_decisions":[{"table_id":"1.T9","line":318,"endLine":318,"expression":"shared","source_sha256":"a4d26868017c0ccffe2efe50944ef4211834660cca834c6e9f86dec6a88246fa","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":1,"decision":"keep","reason":"Preserve exact original control shared; Warmer trigger paths select the relevant workflow family and share the producer jobs; push/schedule/manual and PR-concurrency contracts are preserved.","value":{"$expression":"shared"}},{"table_id":"1.T9","line":318,"endLine":318,"expression":"platforms","source_sha256":"0684f6b9c83d23bf4f17dc4ca7a34b4dab749500de31f047c6d05d833f236a29","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":2,"decision":"keep","reason":"Preserve exact original control platforms; Warmer trigger paths select the relevant workflow family and share the producer jobs; push/schedule/manual and PR-concurrency contracts are preserved.","value":{"$expression":"platforms"}}]},{"line":334,"endLine":365,"source_sha256":"b0e0b3c9bc05b22b9a754c914dbea6a19fea832f57c4d92270a3baef638f9b44","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","id":"1.8","title":"retains eligible cache producers and Windows validation on %s (draft %s)","decision":"keep","reason":"All five event/draft rows evaluate live YAML admission expressions, including inverted draft controls, while retaining Windows matrix validation and non-PR ARM warming.","final_line":334,"final_title":"retains eligible cache producers and Windows validation on %s (draft %s)","final_source_sha256":"b0e0b3c9bc05b22b9a754c914dbea6a19fea832f57c4d92270a3baef638f9b44","implementation_status":"validated","input_decisions":[{"table_id":"1.T2","line":335,"endLine":335,"expression":"['pull_request', false, true, false, false]","source_sha256":"63477f38716cc9a3ced77f9123464b4317a93a3199609f2afd4964df21271142","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":1,"decision":"keep","reason":"Event pull_request, draft=False: independently expect admission=True, Linux warmer=False, shared platforms=False; retain inverted-draft control too.","value":["pull_request",false,true,false,false]},{"table_id":"1.T2","line":336,"endLine":336,"expression":"['pull_request', true, false, false, false]","source_sha256":"5d41626be1aa4d7cc807a8d5efa2977dd6d7d0c3417b28a6ab431c890d7bf5b7","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":2,"decision":"keep","reason":"Event pull_request, draft=True: independently expect admission=False, Linux warmer=False, shared platforms=False; retain inverted-draft control too.","value":["pull_request",true,false,false,false]},{"table_id":"1.T2","line":337,"endLine":337,"expression":"['push', false, true, true, false]","source_sha256":"26ebc29177acf24055c1a900299d67c8959a431b2ba155431e8355e6ca3c18e1","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":3,"decision":"keep","reason":"Event push, draft=False: independently expect admission=True, Linux warmer=True, shared platforms=False; retain inverted-draft control too.","value":["push",false,true,true,false]},{"table_id":"1.T2","line":338,"endLine":338,"expression":"['schedule', false, true, true, true]","source_sha256":"f18777fb21e4628b2171ebb92124c964b278884b946eb001dc6f8bb83c196e4e","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":4,"decision":"keep","reason":"Event schedule, draft=False: independently expect admission=True, Linux warmer=True, shared platforms=True; retain inverted-draft control too.","value":["schedule",false,true,true,true]},{"table_id":"1.T2","line":339,"endLine":339,"expression":"['workflow_dispatch', false, true, true, true]","source_sha256":"e4886836786d07d8830b6f8802af4cf4fb091755ce092e6a83d67ea2bd803372","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":5,"decision":"keep","reason":"Event workflow_dispatch, draft=False: independently expect admission=True, Linux warmer=True, shared platforms=True; retain inverted-draft control too.","value":["workflow_dispatch",false,true,true,true]},{"table_id":"1.T10","line":355,"endLine":355,"expression":"shared.jobs.warm.if","source_sha256":"d758723db5f10b5566375895c781f0e61663e8cb0281464d5a5b10df144e25dc","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":1,"decision":"keep","reason":"Preserve exact original control shared.jobs.warm.if; All five event/draft rows evaluate live YAML admission expressions, including inverted draft controls, while retaining Windows matrix validation and non-PR ARM warming.","value":{"$expression":"shared.jobs.warm.if"}},{"table_id":"1.T10","line":355,"endLine":355,"expression":"platformWorkflow.jobs['warm-platforms'].if","source_sha256":"c54fb9ed55202d5fbfb7d96efbedeeb4819805524a43d633fb81971330925712","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":2,"decision":"keep","reason":"Preserve exact original control platformWorkflow.jobs['warm-platforms'].if; All five event/draft rows evaluate live YAML admission expressions, including inverted draft controls, while retaining Windows matrix validation and non-PR ARM warming.","value":{"$expression":"platformWorkflow.jobs['warm-platforms'].if"}}]},{"line":367,"endLine":426,"source_sha256":"f879832b6049110885eb3b7e95ff142dbfe91d5014bea954c576aa7d00016e7e","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","id":"1.9","title":"validates the omitted Linux warmer preparation in the real PR consumers","decision":"keep","reason":"Current eight-core PR runner is related to the actual warmer matrix and reusable unit job; unconditional installs/native checks and routing of all 33 native/workflow inputs are verified. The new runner literal guards deliberate provisioning, not arbitrary output text.","final_line":367,"final_title":"validates the omitted Linux warmer preparation in the real PR consumers","final_source_sha256":"f879832b6049110885eb3b7e95ff142dbfe91d5014bea954c576aa7d00016e7e","implementation_status":"validated","input_decisions":[{"table_id":"1.T11","provenance":"pinned production-derived domain","row":1,"value":{"uses":"./.github/actions/install-node-dependencies","if":"needs.code_paths.outputs.mobile_dependencies != 'true'","with":{"native-runtime":"node","node-version":"24"}},"value_json_sha256":"5f27a0f445f812f0b666bef3fd5a151852bf5cdb869b116a10a8e6f03be103fb","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T11","provenance":"pinned production-derived domain","row":2,"value":{"uses":"./.github/actions/install-node-dependencies","if":"needs.code_paths.outputs.mobile_dependencies == 'true'","with":{"native-runtime":"node","node-version":"24","cache-dependency-path":"pnpm-lock.yaml\nmobile/pnpm-lock.yaml\n"}},"value_json_sha256":"41ad22d5f53e454c880be22fa2ae57ad08e7fca28462d069953ac9228af007d0","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":1,"value":"pnpm-lock.yaml","value_json_sha256":"bef492ecd56a14097cfad9f9d49580059271dda6b2b2f924af1484a294f62940","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":2,"value":"pnpm-workspace.yaml","value_json_sha256":"4f9dc9b8674b077a78c5847ef0886e1470f7b81af23b3c80c230f7282882e48b","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":3,"value":".npmrc","value_json_sha256":"c352624d604245689af22d4acd6382dcf70992e87f68a4d11442d9d5576bcbbc","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":4,"value":"config/pnpmfile.cjs","value_json_sha256":"614d583fe9de951729c26ecfdd76988c52c6aa1ee8d7daf239130bb6faf46fea","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":5,"value":".github/actions/prepare-native-runtime/action.yml","value_json_sha256":"74ae2729e07785990b8ec1639d546e9c66ef01f5d2c02339babf40631299b89f","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":6,"value":"config/scripts/ensure-native-runtime.mjs","value_json_sha256":"ab97bff0a57545a8cee2cd2e916f368f68a915bc197181b3938acda848208ec0","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":7,"value":"config/scripts/initialize-windows-native-toolchain.mjs","value_json_sha256":"b9b4c7d3ca98b8b7ed4c91d3f72f37fada7568812bba8b7195671f04d6691466","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":8,"value":"config/scripts/capture-windows-native-environment.cmd","value_json_sha256":"49481c09a963bf3b4557917d691a2c5a2bd00daf7ef67813150f5d5a77de6d2e","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":9,"value":"config/scripts/rebuild-native-deps.mjs","value_json_sha256":"970e3f585353259ef665ae7dcdeb58694cc3e49ee84a097a2da2fa6b929f1280","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":10,"value":"config/scripts/node-pty-job-ownership.cjs","value_json_sha256":"e1ee1f66d84d0242c870e6f9f69de099ba57f2f1119522e9fb260b8a21490972","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":11,"value":"config/scripts/windows-pe-machine.cjs","value_json_sha256":"682d4324b455aa47ae72bd8ba6fe19f6d64e4c5510cb8fb259f56771a0565423","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":12,"value":"config/scripts/windows-process-tree-gyp-rebuild.mjs","value_json_sha256":"9eb6e86e77fcf83198c4d15feaedb7b3f1ae8c19838be2c4ec5610eb78baf5f6","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":13,"value":"config/scripts/windows-process-tree-creation-time.cjs","value_json_sha256":"d0045d2eedafd2efa3299acea4ebf3806a0290d04f50730f0a49dcbb0274dbc4","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":14,"value":"config/scripts/install-electron-package-binary.mjs","value_json_sha256":"d755314ad1b72bf3b2ee89c89b6e59e41d1d2521b2eb33a4e3d61acb10f67a8b","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":15,"value":"config/scripts/electron-platform-path.mjs","value_json_sha256":"1a838dbd3839093bfb3dfce116af1245cd189f4722e0d43fceb0bd55f8c65e1f","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":16,"value":"config/scripts/zip-extractor-command.mjs","value_json_sha256":"4ae29368123d3d42d527239e20cd44eecadb75c95311c5e28c51e18667cbdff8","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":17,"value":"src/shared/zip-extractor-command.ts","value_json_sha256":"5d200e4f6019e1d6b30cdaa52f4236ca6ca8d7e81e33f14b8548251213726338","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":18,"value":"config/scripts/shared-electron-dist-cache.mjs","value_json_sha256":"8ec1d4303766515af524c38b3e127caab65d674cfe99d7b51696e1078d45d233","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":19,"value":"config/scripts/space-sharing-copy.mjs","value_json_sha256":"a615e0cc4af61419127d331ca696ce19199dfbc7e5ac9642e11d4db4c550298f","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":20,"value":"config/patches/node-pty@1.1.0.patch","value_json_sha256":"90a3656eb6587bc48738fd2e7f31e83bc3a00eabef49fe5e64dc6e7becef00dd","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":21,"value":"config/patches/@vscode__windows-process-tree@0.8.0.patch","value_json_sha256":"c064227cead96676e0c5bd57687771f2c924bd3a5be20d1f98c5b184374a1e44","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":22,"value":"native/windows-registry/src/addon.cc","value_json_sha256":"e32521cc55735bde083a44be95ec9c57fce111361e22a1bef85c8541701fe666","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":23,"value":"native/windows-registry/binding.gyp","value_json_sha256":"3f3b09363199b9eb3923998708bdd8a67f89224b34284164c3053b332722f983","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":24,"value":"native/windows-registry/package.json","value_json_sha256":"c80940e90a7fc1e5f4f0e5cb394ab187f791896ebe9f28f43ecc2582edc660a8","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":25,"value":"native/windows-registry/index.js","value_json_sha256":"36cbbbd0f09f7536d0cdb331d048efde30118e33018c16112e653f7d68606727","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":26,"value":"native/windows-security/src/addon.cc","value_json_sha256":"07b20a8d42eade104e26598dd6f4d46cf8495449870789c4b7faa009b110aef0","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":27,"value":"native/windows-security/binding.gyp","value_json_sha256":"fc24f8d1e1695bacc3a8d34cd15e3a407ea4670c7eac044ed87b0bbeb4518383","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":28,"value":"native/windows-security/package.json","value_json_sha256":"5c46442e7db73688da55d1b39ffe3665b8b959494f6ab703ff606c237aa491e4","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":29,"value":"native/windows-security/index.js","value_json_sha256":"44276233a6166bd873f392feadf7ee200e1006ecbe2b8c04dbbe25150dac0eb9","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":30,"value":".github/actions/install-node-dependencies/action.yml","value_json_sha256":"4ba63e21ea05e50e90c62dbdfc1dacd3f836d6b100666ca5fbb7615063a1f607","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":31,"value":".github/workflows/ci-cache-warmup-platforms.yml","value_json_sha256":"d99434e628719bc84b93039d5276da5f4092e7946d66292802664873a6ffcb96","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":32,"value":".github/workflows/ci-cache-warmup-platform-jobs.yml","value_json_sha256":"5e1c0a3ede5ee4dc0f525eb4d0e9eb3e07280f27a18e563659ac437142c17cb2","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"table_id":"1.T12","provenance":"pinned production-derived domain","row":33,"value":".github/workflows/ci-cache-warmup.yml","value_json_sha256":"5cf130a9a2ff27eaa0df3e978a595cbf62e0260c17937283ac4fa992d1d8ff93","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."}]},{"line":428,"endLine":454,"source_sha256":"9505f407f6962abaa8ec1d7f68236f9b81305d22e3814076acf636ccb5b75a4b","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","id":"1.10","title":"restores Windows packaging downloads from the release cache without a PR upload","decision":"keep","reason":"Windows release/PR/dev/signing cache identities include exact path sets as well as key strings; PR uses restore-only while each release writer can publish.","final_line":428,"final_title":"restores Windows packaging downloads from the release cache without a PR upload","final_source_sha256":"9505f407f6962abaa8ec1d7f68236f9b81305d22e3814076acf636ccb5b75a4b","implementation_status":"validated","input_decisions":[{"table_id":"1.T13","line":445,"endLine":445,"expression":"'dev-channel-win-build'","source_sha256":"70f381adb776f830c3eb66629387d52ecddfc2aafea8ed3a28020f263f8c6993","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":1,"decision":"keep","reason":"Preserve exact original control 'dev-channel-win-build'; Windows release/PR/dev/signing cache identities include exact path sets as well as key strings; PR uses restore-only while each release writer can publish.","value":"dev-channel-win-build"},{"table_id":"1.T13","line":445,"endLine":445,"expression":"'windows-signing-rehearsal'","source_sha256":"1bf81f275432c3c8e8de910100b3c3b480e4dbabe0e11c8faf7fac11714770d9","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":2,"decision":"keep","reason":"Preserve exact original control 'windows-signing-rehearsal'; Windows release/PR/dev/signing cache identities include exact path sets as well as key strings; PR uses restore-only while each release writer can publish.","value":"windows-signing-rehearsal"}]},{"line":456,"endLine":483,"source_sha256":"607b705de4d0631782db1c5b6dcddf1d4094fd56abc8e238419e46cc51ad5769","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","id":"1.11","title":"shares Linux PR downloads with main x64 release builds across runner pools","decision":"keep","reason":"Linux main-only lookup seeding and restore-only PR reuse compare actual cache keys/paths across distinct runner pools. Combined release cache ordering and Linux platform path set remain necessary.","final_line":456,"final_title":"shares Linux PR downloads with main x64 release builds across runner pools","final_source_sha256":"607b705de4d0631782db1c5b6dcddf1d4094fd56abc8e238419e46cc51ad5769","implementation_status":"validated"},{"line":486,"endLine":498,"source_sha256":"67ea6a48771d2920166cc22ef11b6c92aedf1fec6f9900ef1eba1ab272fa9eb7","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","id":"1.12","title":"shares Electron archives with PRs without uploading PR-local copies","decision":"keep","reason":"Complementary Linux-PR restore-only versus producer cache actions use matching Electron archive identity and require a resolved version.","final_line":486,"final_title":"shares Electron archives with PRs without uploading PR-local copies","final_source_sha256":"67ea6a48771d2920166cc22ef11b6c92aedf1fec6f9900ef1eba1ab272fa9eb7","implementation_status":"validated"},{"line":510,"endLine":517,"source_sha256":"564507f6cd94452435bb80b387d020e9c7bc569cdb9e7221d0a57d2ecfb596e7","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","id":"1.13","title":"%s installs both mac CPU variants for the x64+arm64 package config","decision":"keep","reason":"All four independently selected macOS build workflows request both x64 and arm64 variants; nonempty installs prevent a vacuous no-install pass.","final_line":510,"final_title":"%s installs both mac CPU variants for the x64+arm64 package config","final_source_sha256":"564507f6cd94452435bb80b387d020e9c7bc569cdb9e7221d0a57d2ecfb596e7","implementation_status":"validated","input_decisions":[{"table_id":"1.T3","line":510,"endLine":510,"expression":"'adhoc-mac-build'","source_sha256":"000544641df5525c6726924c1e7abd39c15ae6f825b8ac0d1def1feb96688071","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":1,"decision":"keep","reason":"Preserve exact original control 'adhoc-mac-build'; All four independently selected macOS build workflows request both x64 and arm64 variants; nonempty installs prevent a vacuous no-install pass.","value":"adhoc-mac-build"},{"table_id":"1.T3","line":510,"endLine":510,"expression":"'daily-mac-build'","source_sha256":"d1e5f9d2d7ea81c679bae40e792751c766521ec2fa46ed4d011736bf5e72150f","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":2,"decision":"keep","reason":"Preserve exact original control 'daily-mac-build'; All four independently selected macOS build workflows request both x64 and arm64 variants; nonempty installs prevent a vacuous no-install pass.","value":"daily-mac-build"},{"table_id":"1.T3","line":510,"endLine":510,"expression":"'hourly-mac-build'","source_sha256":"f1e182149617cd437d78d06a1937154aeeae0127f98dbc1481a65ec4a85724a5","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":3,"decision":"keep","reason":"Preserve exact original control 'hourly-mac-build'; All four independently selected macOS build workflows request both x64 and arm64 variants; nonempty installs prevent a vacuous no-install pass.","value":"hourly-mac-build"},{"table_id":"1.T3","line":510,"endLine":510,"expression":"'release-mac-build'","source_sha256":"2749148fae40d4f0fa88b53b91585b86d1e26e010c5a9cb29cb7547495925e97","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":4,"decision":"keep","reason":"Preserve exact original control 'release-mac-build'; All four independently selected macOS build workflows request both x64 and arm64 variants; nonempty installs prevent a vacuous no-install pass.","value":"release-mac-build"}]},{"line":521,"endLine":528,"source_sha256":"81646839270ce2ad23a8f707890400d185cf2b21344cebbb38b4499f14242bd1","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","id":"1.14","title":"retries every release-cut install so one transient download cannot fail a cut","decision":"keep","reason":"All three release-cut installs use retry with more than one attempt, guarding a real transient dependency/header-download boundary without fetching anything here.","final_line":521,"final_title":"retries every release-cut install so one transient download cannot fail a cut","final_source_sha256":"81646839270ce2ad23a8f707890400d185cf2b21344cebbb38b4499f14242bd1","implementation_status":"validated","input_decisions":[{"table_id":"1.T14","provenance":"pinned production-derived domain","row":1,"value":{"job":"terminal-rendering-golden","index":6,"name":"Install dependencies","uses":"nick-fields/retry@v4","with":{"timeout_minutes":10,"max_attempts":3,"retry_wait_seconds":30,"command":"pnpm install --frozen-lockfile"}},"value_json_sha256":"37a5377c7baa3bb4cf9a32c3a810967990923b9e8ead364428785d27468e1e15","decision":"keep","reason":"Preserve this actual production-derived input to 1.14; its independently asserted behavior must apply to every current member."},{"table_id":"1.T14","provenance":"pinned production-derived domain","row":2,"value":{"job":"terminal-rendering-release-evidence","index":5,"name":"Install dependencies","uses":"nick-fields/retry@v4","with":{"timeout_minutes":10,"max_attempts":3,"retry_wait_seconds":30,"command":"pnpm install --frozen-lockfile"}},"value_json_sha256":"a8cfe9ee59076de51d3a4cceb3cc06e472eaff46b51e3131695905208355da65","decision":"keep","reason":"Preserve this actual production-derived input to 1.14; its independently asserted behavior must apply to every current member."},{"table_id":"1.T14","provenance":"pinned production-derived domain","row":3,"value":{"job":"build","index":9,"name":"Install dependencies","uses":"nick-fields/retry@v4","with":{"timeout_minutes":10,"max_attempts":3,"retry_wait_seconds":30,"command":"pnpm install --frozen-lockfile"}},"value_json_sha256":"c9a05a781807f8254e5241f1e929ea86f88621351c6105d548dc55bec29d8052","decision":"keep","reason":"Preserve this actual production-derived input to 1.14; its independently asserted behavior must apply to every current member."}]},{"line":530,"endLine":540,"source_sha256":"520ed1369043cf8bf7b383b33644ef58a1449fd94c742f1304684b9bed17a227","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","id":"1.15","title":"%s keeps installs scoped to the runner host","decision":"keep","reason":"All five install commands across the three named workflows remain host scoped; all three workflow inputs are retained.","final_line":530,"final_title":"%s keeps installs scoped to the runner host","final_source_sha256":"520ed1369043cf8bf7b383b33644ef58a1449fd94c742f1304684b9bed17a227","implementation_status":"validated","input_decisions":[{"table_id":"1.T4","line":530,"endLine":530,"expression":"'release-cut'","source_sha256":"590fbe4ee9c280da6a774588909d7082dca943e69f6f90b4f5613a3711bc336c","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":1,"decision":"keep","reason":"Preserve exact original control 'release-cut'; All five install commands across the three named workflows remain host scoped; all three workflow inputs are retained.","value":"release-cut"},{"table_id":"1.T4","line":530,"endLine":530,"expression":"'dev-channel-win-build'","source_sha256":"70f381adb776f830c3eb66629387d52ecddfc2aafea8ed3a28020f263f8c6993","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":2,"decision":"keep","reason":"Preserve exact original control 'dev-channel-win-build'; All five install commands across the three named workflows remain host scoped; all three workflow inputs are retained.","value":"dev-channel-win-build"},{"table_id":"1.T4","line":530,"endLine":530,"expression":"'windows-signing-rehearsal'","source_sha256":"1bf81f275432c3c8e8de910100b3c3b480e4dbabe0e11c8faf7fac11714770d9","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":3,"decision":"keep","reason":"Preserve exact original control 'windows-signing-rehearsal'; All five install commands across the three named workflows remain host scoped; all three workflow inputs are retained.","value":"windows-signing-rehearsal"},{"table_id":"1.T15","provenance":"pinned production-derived domain","row":1,"value":{"workflow":"release-cut","job":"terminal-rendering-golden","index":6,"name":"Install dependencies","uses":"nick-fields/retry@v4","with":{"timeout_minutes":10,"max_attempts":3,"retry_wait_seconds":30,"command":"pnpm install --frozen-lockfile"}},"value_json_sha256":"bdd724d5b02cf3edd10cf401e0cc25783760e00c1eb2bae2e6722080dda06262","decision":"keep","reason":"Preserve this actual production-derived input to 1.15; its independently asserted behavior must apply to every current member."},{"table_id":"1.T15","provenance":"pinned production-derived domain","row":2,"value":{"workflow":"release-cut","job":"terminal-rendering-release-evidence","index":5,"name":"Install dependencies","uses":"nick-fields/retry@v4","with":{"timeout_minutes":10,"max_attempts":3,"retry_wait_seconds":30,"command":"pnpm install --frozen-lockfile"}},"value_json_sha256":"00781aba0ec28d93db2941e7341525899e4ed519793582cef73e46e23483823a","decision":"keep","reason":"Preserve this actual production-derived input to 1.15; its independently asserted behavior must apply to every current member."},{"table_id":"1.T15","provenance":"pinned production-derived domain","row":3,"value":{"workflow":"release-cut","job":"build","index":9,"name":"Install dependencies","uses":"nick-fields/retry@v4","with":{"timeout_minutes":10,"max_attempts":3,"retry_wait_seconds":30,"command":"pnpm install --frozen-lockfile"}},"value_json_sha256":"4852fd58d3c6b0ff778a8696c534157d4f7fb99af5456c9ea4b5f95ce79c2d00","decision":"keep","reason":"Preserve this actual production-derived input to 1.15; its independently asserted behavior must apply to every current member."},{"table_id":"1.T15","provenance":"pinned production-derived domain","row":4,"value":{"workflow":"dev-channel-win-build","job":"build-win","index":8,"name":"Install dependencies","uses":"nick-fields/retry@v4","with":{"timeout_minutes":10,"max_attempts":3,"retry_wait_seconds":30,"command":"pnpm install --frozen-lockfile"}},"value_json_sha256":"a8c1ea7687c117d4c59ce0c444eb2cce93e688433eb325ccbca7218178ad7faf","decision":"keep","reason":"Preserve this actual production-derived input to 1.15; its independently asserted behavior must apply to every current member."},{"table_id":"1.T15","provenance":"pinned production-derived domain","row":5,"value":{"workflow":"windows-signing-rehearsal","job":"rehearse","index":4,"name":"Install dependencies","uses":"nick-fields/retry@v4","with":{"timeout_minutes":10,"max_attempts":3,"retry_wait_seconds":30,"command":"pnpm install --frozen-lockfile"}},"value_json_sha256":"b7b7d8266e080640be91b6267459a788f81c20045677ae16cf1e47e43e96095d","decision":"keep","reason":"Preserve this actual production-derived input to 1.15; its independently asserted behavior must apply to every current member."}]},{"line":542,"endLine":546,"source_sha256":"a2cb5fba374598250194e5448f16d6ed1ba27d660b7c7f85b83643aa811f5024","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","id":"1.16","title":"offers the mac CPU targets for local packaging without touching the lockfile","decision":"keep","reason":"The user-facing install:release entry preserves frozen lockfile and both macOS architectures; executable script configuration is the contract being tested.","final_line":542,"final_title":"offers the mac CPU targets for local packaging without touching the lockfile","final_source_sha256":"a2cb5fba374598250194e5448f16d6ed1ba27d660b7c7f85b83643aa811f5024","implementation_status":"validated"},{"line":548,"endLine":560,"source_sha256":"bf47724c4c6df9651ffe1cc37591b49da413a0b7e2edcd79f55fa6157b892548","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","id":"1.17","title":"keeps installed Windows addon checks in the Windows CI lane","decision":"keep","reason":"The Windows CI step actually invokes the centralized executable boundary list and keeps four installed-addon suites admitted. This list is executable job selection, not a copied public export inventory.","final_line":548,"final_title":"keeps installed Windows addon checks in the Windows CI lane","final_source_sha256":"bf47724c4c6df9651ffe1cc37591b49da413a0b7e2edcd79f55fa6157b892548","implementation_status":"validated"}],"tables":[{"line":98,"endLine":205,"expression":"it.each([\n ['Windows x64 mixed PR', 'pull_request', 'Windows', 'X64', true, false, ''],\n ['Windows ARM64 mixed PR', 'pull_request', 'Windows', 'ARM64', true, true, ''],\n ['Windows x86 mixed PR', 'pull_request', 'Windows', 'X86', true, true, ''],\n ['Windows x64 root-only PR', 'pull_request', 'Windows', 'X64', false, false, ''],\n ['Windows ARM64 root-only PR', 'pull_request', 'Windows', 'ARM64', false, false, ''],\n ['Windows x86 root-only PR', 'pull_request', 'Windows', 'X86', false, true, ''],\n ['Windows x64 custom PR', 'pull_request', 'Windows', 'X64', 'cloud/pnpm-lock.yaml', true, ''],\n [\n 'Windows ARM64 custom PR',\n 'pull_request',\n 'Windows',\n 'ARM64',\n 'cloud/pnpm-lock.yaml',\n true,\n ''\n ],\n ['Windows ARM64 root-only push', 'push', 'Windows', 'ARM64', false, false, 'pnpm'],\n [\n 'Windows ARM64 root-only manual run',\n 'workflow_dispatch',\n 'Windows',\n 'ARM64',\n false,\n false,\n 'pnpm'\n ],\n ['Explicit Linux PR opt-out', 'pull_request', 'Linux', 'X64', false, false, '', 'false'],\n ['Explicit Windows push opt-out', 'push', 'Windows', 'ARM64', false, false, '', 'false'],\n [\n 'Explicit Windows manual opt-out',\n 'workflow_dispatch',\n 'Windows',\n 'X64',\n false,\n false,\n '',\n 'false'\n ],\n [\n 'Explicit custom-store opt-out',\n 'pull_request',\n 'Windows',\n 'X64',\n 'cloud/pnpm-lock.yaml',\n false,\n '',\n 'false'\n ],\n ['Windows x64 root-only push', 'push', 'Windows', 'X64', false, false, 'pnpm'],\n ['Linux x64 root-only PR', 'pull_request', 'Linux', 'X64', false, false, ''],\n ['Linux ARM64 root-only PR', 'pull_request', 'Linux', 'ARM64', false, false, ''],\n ['Linux x86 root-only PR', 'pull_request', 'Linux', 'X86', false, true, ''],\n ['Linux ARM root-only PR', 'pull_request', 'Linux', 'ARM', false, true, ''],\n ['Linux x64 custom PR', 'pull_request', 'Linux', 'X64', 'cloud/pnpm-lock.yaml', true, ''],\n ['Linux x64 root-only push', 'push', 'Linux', 'X64', false, false, 'pnpm'],\n ['Linux ARM64 root-only manual', 'workflow_dispatch', 'Linux', 'ARM64', false, false, 'pnpm'],\n ['macOS x64 root-only PR', 'pull_request', 'macOS', 'X64', false, false, ''],\n ['macOS ARM64 root-only PR', 'pull_request', 'macOS', 'ARM64', false, false, ''],\n ['macOS x86 root-only PR', 'pull_request', 'macOS', 'X86', false, true, ''],\n ['macOS x64 mixed PR', 'pull_request', 'macOS', 'X64', true, true, ''],\n ['macOS ARM64 mixed PR', 'pull_request', 'macOS', 'ARM64', true, true, ''],\n ['macOS ARM64 custom PR', 'pull_request', 'macOS', 'ARM64', 'cloud/pnpm-lock.yaml', true, ''],\n ['macOS ARM64 opted-out PR', 'pull_request', 'macOS', 'ARM64', true, false, '', 'false'],\n ['macOS x64 root-only push', 'push', 'macOS', 'X64', false, false, 'pnpm'],\n ['macOS ARM64 root-only manual', 'workflow_dispatch', 'macOS', 'ARM64', false, false, 'pnpm'],\n ['Linux x64 mixed PR', 'pull_request', 'Linux', 'X64', true, true, ''],\n ['Linux ARM64 mixed PR', 'pull_request', 'Linux', 'ARM64', true, true, ''],\n ['Windows x64 mixed push', 'push', 'Windows', 'X64', true, false, 'pnpm'],\n ['Windows x64 mixed manual run', 'workflow_dispatch', 'Windows', 'X64', true, false, 'pnpm'],\n ['Windows x64 lookup producer', 'push', 'Windows', 'X64', false, false, '', 'true', 'true'],\n [\n 'Windows ARM64 lookup producer',\n 'schedule',\n 'Windows',\n 'ARM64',\n false,\n false,\n '',\n 'true',\n 'true'\n ],\n ['macOS ARM64 lookup producer', 'push', 'macOS', 'ARM64', false, false, '', 'true', 'true'],\n [\n 'Linux x64 lookup producer',\n 'workflow_dispatch',\n 'Linux',\n 'X64',\n false,\n false,\n '',\n 'true',\n 'true'\n ],\n ['Opted-out lookup producer', 'push', 'Windows', 'ARM64', false, false, '', 'false', 'true'],\n [\n 'macOS root PR lookup flag',\n 'pull_request',\n 'macOS',\n 'ARM64',\n false,\n false,\n '',\n 'true',\n 'true'\n ],\n ['macOS mixed PR lookup flag', 'pull_request', 'macOS', 'ARM64', true, true, '', 'true', 'true']\n ])","source_sha256":"826242f5adf5435a47d9fd5b850046a897fe20b2721df5c7959c42fc4bd0ccce","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","kind":"each","owner":"1.5","domain":"[\n ['Windows x64 mixed PR', 'pull_request', 'Windows', 'X64', true, false, ''],\n ['Windows ARM64 mixed PR', 'pull_request', 'Windows', 'ARM64', true, true, ''],\n ['Windows x86 mixed PR', 'pull_request', 'Windows', 'X86', true, true, ''],\n ['Windows x64 root-only PR', 'pull_request', 'Windows', 'X64', false, false, ''],\n ['Windows ARM64 root-only PR', 'pull_request', 'Windows', 'ARM64', false, false, ''],\n ['Windows x86 root-only PR', 'pull_request', 'Windows', 'X86', false, true, ''],\n ['Windows x64 custom PR', 'pull_request', 'Windows', 'X64', 'cloud/pnpm-lock.yaml', true, ''],\n [\n 'Windows ARM64 custom PR',\n 'pull_request',\n 'Windows',\n 'ARM64',\n 'cloud/pnpm-lock.yaml',\n true,\n ''\n ],\n ['Windows ARM64 root-only push', 'push', 'Windows', 'ARM64', false, false, 'pnpm'],\n [\n 'Windows ARM64 root-only manual run',\n 'workflow_dispatch',\n 'Windows',\n 'ARM64',\n false,\n false,\n 'pnpm'\n ],\n ['Explicit Linux PR opt-out', 'pull_request', 'Linux', 'X64', false, false, '', 'false'],\n ['Explicit Windows push opt-out', 'push', 'Windows', 'ARM64', false, false, '', 'false'],\n [\n 'Explicit Windows manual opt-out',\n 'workflow_dispatch',\n 'Windows',\n 'X64',\n false,\n false,\n '',\n 'false'\n ],\n [\n 'Explicit custom-store opt-out',\n 'pull_request',\n 'Windows',\n 'X64',\n 'cloud/pnpm-lock.yaml',\n false,\n '',\n 'false'\n ],\n ['Windows x64 root-only push', 'push', 'Windows', 'X64', false, false, 'pnpm'],\n ['Linux x64 root-only PR', 'pull_request', 'Linux', 'X64', false, false, ''],\n ['Linux ARM64 root-only PR', 'pull_request', 'Linux', 'ARM64', false, false, ''],\n ['Linux x86 root-only PR', 'pull_request', 'Linux', 'X86', false, true, ''],\n ['Linux ARM root-only PR', 'pull_request', 'Linux', 'ARM', false, true, ''],\n ['Linux x64 custom PR', 'pull_request', 'Linux', 'X64', 'cloud/pnpm-lock.yaml', true, ''],\n ['Linux x64 root-only push', 'push', 'Linux', 'X64', false, false, 'pnpm'],\n ['Linux ARM64 root-only manual', 'workflow_dispatch', 'Linux', 'ARM64', false, false, 'pnpm'],\n ['macOS x64 root-only PR', 'pull_request', 'macOS', 'X64', false, false, ''],\n ['macOS ARM64 root-only PR', 'pull_request', 'macOS', 'ARM64', false, false, ''],\n ['macOS x86 root-only PR', 'pull_request', 'macOS', 'X86', false, true, ''],\n ['macOS x64 mixed PR', 'pull_request', 'macOS', 'X64', true, true, ''],\n ['macOS ARM64 mixed PR', 'pull_request', 'macOS', 'ARM64', true, true, ''],\n ['macOS ARM64 custom PR', 'pull_request', 'macOS', 'ARM64', 'cloud/pnpm-lock.yaml', true, ''],\n ['macOS ARM64 opted-out PR', 'pull_request', 'macOS', 'ARM64', true, false, '', 'false'],\n ['macOS x64 root-only push', 'push', 'macOS', 'X64', false, false, 'pnpm'],\n ['macOS ARM64 root-only manual', 'workflow_dispatch', 'macOS', 'ARM64', false, false, 'pnpm'],\n ['Linux x64 mixed PR', 'pull_request', 'Linux', 'X64', true, true, ''],\n ['Linux ARM64 mixed PR', 'pull_request', 'Linux', 'ARM64', true, true, ''],\n ['Windows x64 mixed push', 'push', 'Windows', 'X64', true, false, 'pnpm'],\n ['Windows x64 mixed manual run', 'workflow_dispatch', 'Windows', 'X64', true, false, 'pnpm'],\n ['Windows x64 lookup producer', 'push', 'Windows', 'X64', false, false, '', 'true', 'true'],\n [\n 'Windows ARM64 lookup producer',\n 'schedule',\n 'Windows',\n 'ARM64',\n false,\n false,\n '',\n 'true',\n 'true'\n ],\n ['macOS ARM64 lookup producer', 'push', 'macOS', 'ARM64', false, false, '', 'true', 'true'],\n [\n 'Linux x64 lookup producer',\n 'workflow_dispatch',\n 'Linux',\n 'X64',\n false,\n false,\n '',\n 'true',\n 'true'\n ],\n ['Opted-out lookup producer', 'push', 'Windows', 'ARM64', false, false, '', 'false', 'true'],\n [\n 'macOS root PR lookup flag',\n 'pull_request',\n 'macOS',\n 'ARM64',\n false,\n false,\n '',\n 'true',\n 'true'\n ],\n ['macOS mixed PR lookup flag', 'pull_request', 'macOS', 'ARM64', true, true, '', 'true', 'true']\n ]","rows":[{"line":99,"endLine":99,"expression":"['Windows x64 mixed PR', 'pull_request', 'Windows', 'X64', true, false, '']","source_sha256":"784391694e277c8127f057e12947c2e2fe29dec0467154ccca9222d9f42f05e7","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":1,"decision":"keep","reason":"Windows x64 mixed PR: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=Windows, arch=X64, lockfile selector=True, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows x64 mixed PR","pull_request","Windows","X64",true,false,""]},{"line":100,"endLine":100,"expression":"['Windows ARM64 mixed PR', 'pull_request', 'Windows', 'ARM64', true, true, '']","source_sha256":"17d7a7eb706d7dec2444ba93c487400cf9efb8c425f5bc212fc2ce6a4b32bbab","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":2,"decision":"keep","reason":"Windows ARM64 mixed PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=Windows, arch=ARM64, lockfile selector=True, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows ARM64 mixed PR","pull_request","Windows","ARM64",true,true,""]},{"line":101,"endLine":101,"expression":"['Windows x86 mixed PR', 'pull_request', 'Windows', 'X86', true, true, '']","source_sha256":"91fc92a8cf65c78d41fbaaaf8618830ef7471f60ec1dfecc9d45df785293616e","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":3,"decision":"keep","reason":"Windows x86 mixed PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=Windows, arch=X86, lockfile selector=True, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows x86 mixed PR","pull_request","Windows","X86",true,true,""]},{"line":102,"endLine":102,"expression":"['Windows x64 root-only PR', 'pull_request', 'Windows', 'X64', false, false, '']","source_sha256":"f0ba44eeaf7257eed4699900dec2d5717d59316bbb8129e728bb8f11405f5f6d","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":4,"decision":"keep","reason":"Windows x64 root-only PR: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=Windows, arch=X64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows x64 root-only PR","pull_request","Windows","X64",false,false,""]},{"line":103,"endLine":103,"expression":"['Windows ARM64 root-only PR', 'pull_request', 'Windows', 'ARM64', false, false, '']","source_sha256":"5201fc7bdd28b6793e3b286e20205092d0128d3fdeb98057cb8bbc51e7ddb422","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":5,"decision":"keep","reason":"Windows ARM64 root-only PR: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=Windows, arch=ARM64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows ARM64 root-only PR","pull_request","Windows","ARM64",false,false,""]},{"line":104,"endLine":104,"expression":"['Windows x86 root-only PR', 'pull_request', 'Windows', 'X86', false, true, '']","source_sha256":"a9e49ea178498e1e62a884077f45f85f83cad8091db85c981dadc195250eb7b4","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":6,"decision":"keep","reason":"Windows x86 root-only PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=Windows, arch=X86, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows x86 root-only PR","pull_request","Windows","X86",false,true,""]},{"line":105,"endLine":105,"expression":"['Windows x64 custom PR', 'pull_request', 'Windows', 'X64', 'cloud/pnpm-lock.yaml', true, '']","source_sha256":"5a0212d56030b3e1c19588e28fed4b4063c850045a794b816ee0ed1d4f092c98","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":7,"decision":"keep","reason":"Windows x64 custom PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=Windows, arch=X64, lockfile selector='cloud/pnpm-lock.yaml', explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows x64 custom PR","pull_request","Windows","X64","cloud/pnpm-lock.yaml",true,""]},{"line":106,"endLine":114,"expression":"[\n 'Windows ARM64 custom PR',\n 'pull_request',\n 'Windows',\n 'ARM64',\n 'cloud/pnpm-lock.yaml',\n true,\n ''\n ]","source_sha256":"dededeb50bda8bd4ea0f1d67edfc867120fb7f9482490423ed13fc6e4874bbda","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":8,"decision":"keep","reason":"Windows ARM64 custom PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=Windows, arch=ARM64, lockfile selector='cloud/pnpm-lock.yaml', explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows ARM64 custom PR","pull_request","Windows","ARM64","cloud/pnpm-lock.yaml",true,""]},{"line":115,"endLine":115,"expression":"['Windows ARM64 root-only push', 'push', 'Windows', 'ARM64', false, false, 'pnpm']","source_sha256":"18c918770bbf9a2f3efb56302bcae7b1c33f442ee93ce4646b1389d008430a9a","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":9,"decision":"keep","reason":"Windows ARM64 root-only push: preserve expected restore=False and setup-node cache='pnpm'; retain event=push, OS=Windows, arch=ARM64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows ARM64 root-only push","push","Windows","ARM64",false,false,"pnpm"]},{"line":116,"endLine":124,"expression":"[\n 'Windows ARM64 root-only manual run',\n 'workflow_dispatch',\n 'Windows',\n 'ARM64',\n false,\n false,\n 'pnpm'\n ]","source_sha256":"32452c58fa626a95479429703a2c24b39b064c38eb04e33b5d4ecaf17591692c","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":10,"decision":"keep","reason":"Windows ARM64 root-only manual run: preserve expected restore=False and setup-node cache='pnpm'; retain event=workflow_dispatch, OS=Windows, arch=ARM64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows ARM64 root-only manual run","workflow_dispatch","Windows","ARM64",false,false,"pnpm"]},{"line":125,"endLine":125,"expression":"['Explicit Linux PR opt-out', 'pull_request', 'Linux', 'X64', false, false, '', 'false']","source_sha256":"dae28806ff4b9c2a6ebbbc984a075c8c43b75f732110c0467abfb4e523ae8f2c","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":11,"decision":"keep","reason":"Explicit Linux PR opt-out: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=Linux, arch=X64, lockfile selector=False, explicit store-cache='false', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Explicit Linux PR opt-out","pull_request","Linux","X64",false,false,"","false"]},{"line":126,"endLine":126,"expression":"['Explicit Windows push opt-out', 'push', 'Windows', 'ARM64', false, false, '', 'false']","source_sha256":"308616fe6e3da36d1fdf0b0a4fe1b0d94dc78623d915005ce2a175ae05bcb2ee","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":12,"decision":"keep","reason":"Explicit Windows push opt-out: preserve expected restore=False and setup-node cache=''; retain event=push, OS=Windows, arch=ARM64, lockfile selector=False, explicit store-cache='false', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Explicit Windows push opt-out","push","Windows","ARM64",false,false,"","false"]},{"line":127,"endLine":136,"expression":"[\n 'Explicit Windows manual opt-out',\n 'workflow_dispatch',\n 'Windows',\n 'X64',\n false,\n false,\n '',\n 'false'\n ]","source_sha256":"6bdf44047bae73fccd186a4ad40bd66a16b8094896e46be8b6371c53796e0e50","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":13,"decision":"keep","reason":"Explicit Windows manual opt-out: preserve expected restore=False and setup-node cache=''; retain event=workflow_dispatch, OS=Windows, arch=X64, lockfile selector=False, explicit store-cache='false', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Explicit Windows manual opt-out","workflow_dispatch","Windows","X64",false,false,"","false"]},{"line":137,"endLine":146,"expression":"[\n 'Explicit custom-store opt-out',\n 'pull_request',\n 'Windows',\n 'X64',\n 'cloud/pnpm-lock.yaml',\n false,\n '',\n 'false'\n ]","source_sha256":"68489a5897d20c5f548e5132f71e99fa64999b56812d7c62636c849e7aa41819","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":14,"decision":"keep","reason":"Explicit custom-store opt-out: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=Windows, arch=X64, lockfile selector='cloud/pnpm-lock.yaml', explicit store-cache='false', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Explicit custom-store opt-out","pull_request","Windows","X64","cloud/pnpm-lock.yaml",false,"","false"]},{"line":147,"endLine":147,"expression":"['Windows x64 root-only push', 'push', 'Windows', 'X64', false, false, 'pnpm']","source_sha256":"e5b93713cf2122fae4762a5c182dffe03068262e545c29305d9746f17e17ae7c","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":15,"decision":"keep","reason":"Windows x64 root-only push: preserve expected restore=False and setup-node cache='pnpm'; retain event=push, OS=Windows, arch=X64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows x64 root-only push","push","Windows","X64",false,false,"pnpm"]},{"line":148,"endLine":148,"expression":"['Linux x64 root-only PR', 'pull_request', 'Linux', 'X64', false, false, '']","source_sha256":"4a8f92c3d69860b34156c69172fc78cd1c0ed7fda821ed86d360339b9933932f","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":16,"decision":"keep","reason":"Linux x64 root-only PR: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=Linux, arch=X64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Linux x64 root-only PR","pull_request","Linux","X64",false,false,""]},{"line":149,"endLine":149,"expression":"['Linux ARM64 root-only PR', 'pull_request', 'Linux', 'ARM64', false, false, '']","source_sha256":"b2edb1ad2fd330a4f4cd1ae00944a889e694929cdb5610566624fbb881cad952","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":17,"decision":"keep","reason":"Linux ARM64 root-only PR: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=Linux, arch=ARM64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Linux ARM64 root-only PR","pull_request","Linux","ARM64",false,false,""]},{"line":150,"endLine":150,"expression":"['Linux x86 root-only PR', 'pull_request', 'Linux', 'X86', false, true, '']","source_sha256":"b50fdb17331565ad0178f75de117b95ae0af96e592a64814ccbb03b1036e2f5c","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":18,"decision":"keep","reason":"Linux x86 root-only PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=Linux, arch=X86, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Linux x86 root-only PR","pull_request","Linux","X86",false,true,""]},{"line":151,"endLine":151,"expression":"['Linux ARM root-only PR', 'pull_request', 'Linux', 'ARM', false, true, '']","source_sha256":"9a66a37c25ae0de68bc10d389dde60a22b269b383bc9ffc6e356c6958fca6790","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":19,"decision":"keep","reason":"Linux ARM root-only PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=Linux, arch=ARM, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Linux ARM root-only PR","pull_request","Linux","ARM",false,true,""]},{"line":152,"endLine":152,"expression":"['Linux x64 custom PR', 'pull_request', 'Linux', 'X64', 'cloud/pnpm-lock.yaml', true, '']","source_sha256":"e405914cf2ef6672fd6f8319551d53f90a07a70cda4975a0543d4259e0b74e95","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":20,"decision":"keep","reason":"Linux x64 custom PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=Linux, arch=X64, lockfile selector='cloud/pnpm-lock.yaml', explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Linux x64 custom PR","pull_request","Linux","X64","cloud/pnpm-lock.yaml",true,""]},{"line":153,"endLine":153,"expression":"['Linux x64 root-only push', 'push', 'Linux', 'X64', false, false, 'pnpm']","source_sha256":"7bdbd9ca2f3ab4ab976e06040e5936ced91f2117cf6e51e083961c2cda25f0d4","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":21,"decision":"keep","reason":"Linux x64 root-only push: preserve expected restore=False and setup-node cache='pnpm'; retain event=push, OS=Linux, arch=X64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Linux x64 root-only push","push","Linux","X64",false,false,"pnpm"]},{"line":154,"endLine":154,"expression":"['Linux ARM64 root-only manual', 'workflow_dispatch', 'Linux', 'ARM64', false, false, 'pnpm']","source_sha256":"708eb54784fcf7679efa9778f5fc4db15cf5b008fa1ac499b666d686a003d829","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":22,"decision":"keep","reason":"Linux ARM64 root-only manual: preserve expected restore=False and setup-node cache='pnpm'; retain event=workflow_dispatch, OS=Linux, arch=ARM64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Linux ARM64 root-only manual","workflow_dispatch","Linux","ARM64",false,false,"pnpm"]},{"line":155,"endLine":155,"expression":"['macOS x64 root-only PR', 'pull_request', 'macOS', 'X64', false, false, '']","source_sha256":"b803b6c4c579c48a5a02c1d32971c3895c82298d16795b1f333410cbaf9e4538","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":23,"decision":"keep","reason":"macOS x64 root-only PR: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=macOS, arch=X64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS x64 root-only PR","pull_request","macOS","X64",false,false,""]},{"line":156,"endLine":156,"expression":"['macOS ARM64 root-only PR', 'pull_request', 'macOS', 'ARM64', false, false, '']","source_sha256":"a02251f35e198e170c3f7cc0bd60b9304eb0190fecd70f5981a5898caf22fb3b","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":24,"decision":"keep","reason":"macOS ARM64 root-only PR: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=macOS, arch=ARM64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS ARM64 root-only PR","pull_request","macOS","ARM64",false,false,""]},{"line":157,"endLine":157,"expression":"['macOS x86 root-only PR', 'pull_request', 'macOS', 'X86', false, true, '']","source_sha256":"b90c2cde7a096a631b561defb4dc1792e9b1a908f56f6ee9807acec5b62ec40f","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":25,"decision":"keep","reason":"macOS x86 root-only PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=macOS, arch=X86, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS x86 root-only PR","pull_request","macOS","X86",false,true,""]},{"line":158,"endLine":158,"expression":"['macOS x64 mixed PR', 'pull_request', 'macOS', 'X64', true, true, '']","source_sha256":"ea6b1733b7e22d5aa512985f7c13125b13c6903079b4f8f67f11f6f296053d6d","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":26,"decision":"keep","reason":"macOS x64 mixed PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=macOS, arch=X64, lockfile selector=True, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS x64 mixed PR","pull_request","macOS","X64",true,true,""]},{"line":159,"endLine":159,"expression":"['macOS ARM64 mixed PR', 'pull_request', 'macOS', 'ARM64', true, true, '']","source_sha256":"7298737962d514318adac006cf9503397c909b951f70faa8094b40da9780b94e","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":27,"decision":"keep","reason":"macOS ARM64 mixed PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=macOS, arch=ARM64, lockfile selector=True, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS ARM64 mixed PR","pull_request","macOS","ARM64",true,true,""]},{"line":160,"endLine":160,"expression":"['macOS ARM64 custom PR', 'pull_request', 'macOS', 'ARM64', 'cloud/pnpm-lock.yaml', true, '']","source_sha256":"cf70d8f7849e1615b9959d49924b5340a54e47efa2b97d1939de979ed773547d","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":28,"decision":"keep","reason":"macOS ARM64 custom PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=macOS, arch=ARM64, lockfile selector='cloud/pnpm-lock.yaml', explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS ARM64 custom PR","pull_request","macOS","ARM64","cloud/pnpm-lock.yaml",true,""]},{"line":161,"endLine":161,"expression":"['macOS ARM64 opted-out PR', 'pull_request', 'macOS', 'ARM64', true, false, '', 'false']","source_sha256":"000ad813af3eebc21bf632bd15b9a3aa375f4eb966baaf0f722d0bb87f54394b","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":29,"decision":"keep","reason":"macOS ARM64 opted-out PR: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=macOS, arch=ARM64, lockfile selector=True, explicit store-cache='false', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS ARM64 opted-out PR","pull_request","macOS","ARM64",true,false,"","false"]},{"line":162,"endLine":162,"expression":"['macOS x64 root-only push', 'push', 'macOS', 'X64', false, false, 'pnpm']","source_sha256":"ac2dbc657b44876b034c4f8ee69dbc3e7200fe4588255797be96df97b0b2534c","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":30,"decision":"keep","reason":"macOS x64 root-only push: preserve expected restore=False and setup-node cache='pnpm'; retain event=push, OS=macOS, arch=X64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS x64 root-only push","push","macOS","X64",false,false,"pnpm"]},{"line":163,"endLine":163,"expression":"['macOS ARM64 root-only manual', 'workflow_dispatch', 'macOS', 'ARM64', false, false, 'pnpm']","source_sha256":"9c474eca89f7c788a6c8e080f5116d1701e2cf070e8438c7bed446f05909d657","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":31,"decision":"keep","reason":"macOS ARM64 root-only manual: preserve expected restore=False and setup-node cache='pnpm'; retain event=workflow_dispatch, OS=macOS, arch=ARM64, lockfile selector=False, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS ARM64 root-only manual","workflow_dispatch","macOS","ARM64",false,false,"pnpm"]},{"line":164,"endLine":164,"expression":"['Linux x64 mixed PR', 'pull_request', 'Linux', 'X64', true, true, '']","source_sha256":"cca563f4859437c1237a2a6ed93be466d43805296be3b9776a5af55030de7cc6","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":32,"decision":"keep","reason":"Linux x64 mixed PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=Linux, arch=X64, lockfile selector=True, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Linux x64 mixed PR","pull_request","Linux","X64",true,true,""]},{"line":165,"endLine":165,"expression":"['Linux ARM64 mixed PR', 'pull_request', 'Linux', 'ARM64', true, true, '']","source_sha256":"12bf1a65781a67bc2c77cdcdb558efc796fbd69ef74c8b0b19861fe89a097b2e","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":33,"decision":"keep","reason":"Linux ARM64 mixed PR: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=Linux, arch=ARM64, lockfile selector=True, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Linux ARM64 mixed PR","pull_request","Linux","ARM64",true,true,""]},{"line":166,"endLine":166,"expression":"['Windows x64 mixed push', 'push', 'Windows', 'X64', true, false, 'pnpm']","source_sha256":"6d8f262142aeb9eb9b1c762a68c2503442ee999f034faf5e568edd6a4d4591ed","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":34,"decision":"keep","reason":"Windows x64 mixed push: preserve expected restore=False and setup-node cache='pnpm'; retain event=push, OS=Windows, arch=X64, lockfile selector=True, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows x64 mixed push","push","Windows","X64",true,false,"pnpm"]},{"line":167,"endLine":167,"expression":"['Windows x64 mixed manual run', 'workflow_dispatch', 'Windows', 'X64', true, false, 'pnpm']","source_sha256":"2be7c01b659f64a1ec34768cb0bad49176f27456796b590b7e92bda3f0fda717","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":35,"decision":"keep","reason":"Windows x64 mixed manual run: preserve expected restore=False and setup-node cache='pnpm'; retain event=workflow_dispatch, OS=Windows, arch=X64, lockfile selector=True, explicit store-cache='true', and lookup request='false'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows x64 mixed manual run","workflow_dispatch","Windows","X64",true,false,"pnpm"]},{"line":168,"endLine":168,"expression":"['Windows x64 lookup producer', 'push', 'Windows', 'X64', false, false, '', 'true', 'true']","source_sha256":"f761e3d8dbb08d8c25d32d88c787998b4d56d92fe5df3ba477fcb38994109f59","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":36,"decision":"keep","reason":"Windows x64 lookup producer: preserve expected restore=False and setup-node cache=''; retain event=push, OS=Windows, arch=X64, lockfile selector=False, explicit store-cache='true', and lookup request='true'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows x64 lookup producer","push","Windows","X64",false,false,"","true","true"]},{"line":169,"endLine":179,"expression":"[\n 'Windows ARM64 lookup producer',\n 'schedule',\n 'Windows',\n 'ARM64',\n false,\n false,\n '',\n 'true',\n 'true'\n ]","source_sha256":"d3a0a3f0a72ecd328a89bbd741bb6f32612762ee05504343c5c9247d448e21bb","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":37,"decision":"keep","reason":"Windows ARM64 lookup producer: preserve expected restore=False and setup-node cache=''; retain event=schedule, OS=Windows, arch=ARM64, lockfile selector=False, explicit store-cache='true', and lookup request='true'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Windows ARM64 lookup producer","schedule","Windows","ARM64",false,false,"","true","true"]},{"line":180,"endLine":180,"expression":"['macOS ARM64 lookup producer', 'push', 'macOS', 'ARM64', false, false, '', 'true', 'true']","source_sha256":"c0f5d1b903889e234c7f7cb0ab4b04aeeb3b159f04c75139132e66f5aef1623d","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":38,"decision":"keep","reason":"macOS ARM64 lookup producer: preserve expected restore=False and setup-node cache=''; retain event=push, OS=macOS, arch=ARM64, lockfile selector=False, explicit store-cache='true', and lookup request='true'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS ARM64 lookup producer","push","macOS","ARM64",false,false,"","true","true"]},{"line":181,"endLine":191,"expression":"[\n 'Linux x64 lookup producer',\n 'workflow_dispatch',\n 'Linux',\n 'X64',\n false,\n false,\n '',\n 'true',\n 'true'\n ]","source_sha256":"1708a957e673baff1d71daaa66f829e621073d163687b702c506ce7fac124399","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":39,"decision":"keep","reason":"Linux x64 lookup producer: preserve expected restore=False and setup-node cache=''; retain event=workflow_dispatch, OS=Linux, arch=X64, lockfile selector=False, explicit store-cache='true', and lookup request='true'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Linux x64 lookup producer","workflow_dispatch","Linux","X64",false,false,"","true","true"]},{"line":192,"endLine":192,"expression":"['Opted-out lookup producer', 'push', 'Windows', 'ARM64', false, false, '', 'false', 'true']","source_sha256":"fcfe2272362042df72057c215ca38aa883254a1ac0fd804f23b05be2f5cdaf84","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":40,"decision":"keep","reason":"Opted-out lookup producer: preserve expected restore=False and setup-node cache=''; retain event=push, OS=Windows, arch=ARM64, lockfile selector=False, explicit store-cache='false', and lookup request='true'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["Opted-out lookup producer","push","Windows","ARM64",false,false,"","false","true"]},{"line":193,"endLine":203,"expression":"[\n 'macOS root PR lookup flag',\n 'pull_request',\n 'macOS',\n 'ARM64',\n false,\n false,\n '',\n 'true',\n 'true'\n ]","source_sha256":"9809de25273dc16950a7a5c449870bf09b23f1f482cea4524ce02645ac09e871","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":41,"decision":"keep","reason":"macOS root PR lookup flag: preserve expected restore=False and setup-node cache=''; retain event=pull_request, OS=macOS, arch=ARM64, lockfile selector=False, explicit store-cache='true', and lookup request='true'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS root PR lookup flag","pull_request","macOS","ARM64",false,false,"","true","true"]},{"line":204,"endLine":204,"expression":"['macOS mixed PR lookup flag', 'pull_request', 'macOS', 'ARM64', true, true, '', 'true', 'true']","source_sha256":"df7c242b33a204a8540d27eea9bf617354bcb401f038f6ee679bf15a73064a9f","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":42,"decision":"keep","reason":"macOS mixed PR lookup flag: preserve expected restore=True and setup-node cache=''; retain event=pull_request, OS=macOS, arch=ARM64, lockfile selector=True, explicit store-cache='true', and lookup request='true'. The mode output is supplied as a boundary fixture, not generated by the shell.","value":["macOS mixed PR lookup flag","pull_request","macOS","ARM64",true,true,"","true","true"]}],"decision":"keep","id":"1.T1","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":334,"endLine":340,"expression":"it.each([\n ['pull_request', false, true, false, false],\n ['pull_request', true, false, false, false],\n ['push', false, true, true, false],\n ['schedule', false, true, true, true],\n ['workflow_dispatch', false, true, true, true]\n ])","source_sha256":"cd73947ff209871ccfc0d821c666f452933c7711d2dcbdc7e636af3294185087","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","kind":"each","owner":"1.8","domain":"[\n ['pull_request', false, true, false, false],\n ['pull_request', true, false, false, false],\n ['push', false, true, true, false],\n ['schedule', false, true, true, true],\n ['workflow_dispatch', false, true, true, true]\n ]","rows":[{"line":335,"endLine":335,"expression":"['pull_request', false, true, false, false]","source_sha256":"63477f38716cc9a3ced77f9123464b4317a93a3199609f2afd4964df21271142","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":1,"decision":"keep","reason":"Event pull_request, draft=False: independently expect admission=True, Linux warmer=False, shared platforms=False; retain inverted-draft control too.","value":["pull_request",false,true,false,false]},{"line":336,"endLine":336,"expression":"['pull_request', true, false, false, false]","source_sha256":"5d41626be1aa4d7cc807a8d5efa2977dd6d7d0c3417b28a6ab431c890d7bf5b7","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":2,"decision":"keep","reason":"Event pull_request, draft=True: independently expect admission=False, Linux warmer=False, shared platforms=False; retain inverted-draft control too.","value":["pull_request",true,false,false,false]},{"line":337,"endLine":337,"expression":"['push', false, true, true, false]","source_sha256":"26ebc29177acf24055c1a900299d67c8959a431b2ba155431e8355e6ca3c18e1","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":3,"decision":"keep","reason":"Event push, draft=False: independently expect admission=True, Linux warmer=True, shared platforms=False; retain inverted-draft control too.","value":["push",false,true,true,false]},{"line":338,"endLine":338,"expression":"['schedule', false, true, true, true]","source_sha256":"f18777fb21e4628b2171ebb92124c964b278884b946eb001dc6f8bb83c196e4e","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":4,"decision":"keep","reason":"Event schedule, draft=False: independently expect admission=True, Linux warmer=True, shared platforms=True; retain inverted-draft control too.","value":["schedule",false,true,true,true]},{"line":339,"endLine":339,"expression":"['workflow_dispatch', false, true, true, true]","source_sha256":"e4886836786d07d8830b6f8802af4cf4fb091755ce092e6a83d67ea2bd803372","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":5,"decision":"keep","reason":"Event workflow_dispatch, draft=False: independently expect admission=True, Linux warmer=True, shared platforms=True; retain inverted-draft control too.","value":["workflow_dispatch",false,true,true,true]}],"decision":"keep","id":"1.T2","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":510,"endLine":510,"expression":"it.each(['adhoc-mac-build', 'daily-mac-build', 'hourly-mac-build', 'release-mac-build'])","source_sha256":"0e70f05691cdf061f6ce46bcea9f861fd33e8b63a385c1e56430b17c6dabbe6e","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","kind":"each","owner":"1.13","domain":"['adhoc-mac-build', 'daily-mac-build', 'hourly-mac-build', 'release-mac-build']","rows":[{"line":510,"endLine":510,"expression":"'adhoc-mac-build'","source_sha256":"000544641df5525c6726924c1e7abd39c15ae6f825b8ac0d1def1feb96688071","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":1,"decision":"keep","reason":"Preserve exact original control 'adhoc-mac-build'; All four independently selected macOS build workflows request both x64 and arm64 variants; nonempty installs prevent a vacuous no-install pass.","value":"adhoc-mac-build"},{"line":510,"endLine":510,"expression":"'daily-mac-build'","source_sha256":"d1e5f9d2d7ea81c679bae40e792751c766521ec2fa46ed4d011736bf5e72150f","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":2,"decision":"keep","reason":"Preserve exact original control 'daily-mac-build'; All four independently selected macOS build workflows request both x64 and arm64 variants; nonempty installs prevent a vacuous no-install pass.","value":"daily-mac-build"},{"line":510,"endLine":510,"expression":"'hourly-mac-build'","source_sha256":"f1e182149617cd437d78d06a1937154aeeae0127f98dbc1481a65ec4a85724a5","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":3,"decision":"keep","reason":"Preserve exact original control 'hourly-mac-build'; All four independently selected macOS build workflows request both x64 and arm64 variants; nonempty installs prevent a vacuous no-install pass.","value":"hourly-mac-build"},{"line":510,"endLine":510,"expression":"'release-mac-build'","source_sha256":"2749148fae40d4f0fa88b53b91585b86d1e26e010c5a9cb29cb7547495925e97","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":4,"decision":"keep","reason":"Preserve exact original control 'release-mac-build'; All four independently selected macOS build workflows request both x64 and arm64 variants; nonempty installs prevent a vacuous no-install pass.","value":"release-mac-build"}],"decision":"keep","id":"1.T3","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":530,"endLine":530,"expression":"it.each(['release-cut', 'dev-channel-win-build', 'windows-signing-rehearsal'])","source_sha256":"bfe30e252bd1c5dec4a55a5f8cb964b2dc4ebb18b82357230fcb3fb155ec12ce","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","kind":"each","owner":"1.15","domain":"['release-cut', 'dev-channel-win-build', 'windows-signing-rehearsal']","rows":[{"line":530,"endLine":530,"expression":"'release-cut'","source_sha256":"590fbe4ee9c280da6a774588909d7082dca943e69f6f90b4f5613a3711bc336c","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":1,"decision":"keep","reason":"Preserve exact original control 'release-cut'; All five install commands across the three named workflows remain host scoped; all three workflow inputs are retained.","value":"release-cut"},{"line":530,"endLine":530,"expression":"'dev-channel-win-build'","source_sha256":"70f381adb776f830c3eb66629387d52ecddfc2aafea8ed3a28020f263f8c6993","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":2,"decision":"keep","reason":"Preserve exact original control 'dev-channel-win-build'; All five install commands across the three named workflows remain host scoped; all three workflow inputs are retained.","value":"dev-channel-win-build"},{"line":530,"endLine":530,"expression":"'windows-signing-rehearsal'","source_sha256":"1bf81f275432c3c8e8de910100b3c3b480e4dbabe0e11c8faf7fac11714770d9","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":3,"decision":"keep","reason":"Preserve exact original control 'windows-signing-rehearsal'; All five install commands across the three named workflows remain host scoped; all three workflow inputs are retained.","value":"windows-signing-rehearsal"}],"decision":"keep","id":"1.T4","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":15,"endLine":15,"expression":"action.runs.steps.filter((step) => step.uses === 'actions/setup-node@v6')","source_sha256":"85db85bb968c74a776096f21ae175649de1cf571639d7bd10214ce6ff7a90b53","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","kind":"for-of","owner":"1.1","domain":"action.runs.steps.filter((step) => step.uses === 'actions/setup-node@v6')","rows":null,"decision":"keep","id":"1.T5","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","resolved_domain":"Current pinned YAML inputs from workflow-domains.json; all elements manually read.","current_rows":[{"row":1,"value":{"name":"Setup Node.js","id":"default-node","if":"inputs.node-version == ''","uses":"actions/setup-node@v6","with":{"node-version-file":"package.json","check-latest":true,"cache":"${{ github.event_name != 'pull_request' && inputs.cache-pnpm-store != 'false' && steps.pnpm-store-mode.outputs.lookup-only != 'true' && 'pnpm' || '' }}","cache-dependency-path":"${{ inputs.cache-dependency-path }}","package-manager-cache":false}},"value_json_sha256":"82d3cef26282b251c4b02164196cf10635b6f37862d4a05e70dd3543f10cd039","decision":"keep","reason":"Preserve this actual production-derived input to 1.1; its independently asserted behavior must apply to every current member."},{"row":2,"value":{"name":"Setup requested Node.js","id":"requested-node","if":"inputs.node-version != ''","uses":"actions/setup-node@v6","with":{"node-version":"${{ inputs.node-version }}","check-latest":true,"cache":"${{ github.event_name != 'pull_request' && inputs.cache-pnpm-store != 'false' && steps.pnpm-store-mode.outputs.lookup-only != 'true' && 'pnpm' || '' }}","cache-dependency-path":"${{ inputs.cache-dependency-path }}","package-manager-cache":false}},"value_json_sha256":"6035dbedbdb8e6a728e019b8e1c5414bcaa713318024773b73ee55da02d20dec","decision":"keep","reason":"Preserve this actual production-derived input to 1.1; its independently asserted behavior must apply to every current member."}],"source_phase":"original"},{"line":248,"endLine":251,"expression":"action.runs.steps.filter(\n (step) =>\n step.id === 'pnpm-store' || step.name === 'Restore pnpm download store without saving'\n )","source_sha256":"464f2d75a6b24836496eceaa82ec29354f3b5c70283fe07c2dcb9d60c30bdee0","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","kind":"for-of","owner":"1.5","domain":"action.runs.steps.filter(\n (step) =>\n step.id === 'pnpm-store' || step.name === 'Restore pnpm download store without saving'\n )","rows":null,"decision":"keep","id":"1.T6","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","resolved_domain":"Current pinned YAML inputs from workflow-domains.json; all elements manually read.","current_rows":[{"row":1,"value":{"name":"Resolve pnpm download store","id":"pnpm-store","if":"github.event_name == 'pull_request' && inputs.cache-pnpm-store != 'false' && !((runner.os == 'Linux' || runner.os == 'macOS') && (runner.arch == 'X64' || runner.arch == 'ARM64') && inputs.cache-dependency-path == 'pnpm-lock.yaml') && (runner.os != 'Windows' || !(runner.arch == 'X64' && contains(inputs.cache-dependency-path, 'mobile/pnpm-lock.yaml')) && !((runner.arch == 'X64' || runner.arch == 'ARM64') && inputs.cache-dependency-path == 'pnpm-lock.yaml')) || (github.event_name != 'pull_request' && inputs.cache-pnpm-store != 'false' && steps.pnpm-store-mode.outputs.lookup-only == 'true')","shell":"bash","env":{"LOCKFILE_HASH":"${{ hashFiles(inputs.cache-dependency-path) }}","STORE_LOOKUP_ONLY":"${{ steps.pnpm-store-mode.outputs.lookup-only == 'true' }}"},"run":"test -n \"$LOCKFILE_HASH\"\ncache_path=\"$(pnpm store path --silent)\"\ntest -n \"$cache_path\"\nprintf 'path=%s\\n' \"$cache_path\" >> \"$GITHUB_OUTPUT\"\nprintf 'arch=%s\\n' \"$(node -p 'require(\"node:os\").arch()')\" >> \"$GITHUB_OUTPUT\"\nif [ \"$STORE_LOOKUP_ONLY\" = 'true' ]; then\n printf 'ORCA_PNPM_STORE_CACHE_PATH=%s\\n' \"$cache_path\" >> \"$GITHUB_ENV\"\nfi\n"},"value_json_sha256":"e7b6c66cd4e8a06167c93326c5b88daed7059f46a69bea5e077230b8cf845a02","decision":"keep","reason":"Preserve this actual production-derived input to 1.5; its independently asserted behavior must apply to every current member."},{"row":2,"value":{"name":"Restore pnpm download store without saving","id":"pnpm-store-restore","if":"github.event_name == 'pull_request' && inputs.cache-pnpm-store != 'false' && !((runner.os == 'Linux' || runner.os == 'macOS') && (runner.arch == 'X64' || runner.arch == 'ARM64') && inputs.cache-dependency-path == 'pnpm-lock.yaml') && (runner.os != 'Windows' || !(runner.arch == 'X64' && contains(inputs.cache-dependency-path, 'mobile/pnpm-lock.yaml')) && !((runner.arch == 'X64' || runner.arch == 'ARM64') && inputs.cache-dependency-path == 'pnpm-lock.yaml'))","uses":"actions/cache/restore@v5","with":{"path":"${{ steps.pnpm-store.outputs.path }}","key":"node-cache-${{ runner.os }}-${{ steps.pnpm-store.outputs.arch }}-pnpm-${{ hashFiles(inputs.cache-dependency-path) }}"}},"value_json_sha256":"3d100201105d0a44ebacbf9f379e8f595069eb3e60f246ba18c581aadc8bf583","decision":"keep","reason":"Preserve this actual production-derived input to 1.5; its independently asserted behavior must apply to every current member."}],"source_phase":"original"},{"line":263,"endLine":265,"expression":"action.runs.steps.filter(\n (step) => step.uses === 'actions/setup-node@v6'\n )","source_sha256":"d459fb4cdc69dc290fa7f9b83a569c433d6ad62daa483c625803b1a3221c6d99","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","kind":"for-of","owner":"1.5","domain":"action.runs.steps.filter(\n (step) => step.uses === 'actions/setup-node@v6'\n )","rows":null,"decision":"keep","id":"1.T7","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","resolved_domain":"Current pinned YAML inputs from workflow-domains.json; all elements manually read.","current_rows":[{"row":1,"value":{"name":"Setup Node.js","id":"default-node","if":"inputs.node-version == ''","uses":"actions/setup-node@v6","with":{"node-version-file":"package.json","check-latest":true,"cache":"${{ github.event_name != 'pull_request' && inputs.cache-pnpm-store != 'false' && steps.pnpm-store-mode.outputs.lookup-only != 'true' && 'pnpm' || '' }}","cache-dependency-path":"${{ inputs.cache-dependency-path }}","package-manager-cache":false}},"value_json_sha256":"82d3cef26282b251c4b02164196cf10635b6f37862d4a05e70dd3543f10cd039","decision":"keep","reason":"Preserve this actual production-derived input to 1.5; its independently asserted behavior must apply to every current member."},{"row":2,"value":{"name":"Setup requested Node.js","id":"requested-node","if":"inputs.node-version != ''","uses":"actions/setup-node@v6","with":{"node-version":"${{ inputs.node-version }}","check-latest":true,"cache":"${{ github.event_name != 'pull_request' && inputs.cache-pnpm-store != 'false' && steps.pnpm-store-mode.outputs.lookup-only != 'true' && 'pnpm' || '' }}","cache-dependency-path":"${{ inputs.cache-dependency-path }}","package-manager-cache":false}},"value_json_sha256":"6035dbedbdb8e6a728e019b8e1c5414bcaa713318024773b73ee55da02d20dec","decision":"keep","reason":"Preserve this actual production-derived input to 1.5; its independently asserted behavior must apply to every current member."}],"source_phase":"original"},{"line":292,"endLine":292,"expression":"[workflow('ci-cache-warmup').jobs.warm, platformJobs['warm-linux-runtime']]","source_sha256":"60287575618fa24c45d31b70855a192871ac880d5d3769fe543325037dce6775","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","kind":"for-of","owner":"1.6","domain":"[workflow('ci-cache-warmup').jobs.warm, platformJobs['warm-linux-runtime']]","rows":[{"line":292,"endLine":292,"expression":"workflow('ci-cache-warmup').jobs.warm","source_sha256":"7d4b0d94768002fde72941cb366e4a7d6b75a03b940ef9cdc6f43aab1de84312","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":1,"decision":"keep","reason":"Preserve exact original control workflow('ci-cache-warmup').jobs.warm; Actual persistence/SSH/warmer YAML opts measured Windows installs out of download archives while retaining Node preparation and eligible producer lookup.","value":{"$expression":"workflow('ci-cache-warmup').jobs.warm"}},{"line":292,"endLine":292,"expression":"platformJobs['warm-linux-runtime']","source_sha256":"893b012d6462462e026c865e6087fa50c83f2bcadba108b20438ceaced101b0f","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":2,"decision":"keep","reason":"Preserve exact original control platformJobs['warm-linux-runtime']; Actual persistence/SSH/warmer YAML opts measured Windows installs out of download archives while retaining Node preparation and eligible producer lookup.","value":{"$expression":"platformJobs['warm-linux-runtime']"}}],"decision":"keep","id":"1.T8","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":318,"endLine":318,"expression":"[shared, platforms]","source_sha256":"4f66225c8997afe0c4bc9575fa23f19a7026ff2d0a7ed06985aff6cd70059d02","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","kind":"for-of","owner":"1.7","domain":"[shared, platforms]","rows":[{"line":318,"endLine":318,"expression":"shared","source_sha256":"a4d26868017c0ccffe2efe50944ef4211834660cca834c6e9f86dec6a88246fa","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":1,"decision":"keep","reason":"Preserve exact original control shared; Warmer trigger paths select the relevant workflow family and share the producer jobs; push/schedule/manual and PR-concurrency contracts are preserved.","value":{"$expression":"shared"}},{"line":318,"endLine":318,"expression":"platforms","source_sha256":"0684f6b9c83d23bf4f17dc4ca7a34b4dab749500de31f047c6d05d833f236a29","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":2,"decision":"keep","reason":"Preserve exact original control platforms; Warmer trigger paths select the relevant workflow family and share the producer jobs; push/schedule/manual and PR-concurrency contracts are preserved.","value":{"$expression":"platforms"}}],"decision":"keep","id":"1.T9","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":355,"endLine":355,"expression":"[shared.jobs.warm.if, platformWorkflow.jobs['warm-platforms'].if]","source_sha256":"d002c05f84482b02570f7e495d205737b7e9ed25d341cd090c543f8730271779","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","kind":"for-of","owner":"1.8","domain":"[shared.jobs.warm.if, platformWorkflow.jobs['warm-platforms'].if]","rows":[{"line":355,"endLine":355,"expression":"shared.jobs.warm.if","source_sha256":"d758723db5f10b5566375895c781f0e61663e8cb0281464d5a5b10df144e25dc","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":1,"decision":"keep","reason":"Preserve exact original control shared.jobs.warm.if; All five event/draft rows evaluate live YAML admission expressions, including inverted draft controls, while retaining Windows matrix validation and non-PR ARM warming.","value":{"$expression":"shared.jobs.warm.if"}},{"line":355,"endLine":355,"expression":"platformWorkflow.jobs['warm-platforms'].if","source_sha256":"c54fb9ed55202d5fbfb7d96efbedeeb4819805524a43d633fb81971330925712","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":2,"decision":"keep","reason":"Preserve exact original control platformWorkflow.jobs['warm-platforms'].if; All five event/draft rows evaluate live YAML admission expressions, including inverted draft controls, while retaining Windows matrix validation and non-PR ARM warming.","value":{"$expression":"platformWorkflow.jobs['warm-platforms'].if"}}],"decision":"keep","id":"1.T10","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":395,"endLine":395,"expression":"preflightInstalls","source_sha256":"b508880928306cbebd67b5cdb3ffb599a7193a5042bec68826914ac56e1585f4","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","kind":"for-of","owner":"1.9","domain":"preflightInstalls","rows":null,"decision":"keep","id":"1.T11","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","resolved_domain":"Current pinned YAML inputs from workflow-domains.json; all elements manually read.","current_rows":[{"row":1,"value":{"uses":"./.github/actions/install-node-dependencies","if":"needs.code_paths.outputs.mobile_dependencies != 'true'","with":{"native-runtime":"node","node-version":"24"}},"value_json_sha256":"5f27a0f445f812f0b666bef3fd5a151852bf5cdb869b116a10a8e6f03be103fb","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":2,"value":{"uses":"./.github/actions/install-node-dependencies","if":"needs.code_paths.outputs.mobile_dependencies == 'true'","with":{"native-runtime":"node","node-version":"24","cache-dependency-path":"pnpm-lock.yaml\nmobile/pnpm-lock.yaml\n"}},"value_json_sha256":"41ad22d5f53e454c880be22fa2ae57ad08e7fca28462d069953ac9228af007d0","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."}],"source_phase":"original"},{"line":413,"endLine":418,"expression":"[\n ...inputs,\n '.github/actions/install-node-dependencies/action.yml',\n ...workflow('ci-cache-warmup-platforms').on.pull_request.paths,\n '.github/workflows/ci-cache-warmup.yml'\n ]","source_sha256":"c35be5c7b3c6095e797b7ce287f0bf081e80bf5ddbef591bc029d1a9597dd885","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","kind":"for-of","owner":"1.9","domain":"[\n ...inputs,\n '.github/actions/install-node-dependencies/action.yml',\n ...workflow('ci-cache-warmup-platforms').on.pull_request.paths,\n '.github/workflows/ci-cache-warmup.yml'\n ]","rows":null,"decision":"keep","id":"1.T12","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","resolved_domain":"Current pinned YAML inputs from workflow-domains.json; all elements manually read.","current_rows":[{"row":1,"value":"pnpm-lock.yaml","value_json_sha256":"bef492ecd56a14097cfad9f9d49580059271dda6b2b2f924af1484a294f62940","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":2,"value":"pnpm-workspace.yaml","value_json_sha256":"4f9dc9b8674b077a78c5847ef0886e1470f7b81af23b3c80c230f7282882e48b","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":3,"value":".npmrc","value_json_sha256":"c352624d604245689af22d4acd6382dcf70992e87f68a4d11442d9d5576bcbbc","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":4,"value":"config/pnpmfile.cjs","value_json_sha256":"614d583fe9de951729c26ecfdd76988c52c6aa1ee8d7daf239130bb6faf46fea","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":5,"value":".github/actions/prepare-native-runtime/action.yml","value_json_sha256":"74ae2729e07785990b8ec1639d546e9c66ef01f5d2c02339babf40631299b89f","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":6,"value":"config/scripts/ensure-native-runtime.mjs","value_json_sha256":"ab97bff0a57545a8cee2cd2e916f368f68a915bc197181b3938acda848208ec0","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":7,"value":"config/scripts/initialize-windows-native-toolchain.mjs","value_json_sha256":"b9b4c7d3ca98b8b7ed4c91d3f72f37fada7568812bba8b7195671f04d6691466","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":8,"value":"config/scripts/capture-windows-native-environment.cmd","value_json_sha256":"49481c09a963bf3b4557917d691a2c5a2bd00daf7ef67813150f5d5a77de6d2e","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":9,"value":"config/scripts/rebuild-native-deps.mjs","value_json_sha256":"970e3f585353259ef665ae7dcdeb58694cc3e49ee84a097a2da2fa6b929f1280","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":10,"value":"config/scripts/node-pty-job-ownership.cjs","value_json_sha256":"e1ee1f66d84d0242c870e6f9f69de099ba57f2f1119522e9fb260b8a21490972","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":11,"value":"config/scripts/windows-pe-machine.cjs","value_json_sha256":"682d4324b455aa47ae72bd8ba6fe19f6d64e4c5510cb8fb259f56771a0565423","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":12,"value":"config/scripts/windows-process-tree-gyp-rebuild.mjs","value_json_sha256":"9eb6e86e77fcf83198c4d15feaedb7b3f1ae8c19838be2c4ec5610eb78baf5f6","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":13,"value":"config/scripts/windows-process-tree-creation-time.cjs","value_json_sha256":"d0045d2eedafd2efa3299acea4ebf3806a0290d04f50730f0a49dcbb0274dbc4","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":14,"value":"config/scripts/install-electron-package-binary.mjs","value_json_sha256":"d755314ad1b72bf3b2ee89c89b6e59e41d1d2521b2eb33a4e3d61acb10f67a8b","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":15,"value":"config/scripts/electron-platform-path.mjs","value_json_sha256":"1a838dbd3839093bfb3dfce116af1245cd189f4722e0d43fceb0bd55f8c65e1f","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":16,"value":"config/scripts/zip-extractor-command.mjs","value_json_sha256":"4ae29368123d3d42d527239e20cd44eecadb75c95311c5e28c51e18667cbdff8","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":17,"value":"src/shared/zip-extractor-command.ts","value_json_sha256":"5d200e4f6019e1d6b30cdaa52f4236ca6ca8d7e81e33f14b8548251213726338","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":18,"value":"config/scripts/shared-electron-dist-cache.mjs","value_json_sha256":"8ec1d4303766515af524c38b3e127caab65d674cfe99d7b51696e1078d45d233","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":19,"value":"config/scripts/space-sharing-copy.mjs","value_json_sha256":"a615e0cc4af61419127d331ca696ce19199dfbc7e5ac9642e11d4db4c550298f","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":20,"value":"config/patches/node-pty@1.1.0.patch","value_json_sha256":"90a3656eb6587bc48738fd2e7f31e83bc3a00eabef49fe5e64dc6e7becef00dd","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":21,"value":"config/patches/@vscode__windows-process-tree@0.8.0.patch","value_json_sha256":"c064227cead96676e0c5bd57687771f2c924bd3a5be20d1f98c5b184374a1e44","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":22,"value":"native/windows-registry/src/addon.cc","value_json_sha256":"e32521cc55735bde083a44be95ec9c57fce111361e22a1bef85c8541701fe666","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":23,"value":"native/windows-registry/binding.gyp","value_json_sha256":"3f3b09363199b9eb3923998708bdd8a67f89224b34284164c3053b332722f983","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":24,"value":"native/windows-registry/package.json","value_json_sha256":"c80940e90a7fc1e5f4f0e5cb394ab187f791896ebe9f28f43ecc2582edc660a8","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":25,"value":"native/windows-registry/index.js","value_json_sha256":"36cbbbd0f09f7536d0cdb331d048efde30118e33018c16112e653f7d68606727","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":26,"value":"native/windows-security/src/addon.cc","value_json_sha256":"07b20a8d42eade104e26598dd6f4d46cf8495449870789c4b7faa009b110aef0","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":27,"value":"native/windows-security/binding.gyp","value_json_sha256":"fc24f8d1e1695bacc3a8d34cd15e3a407ea4670c7eac044ed87b0bbeb4518383","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":28,"value":"native/windows-security/package.json","value_json_sha256":"5c46442e7db73688da55d1b39ffe3665b8b959494f6ab703ff606c237aa491e4","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":29,"value":"native/windows-security/index.js","value_json_sha256":"44276233a6166bd873f392feadf7ee200e1006ecbe2b8c04dbbe25150dac0eb9","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":30,"value":".github/actions/install-node-dependencies/action.yml","value_json_sha256":"4ba63e21ea05e50e90c62dbdfc1dacd3f836d6b100666ca5fbb7615063a1f607","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":31,"value":".github/workflows/ci-cache-warmup-platforms.yml","value_json_sha256":"d99434e628719bc84b93039d5276da5f4092e7946d66292802664873a6ffcb96","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":32,"value":".github/workflows/ci-cache-warmup-platform-jobs.yml","value_json_sha256":"5e1c0a3ede5ee4dc0f525eb4d0e9eb3e07280f27a18e563659ac437142c17cb2","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."},{"row":33,"value":".github/workflows/ci-cache-warmup.yml","value_json_sha256":"5cf130a9a2ff27eaa0df3e978a595cbf62e0260c17937283ac4fa992d1d8ff93","decision":"keep","reason":"Preserve this actual production-derived input to 1.9; its independently asserted behavior must apply to every current member."}],"source_phase":"original"},{"line":445,"endLine":445,"expression":"['dev-channel-win-build', 'windows-signing-rehearsal']","source_sha256":"db7ef3bd92620091ef1befe855e0bc3814988ded831e65ceae649ef3abfa588d","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","kind":"for-of","owner":"1.10","domain":"['dev-channel-win-build', 'windows-signing-rehearsal']","rows":[{"line":445,"endLine":445,"expression":"'dev-channel-win-build'","source_sha256":"70f381adb776f830c3eb66629387d52ecddfc2aafea8ed3a28020f263f8c6993","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":1,"decision":"keep","reason":"Preserve exact original control 'dev-channel-win-build'; Windows release/PR/dev/signing cache identities include exact path sets as well as key strings; PR uses restore-only while each release writer can publish.","value":"dev-channel-win-build"},{"line":445,"endLine":445,"expression":"'windows-signing-rehearsal'","source_sha256":"1bf81f275432c3c8e8de910100b3c3b480e4dbabe0e11c8faf7fac11714770d9","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","row":2,"decision":"keep","reason":"Preserve exact original control 'windows-signing-rehearsal'; Windows release/PR/dev/signing cache identities include exact path sets as well as key strings; PR uses restore-only while each release writer can publish.","value":"windows-signing-rehearsal"}],"decision":"keep","id":"1.T13","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":524,"endLine":524,"expression":"installs","source_sha256":"f9cfe2f2d411d60e0ce6264b5ab47c4f4e63f9c07e18e6df7a2a266a4ed24218","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","kind":"for-of","owner":"1.14","domain":"installs","rows":null,"decision":"keep","id":"1.T14","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","resolved_domain":"Current pinned YAML inputs from workflow-domains.json; all elements manually read.","current_rows":[{"row":1,"value":{"job":"terminal-rendering-golden","index":6,"name":"Install dependencies","uses":"nick-fields/retry@v4","with":{"timeout_minutes":10,"max_attempts":3,"retry_wait_seconds":30,"command":"pnpm install --frozen-lockfile"}},"value_json_sha256":"37a5377c7baa3bb4cf9a32c3a810967990923b9e8ead364428785d27468e1e15","decision":"keep","reason":"Preserve this actual production-derived input to 1.14; its independently asserted behavior must apply to every current member."},{"row":2,"value":{"job":"terminal-rendering-release-evidence","index":5,"name":"Install dependencies","uses":"nick-fields/retry@v4","with":{"timeout_minutes":10,"max_attempts":3,"retry_wait_seconds":30,"command":"pnpm install --frozen-lockfile"}},"value_json_sha256":"a8cfe9ee59076de51d3a4cceb3cc06e472eaff46b51e3131695905208355da65","decision":"keep","reason":"Preserve this actual production-derived input to 1.14; its independently asserted behavior must apply to every current member."},{"row":3,"value":{"job":"build","index":9,"name":"Install dependencies","uses":"nick-fields/retry@v4","with":{"timeout_minutes":10,"max_attempts":3,"retry_wait_seconds":30,"command":"pnpm install --frozen-lockfile"}},"value_json_sha256":"c9a05a781807f8254e5241f1e929ea86f88621351c6105d548dc55bec29d8052","decision":"keep","reason":"Preserve this actual production-derived input to 1.14; its independently asserted behavior must apply to every current member."}],"source_phase":"original"},{"line":535,"endLine":535,"expression":"installs","source_sha256":"f9cfe2f2d411d60e0ce6264b5ab47c4f4e63f9c07e18e6df7a2a266a4ed24218","source_path":"config/scripts/ci-dependency-download-cache.test.mjs","kind":"for-of","owner":"1.15","domain":"installs","rows":null,"decision":"keep","id":"1.T15","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","resolved_domain":"Current pinned YAML inputs from workflow-domains.json; all elements manually read.","current_rows":[{"row":1,"value":{"workflow":"release-cut","job":"terminal-rendering-golden","index":6,"name":"Install dependencies","uses":"nick-fields/retry@v4","with":{"timeout_minutes":10,"max_attempts":3,"retry_wait_seconds":30,"command":"pnpm install --frozen-lockfile"}},"value_json_sha256":"bdd724d5b02cf3edd10cf401e0cc25783760e00c1eb2bae2e6722080dda06262","decision":"keep","reason":"Preserve this actual production-derived input to 1.15; its independently asserted behavior must apply to every current member."},{"row":2,"value":{"workflow":"release-cut","job":"terminal-rendering-release-evidence","index":5,"name":"Install dependencies","uses":"nick-fields/retry@v4","with":{"timeout_minutes":10,"max_attempts":3,"retry_wait_seconds":30,"command":"pnpm install --frozen-lockfile"}},"value_json_sha256":"00781aba0ec28d93db2941e7341525899e4ed519793582cef73e46e23483823a","decision":"keep","reason":"Preserve this actual production-derived input to 1.15; its independently asserted behavior must apply to every current member."},{"row":3,"value":{"workflow":"release-cut","job":"build","index":9,"name":"Install dependencies","uses":"nick-fields/retry@v4","with":{"timeout_minutes":10,"max_attempts":3,"retry_wait_seconds":30,"command":"pnpm install --frozen-lockfile"}},"value_json_sha256":"4852fd58d3c6b0ff778a8696c534157d4f7fb99af5456c9ea4b5f95ce79c2d00","decision":"keep","reason":"Preserve this actual production-derived input to 1.15; its independently asserted behavior must apply to every current member."},{"row":4,"value":{"workflow":"dev-channel-win-build","job":"build-win","index":8,"name":"Install dependencies","uses":"nick-fields/retry@v4","with":{"timeout_minutes":10,"max_attempts":3,"retry_wait_seconds":30,"command":"pnpm install --frozen-lockfile"}},"value_json_sha256":"a8c1ea7687c117d4c59ce0c444eb2cce93e688433eb325ccbca7218178ad7faf","decision":"keep","reason":"Preserve this actual production-derived input to 1.15; its independently asserted behavior must apply to every current member."},{"row":5,"value":{"workflow":"windows-signing-rehearsal","job":"rehearse","index":4,"name":"Install dependencies","uses":"nick-fields/retry@v4","with":{"timeout_minutes":10,"max_attempts":3,"retry_wait_seconds":30,"command":"pnpm install --frozen-lockfile"}},"value_json_sha256":"b7b7d8266e080640be91b6267459a788f81c20045677ae16cf1e47e43e96095d","decision":"keep","reason":"Preserve this actual production-derived input to 1.15; its independently asserted behavior must apply to every current member."}],"source_phase":"original"}],"previous_review":{"record":"config-0006-rereview.jsonl","record_sha256":"a72e55f8155d0fc4dec1f001abb94b97dbf06d8dc0acd9b4878d5b04537c25d0","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","sha256":"a7d80bbf8c30cad499696ea2ce3cbaf2f02f4b96ef8f7bab782c6cd980fb98a4","reviewed_sha256":"a7d80bbf8c30cad499696ea2ce3cbaf2f02f4b96ef8f7bab782c6cd980fb98a4"},"runtime_validation":null,"validation":"reviews/upstream-0001-validation.json"}
+{"path":"config/scripts/ci-unit-module-cache.test.mjs","sha256":"561546ac6e8dc32ca3100065f702639f725533110c0560a1f794cdd3795a8b53","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","reviewed_sha256":"95732ce3f71161193222becceded03c79a24a72900356897d343952b2fa0637d","reviewer":"audit_mobile","status":"reviewed","decision":"fix","rationale":"Preserve cache identity, filesystem validation, runner and workflow controls. Evaluate actual producer admission over ten explicit contexts and narrow two titles to behavior exercised; no case or original input removed.","evidence":["config/scripts/ci-unit-module-cache.mjs","config/scripts/ci-unit-module-cache-contents.mjs","config/scripts/ci-unit-module-cache-trailer.mjs","config/scripts/pr-code-change-scope.mjs","config/scripts/pr-package-test-paths.mjs",".github/actions/install-node-dependencies/action.yml",".github/actions/prepare-native-runtime/action.yml",".github/workflows/unit-tests.yml",".github/workflows/unit-module-cache-benchmark.yml",".github/workflows/ci-cache-warmup.yml",".github/workflows/ci-cache-warmup-platforms.yml",".github/workflows/ci-cache-warmup-platform-jobs.yml",".github/workflows/pr.yml",".github/workflows/release-cut.yml",".github/workflows/dev-channel-win-build.yml",".github/workflows/windows-signing-rehearsal.yml",".github/workflows/node-server-tests.yml",".github/workflows/ssh-windows-hosts.yml",".github/workflows/mobile.yml",".github/workflows/adhoc-mac-build.yml",".github/workflows/daily-mac-build.yml",".github/workflows/hourly-mac-build.yml",".github/workflows/release-mac-build.yml","package.json"],"cases":[{"line":38,"endLine":61,"source_sha256":"1492d93a87c27fc7726d7865764b181796f54ecfdda20335c121754ec44dd33a","source_path":"config/scripts/ci-unit-module-cache.test.mjs","id":"2.1","title":"separates hosts, runtimes, config, lockfiles, roots, shards and experiments","decision":"keep","reason":"All twelve independent identity dimensions change the cache key while preserving its fixed storage path; repeating the same identity is the deterministic positive control.","final_line":38,"final_title":"separates hosts, runtimes, config, lockfiles, roots, shards and experiments","final_source_sha256":"1492d93a87c27fc7726d7865764b181796f54ecfdda20335c121754ec44dd33a","implementation_status":"validated","input_decisions":[{"table_id":"2.T4","line":43,"endLine":43,"expression":"{ root: anotherRoot }","source_sha256":"b288a6a3903a1b936090a144ab96d89216ad7253b1f6752554c7222f7de71014","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":1,"decision":"keep","reason":"Change only { root: anotherRoot }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"root":{"$expression":"anotherRoot"}}},{"table_id":"2.T4","line":44,"endLine":44,"expression":"{ policyHash: 'c'.repeat(64) }","source_sha256":"dbea936298a8b03d1de9d77e12ab3fceb3ac125a66eb8e5ca1e3ae75ada762b9","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":2,"decision":"keep","reason":"Change only { policyHash: 'c'.repeat(64) }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"policyHash":{"$expression":"'c'.repeat(64)"}}},{"table_id":"2.T4","line":45,"endLine":45,"expression":"{ installedLockHash: 'd'.repeat(64) }","source_sha256":"d62663be2373366ec0f9b79cb972c472ab1747419d7302f83e15974d21fbad81","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":3,"decision":"keep","reason":"Change only { installedLockHash: 'd'.repeat(64) }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"installedLockHash":{"$expression":"'d'.repeat(64)"}}},{"table_id":"2.T4","line":46,"endLine":46,"expression":"{ platform: 'win32' }","source_sha256":"83a79de6cdb698ff324e49e60cc832e0e9cca6e487298b88727356216769dc3d","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":4,"decision":"keep","reason":"Change only { platform: 'win32' }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"platform":"win32"}},{"table_id":"2.T4","line":47,"endLine":47,"expression":"{ arch: 'x64' }","source_sha256":"30894821ff2b487da10ab4955ae76be5f51305e6e822dd371328c4e6d840471d","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":5,"decision":"keep","reason":"Change only { arch: 'x64' }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"arch":"x64"}},{"table_id":"2.T4","line":48,"endLine":48,"expression":"{ nodeEnv: 'production' }","source_sha256":"d8b3c260ad7e8b6f1f1b54a7c47b750740e502e646ef7365193f43c5e3ca7cbd","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":6,"decision":"keep","reason":"Change only { nodeEnv: 'production' }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"nodeEnv":"production"}},{"table_id":"2.T4","line":49,"endLine":49,"expression":"{ namespace: 'comparison' }","source_sha256":"589f798bc05c1297cd59335ea2f9d97ef3880aba12860446a95ad5a9ae283bd1","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":7,"decision":"keep","reason":"Change only { namespace: 'comparison' }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"namespace":"comparison"}},{"table_id":"2.T4","line":50,"endLine":50,"expression":"{ shard: { index: 2, count: 5 } }","source_sha256":"07d0e83cdb8fa9d8ab7eddfa01352477d036f83c65fa69a0d7482fff306e1d77","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":8,"decision":"keep","reason":"Change only { shard: { index: 2, count: 5 } }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"shard":{"index":2,"count":5}}},{"table_id":"2.T4","line":51,"endLine":51,"expression":"{ shard: { index: 1, count: 10 } }","source_sha256":"70f78a3182f2dda9a707442ae9dc5d0e4d45cfdeeeeb46f68efee28dec6c4a4b","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":9,"decision":"keep","reason":"Change only { shard: { index: 1, count: 10 } }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"shard":{"index":1,"count":10}}},{"table_id":"2.T4","line":52,"endLine":52,"expression":"{ versions: { ...original.versions, node: '26.6.0' } }","source_sha256":"8f1c6c4864a0cf53ba2d7bc6fd077d8c3bc25d2c9aa1dc0ccd45e38c4794af88","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":10,"decision":"keep","reason":"Change only { versions: { ...original.versions, node: '26.6.0' } }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"versions":{"node":"26.6.0"}}},{"table_id":"2.T4","line":53,"endLine":53,"expression":"{ versions: { ...original.versions, bun: '1.4.4' } }","source_sha256":"cd64a3d6f6540fe2ad17ab86709f20c3370e97472c9e656832dc578dc5862b08","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":11,"decision":"keep","reason":"Change only { versions: { ...original.versions, bun: '1.4.4' } }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"versions":{"bun":"1.4.4"}}},{"table_id":"2.T4","line":54,"endLine":54,"expression":"{ versions: { ...original.versions, vitest: '5.0.4' } }","source_sha256":"bb80aaebf3514d7cc512e7b5e63f4b2da268cc3b1e7a05d679d5ef4afbd5d9fd","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":12,"decision":"keep","reason":"Change only { versions: { ...original.versions, vitest: '5.0.4' } }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"versions":{"vitest":"5.0.4"}}}]},{"line":63,"endLine":72,"source_sha256":"d20bc171cb77438dfd8084bbc37beb81eab62d9e8753f4200ea5cbbef4b1e9bd","source_path":"config/scripts/ci-unit-module-cache.test.mjs","id":"2.2","title":"refuses an incomplete identity %j","decision":"keep","reason":"All six malformed identity rows fail at the actual validator: required storage/hash fields, malformed semver, and out-of-range shard indices.","final_line":63,"final_title":"refuses an incomplete identity %j","final_source_sha256":"d20bc171cb77438dfd8084bbc37beb81eab62d9e8753f4200ea5cbbef4b1e9bd","implementation_status":"validated","input_decisions":[{"table_id":"2.T1","line":64,"endLine":64,"expression":"{ cacheRoot: '' }","source_sha256":"1ca3d740a1016e3853431f36364cda86acb4aa9ca16190dd4c94fd22f8096cf9","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":1,"decision":"keep","reason":"Reject exactly { cacheRoot: '' } through real identity validation before cache restoration.","value":{"cacheRoot":""}},{"table_id":"2.T1","line":65,"endLine":65,"expression":"{ policyHash: '' }","source_sha256":"92f78744a225c3bf5fc4102f6773f66aff4ef34b5759db8839276af3e6451502","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":2,"decision":"keep","reason":"Reject exactly { policyHash: '' } through real identity validation before cache restoration.","value":{"policyHash":""}},{"table_id":"2.T1","line":66,"endLine":66,"expression":"{ installedLockHash: '' }","source_sha256":"ee99f1ae9f8f6fbeab955246efe3db7c32d19de22fff22dc10c2517e26958700","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":3,"decision":"keep","reason":"Reject exactly { installedLockHash: '' } through real identity validation before cache restoration.","value":{"installedLockHash":""}},{"table_id":"2.T1","line":67,"endLine":67,"expression":"{ versions: { node: '24', bun: '1.4.3', vitest: '5.0.3' } }","source_sha256":"1390701fc32ec55bef10545d321b6e0f2b0d046ff63092ef2ce065b07ea91ca3","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":4,"decision":"keep","reason":"Reject exactly { versions: { node: '24', bun: '1.4.3', vitest: '5.0.3' } } through real identity validation before cache restoration.","value":{"versions":{"node":"24","bun":"1.4.3","vitest":"5.0.3"}}},{"table_id":"2.T1","line":68,"endLine":68,"expression":"{ shard: { index: 0, count: 5 } }","source_sha256":"3be940a120bb98fb9f370441023da05e3fc7680818e0893dc79b292402b1b8a2","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":5,"decision":"keep","reason":"Reject exactly { shard: { index: 0, count: 5 } } through real identity validation before cache restoration.","value":{"shard":{"index":0,"count":5}}},{"table_id":"2.T1","line":69,"endLine":69,"expression":"{ shard: { index: 6, count: 5 } }","source_sha256":"c44ddc37091728bb4c598c6b25b4fca67ed3db6f75a540b92ed19338832838bb","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":6,"decision":"keep","reason":"Reject exactly { shard: { index: 6, count: 5 } } through real identity validation before cache restoration.","value":{"shard":{"index":6,"count":5}}}]},{"line":74,"endLine":85,"source_sha256":"8a338e93c3091b01a83411c039f1aed0aed6e9ed20cf6075a4b98be4f07d3898","source_path":"config/scripts/ci-unit-module-cache.test.mjs","id":"2.3","title":"starts cold and discards unusable restored bytes (hit %s)","decision":"keep","reason":"Both cold and purported-hit paths remove unusable unsealed filesystem bytes; no fixture invents a successful validation receipt.","final_line":74,"final_title":"starts cold and discards unusable restored bytes (hit %s)","final_source_sha256":"8a338e93c3091b01a83411c039f1aed0aed6e9ed20cf6075a4b98be4f07d3898","implementation_status":"validated","input_decisions":[{"table_id":"2.T2","line":74,"endLine":74,"expression":"false","source_sha256":"fcbcf165908dd18a9e49f7ff27810176db8e9f63b4352213741664245224f8aa","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":1,"decision":"keep","reason":"With restoreHit=False, actual prepare must refuse and remove the unsealed untrusted cache bytes.","value":false},{"table_id":"2.T2","line":74,"endLine":74,"expression":"true","source_sha256":"b5bea41b6c623f7c09f1bf24dcae58ebab3c0cdd90ad966bc43a45b44867e12b","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":2,"decision":"keep","reason":"With restoreHit=True, actual prepare must refuse and remove the unsealed untrusted cache bytes.","value":true}]},{"line":86,"endLine":117,"source_sha256":"c53a9245e6c45e170de50aee58f2babf7f8882d7c8e1ed4bb65fc41f3e5c4717","source_path":"config/scripts/ci-unit-module-cache.test.mjs","id":"2.4","title":"restores a matching cache from an earlier source without copying evaluated state","decision":"fix","reason":"The real seal/validate/prepare path proves reuse across different source revisions and reports the earlier producer SHA. It never evaluates modules or runs Vitest, so remove the unsupported claim about copying evaluated state. Renamed to 'restores a matching cache produced from an earlier source'; all inputs, assertions and cleanup remain unchanged.","final_line":86,"final_title":"restores a matching cache produced from an earlier source","final_source_sha256":"0c7cefcb2432f64c5e19fccce9228e3389a5e7cae560d998a15bab9a2acb8517","implementation_status":"validated"},{"line":120,"endLine":148,"source_sha256":"6fd204726f422e02d6aea4e30469d9366de8a43bab152551c70e3aed52891f34","source_path":"config/scripts/ci-unit-module-cache.test.mjs","id":"2.5","title":"uses an optional exact restore after install and saves successful scoped producers","decision":"fix","reason":"Replaced five seal.if substring checks with evaluation of the actual YAML guard over ten independently expected contexts: successful PR/main/manual producers and rejection of failed, unidentified, already-restored, ordinary branch, unseeded-manual and seeded-nonmanual producers. Existing ordering, exact optional restore/save wiring and workflow defaults remain. Isolated copied-guard mutations that the old checks miss fail the repaired named controls.","final_line":120,"final_title":"uses an optional exact restore after install and saves successful scoped producers","final_source_sha256":"fab7dd759b90ebfafc65ae0867c2ed38c39c9abf8ed3bdc7f9b631e2e74d2d71","implementation_status":"validated","new_input_decisions":[{"source_phase":"final","table_id":"2.NEW1","provenance":"new explicit YAML admission control","row":1,"decision":"keep","line":154,"expression":"['successful PR cache miss', {}, true]","source_sha256":"fac8855e19b0533c9947159312d431a49a13ac5f79af78a95c92ba4c8e2e0caa","value":{"name":"successful PR cache miss","event":"pull_request","ref":"refs/pull/1/merge","success":true,"key":"scoped","hit":"","seed":false,"expected":true},"reason":"Actual YAML seal guard must return true for 'successful PR cache miss', independently specified by this original input row."},{"source_phase":"final","table_id":"2.NEW1","provenance":"new explicit YAML admission control","row":2,"decision":"keep","line":155,"expression":"['successful main producer', { event: 'push', ref: 'refs/heads/main' }, true]","source_sha256":"06e602b51d9db6b31271a52c8c62a00afbeb6c33fe345e1e29551c6e98e8748c","value":{"name":"successful main producer","event":"push","ref":"refs/heads/main","success":true,"key":"scoped","hit":"","seed":false,"expected":true},"reason":"Actual YAML seal guard must return true for 'successful main producer', independently specified by this original input row."},{"source_phase":"final","table_id":"2.NEW1","provenance":"new explicit YAML admission control","row":3,"decision":"keep","line":156,"expression":"[\n 'successful manually seeded branch',\n { event: 'workflow_dispatch', ref: 'refs/heads/experiment', seed: true },\n true\n ]","source_sha256":"ee8d770abf63c558a5940ac600b131dcbcb3041b478c06aaa48c4a3e05e5c8b8","value":{"name":"successful manually seeded branch","event":"workflow_dispatch","ref":"refs/heads/experiment","success":true,"key":"scoped","hit":"","seed":true,"expected":true},"reason":"Actual YAML seal guard must return true for 'successful manually seeded branch', independently specified by this original input row."},{"source_phase":"final","table_id":"2.NEW1","provenance":"new explicit YAML admission control","row":4,"decision":"keep","line":161,"expression":"['failed PR', { success: false }, false]","source_sha256":"c7e81e3e83af7294d862e399430316212a30c6e23d60e28e643d593deed089cd","value":{"name":"failed PR","event":"pull_request","ref":"refs/pull/1/merge","success":false,"key":"scoped","hit":"","seed":false,"expected":false},"reason":"Actual YAML seal guard must return false for 'failed PR', independently specified by this original input row."},{"source_phase":"final","table_id":"2.NEW1","provenance":"new explicit YAML admission control","row":5,"decision":"keep","line":162,"expression":"['missing identity', { key: '' }, false]","source_sha256":"3fcc08dadd1fbaa74e8641e7009d30de7d7f9a40eba731c4713ab7b468a2af58","value":{"name":"missing identity","event":"pull_request","ref":"refs/pull/1/merge","success":true,"key":"","hit":"","seed":false,"expected":false},"reason":"Actual YAML seal guard must return false for 'missing identity', independently specified by this original input row."},{"source_phase":"final","table_id":"2.NEW1","provenance":"new explicit YAML admission control","row":6,"decision":"keep","line":163,"expression":"['exact restored hit', { hit: 'true' }, false]","source_sha256":"d8a1d554ce46fa51637d4609d7f75a89f66270f561eb6dff005bdf5972ddf808","value":{"name":"exact restored hit","event":"pull_request","ref":"refs/pull/1/merge","success":true,"key":"scoped","hit":"true","seed":false,"expected":false},"reason":"Actual YAML seal guard must return false for 'exact restored hit', independently specified by this original input row."},{"source_phase":"final","table_id":"2.NEW1","provenance":"new explicit YAML admission control","row":7,"decision":"keep","line":164,"expression":"['ordinary branch push', { event: 'push', ref: 'refs/heads/experiment' }, false]","source_sha256":"dacd02643dad943eedb3f93876370aef87c4d27f9b98141238fa9e7047c6dc28","value":{"name":"ordinary branch push","event":"push","ref":"refs/heads/experiment","success":true,"key":"scoped","hit":"","seed":false,"expected":false},"reason":"Actual YAML seal guard must return false for 'ordinary branch push', independently specified by this original input row."},{"source_phase":"final","table_id":"2.NEW1","provenance":"new explicit YAML admission control","row":8,"decision":"keep","line":165,"expression":"['unseeded manual branch', { event: 'workflow_dispatch', ref: 'refs/heads/experiment' }, false]","source_sha256":"5be4e70e61480f34001bc2bdcf8500efb69876e1e9f31f3fd16c41237f8b0c3b","value":{"name":"unseeded manual branch","event":"workflow_dispatch","ref":"refs/heads/experiment","success":true,"key":"scoped","hit":"","seed":false,"expected":false},"reason":"Actual YAML seal guard must return false for 'unseeded manual branch', independently specified by this original input row."},{"source_phase":"final","table_id":"2.NEW1","provenance":"new explicit YAML admission control","row":9,"decision":"keep","line":166,"expression":"[\n 'seed does not admit a nonmanual event',\n { event: 'push', ref: 'refs/heads/experiment', seed: true },\n false\n ]","source_sha256":"78ccf59cdf047b93d2c21a1f911ecc8e1f03dc28c54ade2f8cf78b8a8ca7aed9","value":{"name":"seed does not admit a nonmanual event","event":"push","ref":"refs/heads/experiment","success":true,"key":"scoped","hit":"","seed":true,"expected":false},"reason":"Actual YAML seal guard must return false for 'seed does not admit a nonmanual event', independently specified by this original input row."},{"source_phase":"final","table_id":"2.NEW1","provenance":"new explicit YAML admission control","row":10,"decision":"keep","line":171,"expression":"['failed main producer', { event: 'push', ref: 'refs/heads/main', success: false }, false]","source_sha256":"5216644c106198d8f51b7f5d5bb87d80f932b023c394448db92050d694905db8","value":{"name":"failed main producer","event":"push","ref":"refs/heads/main","success":false,"key":"scoped","hit":"","seed":false,"expected":false},"reason":"Actual YAML seal guard must return false for 'failed main producer', independently specified by this original input row."}]},{"line":150,"endLine":174,"source_sha256":"5271ae81e8241733cdbe3b458f08fe0fb2523fa7b18ba384b7fb8c9b5f6f93be","source_path":"config/scripts/ci-unit-module-cache.test.mjs","id":"2.6","title":"retains four workers on ARM and the four-core Blacksmith unit runner","decision":"keep","reason":"All three four-worker rows, the new eight-core x64/eight-worker row, and ordinary x64 default row evaluate the actual workflow expression; each provisioning branch has independent expected output.","final_line":191,"final_title":"retains four workers on ARM and the four-core Blacksmith unit runner","final_source_sha256":"5271ae81e8241733cdbe3b458f08fe0fb2523fa7b18ba384b7fb8c9b5f6f93be","implementation_status":"validated","input_decisions":[{"table_id":"2.T5","line":157,"endLine":157,"expression":"['ARM64', 'ubuntu-24.04-arm']","source_sha256":"9ec60f22b5c4f26cca75202581db4f37f4beef2e107a13b963c9d9d57604cf33","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":1,"decision":"keep","reason":"Actual expression must return --maxWorkers=4 for arch=ARM64 and runner=ubuntu-24.04-arm; retain independent eight-core and hosted-x64 controls.","value":["ARM64","ubuntu-24.04-arm"]},{"table_id":"2.T5","line":158,"endLine":158,"expression":"['ARM64', 'blacksmith-4vcpu-ubuntu-2404-arm']","source_sha256":"70cbe79cb156231e56dd53c8819b916ef3cc5f2e655c4c1976d523312dcd44db","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":2,"decision":"keep","reason":"Actual expression must return --maxWorkers=4 for arch=ARM64 and runner=blacksmith-4vcpu-ubuntu-2404-arm; retain independent eight-core and hosted-x64 controls.","value":["ARM64","blacksmith-4vcpu-ubuntu-2404-arm"]},{"table_id":"2.T5","line":159,"endLine":159,"expression":"['X64', 'blacksmith-4vcpu-ubuntu-2404']","source_sha256":"211056a9635d7fea0ffdf946705278ad7464490f35188874cd1fb8cc1da9db07","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":3,"decision":"keep","reason":"Actual expression must return --maxWorkers=4 for arch=X64 and runner=blacksmith-4vcpu-ubuntu-2404; retain independent eight-core and hosted-x64 controls.","value":["X64","blacksmith-4vcpu-ubuntu-2404"]}]},{"line":176,"endLine":194,"source_sha256":"ef9d894d4fe4101f06d5f1eb59fcb3313110801f54f4dc59418f50e6e83ffc51","source_path":"config/scripts/ci-unit-module-cache.test.mjs","id":"2.7","title":"runs full same-source controls serially with five four-worker shards and included producer costs","decision":"fix","reason":"Actual baseline -> producer -> warm topology, matching reusable workflow/runtime/runner/shards and cache modes are checked. No timing/accounting report is read, so narrow the title to those serial controls instead of claiming included producer costs. Renamed to 'runs baseline, producer and warm controls serially with matching runtimes and shards'; all inputs, assertions and cleanup remain unchanged.","final_line":217,"final_title":"runs baseline, producer and warm controls serially with matching runtimes and shards","final_source_sha256":"4ee15d462e3d6d6d8b0e02cef282baddc845ef7daf1588239097b008e4ad6c5e","implementation_status":"validated","input_decisions":[{"table_id":"2.T6","line":181,"endLine":181,"expression":"baseline","source_sha256":"8ba8496a2525ae171ffd104d632dede6ef418d9b95962a9d88e2fcdbc8d48d24","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":1,"decision":"keep","reason":"Preserve exact original control baseline; Actual baseline -> producer -> warm topology, matching reusable workflow/runtime/runner/shards and cache modes are checked. No timing/accounting report is read, so narrow the title to those serial controls instead of claiming included producer costs.","value":{"$expression":"baseline"}},{"table_id":"2.T6","line":181,"endLine":181,"expression":"producer","source_sha256":"d1990f97a1f4fe7b8e86da8c03c9dd3f7d536c14aa4a6f9eedab07f34cd961b0","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":2,"decision":"keep","reason":"Preserve exact original control producer; Actual baseline -> producer -> warm topology, matching reusable workflow/runtime/runner/shards and cache modes are checked. No timing/accounting report is read, so narrow the title to those serial controls instead of claiming included producer costs.","value":{"$expression":"producer"}},{"table_id":"2.T6","line":181,"endLine":181,"expression":"warm","source_sha256":"0f0aa408c1832abefd06bced5378aa7945c11b3fe2f24f8a22cd6dbdbe4bccd8","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":3,"decision":"keep","reason":"Preserve exact original control warm; Actual baseline -> producer -> warm topology, matching reusable workflow/runtime/runner/shards and cache modes are checked. No timing/accounting report is read, so narrow the title to those serial controls instead of claiming included producer costs.","value":{"$expression":"warm"}}]}],"tables":[{"line":63,"endLine":70,"expression":"it.each([\n { cacheRoot: '' },\n { policyHash: '' },\n { installedLockHash: '' },\n { versions: { node: '24', bun: '1.4.3', vitest: '5.0.3' } },\n { shard: { index: 0, count: 5 } },\n { shard: { index: 6, count: 5 } }\n ])","source_sha256":"7401b32b80f9dc335d8684c1c573f56a67f25549d9a29deaeb6ae6bb63e76449","source_path":"config/scripts/ci-unit-module-cache.test.mjs","kind":"each","owner":"2.2","domain":"[\n { cacheRoot: '' },\n { policyHash: '' },\n { installedLockHash: '' },\n { versions: { node: '24', bun: '1.4.3', vitest: '5.0.3' } },\n { shard: { index: 0, count: 5 } },\n { shard: { index: 6, count: 5 } }\n ]","rows":[{"line":64,"endLine":64,"expression":"{ cacheRoot: '' }","source_sha256":"1ca3d740a1016e3853431f36364cda86acb4aa9ca16190dd4c94fd22f8096cf9","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":1,"decision":"keep","reason":"Reject exactly { cacheRoot: '' } through real identity validation before cache restoration.","value":{"cacheRoot":""}},{"line":65,"endLine":65,"expression":"{ policyHash: '' }","source_sha256":"92f78744a225c3bf5fc4102f6773f66aff4ef34b5759db8839276af3e6451502","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":2,"decision":"keep","reason":"Reject exactly { policyHash: '' } through real identity validation before cache restoration.","value":{"policyHash":""}},{"line":66,"endLine":66,"expression":"{ installedLockHash: '' }","source_sha256":"ee99f1ae9f8f6fbeab955246efe3db7c32d19de22fff22dc10c2517e26958700","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":3,"decision":"keep","reason":"Reject exactly { installedLockHash: '' } through real identity validation before cache restoration.","value":{"installedLockHash":""}},{"line":67,"endLine":67,"expression":"{ versions: { node: '24', bun: '1.4.3', vitest: '5.0.3' } }","source_sha256":"1390701fc32ec55bef10545d321b6e0f2b0d046ff63092ef2ce065b07ea91ca3","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":4,"decision":"keep","reason":"Reject exactly { versions: { node: '24', bun: '1.4.3', vitest: '5.0.3' } } through real identity validation before cache restoration.","value":{"versions":{"node":"24","bun":"1.4.3","vitest":"5.0.3"}}},{"line":68,"endLine":68,"expression":"{ shard: { index: 0, count: 5 } }","source_sha256":"3be940a120bb98fb9f370441023da05e3fc7680818e0893dc79b292402b1b8a2","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":5,"decision":"keep","reason":"Reject exactly { shard: { index: 0, count: 5 } } through real identity validation before cache restoration.","value":{"shard":{"index":0,"count":5}}},{"line":69,"endLine":69,"expression":"{ shard: { index: 6, count: 5 } }","source_sha256":"c44ddc37091728bb4c598c6b25b4fca67ed3db6f75a540b92ed19338832838bb","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":6,"decision":"keep","reason":"Reject exactly { shard: { index: 6, count: 5 } } through real identity validation before cache restoration.","value":{"shard":{"index":6,"count":5}}}],"decision":"keep","id":"2.T1","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":74,"endLine":74,"expression":"it.each([false, true])","source_sha256":"9fc0824cd24789fc7b5ace820c8222f81bbbb96cc9eebdd8a626c3266ab15af2","source_path":"config/scripts/ci-unit-module-cache.test.mjs","kind":"each","owner":"2.3","domain":"[false, true]","rows":[{"line":74,"endLine":74,"expression":"false","source_sha256":"fcbcf165908dd18a9e49f7ff27810176db8e9f63b4352213741664245224f8aa","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":1,"decision":"keep","reason":"With restoreHit=False, actual prepare must refuse and remove the unsealed untrusted cache bytes.","value":false},{"line":74,"endLine":74,"expression":"true","source_sha256":"b5bea41b6c623f7c09f1bf24dcae58ebab3c0cdd90ad966bc43a45b44867e12b","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":2,"decision":"keep","reason":"With restoreHit=True, actual prepare must refuse and remove the unsealed untrusted cache bytes.","value":true}],"decision":"keep","id":"2.T2","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":15,"endLine":15,"expression":"temporary.splice(0)","source_sha256":"86661c601e1167254d3de0815fc3aec3315ec8628038f882302dbc83e17fd6f2","source_path":"config/scripts/ci-unit-module-cache.test.mjs","kind":"for-of","owner":null,"domain":"temporary.splice(0)","rows":null,"decision":"keep","id":"2.T3","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","quantified_policy":"Every directory appended by options() during each test is removed by temporary.splice(0) in afterEach; runtime length varies with table expansion, no empty-domain claim. All options() sites reviewed.","source_phase":"original"},{"line":42,"endLine":55,"expression":"[\n { root: anotherRoot },\n { policyHash: 'c'.repeat(64) },\n { installedLockHash: 'd'.repeat(64) },\n { platform: 'win32' },\n { arch: 'x64' },\n { nodeEnv: 'production' },\n { namespace: 'comparison' },\n { shard: { index: 2, count: 5 } },\n { shard: { index: 1, count: 10 } },\n { versions: { ...original.versions, node: '26.6.0' } },\n { versions: { ...original.versions, bun: '1.4.4' } },\n { versions: { ...original.versions, vitest: '5.0.4' } }\n ]","source_sha256":"484803c1d131337a8281ebf0a94132973642ae2c026523b12cf9be9c06cc1f21","source_path":"config/scripts/ci-unit-module-cache.test.mjs","kind":"for-of","owner":"2.1","domain":"[\n { root: anotherRoot },\n { policyHash: 'c'.repeat(64) },\n { installedLockHash: 'd'.repeat(64) },\n { platform: 'win32' },\n { arch: 'x64' },\n { nodeEnv: 'production' },\n { namespace: 'comparison' },\n { shard: { index: 2, count: 5 } },\n { shard: { index: 1, count: 10 } },\n { versions: { ...original.versions, node: '26.6.0' } },\n { versions: { ...original.versions, bun: '1.4.4' } },\n { versions: { ...original.versions, vitest: '5.0.4' } }\n ]","rows":[{"line":43,"endLine":43,"expression":"{ root: anotherRoot }","source_sha256":"b288a6a3903a1b936090a144ab96d89216ad7253b1f6752554c7222f7de71014","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":1,"decision":"keep","reason":"Change only { root: anotherRoot }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"root":{"$expression":"anotherRoot"}}},{"line":44,"endLine":44,"expression":"{ policyHash: 'c'.repeat(64) }","source_sha256":"dbea936298a8b03d1de9d77e12ab3fceb3ac125a66eb8e5ca1e3ae75ada762b9","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":2,"decision":"keep","reason":"Change only { policyHash: 'c'.repeat(64) }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"policyHash":{"$expression":"'c'.repeat(64)"}}},{"line":45,"endLine":45,"expression":"{ installedLockHash: 'd'.repeat(64) }","source_sha256":"d62663be2373366ec0f9b79cb972c472ab1747419d7302f83e15974d21fbad81","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":3,"decision":"keep","reason":"Change only { installedLockHash: 'd'.repeat(64) }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"installedLockHash":{"$expression":"'d'.repeat(64)"}}},{"line":46,"endLine":46,"expression":"{ platform: 'win32' }","source_sha256":"83a79de6cdb698ff324e49e60cc832e0e9cca6e487298b88727356216769dc3d","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":4,"decision":"keep","reason":"Change only { platform: 'win32' }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"platform":"win32"}},{"line":47,"endLine":47,"expression":"{ arch: 'x64' }","source_sha256":"30894821ff2b487da10ab4955ae76be5f51305e6e822dd371328c4e6d840471d","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":5,"decision":"keep","reason":"Change only { arch: 'x64' }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"arch":"x64"}},{"line":48,"endLine":48,"expression":"{ nodeEnv: 'production' }","source_sha256":"d8b3c260ad7e8b6f1f1b54a7c47b750740e502e646ef7365193f43c5e3ca7cbd","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":6,"decision":"keep","reason":"Change only { nodeEnv: 'production' }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"nodeEnv":"production"}},{"line":49,"endLine":49,"expression":"{ namespace: 'comparison' }","source_sha256":"589f798bc05c1297cd59335ea2f9d97ef3880aba12860446a95ad5a9ae283bd1","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":7,"decision":"keep","reason":"Change only { namespace: 'comparison' }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"namespace":"comparison"}},{"line":50,"endLine":50,"expression":"{ shard: { index: 2, count: 5 } }","source_sha256":"07d0e83cdb8fa9d8ab7eddfa01352477d036f83c65fa69a0d7482fff306e1d77","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":8,"decision":"keep","reason":"Change only { shard: { index: 2, count: 5 } }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"shard":{"index":2,"count":5}}},{"line":51,"endLine":51,"expression":"{ shard: { index: 1, count: 10 } }","source_sha256":"70f78a3182f2dda9a707442ae9dc5d0e4d45cfdeeeeb46f68efee28dec6c4a4b","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":9,"decision":"keep","reason":"Change only { shard: { index: 1, count: 10 } }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"shard":{"index":1,"count":10}}},{"line":52,"endLine":52,"expression":"{ versions: { ...original.versions, node: '26.6.0' } }","source_sha256":"8f1c6c4864a0cf53ba2d7bc6fd077d8c3bc25d2c9aa1dc0ccd45e38c4794af88","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":10,"decision":"keep","reason":"Change only { versions: { ...original.versions, node: '26.6.0' } }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"versions":{"node":"26.6.0"}}},{"line":53,"endLine":53,"expression":"{ versions: { ...original.versions, bun: '1.4.4' } }","source_sha256":"cd64a3d6f6540fe2ad17ab86709f20c3370e97472c9e656832dc578dc5862b08","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":11,"decision":"keep","reason":"Change only { versions: { ...original.versions, bun: '1.4.4' } }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"versions":{"bun":"1.4.4"}}},{"line":54,"endLine":54,"expression":"{ versions: { ...original.versions, vitest: '5.0.4' } }","source_sha256":"bb80aaebf3514d7cc512e7b5e63f4b2da268cc3b1e7a05d679d5ef4afbd5d9fd","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":12,"decision":"keep","reason":"Change only { versions: { ...original.versions, vitest: '5.0.4' } }; its actual key must differ while storage path stays fixed. Retain identical-input positive control.","value":{"versions":{"vitest":"5.0.4"}}}],"decision":"keep","id":"2.T4","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":156,"endLine":160,"expression":"[\n ['ARM64', 'ubuntu-24.04-arm'],\n ['ARM64', 'blacksmith-4vcpu-ubuntu-2404-arm'],\n ['X64', 'blacksmith-4vcpu-ubuntu-2404']\n ]","source_sha256":"e088af4c965245208fef4f3f856d92bc342d3d8bd039d926c07e8c0b98af2970","source_path":"config/scripts/ci-unit-module-cache.test.mjs","kind":"for-of","owner":"2.6","domain":"[\n ['ARM64', 'ubuntu-24.04-arm'],\n ['ARM64', 'blacksmith-4vcpu-ubuntu-2404-arm'],\n ['X64', 'blacksmith-4vcpu-ubuntu-2404']\n ]","rows":[{"line":157,"endLine":157,"expression":"['ARM64', 'ubuntu-24.04-arm']","source_sha256":"9ec60f22b5c4f26cca75202581db4f37f4beef2e107a13b963c9d9d57604cf33","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":1,"decision":"keep","reason":"Actual expression must return --maxWorkers=4 for arch=ARM64 and runner=ubuntu-24.04-arm; retain independent eight-core and hosted-x64 controls.","value":["ARM64","ubuntu-24.04-arm"]},{"line":158,"endLine":158,"expression":"['ARM64', 'blacksmith-4vcpu-ubuntu-2404-arm']","source_sha256":"70cbe79cb156231e56dd53c8819b916ef3cc5f2e655c4c1976d523312dcd44db","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":2,"decision":"keep","reason":"Actual expression must return --maxWorkers=4 for arch=ARM64 and runner=blacksmith-4vcpu-ubuntu-2404-arm; retain independent eight-core and hosted-x64 controls.","value":["ARM64","blacksmith-4vcpu-ubuntu-2404-arm"]},{"line":159,"endLine":159,"expression":"['X64', 'blacksmith-4vcpu-ubuntu-2404']","source_sha256":"211056a9635d7fea0ffdf946705278ad7464490f35188874cd1fb8cc1da9db07","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":3,"decision":"keep","reason":"Actual expression must return --maxWorkers=4 for arch=X64 and runner=blacksmith-4vcpu-ubuntu-2404; retain independent eight-core and hosted-x64 controls.","value":["X64","blacksmith-4vcpu-ubuntu-2404"]}],"decision":"keep","id":"2.T5","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":181,"endLine":181,"expression":"[baseline, producer, warm]","source_sha256":"023c7a33ec4d71dccdded73af3d68a4b0b32483297dc4a2dd48549ea11edcfff","source_path":"config/scripts/ci-unit-module-cache.test.mjs","kind":"for-of","owner":"2.7","domain":"[baseline, producer, warm]","rows":[{"line":181,"endLine":181,"expression":"baseline","source_sha256":"8ba8496a2525ae171ffd104d632dede6ef418d9b95962a9d88e2fcdbc8d48d24","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":1,"decision":"keep","reason":"Preserve exact original control baseline; Actual baseline -> producer -> warm topology, matching reusable workflow/runtime/runner/shards and cache modes are checked. No timing/accounting report is read, so narrow the title to those serial controls instead of claiming included producer costs.","value":{"$expression":"baseline"}},{"line":181,"endLine":181,"expression":"producer","source_sha256":"d1990f97a1f4fe7b8e86da8c03c9dd3f7d536c14aa4a6f9eedab07f34cd961b0","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":2,"decision":"keep","reason":"Preserve exact original control producer; Actual baseline -> producer -> warm topology, matching reusable workflow/runtime/runner/shards and cache modes are checked. No timing/accounting report is read, so narrow the title to those serial controls instead of claiming included producer costs.","value":{"$expression":"producer"}},{"line":181,"endLine":181,"expression":"warm","source_sha256":"0f0aa408c1832abefd06bced5378aa7945c11b3fe2f24f8a22cd6dbdbe4bccd8","source_path":"config/scripts/ci-unit-module-cache.test.mjs","row":3,"decision":"keep","reason":"Preserve exact original control warm; Actual baseline -> producer -> warm topology, matching reusable workflow/runtime/runner/shards and cache modes are checked. No timing/accounting report is read, so narrow the title to those serial controls instead of claiming included producer costs.","value":{"$expression":"warm"}}],"decision":"keep","id":"2.T6","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"id":"2.NEW1","kind":"for-of","owner":"2.5","domain":"[\n ['successful PR cache miss', {}, true],\n ['successful main producer', { event: 'push', ref: 'refs/heads/main' }, true],\n [\n 'successful manually seeded branch',\n { event: 'workflow_dispatch', ref: 'refs/heads/experiment', seed: true },\n true\n ],\n ['failed PR', { success: false }, false],\n ['missing identity', { key: '' }, false],\n ['exact restored hit', { hit: 'true' }, false],\n ['ordinary branch push', { event: 'push', ref: 'refs/heads/experiment' }, false],\n ['unseeded manual branch', { event: 'workflow_dispatch', ref: 'refs/heads/experiment' }, false],\n [\n 'seed does not admit a nonmanual event',\n { event: 'push', ref: 'refs/heads/experiment', seed: true },\n false\n ],\n ['failed main producer', { event: 'push', ref: 'refs/heads/main', success: false }, false]\n ]","line":153,"expression":"[\n ['successful PR cache miss', {}, true],\n ['successful main producer', { event: 'push', ref: 'refs/heads/main' }, true],\n [\n 'successful manually seeded branch',\n { event: 'workflow_dispatch', ref: 'refs/heads/experiment', seed: true },\n true\n ],\n ['failed PR', { success: false }, false],\n ['missing identity', { key: '' }, false],\n ['exact restored hit', { hit: 'true' }, false],\n ['ordinary branch push', { event: 'push', ref: 'refs/heads/experiment' }, false],\n ['unseeded manual branch', { event: 'workflow_dispatch', ref: 'refs/heads/experiment' }, false],\n [\n 'seed does not admit a nonmanual event',\n { event: 'push', ref: 'refs/heads/experiment', seed: true },\n false\n ],\n ['failed main producer', { event: 'push', ref: 'refs/heads/main', success: false }, false]\n ]","source_sha256":"4b5c5d8cb1c8168efe8d1099982055e02f181174d2baea52cc97566855e4e638","decision":"keep","rows":[{"row":1,"decision":"keep","line":154,"expression":"['successful PR cache miss', {}, true]","source_sha256":"fac8855e19b0533c9947159312d431a49a13ac5f79af78a95c92ba4c8e2e0caa","value":{"name":"successful PR cache miss","event":"pull_request","ref":"refs/pull/1/merge","success":true,"key":"scoped","hit":"","seed":false,"expected":true},"reason":"Actual YAML seal guard must return true for 'successful PR cache miss', independently specified by this original input row."},{"row":2,"decision":"keep","line":155,"expression":"['successful main producer', { event: 'push', ref: 'refs/heads/main' }, true]","source_sha256":"06e602b51d9db6b31271a52c8c62a00afbeb6c33fe345e1e29551c6e98e8748c","value":{"name":"successful main producer","event":"push","ref":"refs/heads/main","success":true,"key":"scoped","hit":"","seed":false,"expected":true},"reason":"Actual YAML seal guard must return true for 'successful main producer', independently specified by this original input row."},{"row":3,"decision":"keep","line":156,"expression":"[\n 'successful manually seeded branch',\n { event: 'workflow_dispatch', ref: 'refs/heads/experiment', seed: true },\n true\n ]","source_sha256":"ee8d770abf63c558a5940ac600b131dcbcb3041b478c06aaa48c4a3e05e5c8b8","value":{"name":"successful manually seeded branch","event":"workflow_dispatch","ref":"refs/heads/experiment","success":true,"key":"scoped","hit":"","seed":true,"expected":true},"reason":"Actual YAML seal guard must return true for 'successful manually seeded branch', independently specified by this original input row."},{"row":4,"decision":"keep","line":161,"expression":"['failed PR', { success: false }, false]","source_sha256":"c7e81e3e83af7294d862e399430316212a30c6e23d60e28e643d593deed089cd","value":{"name":"failed PR","event":"pull_request","ref":"refs/pull/1/merge","success":false,"key":"scoped","hit":"","seed":false,"expected":false},"reason":"Actual YAML seal guard must return false for 'failed PR', independently specified by this original input row."},{"row":5,"decision":"keep","line":162,"expression":"['missing identity', { key: '' }, false]","source_sha256":"3fcc08dadd1fbaa74e8641e7009d30de7d7f9a40eba731c4713ab7b468a2af58","value":{"name":"missing identity","event":"pull_request","ref":"refs/pull/1/merge","success":true,"key":"","hit":"","seed":false,"expected":false},"reason":"Actual YAML seal guard must return false for 'missing identity', independently specified by this original input row."},{"row":6,"decision":"keep","line":163,"expression":"['exact restored hit', { hit: 'true' }, false]","source_sha256":"d8a1d554ce46fa51637d4609d7f75a89f66270f561eb6dff005bdf5972ddf808","value":{"name":"exact restored hit","event":"pull_request","ref":"refs/pull/1/merge","success":true,"key":"scoped","hit":"true","seed":false,"expected":false},"reason":"Actual YAML seal guard must return false for 'exact restored hit', independently specified by this original input row."},{"row":7,"decision":"keep","line":164,"expression":"['ordinary branch push', { event: 'push', ref: 'refs/heads/experiment' }, false]","source_sha256":"dacd02643dad943eedb3f93876370aef87c4d27f9b98141238fa9e7047c6dc28","value":{"name":"ordinary branch push","event":"push","ref":"refs/heads/experiment","success":true,"key":"scoped","hit":"","seed":false,"expected":false},"reason":"Actual YAML seal guard must return false for 'ordinary branch push', independently specified by this original input row."},{"row":8,"decision":"keep","line":165,"expression":"['unseeded manual branch', { event: 'workflow_dispatch', ref: 'refs/heads/experiment' }, false]","source_sha256":"5be4e70e61480f34001bc2bdcf8500efb69876e1e9f31f3fd16c41237f8b0c3b","value":{"name":"unseeded manual branch","event":"workflow_dispatch","ref":"refs/heads/experiment","success":true,"key":"scoped","hit":"","seed":false,"expected":false},"reason":"Actual YAML seal guard must return false for 'unseeded manual branch', independently specified by this original input row."},{"row":9,"decision":"keep","line":166,"expression":"[\n 'seed does not admit a nonmanual event',\n { event: 'push', ref: 'refs/heads/experiment', seed: true },\n false\n ]","source_sha256":"78ccf59cdf047b93d2c21a1f911ecc8e1f03dc28c54ade2f8cf78b8a8ca7aed9","value":{"name":"seed does not admit a nonmanual event","event":"push","ref":"refs/heads/experiment","success":true,"key":"scoped","hit":"","seed":true,"expected":false},"reason":"Actual YAML seal guard must return false for 'seed does not admit a nonmanual event', independently specified by this original input row."},{"row":10,"decision":"keep","line":171,"expression":"['failed main producer', { event: 'push', ref: 'refs/heads/main', success: false }, false]","source_sha256":"5216644c106198d8f51b7f5d5bb87d80f932b023c394448db92050d694905db8","value":{"name":"failed main producer","event":"push","ref":"refs/heads/main","success":false,"key":"scoped","hit":"","seed":false,"expected":false},"reason":"Actual YAML seal guard must return false for 'failed main producer', independently specified by this original input row."}],"policy":"Ten new explicit producer admission controls supplement all retained original domains.","source_phase":"final"}],"previous_review":{"record":"config-0002.jsonl","record_sha256":"2ebfa18ad659d7405f11cb2c50143402daef847930c3436381b7ba9873e179e4","source_commit":"6d473f4bea1d190cb3649af97e04f1cdde170c5f","sha256":"33ec6760add2837e45c4d55e6b984b45e6b69937b4a434f1bd012cb2c3bcde19","reviewed_sha256":"33ec6760add2837e45c4d55e6b984b45e6b69937b4a434f1bd012cb2c3bcde19"},"additional_controls":[{"id":"2.6.eight-core","input":{"arch":"X64","runner":"blacksmith-8vcpu-ubuntu-2404"},"expected":"--maxWorkers=8","decision":"keep","reason":"New upstream case independently exercises the actual eight-core branch."},{"id":"2.6.hosted-x64-default","input":{"arch":"X64","runner":"ubuntu-latest"},"expected":"","decision":"keep","reason":"Negative/default control prevents all x64 hosts from receiving a fixed worker override."}],"cache_fixture_slots":[{"slot":0,"meaning":"Flatted module record references id/url/file/imports and includes real boolean mappings.","decision":"keep"},{"slot":1,"meaning":"Absolute temporary module id/file path.","decision":"keep"},{"slot":2,"meaning":"URL string /source.ts.","decision":"keep"},{"slot":3,"meaning":"Flatted imports record references URL list and id map.","decision":"keep"},{"slot":4,"meaning":"Empty import URLs list.","decision":"keep"},{"slot":5,"meaning":"Empty import id map.","decision":"keep"}],"runtime_validation":null,"validation":"reviews/upstream-0001-validation.json"}
+{"path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","sha256":"3ebdbf96094a058d6f5a68275c36c2843f462fbefa1ad3246af5bb56f68a5471","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","reviewed_sha256":"3ebdbf96094a058d6f5a68275c36c2843f462fbefa1ad3246af5bb56f68a5471","reviewer":"audit_mobile","status":"reviewed","decision":"keep","rationale":"Input-only fixture; no standalone runnable cases. Retain all reviewed concrete input rows and generators. Comments shortened only; all 24 argument objects and two environment values are byte-for-byte unchanged.","evidence":["src/packages/process-host/src/run-process.ts","src/packages/process-host/src/spawn-resolution.ts","src/packages/process-host/src/process-tree-termination.ts","src/packages/process-host/src/windows-tree-kill.ts","src/packages/process-host/src/windows-command-line.ts","src/packages/process-host/src/windows-cmd-shim-resolution.ts","src/packages/process-host/src/process-tree-kill-gate.ts","src/packages/process-host/src/posix-lsof-probe.ts","src/packages/process-host/src/child-termination-reporter.ts","src/packages/process-host/src/bounded-output-sink.ts","src/packages/process-host/src/windows-system-binary.ts","src/shared/__tests__/process-host/windows-command-line.win32.test.ts","src/shared/__tests__/process-host/windows-cmd-shim-resolution.win32.test.ts","src/shared/__tests__/process-host/windows-cmd-shim-resolution.test.ts"],"cases":[],"tables":[],"previous_review":{"record":"root-0003.jsonl","record_sha256":"aa198391037847b2610f39f7e2676c604b550f3723218a563aa486c4ebb72de7","source_commit":"6d473f4bea1d190cb3649af97e04f1cdde170c5f","sha256":"aedd3d5056139c951392fde802b64566cb6f73a35cfae2a2a38a98c9b0c19edd","reviewed_sha256":"aedd3d5056139c951392fde802b64566cb6f73a35cfae2a2a38a98c9b0c19edd"},"fixture_arrays":[{"line":2,"expression":"[\n { name: 'plain', value: 'hello' },\n { name: 'empty', value: '' },\n { name: 'space', value: 'hello world' },\n { name: 'double-quote', value: 'say \"hi\" ok' },\n { name: 'quote-only', value: '\"' },\n { name: 'two-quotes', value: '\"\"' },\n { name: 'caret', value: 'a^b' },\n { name: 'ampersand', value: 'a&b' },\n { name: 'pipe', value: 'a|b' },\n { name: 'redirect', value: 'ac' },\n { name: 'percent-pair', value: 'e%F%g' },\n // Inserted quotes after backslashes must not become CommandLineToArgvW escapes.\n { name: 'percent-after-backslash', value: 'C:\\\\Users\\\\%F%\\\\x' },\n { name: 'percent-after-two-backslashes', value: 'C:\\\\\\\\%F%' },\n { name: 'percent-lone', value: '100% done' },\n { name: 'bang', value: 'q!VAR!r' },\n { name: 'parens', value: 'a(b)c' },\n { name: 'trailing-backslash', value: 'C:\\\\dir\\\\' },\n { name: 'backslash-quote', value: 'a\\\\\"b' },\n { name: 'double-backslash-quote', value: 'a\\\\\\\\\"b' },\n { name: 'only-backslashes', value: '\\\\\\\\\\\\' },\n { name: 'semicolon-comma', value: 'a;b,c' },\n { name: 'unicode', value: '\u65e5\u672c\u8a9e caf\u00e9' },\n { name: 'combined', value: 'x\"y&z%F%' },\n { name: 'agent-prompt', value: 'Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)' }\n]","source_sha256":"05d14c43dbd8c3230b6662fbb9718b0b6f1046ba874f04993a6cb6e7a2097fd9","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","id":"3.F1","decision":"keep","reason":"Keep every original adversarial input unchanged.","rows":[{"line":3,"expression":"{ name: 'plain', value: 'hello' }","source_sha256":"c14f0dd691171cd4c4949b3363757f9bf349e008512bfbfe9dc8bbb7fc827945","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":1,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":4,"expression":"{ name: 'empty', value: '' }","source_sha256":"743d63b3b58247d3f386fb5e00ff33b099e33e7dd9a0cda0c86fff586dc019cc","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":2,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":5,"expression":"{ name: 'space', value: 'hello world' }","source_sha256":"7b1e4ba3a30a8d1e85d9d3a5535bfc3711b86dbba5aa2c14ada98b27aae04ff2","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":3,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":6,"expression":"{ name: 'double-quote', value: 'say \"hi\" ok' }","source_sha256":"74f32c2d35258fcec42ecadb23d10b69016bdac6c4323379febe24dc6fa36e8f","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":4,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":7,"expression":"{ name: 'quote-only', value: '\"' }","source_sha256":"0e80ea28fd1b46bc3c1da0f92facf7efcf34e4f9840f70cd9c47633b66fd94b7","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":5,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":8,"expression":"{ name: 'two-quotes', value: '\"\"' }","source_sha256":"ef8227e10c5725d118ae0890d5bd05f6f5284b5df57e29d5bef1dea5c06dd84b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":6,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":9,"expression":"{ name: 'caret', value: 'a^b' }","source_sha256":"383f847cb92d5ef25f7c4a01c7775785c191a5cdcccc46a58c60c9879f3ff242","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":7,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":10,"expression":"{ name: 'ampersand', value: 'a&b' }","source_sha256":"904bef30bf07b1a5b59f75bddaa9b49771afd3b608b95a5acbddede50655ffe1","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":8,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":11,"expression":"{ name: 'pipe', value: 'a|b' }","source_sha256":"9d255e43a388b9baf05c8821a21aed084f7cab444339349b772677fce4834651","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":9,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":12,"expression":"{ name: 'redirect', value: 'ac' }","source_sha256":"8e47ce6fd2bd08244db354ecb871934b659bddd0a661fc73389fe7fdf3857fd1","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":10,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":13,"expression":"{ name: 'percent-pair', value: 'e%F%g' }","source_sha256":"e083ee349cfe10a720596616c69eecbe46f470b97f438a10dc91645b660a1445","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":11,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":15,"expression":"{ name: 'percent-after-backslash', value: 'C:\\\\Users\\\\%F%\\\\x' }","source_sha256":"14bff028f5d3760d1cc39951b32124c936515474077614ae7463a87d67001133","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":12,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":16,"expression":"{ name: 'percent-after-two-backslashes', value: 'C:\\\\\\\\%F%' }","source_sha256":"a682c63f457dfda222f54341159e8c3970f20a00ef2503025e980ad57cc3904d","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":13,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":17,"expression":"{ name: 'percent-lone', value: '100% done' }","source_sha256":"b7a458d66445ac9d60dbd86aa4719d44ac9f3040cdfbc8b41cff2c0a46c5dcab","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":14,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":18,"expression":"{ name: 'bang', value: 'q!VAR!r' }","source_sha256":"9b7aad10d671d1e569936c3925af7ef58bda50d1370c41dd290b071ba8ac338b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":15,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":19,"expression":"{ name: 'parens', value: 'a(b)c' }","source_sha256":"291bb0293522eabbebf82bfdd745a4d41922fcf48c35dda4d19d7c885c34ac0d","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":16,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":20,"expression":"{ name: 'trailing-backslash', value: 'C:\\\\dir\\\\' }","source_sha256":"141f047963e3b18cf0ed52cfee6cb47377f26f5ab7dceccb52fcd1d7a7bc4018","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":17,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":21,"expression":"{ name: 'backslash-quote', value: 'a\\\\\"b' }","source_sha256":"ac209a19b69447a4aaebd90357bab2cdc6996ea8f91fab52d0fa2104f75e41a7","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":18,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":22,"expression":"{ name: 'double-backslash-quote', value: 'a\\\\\\\\\"b' }","source_sha256":"c0affc22388dbea93765e641c39cb64eb63b1a687cabab5824e1e5737f592540","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":19,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":23,"expression":"{ name: 'only-backslashes', value: '\\\\\\\\\\\\' }","source_sha256":"f1b92bca0e6b372a2f81c5e1b497a5a822b070e2a96aa3b335c48a78efe8b1bc","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":20,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":24,"expression":"{ name: 'semicolon-comma', value: 'a;b,c' }","source_sha256":"c83b1e38280df27b64e692f983b5a7881412600ea5d06b54f732e5c13ae429f5","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":21,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":25,"expression":"{ name: 'unicode', value: '\u65e5\u672c\u8a9e caf\u00e9' }","source_sha256":"fc0e69c50d7ecb955390a875735f800120de4c425b20d2988af2337cbaa13271","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":22,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":26,"expression":"{ name: 'combined', value: 'x\"y&z%F%' }","source_sha256":"aea5fee9be7bc434d9830e0631d951c6736579ba58b192c5fa664b1c80a9d49b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":23,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":27,"expression":"{ name: 'agent-prompt', value: 'Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)' }","source_sha256":"4195ef0188aa9ca7b1115510415f171d986f453e7a8d08df77b8730bfba07606","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":24,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."}]}],"fixture_rows":[{"line":3,"endLine":3,"expression":"{ name: 'plain', value: 'hello' }","source_sha256":"c14f0dd691171cd4c4949b3363757f9bf349e008512bfbfe9dc8bbb7fc827945","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":1,"decision":"keep","reason":"Keep adversarial 'plain' value 'hello'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"plain","value":"hello"}},{"line":4,"endLine":4,"expression":"{ name: 'empty', value: '' }","source_sha256":"743d63b3b58247d3f386fb5e00ff33b099e33e7dd9a0cda0c86fff586dc019cc","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":2,"decision":"keep","reason":"Keep adversarial 'empty' value ''; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"empty","value":""}},{"line":5,"endLine":5,"expression":"{ name: 'space', value: 'hello world' }","source_sha256":"7b1e4ba3a30a8d1e85d9d3a5535bfc3711b86dbba5aa2c14ada98b27aae04ff2","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":3,"decision":"keep","reason":"Keep adversarial 'space' value 'hello world'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"space","value":"hello world"}},{"line":6,"endLine":6,"expression":"{ name: 'double-quote', value: 'say \"hi\" ok' }","source_sha256":"74f32c2d35258fcec42ecadb23d10b69016bdac6c4323379febe24dc6fa36e8f","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":4,"decision":"keep","reason":"Keep adversarial 'double-quote' value 'say \"hi\" ok'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"double-quote","value":"say \"hi\" ok"}},{"line":7,"endLine":7,"expression":"{ name: 'quote-only', value: '\"' }","source_sha256":"0e80ea28fd1b46bc3c1da0f92facf7efcf34e4f9840f70cd9c47633b66fd94b7","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":5,"decision":"keep","reason":"Keep adversarial 'quote-only' value '\"'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"quote-only","value":"\""}},{"line":8,"endLine":8,"expression":"{ name: 'two-quotes', value: '\"\"' }","source_sha256":"ef8227e10c5725d118ae0890d5bd05f6f5284b5df57e29d5bef1dea5c06dd84b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":6,"decision":"keep","reason":"Keep adversarial 'two-quotes' value '\"\"'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"two-quotes","value":"\"\""}},{"line":9,"endLine":9,"expression":"{ name: 'caret', value: 'a^b' }","source_sha256":"383f847cb92d5ef25f7c4a01c7775785c191a5cdcccc46a58c60c9879f3ff242","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":7,"decision":"keep","reason":"Keep adversarial 'caret' value 'a^b'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"caret","value":"a^b"}},{"line":10,"endLine":10,"expression":"{ name: 'ampersand', value: 'a&b' }","source_sha256":"904bef30bf07b1a5b59f75bddaa9b49771afd3b608b95a5acbddede50655ffe1","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":8,"decision":"keep","reason":"Keep adversarial 'ampersand' value 'a&b'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"ampersand","value":"a&b"}},{"line":11,"endLine":11,"expression":"{ name: 'pipe', value: 'a|b' }","source_sha256":"9d255e43a388b9baf05c8821a21aed084f7cab444339349b772677fce4834651","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":9,"decision":"keep","reason":"Keep adversarial 'pipe' value 'a|b'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"pipe","value":"a|b"}},{"line":12,"endLine":12,"expression":"{ name: 'redirect', value: 'ac' }","source_sha256":"8e47ce6fd2bd08244db354ecb871934b659bddd0a661fc73389fe7fdf3857fd1","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":10,"decision":"keep","reason":"Keep adversarial 'redirect' value 'ac'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"redirect","value":"ac"}},{"line":13,"endLine":13,"expression":"{ name: 'percent-pair', value: 'e%F%g' }","source_sha256":"e083ee349cfe10a720596616c69eecbe46f470b97f438a10dc91645b660a1445","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":11,"decision":"keep","reason":"Keep adversarial 'percent-pair' value 'e%F%g'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"percent-pair","value":"e%F%g"}},{"line":15,"endLine":15,"expression":"{ name: 'percent-after-backslash', value: 'C:\\\\Users\\\\%F%\\\\x' }","source_sha256":"14bff028f5d3760d1cc39951b32124c936515474077614ae7463a87d67001133","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":12,"decision":"keep","reason":"Keep adversarial 'percent-after-backslash' value 'C:\\\\Users\\\\%F%\\\\x'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"percent-after-backslash","value":"C:\\Users\\%F%\\x"}},{"line":16,"endLine":16,"expression":"{ name: 'percent-after-two-backslashes', value: 'C:\\\\\\\\%F%' }","source_sha256":"a682c63f457dfda222f54341159e8c3970f20a00ef2503025e980ad57cc3904d","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":13,"decision":"keep","reason":"Keep adversarial 'percent-after-two-backslashes' value 'C:\\\\\\\\%F%'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"percent-after-two-backslashes","value":"C:\\\\%F%"}},{"line":17,"endLine":17,"expression":"{ name: 'percent-lone', value: '100% done' }","source_sha256":"b7a458d66445ac9d60dbd86aa4719d44ac9f3040cdfbc8b41cff2c0a46c5dcab","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":14,"decision":"keep","reason":"Keep adversarial 'percent-lone' value '100% done'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"percent-lone","value":"100% done"}},{"line":18,"endLine":18,"expression":"{ name: 'bang', value: 'q!VAR!r' }","source_sha256":"9b7aad10d671d1e569936c3925af7ef58bda50d1370c41dd290b071ba8ac338b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":15,"decision":"keep","reason":"Keep adversarial 'bang' value 'q!VAR!r'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"bang","value":"q!VAR!r"}},{"line":19,"endLine":19,"expression":"{ name: 'parens', value: 'a(b)c' }","source_sha256":"291bb0293522eabbebf82bfdd745a4d41922fcf48c35dda4d19d7c885c34ac0d","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":16,"decision":"keep","reason":"Keep adversarial 'parens' value 'a(b)c'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"parens","value":"a(b)c"}},{"line":20,"endLine":20,"expression":"{ name: 'trailing-backslash', value: 'C:\\\\dir\\\\' }","source_sha256":"141f047963e3b18cf0ed52cfee6cb47377f26f5ab7dceccb52fcd1d7a7bc4018","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":17,"decision":"keep","reason":"Keep adversarial 'trailing-backslash' value 'C:\\\\dir\\\\'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"trailing-backslash","value":"C:\\dir\\"}},{"line":21,"endLine":21,"expression":"{ name: 'backslash-quote', value: 'a\\\\\"b' }","source_sha256":"ac209a19b69447a4aaebd90357bab2cdc6996ea8f91fab52d0fa2104f75e41a7","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":18,"decision":"keep","reason":"Keep adversarial 'backslash-quote' value 'a\\\\\"b'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"backslash-quote","value":"a\\\"b"}},{"line":22,"endLine":22,"expression":"{ name: 'double-backslash-quote', value: 'a\\\\\\\\\"b' }","source_sha256":"c0affc22388dbea93765e641c39cb64eb63b1a687cabab5824e1e5737f592540","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":19,"decision":"keep","reason":"Keep adversarial 'double-backslash-quote' value 'a\\\\\\\\\"b'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"double-backslash-quote","value":"a\\\\\"b"}},{"line":23,"endLine":23,"expression":"{ name: 'only-backslashes', value: '\\\\\\\\\\\\' }","source_sha256":"f1b92bca0e6b372a2f81c5e1b497a5a822b070e2a96aa3b335c48a78efe8b1bc","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":20,"decision":"keep","reason":"Keep adversarial 'only-backslashes' value '\\\\\\\\\\\\'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"only-backslashes","value":"\\\\\\"}},{"line":24,"endLine":24,"expression":"{ name: 'semicolon-comma', value: 'a;b,c' }","source_sha256":"c83b1e38280df27b64e692f983b5a7881412600ea5d06b54f732e5c13ae429f5","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":21,"decision":"keep","reason":"Keep adversarial 'semicolon-comma' value 'a;b,c'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"semicolon-comma","value":"a;b,c"}},{"line":25,"endLine":25,"expression":"{ name: 'unicode', value: '\u65e5\u672c\u8a9e caf\u00e9' }","source_sha256":"fc0e69c50d7ecb955390a875735f800120de4c425b20d2988af2337cbaa13271","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":22,"decision":"keep","reason":"Keep adversarial 'unicode' value '\u65e5\u672c\u8a9e caf\u00e9'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"unicode","value":"\u65e5\u672c\u8a9e caf\u00e9"}},{"line":26,"endLine":26,"expression":"{ name: 'combined', value: 'x\"y&z%F%' }","source_sha256":"aea5fee9be7bc434d9830e0631d951c6736579ba58b192c5fa664b1c80a9d49b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":23,"decision":"keep","reason":"Keep adversarial 'combined' value 'x\"y&z%F%'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"combined","value":"x\"y&z%F%"}},{"line":27,"endLine":27,"expression":"{ name: 'agent-prompt', value: 'Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)' }","source_sha256":"4195ef0188aa9ca7b1115510415f171d986f453e7a8d08df77b8730bfba07606","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":24,"decision":"keep","reason":"Keep adversarial 'agent-prompt' value 'Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"agent-prompt","value":"Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)"}}],"environment_controls":[{"name":"F","value":"EXPANDED_F","decision":"keep","reason":"Defined percent-expansion target makes unintended %F% expansion visible to the real Windows child."},{"name":"VAR","value":"EXPANDED_VAR","decision":"keep","reason":"Defined bang/delayed-expansion target makes accidental !VAR! expansion observable when cmd flags regress."}],"runtime_validation":null,"validation":"reviews/upstream-0001-validation.json"}
+{"path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","sha256":"330db48368e7f5451b7a73fbf34d6ee7d84aab5eb7ee7b0426f0280269741e44","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","reviewed_sha256":"330db48368e7f5451b7a73fbf34d6ee7d84aab5eb7ee7b0426f0280269741e44","reviewer":"audit_mobile","status":"reviewed","decision":"keep","rationale":"Input-only fixture; no standalone runnable cases. Retain all reviewed concrete input rows and generators. Comments shortened only; all six literal shim bodies, NODE_PATH constants and three builders remain unchanged.","evidence":["src/packages/process-host/src/run-process.ts","src/packages/process-host/src/spawn-resolution.ts","src/packages/process-host/src/process-tree-termination.ts","src/packages/process-host/src/windows-tree-kill.ts","src/packages/process-host/src/windows-command-line.ts","src/packages/process-host/src/windows-cmd-shim-resolution.ts","src/packages/process-host/src/process-tree-kill-gate.ts","src/packages/process-host/src/posix-lsof-probe.ts","src/packages/process-host/src/child-termination-reporter.ts","src/packages/process-host/src/bounded-output-sink.ts","src/packages/process-host/src/windows-system-binary.ts","src/shared/__tests__/process-host/windows-command-line.win32.test.ts","src/shared/__tests__/process-host/windows-cmd-shim-resolution.win32.test.ts","src/shared/__tests__/process-host/windows-cmd-shim-resolution.test.ts"],"cases":[],"tables":[],"previous_review":{"record":"root-0003.jsonl","record_sha256":"aa198391037847b2610f39f7e2676c604b550f3723218a563aa486c4ebb72de7","source_commit":"6d473f4bea1d190cb3649af97e04f1cdde170c5f","sha256":"ce717cff5730731ed9cc007afb5f67563312f52596592cc0a3ca43a0582f47aa","reviewed_sha256":"ce717cff5730731ed9cc007afb5f67563312f52596592cc0a3ca43a0582f47aa"},"fixture_arrays":[{"line":11,"expression":"[\n '@ECHO off',\n 'GOTO start',\n ':find_dp0',\n 'SET dp0=%~dp0',\n 'EXIT /b',\n ':start',\n 'SETLOCAL',\n 'CALL :find_dp0',\n '',\n 'IF EXIST \"%dp0%\\\\node.exe\" (',\n ' SET \"_prog=%dp0%\\\\node.exe\"',\n ') ELSE (',\n ' SET \"_prog=node\"',\n ' SET PATHEXT=%PATHEXT:;.JS;=;%',\n ')',\n '',\n 'endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & \"%_prog%\" \"%dp0%\\\\node_modules\\\\@openai\\\\codex\\\\bin\\\\codex.js\" %*'\n]","source_sha256":"4a62b1a353cf11f520ae0831e3cbd953a6942f3218f4f3dba997488f76658d1c","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","id":"4.F1","decision":"keep","reason":"Keep literal known-producer shim syntax and generator input rows; no parsing, quoting or admission algorithm is simulated.","rows":[{"line":12,"expression":"'@ECHO off'","source_sha256":"5c1cfe295c5d1eba52590dabc539f79dc48126bb1c589cd1cdb1af51f2c83f74","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":1,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":13,"expression":"'GOTO start'","source_sha256":"38d69c3c12a6daad88ae920ff5e854379aea8b9d02ebf68968dc663833785c58","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":2,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":14,"expression":"':find_dp0'","source_sha256":"83772612844610f9c4438f7886626a062b40437d1c5af589d5ffb8ceef12f324","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":3,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":15,"expression":"'SET dp0=%~dp0'","source_sha256":"7cbdce018bb33f9302e05e1e08beb21e92aabc26e59353d091d30ea6c6b858c5","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":4,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":16,"expression":"'EXIT /b'","source_sha256":"99474baa7012108e51fdc694761a925105c745466a6d9106b7db81be1ff00cf7","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":5,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":17,"expression":"':start'","source_sha256":"a82a9c1113abe8be380cea1ca846f524c4014d557fd22aa1e1f2e55b83678cda","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":6,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":18,"expression":"'SETLOCAL'","source_sha256":"7d4aabfbdc586201b4679683d91677c9cc4a32487b5c0f46d1f72612b19a8afe","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":7,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":19,"expression":"'CALL :find_dp0'","source_sha256":"ed8ed18d16bc3f145db8bfce29f0c869f6ca98e44ef264cdb8e3f9c0025f8250","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":8,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":20,"expression":"''","source_sha256":"6f49cdbd80e1b95d5e6427e1501fc217790daee87055fa5b4e71064288bddede","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":9,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":21,"expression":"'IF EXIST \"%dp0%\\\\node.exe\" ('","source_sha256":"56d6ade8397760ec2b7adaf35123cfc31b39cd9743a953f6f1d87c91c52d252a","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":10,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":22,"expression":"' SET \"_prog=%dp0%\\\\node.exe\"'","source_sha256":"7706d2885ba43096ce0d9ef1da8ce39260ccff374efc380fabede129d68c5260","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":11,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":23,"expression":"') ELSE ('","source_sha256":"69808a3c767388b6f1eecab403fb0c80ac31c370f6d72fe4512f068e56b84ec3","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":12,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":24,"expression":"' SET \"_prog=node\"'","source_sha256":"87cd5c847a9df4b15e74f83fc87236c7e8feebd4d40ea2cacdb8cce0b49c6d78","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":13,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":25,"expression":"' SET PATHEXT=%PATHEXT:;.JS;=;%'","source_sha256":"6c17478761d064967446c64e8cc09fffed3a082c848a4a4694522b727ba65f9b","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":14,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":26,"expression":"')'","source_sha256":"be42c968a00421442d985ca7558848d62c93f9cea433f5103691a092ac2f1875","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":15,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":27,"expression":"''","source_sha256":"6f49cdbd80e1b95d5e6427e1501fc217790daee87055fa5b4e71064288bddede","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":16,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":28,"expression":"'endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & \"%_prog%\" \"%dp0%\\\\node_modules\\\\@openai\\\\codex\\\\bin\\\\codex.js\" %*'","source_sha256":"406f697462cc0000029992167cae8bb01af292bb541951060bee5075a9130796","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":17,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."}]},{"line":31,"expression":"[\n '@ECHO off',\n '\"%~dp0node_modules\\\\agent-browser\\\\bin\\\\agent-browser-win32-x64.exe\" %*'\n]","source_sha256":"4799e0033ef907a7e02decde2484505d319f4e33f59e2c46913d24617fc9a542","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","id":"4.F2","decision":"keep","reason":"Keep literal known-producer shim syntax and generator input rows; no parsing, quoting or admission algorithm is simulated.","rows":[{"line":32,"expression":"'@ECHO off'","source_sha256":"5c1cfe295c5d1eba52590dabc539f79dc48126bb1c589cd1cdb1af51f2c83f74","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":1,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":33,"expression":"'\"%~dp0node_modules\\\\agent-browser\\\\bin\\\\agent-browser-win32-x64.exe\" %*'","source_sha256":"c4c9710433154ec6a3a1b39bbdfd148986f06bf342744d27aaad3f3cfdc4000d","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":2,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."}]},{"line":37,"expression":"[\n '@ECHO off',\n 'GOTO start',\n ':find_dp0',\n 'SET dp0=%~dp0',\n 'EXIT /b',\n ':start',\n 'SETLOCAL',\n 'CALL :find_dp0',\n '\"%dp0%\\\\node_modules\\\\pnpm\\\\pnx\" %*'\n]","source_sha256":"da2cfa3e015a18ad4d597629eeb4dae9171b08fc624e8fd06a26a2ff86bcb146","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","id":"4.F3","decision":"keep","reason":"Keep literal known-producer shim syntax and generator input rows; no parsing, quoting or admission algorithm is simulated.","rows":[{"line":38,"expression":"'@ECHO off'","source_sha256":"5c1cfe295c5d1eba52590dabc539f79dc48126bb1c589cd1cdb1af51f2c83f74","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":1,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":39,"expression":"'GOTO start'","source_sha256":"38d69c3c12a6daad88ae920ff5e854379aea8b9d02ebf68968dc663833785c58","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":2,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":40,"expression":"':find_dp0'","source_sha256":"83772612844610f9c4438f7886626a062b40437d1c5af589d5ffb8ceef12f324","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":3,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":41,"expression":"'SET dp0=%~dp0'","source_sha256":"7cbdce018bb33f9302e05e1e08beb21e92aabc26e59353d091d30ea6c6b858c5","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":4,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":42,"expression":"'EXIT /b'","source_sha256":"99474baa7012108e51fdc694761a925105c745466a6d9106b7db81be1ff00cf7","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":5,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":43,"expression":"':start'","source_sha256":"a82a9c1113abe8be380cea1ca846f524c4014d557fd22aa1e1f2e55b83678cda","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":6,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":44,"expression":"'SETLOCAL'","source_sha256":"7d4aabfbdc586201b4679683d91677c9cc4a32487b5c0f46d1f72612b19a8afe","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":7,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":45,"expression":"'CALL :find_dp0'","source_sha256":"ed8ed18d16bc3f145db8bfce29f0c869f6ca98e44ef264cdb8e3f9c0025f8250","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":8,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":46,"expression":"'\"%dp0%\\\\node_modules\\\\pnpm\\\\pnx\" %*'","source_sha256":"53258ec213dd6d25b7363aacb5fb25a18b102008f8c149df1a76e72a71cffaeb","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":9,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."}]},{"line":49,"expression":"[\n 'C:\\\\Users\\\\neil\\\\orca\\\\orca\\\\node_modules\\\\.pnpm\\\\vitest@4.1.11\\\\node_modules\\\\vitest\\\\node_modules',\n 'C:\\\\Users\\\\neil\\\\orca\\\\orca\\\\node_modules\\\\.pnpm\\\\vitest@4.1.11\\\\node_modules',\n 'C:\\\\Users\\\\neil\\\\orca\\\\orca\\\\node_modules\\\\.pnpm\\\\node_modules'\n]","source_sha256":"9701e55bb686978a3b2f575de6ef5df23489cecfeb2154aa7371b3bea92430fb","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","id":"4.F4","decision":"keep","reason":"Keep literal known-producer shim syntax and generator input rows; no parsing, quoting or admission algorithm is simulated.","rows":[{"line":50,"expression":"'C:\\\\Users\\\\neil\\\\orca\\\\orca\\\\node_modules\\\\.pnpm\\\\vitest@4.1.11\\\\node_modules\\\\vitest\\\\node_modules'","source_sha256":"5a3465fa812c0c507f6ce3c232fe752bd32a7f62dc8838504989975cec10b84d","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":1,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":51,"expression":"'C:\\\\Users\\\\neil\\\\orca\\\\orca\\\\node_modules\\\\.pnpm\\\\vitest@4.1.11\\\\node_modules'","source_sha256":"b820ace62ac9a7493848a519aee71d06242012fb995eecfd11bc6f74d481eadd","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":2,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":52,"expression":"'C:\\\\Users\\\\neil\\\\orca\\\\orca\\\\node_modules\\\\.pnpm\\\\node_modules'","source_sha256":"e244a2bb5809482759c7fbeae27f27d8e59b9580049333a0f91b4d9967194df8","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":3,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."}]},{"line":55,"expression":"[\n '@SETLOCAL',\n '@IF NOT DEFINED NODE_PATH (',\n ` @SET \"NODE_PATH=${VITEST_NODE_PATH}\"`,\n ') ELSE (',\n ` @SET \"NODE_PATH=${VITEST_NODE_PATH};%NODE_PATH%\"`,\n ')',\n '@IF EXIST \"%~dp0\\\\node.exe\" (',\n ' \"%~dp0\\\\node.exe\" \"%~dp0\\\\..\\\\vitest\\\\vitest.mjs\" %*',\n ') ELSE (',\n ' @SET PATHEXT=%PATHEXT:;.JS;=;%',\n ' node \"%~dp0\\\\..\\\\vitest\\\\vitest.mjs\" %*',\n ')'\n]","source_sha256":"a279eb2ecfe066c29fee5c25ada2c1a17924a4970403486f16552935145ba47e","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","id":"4.F5","decision":"keep","reason":"Keep literal known-producer shim syntax and generator input rows; no parsing, quoting or admission algorithm is simulated.","rows":[{"line":56,"expression":"'@SETLOCAL'","source_sha256":"a7426bec09e8e6ab6bce6fe3a98d91c253da7eeb741d36cb259f849ee00f880e","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":1,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":57,"expression":"'@IF NOT DEFINED NODE_PATH ('","source_sha256":"eab6726bb4fa6c08a4f502a1d14f047e468c08bb0484b9a35d589e0d2b84c8ab","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":2,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":58,"expression":"` @SET \"NODE_PATH=${VITEST_NODE_PATH}\"`","source_sha256":"b993d03fe6a11585c6fe567d5a9b2ac9bd49dfde056179217b46fac661885ee3","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":3,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":59,"expression":"') ELSE ('","source_sha256":"69808a3c767388b6f1eecab403fb0c80ac31c370f6d72fe4512f068e56b84ec3","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":4,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":60,"expression":"` @SET \"NODE_PATH=${VITEST_NODE_PATH};%NODE_PATH%\"`","source_sha256":"0ec5409c30f8d2037e88d5177c529bf197dd5a6a1b8aa76a7e6c90b4b094827d","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":5,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":61,"expression":"')'","source_sha256":"be42c968a00421442d985ca7558848d62c93f9cea433f5103691a092ac2f1875","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":6,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":62,"expression":"'@IF EXIST \"%~dp0\\\\node.exe\" ('","source_sha256":"98c5cea94cab6278050d91ca17559b8ad133f390300fd5fbfd906f0ea337f688","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":7,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":63,"expression":"' \"%~dp0\\\\node.exe\" \"%~dp0\\\\..\\\\vitest\\\\vitest.mjs\" %*'","source_sha256":"83722d74e7be5725b860f9d9f66db38348497bbf1bbb245f29672ae51a9a53d3","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":8,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":64,"expression":"') ELSE ('","source_sha256":"69808a3c767388b6f1eecab403fb0c80ac31c370f6d72fe4512f068e56b84ec3","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":9,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":65,"expression":"' @SET PATHEXT=%PATHEXT:;.JS;=;%'","source_sha256":"e9c96ea7eb2dcf77374fcb777ad0692b08fd179dd392b4d38b74f24b6ac21b99","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":10,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":66,"expression":"' node \"%~dp0\\\\..\\\\vitest\\\\vitest.mjs\" %*'","source_sha256":"2de7f24c36d55737f1389e526a98cfe9088b2d0b5d58cb9963657696e1a404ea","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":11,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":67,"expression":"')'","source_sha256":"be42c968a00421442d985ca7558848d62c93f9cea433f5103691a092ac2f1875","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":12,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."}]},{"line":72,"expression":"[\n '@SETLOCAL',\n '@\"%~dp0\\\\..\\\\global\\\\v11\\\\27d0-19f7df4c136-1fab7163f1a52461\\\\node_modules\\\\@pnpm\\\\exe\\\\pnpm.exe\" %*'\n]","source_sha256":"29d361441047798eb099cb02bdfd1430c31a7aa982d5dabcd051f808d7076a42","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","id":"4.F6","decision":"keep","reason":"Keep literal known-producer shim syntax and generator input rows; no parsing, quoting or admission algorithm is simulated.","rows":[{"line":73,"expression":"'@SETLOCAL'","source_sha256":"a7426bec09e8e6ab6bce6fe3a98d91c253da7eeb741d36cb259f849ee00f880e","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":1,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":74,"expression":"'@\"%~dp0\\\\..\\\\global\\\\v11\\\\27d0-19f7df4c136-1fab7163f1a52461\\\\node_modules\\\\@pnpm\\\\exe\\\\pnpm.exe\" %*'","source_sha256":"1ee0ec50c2cdf29f3855c0435ffbee30aa62cca1913f2723408456942809f3e9","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":2,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."}]},{"line":78,"expression":"['@echo off', 'pnpm %*']","source_sha256":"a899cc8e0c0552d98180d397b559f5fb68ee0b77ea67a19314baaed6ee9506f6","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","id":"4.F7","decision":"keep","reason":"Keep literal known-producer shim syntax and generator input rows; no parsing, quoting or admission algorithm is simulated.","rows":[{"line":78,"expression":"'@echo off'","source_sha256":"013690075e214f78fb478a5cea9181c53101cf94715622a099c07ddcafffedea","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":1,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":78,"expression":"'pnpm %*'","source_sha256":"ba549bed3ef5befdbbe72c197940643af4ef43471fb970c7871407b28aa94e2a","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":2,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."}]},{"line":85,"expression":"[\n '@SETLOCAL',\n ...(nodePathPrefix\n ? [\n '@IF NOT DEFINED NODE_PATH (',\n ` @SET \"NODE_PATH=${nodePathPrefix}\"`,\n ') ELSE (',\n ` @SET \"NODE_PATH=${nodePathPrefix};%NODE_PATH%\"`,\n ')'\n ]\n : []),\n '@IF EXIST \"%~dp0\\\\node.exe\" (',\n ` \"%~dp0\\\\node.exe\" \"%~dp0\\\\${scriptRelative}\" %*`,\n ') ELSE (',\n ' @SET PATHEXT=%PATHEXT:;.JS;=;%',\n ` node \"%~dp0\\\\${scriptRelative}\" %*`,\n ')'\n ]","source_sha256":"aabe6ff93a15c1a0264171eb193dc6409b703561f4e7a973605877aae41fea57","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","id":"4.F8","decision":"keep","reason":"Keep literal known-producer shim syntax and generator input rows; no parsing, quoting or admission algorithm is simulated.","rows":[{"line":86,"expression":"'@SETLOCAL'","source_sha256":"a7426bec09e8e6ab6bce6fe3a98d91c253da7eeb741d36cb259f849ee00f880e","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":1,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":87,"expression":"...(nodePathPrefix\n ? [\n '@IF NOT DEFINED NODE_PATH (',\n ` @SET \"NODE_PATH=${nodePathPrefix}\"`,\n ') ELSE (',\n ` @SET \"NODE_PATH=${nodePathPrefix};%NODE_PATH%\"`,\n ')'\n ]\n : [])","source_sha256":"fc2d898e99bbeaac13b84775755a0ebd6414d0271812db8bec2b03be1b6ab302","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":2,"decision":"keep","reason":"Preserve optional NODE_PATH template branch, including both existing/absent-value arms; nested literal rows are also recorded."},{"line":96,"expression":"'@IF EXIST \"%~dp0\\\\node.exe\" ('","source_sha256":"98c5cea94cab6278050d91ca17559b8ad133f390300fd5fbfd906f0ea337f688","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":3,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":97,"expression":"` \"%~dp0\\\\node.exe\" \"%~dp0\\\\${scriptRelative}\" %*`","source_sha256":"4239a54a145673f9b0455abcf62abcae3dfc8ffb218ba86301b286b33c49bb30","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":4,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":98,"expression":"') ELSE ('","source_sha256":"69808a3c767388b6f1eecab403fb0c80ac31c370f6d72fe4512f068e56b84ec3","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":5,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":99,"expression":"' @SET PATHEXT=%PATHEXT:;.JS;=;%'","source_sha256":"e9c96ea7eb2dcf77374fcb777ad0692b08fd179dd392b4d38b74f24b6ac21b99","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":6,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":100,"expression":"` node \"%~dp0\\\\${scriptRelative}\" %*`","source_sha256":"1b5924bea2779f6e2b5a39137c4afa26cd1f6fe758696634902f8dff2d9b637c","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":7,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":101,"expression":"')'","source_sha256":"be42c968a00421442d985ca7558848d62c93f9cea433f5103691a092ac2f1875","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":8,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."}]},{"line":88,"expression":"[\n '@IF NOT DEFINED NODE_PATH (',\n ` @SET \"NODE_PATH=${nodePathPrefix}\"`,\n ') ELSE (',\n ` @SET \"NODE_PATH=${nodePathPrefix};%NODE_PATH%\"`,\n ')'\n ]","source_sha256":"a05de2e88745b541c957e188b45c7580deb190653c4fd419b60f7190937eb6d0","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","id":"4.F9","decision":"keep","reason":"Keep literal known-producer shim syntax and generator input rows; no parsing, quoting or admission algorithm is simulated.","rows":[{"line":89,"expression":"'@IF NOT DEFINED NODE_PATH ('","source_sha256":"eab6726bb4fa6c08a4f502a1d14f047e468c08bb0484b9a35d589e0d2b84c8ab","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":1,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":90,"expression":"` @SET \"NODE_PATH=${nodePathPrefix}\"`","source_sha256":"c04c226cddc943c0e518ddff2065e40b28b2ed7053ef4fa4f1217eab650d884d","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":2,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":91,"expression":"') ELSE ('","source_sha256":"69808a3c767388b6f1eecab403fb0c80ac31c370f6d72fe4512f068e56b84ec3","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":3,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":92,"expression":"` @SET \"NODE_PATH=${nodePathPrefix};%NODE_PATH%\"`","source_sha256":"3e2906cb39d39dc3534750aeb379e8d62ec365ad2c2b5bc11572397a591fe616","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":4,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":93,"expression":"')'","source_sha256":"be42c968a00421442d985ca7558848d62c93f9cea433f5103691a092ac2f1875","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":5,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."}]},{"line":95,"expression":"[]","source_sha256":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","id":"4.F10","decision":"keep","reason":"Keep literal known-producer shim syntax and generator input rows; no parsing, quoting or admission algorithm is simulated.","rows":[]},{"line":106,"expression":"['@ECHO off', `\"%~dp0${targetRelative}\" %*`]","source_sha256":"93c15db05fd31448d023571715ac2c6bd41b1fb77d34de47740be751ec28e4e6","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","id":"4.F11","decision":"keep","reason":"Keep literal known-producer shim syntax and generator input rows; no parsing, quoting or admission algorithm is simulated.","rows":[{"line":106,"expression":"'@ECHO off'","source_sha256":"5c1cfe295c5d1eba52590dabc539f79dc48126bb1c589cd1cdb1af51f2c83f74","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":1,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."},{"line":106,"expression":"`\"%~dp0${targetRelative}\" %*`","source_sha256":"2a7dd39c2738e316d955feeb3a13b0da6a2825008f24c761b3453810d82e59b9","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts","row":2,"decision":"keep","reason":"Preserve exact original fixture data/template row. The corresponding shipped parser/real Windows child must interpret it."}]}],"fixture_controls":[{"name":"REAL_CODEX_CMD","decision":"keep","reason":"Verbatim npm _prog node-script shim pins real producer grammar.","line":11,"expression":"REAL_CODEX_CMD = crlf([\n '@ECHO off',\n 'GOTO start',\n ':find_dp0',\n 'SET dp0=%~dp0',\n 'EXIT /b',\n ':start',\n 'SETLOCAL',\n 'CALL :find_dp0',\n '',\n 'IF EXIST \"%dp0%\\\\node.exe\" (',\n ' SET \"_prog=%dp0%\\\\node.exe\"',\n ') ELSE (',\n ' SET \"_prog=node\"',\n ' SET PATHEXT=%PATHEXT:;.JS;=;%',\n ')',\n '',\n 'endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & \"%_prog%\" \"%dp0%\\\\node_modules\\\\@openai\\\\codex\\\\bin\\\\codex.js\" %*'\n])","source_sha256":"7a3014be7ad1a8f730b41c6455a7ff6cf5c555a1737d9c4ad838c4a86822fabb","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts"},{"name":"REAL_AGENT_BROWSER_CMD","decision":"keep","reason":"Verbatim npm executable shim supplies direct-target producer syntax.","line":31,"expression":"REAL_AGENT_BROWSER_CMD = crlf([\n '@ECHO off',\n '\"%~dp0node_modules\\\\agent-browser\\\\bin\\\\agent-browser-win32-x64.exe\" %*'\n])","source_sha256":"a7e389a93cd9740b5b804a9cea1677fc3dd385f0434c53e6da2231f903ac4d3f","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts"},{"name":"REAL_PNX_CMD","decision":"keep","reason":"Verbatim extensionless target is intentionally not resolved directly; PATHEXT matters.","line":37,"expression":"REAL_PNX_CMD = crlf([\n '@ECHO off',\n 'GOTO start',\n ':find_dp0',\n 'SET dp0=%~dp0',\n 'EXIT /b',\n ':start',\n 'SETLOCAL',\n 'CALL :find_dp0',\n '\"%dp0%\\\\node_modules\\\\pnpm\\\\pnx\" %*'\n])","source_sha256":"56f15ab3706e3e86c108ddd359bd4e0137488a58e6735cfdfdc8ebc0a6feb080","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts"},{"name":"REAL_VITEST_CMD","decision":"keep","reason":"Verbatim pnpm two-branch node shim includes actual NODE_PATH prepend.","line":55,"expression":"REAL_VITEST_CMD = crlf([\n '@SETLOCAL',\n '@IF NOT DEFINED NODE_PATH (',\n ` @SET \"NODE_PATH=${VITEST_NODE_PATH}\"`,\n ') ELSE (',\n ` @SET \"NODE_PATH=${VITEST_NODE_PATH};%NODE_PATH%\"`,\n ')',\n '@IF EXIST \"%~dp0\\\\node.exe\" (',\n ' \"%~dp0\\\\node.exe\" \"%~dp0\\\\..\\\\vitest\\\\vitest.mjs\" %*',\n ') ELSE (',\n ' @SET PATHEXT=%PATHEXT:;.JS;=;%',\n ' node \"%~dp0\\\\..\\\\vitest\\\\vitest.mjs\" %*',\n ')'\n])","source_sha256":"8345dc5e06925a4797f1e538a112d2db2cdadbbd157046ffb1aa0649b1ef6f84","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts"},{"name":"REAL_VITEST_NODE_PATH","decision":"keep","reason":"Exposes exact original prepend as input data, not parser logic.","line":70,"expression":"REAL_VITEST_NODE_PATH = VITEST_NODE_PATH","source_sha256":"292ba23a230ea847948c90ab45eff4f1baa932eafda0b1554b5e5c39dd9a765a","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts"},{"name":"REAL_PNPM_CMD","decision":"keep","reason":"Verbatim pnpm direct executable shim has distinct SETLOCAL grammar.","line":72,"expression":"REAL_PNPM_CMD = crlf([\n '@SETLOCAL',\n '@\"%~dp0\\\\..\\\\global\\\\v11\\\\27d0-19f7df4c136-1fab7163f1a52461\\\\node_modules\\\\@pnpm\\\\exe\\\\pnpm.exe\" %*'\n])","source_sha256":"0cb421fea502db4b383561f68dbd32a7f54cd259e92eec4e741b64642753a7be","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts"},{"name":"REAL_PN_CMD","decision":"keep","reason":"Bare PATH alias has no shim-relative target and must stay fallback.","line":78,"expression":"REAL_PN_CMD = crlf(['@echo off', 'pnpm %*'])","source_sha256":"5d29343779f1b42974828248e7c4dde12f2b104dcef06e4aea799ee70f20ad98","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts"},{"name":"crlf","decision":"keep","reason":"Fixture line-ending assembly only; does not encode argv or decide recognition.","line":6,"expression":"function crlf(lines: readonly string[]): string {\n return `${lines.join('\\r\\n')}\\r\\n`\n}","source_sha256":"2c7c6a5e65a81842f18eae01f872343afe1a2cfc300cd9fb1937c44dc45ca885","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts"},{"name":"npmProgNodeShim","decision":"keep","reason":"Substitutes a test-specific script path into the actual npm producer template.","line":80,"expression":"export function npmProgNodeShim(scriptRelative: string): string {\n return REAL_CODEX_CMD.replace('node_modules\\\\@openai\\\\codex\\\\bin\\\\codex.js', scriptRelative)\n}","source_sha256":"03271dd46ead922875af52a13a2982f5be109ef63eab89c7a79483059868541f","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts"},{"name":"pnpmBranchedNodeShim","decision":"keep","reason":"Produces both real interpreter branches, with optional literal NODE_PATH block; does not implement resolver behavior.","line":84,"expression":"export function pnpmBranchedNodeShim(scriptRelative: string, nodePathPrefix?: string): string {\n return crlf([\n '@SETLOCAL',\n ...(nodePathPrefix\n ? [\n '@IF NOT DEFINED NODE_PATH (',\n ` @SET \"NODE_PATH=${nodePathPrefix}\"`,\n ') ELSE (',\n ` @SET \"NODE_PATH=${nodePathPrefix};%NODE_PATH%\"`,\n ')'\n ]\n : []),\n '@IF EXIST \"%~dp0\\\\node.exe\" (',\n ` \"%~dp0\\\\node.exe\" \"%~dp0\\\\${scriptRelative}\" %*`,\n ') ELSE (',\n ' @SET PATHEXT=%PATHEXT:;.JS;=;%',\n ` node \"%~dp0\\\\${scriptRelative}\" %*`,\n ')'\n ])\n}","source_sha256":"890fcd9fbafb2f523f8dd0d28b3a5e68fa6029590ef921fa4dc07570f8975f90","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts"},{"name":"npmDirectShim","decision":"keep","reason":"Produces quoted shim-relative executable input only.","line":105,"expression":"export function npmDirectShim(targetRelative: string): string {\n return crlf(['@ECHO off', `\"%~dp0${targetRelative}\" %*`])\n}","source_sha256":"6d70bc111c3c225d18ef0913a06c9ef161adafcc8e293e8c6d907483892b895b","source_path":"src/packages/process-host/src/__fixtures__/windows-cmd-shim-bodies.ts"}],"runtime_validation":null,"validation":"reviews/upstream-0001-validation.json"}
+{"path":"src/packages/process-host/src/posix-lsof-probe.test.ts","sha256":"b38d63f880754ca40406ff8fdbf18a51517646228f146e5b121a446be819e720","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","reviewed_sha256":"b38d63f880754ca40406ff8fdbf18a51517646228f146e5b121a446be819e720","reviewer":"audit_mobile","status":"reviewed","decision":"keep","rationale":"Comments shortened only; all eight declarations, thirteen parameter rows and process/socket controls remain unchanged.","evidence":["src/packages/process-host/src/run-process.ts","src/packages/process-host/src/spawn-resolution.ts","src/packages/process-host/src/process-tree-termination.ts","src/packages/process-host/src/windows-tree-kill.ts","src/packages/process-host/src/windows-command-line.ts","src/packages/process-host/src/windows-cmd-shim-resolution.ts","src/packages/process-host/src/process-tree-kill-gate.ts","src/packages/process-host/src/posix-lsof-probe.ts","src/packages/process-host/src/child-termination-reporter.ts","src/packages/process-host/src/bounded-output-sink.ts","src/packages/process-host/src/windows-system-binary.ts","src/shared/__tests__/process-host/windows-command-line.win32.test.ts","src/shared/__tests__/process-host/windows-cmd-shim-resolution.win32.test.ts","src/shared/__tests__/process-host/windows-cmd-shim-resolution.test.ts"],"cases":[{"line":127,"endLine":134,"source_sha256":"63aae9cd6192cb0cbfe32f932b084a69b1b8213e9ee2377e553e26f630ca8f16","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","id":"5.1","title":"owns lsof when %s arrives inside spawn","decision":"keep","reason":"Each startup signal is delivered synchronously inside real lsof spawn; actual supervisor settlement, unavailable output, and no-live-child checks cover the startup ownership race.","final_line":127,"final_title":"owns lsof when %s arrives inside spawn","final_source_sha256":"63aae9cd6192cb0cbfe32f932b084a69b1b8213e9ee2377e553e26f630ca8f16","implementation_status":"validated","input_decisions":[{"table_id":"5.T1","line":127,"endLine":127,"expression":"'SIGTERM'","source_sha256":"e313f435c05918340fd1b7c3cc73ef651fe3bb4f81964c76fee8ed6cd7d5784b","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":1,"decision":"keep","reason":"Deliver SIGTERM from inside the real spawn wrapper, then require bounded supervisor success/unavailable and no live helper.","value":"SIGTERM"},{"table_id":"5.T1","line":127,"endLine":127,"expression":"'SIGHUP'","source_sha256":"5ec2724f89c0bd5152595e1763c7b569a5160b57346bd8286b86a656b447c1f2","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":2,"decision":"keep","reason":"Deliver SIGHUP from inside the real spawn wrapper, then require bounded supervisor success/unavailable and no live helper.","value":"SIGHUP"},{"table_id":"5.T1","line":127,"endLine":127,"expression":"'SIGINT'","source_sha256":"7c97406255781a39946c9e4bdcc443c4d187b9a37fa30f7958d0723e80d29924","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":3,"decision":"keep","reason":"Deliver SIGINT from inside the real spawn wrapper, then require bounded supervisor success/unavailable and no live helper.","value":"SIGINT"}]},{"line":136,"endLine":140,"source_sha256":"c9a4d42c83847f65e80f27f935acc8ceb533a8bdbf28338a53f1982254a57f24","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","id":"5.2","title":"accepts zombie-only group evidence after the direct child closes","decision":"keep","reason":"A real child plus deterministic zombie-only group census permits cleanup confirmation after direct-child close; retain this positive control.","final_line":136,"final_title":"accepts zombie-only group evidence after the direct child closes","final_source_sha256":"c9a4d42c83847f65e80f27f935acc8ceb533a8bdbf28338a53f1982254a57f24","implementation_status":"validated"},{"line":142,"endLine":149,"source_sha256":"b2906677ea4bfb4fde4a0c404d28dd60f4117ff7a77425eea488ba2d1e9e0a37","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","id":"5.3","title":"requires census cleanup even when the lsof group disappears","decision":"keep","reason":"The lsof group can disappear while a census descendant survives denied group kill. Output must stay cleanup-unconfirmed despite a closed direct census child.","final_line":142,"final_title":"requires census cleanup even when the lsof group disappears","final_source_sha256":"b2906677ea4bfb4fde4a0c404d28dd60f4117ff7a77425eea488ba2d1e9e0a37","implementation_status":"validated"},{"line":151,"endLine":165,"source_sha256":"b63b3e3fcf89beb79044030af4496bbd9ea59b857aec23231d65c03a2bc9309b","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","id":"5.4","title":"keeps cleanup unconfirmed for %s","decision":"keep","reason":"All eight census failure forms remain distinct: live member, failed command, missing target group, empty, malformed, incomplete line, hung worker, and oversized output. Real process deadlines and cleanup are part of this boundary, not an arbitrary sleep.","final_line":151,"final_title":"keeps cleanup unconfirmed for %s","final_source_sha256":"b63b3e3fcf89beb79044030af4496bbd9ea59b857aec23231d65c03a2bc9309b","implementation_status":"validated","input_decisions":[{"table_id":"5.T2","line":152,"endLine":152,"expression":"['live member', 'printf \"%s S\\\\n\" \"$(cat \"$PROBE_PID\")\"\\n']","source_sha256":"37974c4b6268348c1495c2548e8a514651348640038907b0f96d94677bc326be","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":1,"decision":"keep","reason":"'live member' census input must produce cleanup-unconfirmed instead of false proof; retain actual census subprocess termination and bounded completion.","value":["live member","printf \"%s S\\n\" \"$(cat \"$PROBE_PID\")\"\n"]},{"table_id":"5.T2","line":153,"endLine":153,"expression":"['failed census', 'exit 1\\n']","source_sha256":"dcb0b602ca4dea6f7070862b238227a1e393383254a6c55d92ace25460466008","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":2,"decision":"keep","reason":"'failed census' census input must produce cleanup-unconfirmed instead of false proof; retain actual census subprocess termination and bounded completion.","value":["failed census","exit 1\n"]},{"table_id":"5.T2","line":154,"endLine":154,"expression":"['missing group', 'printf \"1 Z\\\\n\"\\n']","source_sha256":"b93fefdc9a11511b5071ffd32209f7904e4e152b1dd5e3a5f87b08f16af93899","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":3,"decision":"keep","reason":"'missing group' census input must produce cleanup-unconfirmed instead of false proof; retain actual census subprocess termination and bounded completion.","value":["missing group","printf \"1 Z\\n\"\n"]},{"table_id":"5.T2","line":155,"endLine":155,"expression":"['empty census', 'exit 0\\n']","source_sha256":"846f7a5e92b626ead2485e51ad5b9d6ac0b89215f36e99e828ca8eecb7e62430","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":4,"decision":"keep","reason":"'empty census' census input must produce cleanup-unconfirmed instead of false proof; retain actual census subprocess termination and bounded completion.","value":["empty census","exit 0\n"]},{"table_id":"5.T2","line":156,"endLine":156,"expression":"['malformed census', 'echo malformed\\n']","source_sha256":"220da768add5602092bd1bd95906aecf1e4da65849e532fd7d79eaa8ad90ef19","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":5,"decision":"keep","reason":"'malformed census' census input must produce cleanup-unconfirmed instead of false proof; retain actual census subprocess termination and bounded completion.","value":["malformed census","echo malformed\n"]},{"table_id":"5.T2","line":157,"endLine":157,"expression":"['incomplete record', 'printf \"%s Z\" \"$(cat \"$PROBE_PID\")\"\\n']","source_sha256":"6ad01e3c1e2b44d38bb9e2a3e587cd6ea46fdd3c2f36810b96e7ceb197768887","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":6,"decision":"keep","reason":"'incomplete record' census input must produce cleanup-unconfirmed instead of false proof; retain actual census subprocess termination and bounded completion.","value":["incomplete record","printf \"%s Z\" \"$(cat \"$PROBE_PID\")\"\n"]},{"table_id":"5.T2","line":158,"endLine":158,"expression":"['hung census', 'echo $$ > \"$PS_PID\"\\nexec sleep 60\\n']","source_sha256":"f3f17361c4d833248977b23baf053bec0835c13817a00dfd893bfc3d7e78fd67","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":7,"decision":"keep","reason":"'hung census' census input must produce cleanup-unconfirmed instead of false proof; retain actual census subprocess termination and bounded completion.","value":["hung census","echo $$ > \"$PS_PID\"\nexec sleep 60\n"]},{"table_id":"5.T2","line":159,"endLine":159,"expression":"['oversized census', 'head -c 9000000 /dev/zero\\n']","source_sha256":"a415c25064a4c633030878345c4d8f2127bbff141c4325a84b588244ec52f928","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":8,"decision":"keep","reason":"'oversized census' census input must produce cleanup-unconfirmed instead of false proof; retain actual census subprocess termination and bounded completion.","value":["oversized census","head -c 9000000 /dev/zero\n"]}]},{"line":190,"endLine":193,"source_sha256":"b19977db3a2495ce2ec7535a378af594a44a7061336a7617e61a293cc9d03305","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","id":"5.5","title":"reports unavailable when nothing was reported for a socket that is still bound","decision":"keep","reason":"A real bound Unix socket corroborates the deliberately empty other-UID-shaped lsof response as unavailable; /proc/net/unix precondition is in the behavior fixture.","final_line":190,"final_title":"reports unavailable when nothing was reported for a socket that is still bound","final_source_sha256":"b19977db3a2495ce2ec7535a378af594a44a7061336a7617e61a293cc9d03305","implementation_status":"validated"},{"line":195,"endLine":203,"source_sha256":"f4abe72998704b418ba3869f15e5b0109478c60b1ea8d50d39eb99d4dd8bb092","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","id":"5.6","title":"still reports lsof for an empty answer about a path nothing has bound","decision":"keep","reason":"An unbound real filesystem path is the positive control proving the same empty lsof response remains usable for an actually stale endpoint.","final_line":195,"final_title":"still reports lsof for an empty answer about a path nothing has bound","final_source_sha256":"f4abe72998704b418ba3869f15e5b0109478c60b1ea8d50d39eb99d4dd8bb092","implementation_status":"validated"},{"line":205,"endLine":210,"source_sha256":"1e14a79d95ae361beea5779d164621ddbb0fd1752eecbf660aa746da60475ba6","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","id":"5.7","title":"keeps a reported pid even while the path is still bound","decision":"keep","reason":"A reported PID remains accepted even when the actual socket path is bound; corroboration must affect only empty PID answers.","final_line":205,"final_title":"keeps a reported pid even while the path is still bound","final_source_sha256":"1e14a79d95ae361beea5779d164621ddbb0fd1752eecbf660aa746da60475ba6","implementation_status":"validated"},{"line":213,"endLine":221,"source_sha256":"f2b5deca81f0c094bfdd768f49f269cb89d6c4b118489a969c91fab5ed374757","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","id":"5.8","title":"does not treat %s as bound","decision":"keep","reason":"Both prefix directions compare against a real bound socket and guard exact path matching rather than either form of substring matching.","final_line":213,"final_title":"does not treat %s as bound","final_source_sha256":"f2b5deca81f0c094bfdd768f49f269cb89d6c4b118489a969c91fab5ed374757","implementation_status":"validated","input_decisions":[{"table_id":"5.T3","line":214,"endLine":214,"expression":"['a prefix of the bound path', (sockPath: string) => sockPath.slice(0, -1)]","source_sha256":"1a19b89f89b90d7400aa7c1ea3dc4b47e552ef0b8ed93d77653187d2b8b07905","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":1,"decision":"keep","reason":"'a prefix of the bound path' is not the bound path; preserve this exact derive function and require ordinary empty lsof response.","value":["a prefix of the bound path",{"$expression":"(sockPath: string) => sockPath.slice(0, -1)"}]},{"table_id":"5.T3","line":215,"endLine":215,"expression":"['a path the bound one prefixes', (sockPath: string) => `${sockPath}.other`]","source_sha256":"8087d15a9fe4dedba95b1650b5020948644202a9bda28e458b018f134823f973","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":2,"decision":"keep","reason":"'a path the bound one prefixes' is not the bound path; preserve this exact derive function and require ordinary empty lsof response.","value":["a path the bound one prefixes",{"$expression":"(sockPath: string) => `${sockPath}.other`"}]}]}],"tables":[{"line":127,"endLine":127,"expression":"it.each(['SIGTERM', 'SIGHUP', 'SIGINT'])","source_sha256":"0c12eb757a1439aa7d938968de954333bbcfe4052915e5c050a63c0142cff86f","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","kind":"each","owner":"5.1","domain":"['SIGTERM', 'SIGHUP', 'SIGINT']","rows":[{"line":127,"endLine":127,"expression":"'SIGTERM'","source_sha256":"e313f435c05918340fd1b7c3cc73ef651fe3bb4f81964c76fee8ed6cd7d5784b","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":1,"decision":"keep","reason":"Deliver SIGTERM from inside the real spawn wrapper, then require bounded supervisor success/unavailable and no live helper.","value":"SIGTERM"},{"line":127,"endLine":127,"expression":"'SIGHUP'","source_sha256":"5ec2724f89c0bd5152595e1763c7b569a5160b57346bd8286b86a656b447c1f2","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":2,"decision":"keep","reason":"Deliver SIGHUP from inside the real spawn wrapper, then require bounded supervisor success/unavailable and no live helper.","value":"SIGHUP"},{"line":127,"endLine":127,"expression":"'SIGINT'","source_sha256":"7c97406255781a39946c9e4bdcc443c4d187b9a37fa30f7958d0723e80d29924","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":3,"decision":"keep","reason":"Deliver SIGINT from inside the real spawn wrapper, then require bounded supervisor success/unavailable and no live helper.","value":"SIGINT"}],"decision":"keep","id":"5.T1","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":151,"endLine":160,"expression":"it.each([\n ['live member', 'printf \"%s S\\\\n\" \"$(cat \"$PROBE_PID\")\"\\n'],\n ['failed census', 'exit 1\\n'],\n ['missing group', 'printf \"1 Z\\\\n\"\\n'],\n ['empty census', 'exit 0\\n'],\n ['malformed census', 'echo malformed\\n'],\n ['incomplete record', 'printf \"%s Z\" \"$(cat \"$PROBE_PID\")\"\\n'],\n ['hung census', 'echo $$ > \"$PS_PID\"\\nexec sleep 60\\n'],\n ['oversized census', 'head -c 9000000 /dev/zero\\n']\n ])","source_sha256":"164750b8a23528bf6195fae90ef79770f154e815c21adf16d5a45870ca2d12bf","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","kind":"each","owner":"5.4","domain":"[\n ['live member', 'printf \"%s S\\\\n\" \"$(cat \"$PROBE_PID\")\"\\n'],\n ['failed census', 'exit 1\\n'],\n ['missing group', 'printf \"1 Z\\\\n\"\\n'],\n ['empty census', 'exit 0\\n'],\n ['malformed census', 'echo malformed\\n'],\n ['incomplete record', 'printf \"%s Z\" \"$(cat \"$PROBE_PID\")\"\\n'],\n ['hung census', 'echo $$ > \"$PS_PID\"\\nexec sleep 60\\n'],\n ['oversized census', 'head -c 9000000 /dev/zero\\n']\n ]","rows":[{"line":152,"endLine":152,"expression":"['live member', 'printf \"%s S\\\\n\" \"$(cat \"$PROBE_PID\")\"\\n']","source_sha256":"37974c4b6268348c1495c2548e8a514651348640038907b0f96d94677bc326be","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":1,"decision":"keep","reason":"'live member' census input must produce cleanup-unconfirmed instead of false proof; retain actual census subprocess termination and bounded completion.","value":["live member","printf \"%s S\\n\" \"$(cat \"$PROBE_PID\")\"\n"]},{"line":153,"endLine":153,"expression":"['failed census', 'exit 1\\n']","source_sha256":"dcb0b602ca4dea6f7070862b238227a1e393383254a6c55d92ace25460466008","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":2,"decision":"keep","reason":"'failed census' census input must produce cleanup-unconfirmed instead of false proof; retain actual census subprocess termination and bounded completion.","value":["failed census","exit 1\n"]},{"line":154,"endLine":154,"expression":"['missing group', 'printf \"1 Z\\\\n\"\\n']","source_sha256":"b93fefdc9a11511b5071ffd32209f7904e4e152b1dd5e3a5f87b08f16af93899","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":3,"decision":"keep","reason":"'missing group' census input must produce cleanup-unconfirmed instead of false proof; retain actual census subprocess termination and bounded completion.","value":["missing group","printf \"1 Z\\n\"\n"]},{"line":155,"endLine":155,"expression":"['empty census', 'exit 0\\n']","source_sha256":"846f7a5e92b626ead2485e51ad5b9d6ac0b89215f36e99e828ca8eecb7e62430","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":4,"decision":"keep","reason":"'empty census' census input must produce cleanup-unconfirmed instead of false proof; retain actual census subprocess termination and bounded completion.","value":["empty census","exit 0\n"]},{"line":156,"endLine":156,"expression":"['malformed census', 'echo malformed\\n']","source_sha256":"220da768add5602092bd1bd95906aecf1e4da65849e532fd7d79eaa8ad90ef19","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":5,"decision":"keep","reason":"'malformed census' census input must produce cleanup-unconfirmed instead of false proof; retain actual census subprocess termination and bounded completion.","value":["malformed census","echo malformed\n"]},{"line":157,"endLine":157,"expression":"['incomplete record', 'printf \"%s Z\" \"$(cat \"$PROBE_PID\")\"\\n']","source_sha256":"6ad01e3c1e2b44d38bb9e2a3e587cd6ea46fdd3c2f36810b96e7ceb197768887","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":6,"decision":"keep","reason":"'incomplete record' census input must produce cleanup-unconfirmed instead of false proof; retain actual census subprocess termination and bounded completion.","value":["incomplete record","printf \"%s Z\" \"$(cat \"$PROBE_PID\")\"\n"]},{"line":158,"endLine":158,"expression":"['hung census', 'echo $$ > \"$PS_PID\"\\nexec sleep 60\\n']","source_sha256":"f3f17361c4d833248977b23baf053bec0835c13817a00dfd893bfc3d7e78fd67","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":7,"decision":"keep","reason":"'hung census' census input must produce cleanup-unconfirmed instead of false proof; retain actual census subprocess termination and bounded completion.","value":["hung census","echo $$ > \"$PS_PID\"\nexec sleep 60\n"]},{"line":159,"endLine":159,"expression":"['oversized census', 'head -c 9000000 /dev/zero\\n']","source_sha256":"a415c25064a4c633030878345c4d8f2127bbff141c4325a84b588244ec52f928","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":8,"decision":"keep","reason":"'oversized census' census input must produce cleanup-unconfirmed instead of false proof; retain actual census subprocess termination and bounded completion.","value":["oversized census","head -c 9000000 /dev/zero\n"]}],"decision":"keep","id":"5.T2","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":213,"endLine":216,"expression":"it.each([\n ['a prefix of the bound path', (sockPath: string) => sockPath.slice(0, -1)],\n ['a path the bound one prefixes', (sockPath: string) => `${sockPath}.other`]\n ])","source_sha256":"f7510801437ebf6d6bb7da75b47d49b2849ca9302c069234670a8627a3aa0ed8","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","kind":"each","owner":"5.8","domain":"[\n ['a prefix of the bound path', (sockPath: string) => sockPath.slice(0, -1)],\n ['a path the bound one prefixes', (sockPath: string) => `${sockPath}.other`]\n ]","rows":[{"line":214,"endLine":214,"expression":"['a prefix of the bound path', (sockPath: string) => sockPath.slice(0, -1)]","source_sha256":"1a19b89f89b90d7400aa7c1ea3dc4b47e552ef0b8ed93d77653187d2b8b07905","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":1,"decision":"keep","reason":"'a prefix of the bound path' is not the bound path; preserve this exact derive function and require ordinary empty lsof response.","value":["a prefix of the bound path",{"$expression":"(sockPath: string) => sockPath.slice(0, -1)"}]},{"line":215,"endLine":215,"expression":"['a path the bound one prefixes', (sockPath: string) => `${sockPath}.other`]","source_sha256":"8087d15a9fe4dedba95b1650b5020948644202a9bda28e458b018f134823f973","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":2,"decision":"keep","reason":"'a path the bound one prefixes' is not the bound path; preserve this exact derive function and require ordinary empty lsof response.","value":["a path the bound one prefixes",{"$expression":"(sockPath: string) => `${sockPath}.other`"}]}],"decision":"keep","id":"5.T3","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":92,"endLine":92,"expression":"[pidFile, psPidFile]","source_sha256":"faca88b2afc54e00fef7c5bf0c33cf1bf9967856b7112f1715ebb8431438342e","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","kind":"for-of","owner":null,"domain":"[pidFile, psPidFile]","rows":[{"line":92,"endLine":92,"expression":"pidFile","source_sha256":"60229b23ac97ef82d87f4dd390afc367677415cf7f1ff684c13be25291960a94","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":1,"decision":"keep","reason":"Preserve exact original control pidFile; Every recorded helper pid is checked/cleaned; neither lsof nor census may be omitted.","value":{"$expression":"pidFile"}},{"line":92,"endLine":92,"expression":"psPidFile","source_sha256":"3c50ab1aec5677e1592018d0e07bb282064c142965d135bf3fccff7c958defe5","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":2,"decision":"keep","reason":"Preserve exact original control psPidFile; Every recorded helper pid is checked/cleaned; neither lsof nor census may be omitted.","value":{"$expression":"psPidFile"}}],"decision":"keep","id":"5.T4","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":114,"endLine":114,"expression":"[pidFile, psPidFile]","source_sha256":"faca88b2afc54e00fef7c5bf0c33cf1bf9967856b7112f1715ebb8431438342e","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","kind":"for-of","owner":null,"domain":"[pidFile, psPidFile]","rows":[{"line":114,"endLine":114,"expression":"pidFile","source_sha256":"60229b23ac97ef82d87f4dd390afc367677415cf7f1ff684c13be25291960a94","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":1,"decision":"keep","reason":"Preserve exact original control pidFile; Every recorded helper pid is checked/cleaned; neither lsof nor census may be omitted.","value":{"$expression":"pidFile"}},{"line":114,"endLine":114,"expression":"psPidFile","source_sha256":"3c50ab1aec5677e1592018d0e07bb282064c142965d135bf3fccff7c958defe5","source_path":"src/packages/process-host/src/posix-lsof-probe.test.ts","row":2,"decision":"keep","reason":"Preserve exact original control psPidFile; Every recorded helper pid is checked/cleaned; neither lsof nor census may be omitted.","value":{"$expression":"psPidFile"}}],"decision":"keep","id":"5.T5","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"}],"previous_review":{"record":"root-0001.jsonl","record_sha256":"0b458c16578e120bade0d0d73c6d99ceee4d9585fe67e217642fa5f8a481ef1e","source_commit":"6d473f4bea1d190cb3649af97e04f1cdde170c5f","sha256":"b2e65719ded757b12e1c5e76020d03733ecb0b80087fa22dc85b063513514442","reviewed_sha256":"f5d1e8c5c1b7666cb777660186c2814afba85191f2e6195c92a304ef7a6bd32f"},"runtime_validation":null,"validation":"reviews/upstream-0001-validation.json"}
+{"path":"src/packages/process-host/src/process-tree-termination.test.ts","sha256":"f1bc56dae5d2a19f33d3c0c7041648460983df4b42bc6afe547cdb37876e8d26","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","reviewed_sha256":"f1bc56dae5d2a19f33d3c0c7041648460983df4b42bc6afe547cdb37876e8d26","reviewer":"audit_mobile","status":"reviewed","decision":"keep","rationale":"Comments shortened only; all ten declarations and both hostile-PATH inputs remain unchanged.","evidence":["src/packages/process-host/src/run-process.ts","src/packages/process-host/src/spawn-resolution.ts","src/packages/process-host/src/process-tree-termination.ts","src/packages/process-host/src/windows-tree-kill.ts","src/packages/process-host/src/windows-command-line.ts","src/packages/process-host/src/windows-cmd-shim-resolution.ts","src/packages/process-host/src/process-tree-kill-gate.ts","src/packages/process-host/src/posix-lsof-probe.ts","src/packages/process-host/src/child-termination-reporter.ts","src/packages/process-host/src/bounded-output-sink.ts","src/packages/process-host/src/windows-system-binary.ts","src/shared/__tests__/process-host/windows-command-line.win32.test.ts","src/shared/__tests__/process-host/windows-cmd-shim-resolution.win32.test.ts","src/shared/__tests__/process-host/windows-cmd-shim-resolution.test.ts"],"cases":[{"line":50,"endLine":73,"source_sha256":"3adf9adddb3026ec941c4262de50af519f6d6d1ca074ea341b17b3a77866c784","source_path":"src/packages/process-host/src/process-tree-termination.test.ts","id":"6.1","title":"waits for Windows taskkill tree completion","decision":"keep","reason":"Real termination composition remains pending before injected taskkill close, targets the correct root/tree flags with hidden shell-free spawn, then verifies without root fallback.","final_line":50,"final_title":"waits for Windows taskkill tree completion","final_source_sha256":"3adf9adddb3026ec941c4262de50af519f6d6d1ca074ea341b17b3a77866c784","implementation_status":"validated"},{"line":75,"endLine":93,"source_sha256":"0dec853ccfd2c856a6a1142146f85662ea482bb12e08fb0c7bcb946a6be3a492","source_path":"src/packages/process-host/src/process-tree-termination.test.ts","id":"6.2","title":"uses System32 taskkill when PATH is %j","decision":"keep","reason":"Both empty and hostile PATH fixtures still select the configured absolute System32 taskkill path; this boundary mock observes the actual OS spawn arguments.","final_line":75,"final_title":"uses System32 taskkill when PATH is %j","final_source_sha256":"0dec853ccfd2c856a6a1142146f85662ea482bb12e08fb0c7bcb946a6be3a492","implementation_status":"validated","input_decisions":[{"table_id":"6.T1","line":75,"endLine":75,"expression":"''","source_sha256":"6f49cdbd80e1b95d5e6427e1501fc217790daee87055fa5b4e71064288bddede","source_path":"src/packages/process-host/src/process-tree-termination.test.ts","row":1,"decision":"keep","reason":"PATH and Path both equal ''; require absolute D:\\Windows\\System32\\taskkill.exe and successful completion.","value":""},{"table_id":"6.T1","line":75,"endLine":75,"expression":"'D:\\\\shadow'","source_sha256":"539ab8e1f285c6fa723070290dd4c04f7300f3c9265562d57903b17897ed6953","source_path":"src/packages/process-host/src/process-tree-termination.test.ts","row":2,"decision":"keep","reason":"PATH and Path both equal 'D:\\\\shadow'; require absolute D:\\Windows\\System32\\taskkill.exe and successful completion.","value":"D:\\shadow"}]},{"line":95,"endLine":106,"source_sha256":"08d451836d5890ab48212e9d0429b0a381c2d06e037c94212fe70c82fd2161a5","source_path":"src/packages/process-host/src/process-tree-termination.test.ts","id":"6.3","title":"falls back to the root when Windows tree termination fails","decision":"keep","reason":"Nonzero taskkill close cannot claim verified descendants and invokes SIGKILL root fallback.","final_line":95,"final_title":"falls back to the root when Windows tree termination fails","final_source_sha256":"08d451836d5890ab48212e9d0429b0a381c2d06e037c94212fe70c82fd2161a5","implementation_status":"validated"},{"line":108,"endLine":128,"source_sha256":"2e27671351dd6c678a033d30dfba1055b2fe5e7545c46427e50f50af65554598","source_path":"src/packages/process-host/src/process-tree-termination.test.ts","id":"6.4","title":"allows a slow Windows taskkill to verify tree termination","decision":"keep","reason":"Three seconds of fake time leave both root and taskkill untouched, after which successful close can still verify the tree.","final_line":108,"final_title":"allows a slow Windows taskkill to verify tree termination","final_source_sha256":"2e27671351dd6c678a033d30dfba1055b2fe5e7545c46427e50f50af65554598","implementation_status":"validated"},{"line":130,"endLine":150,"source_sha256":"5fa594161fe679e62f21699e4242d8d658dcaee824ff49158048e5636420f40f","source_path":"src/packages/process-host/src/process-tree-termination.test.ts","id":"6.5","title":"stops waiting on a slow Windows taskkill without abandoning it","decision":"keep","reason":"Five-second caller wait expiry leaves the tracked taskkill active; a later request joins the same launched helper and observes success.","final_line":130,"final_title":"stops waiting on a slow Windows taskkill without abandoning it","final_source_sha256":"5fa594161fe679e62f21699e4242d8d658dcaee824ff49158048e5636420f40f","implementation_status":"validated"},{"line":152,"endLine":169,"source_sha256":"ce254ff1e0e3c40be33d62ae24289ad206151c0c79da6456bbc2794dcedc7254","source_path":"src/packages/process-host/src/process-tree-termination.test.ts","id":"6.6","title":"abandons a wedged Windows taskkill at its deadline and kills the root","decision":"keep","reason":"The independent absolute thirty-second deadline abandons the walker once and invokes root fallback; late close must not repeat root termination.","final_line":152,"final_title":"abandons a wedged Windows taskkill at its deadline and kills the root","final_source_sha256":"ce254ff1e0e3c40be33d62ae24289ad206151c0c79da6456bbc2794dcedc7254","implementation_status":"validated"},{"line":171,"endLine":192,"source_sha256":"aff93949a91815e0f373e7da1760b7588818023b8ecf59a8bc21a1adc35a2d4c","source_path":"src/packages/process-host/src/process-tree-termination.test.ts","id":"6.7","title":"stops waiting when a POSIX process group cannot become quiescent","decision":"keep","reason":"Continuously live D-state POSIX census evidence cannot wait indefinitely; production reaches bounded quiescence failure under a fake clock.","final_line":171,"final_title":"stops waiting when a POSIX process group cannot become quiescent","final_source_sha256":"aff93949a91815e0f373e7da1760b7588818023b8ecf59a8bc21a1adc35a2d4c","implementation_status":"validated"},{"line":212,"endLine":226,"source_sha256":"af743a16b172398c12fd4238aa2af45f21e784830588ae61d674eaeb03bec8ef","source_path":"src/packages/process-host/src/process-tree-termination.test.ts","id":"6.8","title":"reports the Windows taskkill tree it just spawned","decision":"keep","reason":"Windows signaling goes through the production kill-admission gate and reports exact pid/site/scope tied to the spawned taskkill.","final_line":212,"final_title":"reports the Windows taskkill tree it just spawned","final_source_sha256":"af743a16b172398c12fd4238aa2af45f21e784830588ae61d674eaeb03bec8ef","implementation_status":"validated"},{"line":228,"endLine":239,"source_sha256":"a3566507b1e74ac7d948749ebffa6325e533298ee3cd209df45c444bfc6a80c4","source_path":"src/packages/process-host/src/process-tree-termination.test.ts","id":"6.9","title":"reports the POSIX process group it signalled","decision":"keep","reason":"POSIX group signaling uses the corresponding actual gate scope and reports the group it signaled.","final_line":228,"final_title":"reports the POSIX process group it signalled","final_source_sha256":"a3566507b1e74ac7d948749ebffa6325e533298ee3cd209df45c444bfc6a80c4","implementation_status":"validated"},{"line":241,"endLine":252,"source_sha256":"acab2234e64b63a8adc0aa5c7c2cdce5a57e312ba2ee3f2512d9cf0da8c270d8","source_path":"src/packages/process-host/src/process-tree-termination.test.ts","id":"6.10","title":"never taskkills a pid the child already gave back to Windows","decision":"keep","reason":"A child with actual exitCode cannot cause a PID-addressed Windows tree walk or a falsely verified barrier; no process-admission breadcrumb is emitted.","final_line":241,"final_title":"never taskkills a pid the child already gave back to Windows","final_source_sha256":"acab2234e64b63a8adc0aa5c7c2cdce5a57e312ba2ee3f2512d9cf0da8c270d8","implementation_status":"validated"}],"tables":[{"line":75,"endLine":75,"expression":"it.each(['', 'D:\\\\shadow'])","source_sha256":"1b74532ff4412667de424f38308dd986af56d4410d8f1f4446f5fbf85e134c0e","source_path":"src/packages/process-host/src/process-tree-termination.test.ts","kind":"each","owner":"6.2","domain":"['', 'D:\\\\shadow']","rows":[{"line":75,"endLine":75,"expression":"''","source_sha256":"6f49cdbd80e1b95d5e6427e1501fc217790daee87055fa5b4e71064288bddede","source_path":"src/packages/process-host/src/process-tree-termination.test.ts","row":1,"decision":"keep","reason":"PATH and Path both equal ''; require absolute D:\\Windows\\System32\\taskkill.exe and successful completion.","value":""},{"line":75,"endLine":75,"expression":"'D:\\\\shadow'","source_sha256":"539ab8e1f285c6fa723070290dd4c04f7300f3c9265562d57903b17897ed6953","source_path":"src/packages/process-host/src/process-tree-termination.test.ts","row":2,"decision":"keep","reason":"PATH and Path both equal 'D:\\\\shadow'; require absolute D:\\Windows\\System32\\taskkill.exe and successful completion.","value":"D:\\shadow"}],"decision":"keep","id":"6.T1","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"}],"previous_review":{"record":"root-0001.jsonl","record_sha256":"0b458c16578e120bade0d0d73c6d99ceee4d9585fe67e217642fa5f8a481ef1e","source_commit":"6d473f4bea1d190cb3649af97e04f1cdde170c5f","sha256":"1ca14b96ce61534c0ad87db8c41ba699fcd80dfb4f13e0db4a3a56b60f51af6b","reviewed_sha256":"1ca14b96ce61534c0ad87db8c41ba699fcd80dfb4f13e0db4a3a56b60f51af6b"},"runtime_validation":null,"validation":"reviews/upstream-0001-validation.json"}
+{"path":"src/packages/process-host/src/run-process-windows-tree-kill.test.ts","sha256":"3763ea5f005c06d69b754670fd08a22ecc5a27f4532a1b4cd33d69793412af86","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","reviewed_sha256":"3763ea5f005c06d69b754670fd08a22ecc5a27f4532a1b4cd33d69793412af86","reviewer":"audit_mobile","status":"reviewed","decision":"keep","rationale":"Comments shortened only; all four lifecycle declarations and fake-time/event controls remain unchanged.","evidence":["src/packages/process-host/src/run-process.ts","src/packages/process-host/src/spawn-resolution.ts","src/packages/process-host/src/process-tree-termination.ts","src/packages/process-host/src/windows-tree-kill.ts","src/packages/process-host/src/windows-command-line.ts","src/packages/process-host/src/windows-cmd-shim-resolution.ts","src/packages/process-host/src/process-tree-kill-gate.ts","src/packages/process-host/src/posix-lsof-probe.ts","src/packages/process-host/src/child-termination-reporter.ts","src/packages/process-host/src/bounded-output-sink.ts","src/packages/process-host/src/windows-system-binary.ts","src/shared/__tests__/process-host/windows-command-line.win32.test.ts","src/shared/__tests__/process-host/windows-cmd-shim-resolution.win32.test.ts","src/shared/__tests__/process-host/windows-cmd-shim-resolution.test.ts"],"cases":[{"line":50,"endLine":76,"source_sha256":"858eafdbd11af900ab12166039694f2528be55738a08505f7857519ef3b4c585","source_path":"src/packages/process-host/src/run-process-windows-tree-kill.test.ts","id":"7.1","title":"leaves the root to taskkill and settles as soon as a late taskkill succeeds","decision":"keep","reason":"The runProcess composition remains pending and holds admission while taskkill is still walking, even beyond caller wait/root grace; injected late successful close settles timeout and reports once.","final_line":50,"final_title":"leaves the root to taskkill and settles as soon as a late taskkill succeeds","final_source_sha256":"858eafdbd11af900ab12166039694f2528be55738a08505f7857519ef3b4c585","implementation_status":"validated"},{"line":78,"endLine":104,"source_sha256":"a6bae214f561567c4ab4edff497e5d538f4d2ea40e56ce56f2e31df2dc522fc9","source_path":"src/packages/process-host/src/run-process-windows-tree-kill.test.ts","id":"7.2","title":"releases on root close, as before, while taskkill can still verify the barrier","decision":"keep","reason":"Root exit/close releases the admission callback while the result waits for tree verification; successful taskkill then settles the result. Root lifetime and barrier verification are intentionally different boundaries.","final_line":78,"final_title":"releases on root close, as before, while taskkill can still verify the barrier","final_source_sha256":"a6bae214f561567c4ab4edff497e5d538f4d2ea40e56ce56f2e31df2dc522fc9","implementation_status":"validated"},{"line":106,"endLine":126,"source_sha256":"128dcb4d79122b47b16ccb988f19b48239c706a39955334a16527a069135b099","source_path":"src/packages/process-host/src/run-process-windows-tree-kill.test.ts","id":"7.3","title":"abandons taskkill shortly after the root exits so it cannot walk a reissued pid","decision":"keep","reason":"The two-second root-exit boundary abandons a taskkill that could walk a reused PID; the unverified result is still bounded and admission is reported once.","final_line":106,"final_title":"abandons taskkill shortly after the root exits so it cannot walk a reissued pid","final_source_sha256":"128dcb4d79122b47b16ccb988f19b48239c706a39955334a16527a069135b099","implementation_status":"validated"},{"line":128,"endLine":144,"source_sha256":"380a5a41e25f9369e0f9adecda10117c3ef9c2220d7895d742d5a819e481c02a","source_path":"src/packages/process-host/src/run-process-windows-tree-kill.test.ts","id":"7.4","title":"releases on root close once an abandoned taskkill has killed the root","decision":"keep","reason":"After absolute taskkill abandonment, root fallback alone does not report termination. Only injected root close invokes onChildTerminated. This case observes admission release, not result-settlement timing.","final_line":128,"final_title":"releases on root close once an abandoned taskkill has killed the root","final_source_sha256":"380a5a41e25f9369e0f9adecda10117c3ef9c2220d7895d742d5a819e481c02a","implementation_status":"validated"}],"tables":[],"previous_review":{"record":"root-0001.jsonl","record_sha256":"0b458c16578e120bade0d0d73c6d99ceee4d9585fe67e217642fa5f8a481ef1e","source_commit":"6d473f4bea1d190cb3649af97e04f1cdde170c5f","sha256":"e19ef672df288b6782cc0dfa4c044210d079da1aeddedd75d8741893db723329","reviewed_sha256":"e19ef672df288b6782cc0dfa4c044210d079da1aeddedd75d8741893db723329"},"runtime_validation":null,"validation":"reviews/upstream-0001-validation.json"}
+{"path":"src/packages/process-host/src/run-process.test.ts","sha256":"275a5b167c245b8b03f3ddccbbb4b3ae46700f621160083520f8a10b8e6fd6cb","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","reviewed_sha256":"f8a2b016effac262aa1e917e20ff8e1b93ca61fa2f8a533485c064a1b5184b62","reviewer":"audit_mobile","status":"reviewed","decision":"fix","rationale":"Preserve process resolution, IPC/argv/capture, timeout, abort, stream-failure and group-lifecycle controls. Assert exact-cap stdout/exit and narrow two timing titles; no case or original input removed.","evidence":["src/packages/process-host/src/run-process.ts","src/packages/process-host/src/spawn-resolution.ts","src/packages/process-host/src/process-tree-termination.ts","src/packages/process-host/src/windows-tree-kill.ts","src/packages/process-host/src/windows-command-line.ts","src/packages/process-host/src/windows-cmd-shim-resolution.ts","src/packages/process-host/src/process-tree-kill-gate.ts","src/packages/process-host/src/posix-lsof-probe.ts","src/packages/process-host/src/child-termination-reporter.ts","src/packages/process-host/src/bounded-output-sink.ts","src/packages/process-host/src/windows-system-binary.ts","src/shared/__tests__/process-host/windows-command-line.win32.test.ts","src/shared/__tests__/process-host/windows-cmd-shim-resolution.win32.test.ts","src/shared/__tests__/process-host/windows-cmd-shim-resolution.test.ts"],"cases":[{"line":12,"endLine":18,"source_sha256":"fa608ea6c16ec65fb668547f9e5148950df2c98e1ff8e63e79ff03bdea8667a9","source_path":"src/packages/process-host/src/run-process.test.ts","id":"8.1","title":"always hides the console and never uses a shell","decision":"keep","reason":"All three supported platform resolution paths pin hidden, shell-free spawning; these are OS adapter arguments rather than arbitrary implementation call counts.","final_line":12,"final_title":"always hides the console and never uses a shell","final_source_sha256":"fa608ea6c16ec65fb668547f9e5148950df2c98e1ff8e63e79ff03bdea8667a9","implementation_status":"validated","input_decisions":[{"table_id":"8.T2","line":13,"endLine":13,"expression":"'win32'","source_sha256":"79447999dfa004d7de272d9a63459bbea0a040b4d92b62224b69c9f9bda9d9a2","source_path":"src/packages/process-host/src/run-process.test.ts","row":1,"decision":"keep","reason":"Retain original platform/serialization dimension 'win32'; all supported platforms and both IPC modes remain exercised.","value":"win32"},{"table_id":"8.T2","line":13,"endLine":13,"expression":"'darwin'","source_sha256":"5439872b0b815293e9c1ca8fa801adb3ab87f33f1d24e842e43584033acffd97","source_path":"src/packages/process-host/src/run-process.test.ts","row":2,"decision":"keep","reason":"Retain original platform/serialization dimension 'darwin'; all supported platforms and both IPC modes remain exercised.","value":"darwin"},{"table_id":"8.T2","line":13,"endLine":13,"expression":"'linux'","source_sha256":"09d194165bd76c3f3dc6b372cc266be2e98c365d3658f818184f9b59182a0a3b","source_path":"src/packages/process-host/src/run-process.test.ts","row":3,"decision":"keep","reason":"Retain original platform/serialization dimension 'linux'; all supported platforms and both IPC modes remain exercised.","value":"linux"}]},{"line":20,"endLine":36,"source_sha256":"705e1ff3915985ba619dad0c61d8690f4119a137d73736794a466e1039ee4598","source_path":"src/packages/process-host/src/run-process.test.ts","id":"8.2","title":"preserves IPC serialization while hiding the worker on every platform","decision":"keep","reason":"Both IPC serialization modes across all three platforms preserve serialization, IPC stdio and hidden/shell-free options; the omitted-serialization control remains undefined.","final_line":20,"final_title":"preserves IPC serialization while hiding the worker on every platform","final_source_sha256":"705e1ff3915985ba619dad0c61d8690f4119a137d73736794a466e1039ee4598","implementation_status":"validated","input_decisions":[{"table_id":"8.T3","line":21,"endLine":21,"expression":"'win32'","source_sha256":"79447999dfa004d7de272d9a63459bbea0a040b4d92b62224b69c9f9bda9d9a2","source_path":"src/packages/process-host/src/run-process.test.ts","row":1,"decision":"keep","reason":"Retain original platform/serialization dimension 'win32'; all supported platforms and both IPC modes remain exercised.","value":"win32"},{"table_id":"8.T3","line":21,"endLine":21,"expression":"'darwin'","source_sha256":"5439872b0b815293e9c1ca8fa801adb3ab87f33f1d24e842e43584033acffd97","source_path":"src/packages/process-host/src/run-process.test.ts","row":2,"decision":"keep","reason":"Retain original platform/serialization dimension 'darwin'; all supported platforms and both IPC modes remain exercised.","value":"darwin"},{"table_id":"8.T3","line":21,"endLine":21,"expression":"'linux'","source_sha256":"09d194165bd76c3f3dc6b372cc266be2e98c365d3658f818184f9b59182a0a3b","source_path":"src/packages/process-host/src/run-process.test.ts","row":3,"decision":"keep","reason":"Retain original platform/serialization dimension 'linux'; all supported platforms and both IPC modes remain exercised.","value":"linux"},{"table_id":"8.T4","line":22,"endLine":22,"expression":"'json'","source_sha256":"fb97b451af8304805c66b24f082d2abf4b747a1e84b163bbc91033c85e251eb6","source_path":"src/packages/process-host/src/run-process.test.ts","row":1,"decision":"keep","reason":"Retain original platform/serialization dimension 'json'; all supported platforms and both IPC modes remain exercised.","value":"json"},{"table_id":"8.T4","line":22,"endLine":22,"expression":"'advanced'","source_sha256":"1021d86a2ffd3b2730fa1813941d66290ce915697c499920b6cdada882cc546a","source_path":"src/packages/process-host/src/run-process.test.ts","row":2,"decision":"keep","reason":"Retain original platform/serialization dimension 'advanced'; all supported platforms and both IPC modes remain exercised.","value":"advanced"}]},{"line":38,"endLine":43,"source_sha256":"f4cabd1542ca8877a34f499b9a4f19b61817a5ec46fa2a031b4374132b47ca20","source_path":"src/packages/process-host/src/run-process.test.ts","id":"8.3","title":"spawns a non-cmd program directly, letting Node do the argv quoting","decision":"keep","reason":"A real executable target preserves exact argv and lets Node quote normally instead of using batch verbatim handling.","final_line":38,"final_title":"spawns a non-cmd program directly, letting Node do the argv quoting","final_source_sha256":"f4cabd1542ca8877a34f499b9a4f19b61817a5ec46fa2a031b4374132b47ca20","implementation_status":"validated"},{"line":45,"endLine":52,"source_sha256":"f7ab8af9a74b050a7f63aa2d4c04ebbc3096d60724c83282339d3e59c92eb278","source_path":"src/packages/process-host/src/run-process.test.ts","id":"8.4","title":"routes a .cmd target through cmd.exe with a verbatim line","decision":"keep","reason":"An unrecognized Windows batch path is sent to the configured cmd executable as one verbatim line with safe switches and hidden console.","final_line":45,"final_title":"routes a .cmd target through cmd.exe with a verbatim line","final_source_sha256":"f7ab8af9a74b050a7f63aa2d4c04ebbc3096d60724c83282339d3e59c92eb278","implementation_status":"validated"},{"line":54,"endLine":58,"source_sha256":"fdc0bd469e4b1a0e1d34367b741fea0abb0e6b0a618c8f8accd4b661304eb752","source_path":"src/packages/process-host/src/run-process.test.ts","id":"8.5","title":"treats a .cmd path as an ordinary program off Windows","decision":"keep","reason":"A .cmd suffix on Linux remains an ordinary program/argv pair rather than gaining Windows interpretation.","final_line":54,"final_title":"treats a .cmd path as an ordinary program off Windows","final_source_sha256":"fdc0bd469e4b1a0e1d34367b741fea0abb0e6b0a618c8f8accd4b661304eb752","implementation_status":"validated"},{"line":60,"endLine":77,"source_sha256":"3edb7916b7829c1482c7a3dd106150e63349616f87c7fee350cda5c09b3f43b8","source_path":"src/packages/process-host/src/run-process.test.ts","id":"8.6","title":"never lets a corpus argument reach cmd as an operator","decision":"keep","reason":"All 24 imported adversarial arguments are passed through the actual resolveSpawn composition. An independent quote-state walk verifies all operators remain data; final parity protects the following argument. Native cmd parsing is separate Windows CI coverage.","final_line":60,"final_title":"never lets a corpus argument reach cmd as an operator","final_source_sha256":"3edb7916b7829c1482c7a3dd106150e63349616f87c7fee350cda5c09b3f43b8","implementation_status":"validated","input_decisions":[{"table_id":"8.T5","line":3,"endLine":3,"expression":"{ name: 'plain', value: 'hello' }","source_sha256":"c14f0dd691171cd4c4949b3363757f9bf349e008512bfbfe9dc8bbb7fc827945","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":1,"decision":"keep","reason":"Keep adversarial 'plain' value 'hello'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"plain","value":"hello"}},{"table_id":"8.T5","line":4,"endLine":4,"expression":"{ name: 'empty', value: '' }","source_sha256":"743d63b3b58247d3f386fb5e00ff33b099e33e7dd9a0cda0c86fff586dc019cc","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":2,"decision":"keep","reason":"Keep adversarial 'empty' value ''; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"empty","value":""}},{"table_id":"8.T5","line":5,"endLine":5,"expression":"{ name: 'space', value: 'hello world' }","source_sha256":"7b1e4ba3a30a8d1e85d9d3a5535bfc3711b86dbba5aa2c14ada98b27aae04ff2","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":3,"decision":"keep","reason":"Keep adversarial 'space' value 'hello world'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"space","value":"hello world"}},{"table_id":"8.T5","line":6,"endLine":6,"expression":"{ name: 'double-quote', value: 'say \"hi\" ok' }","source_sha256":"74f32c2d35258fcec42ecadb23d10b69016bdac6c4323379febe24dc6fa36e8f","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":4,"decision":"keep","reason":"Keep adversarial 'double-quote' value 'say \"hi\" ok'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"double-quote","value":"say \"hi\" ok"}},{"table_id":"8.T5","line":7,"endLine":7,"expression":"{ name: 'quote-only', value: '\"' }","source_sha256":"0e80ea28fd1b46bc3c1da0f92facf7efcf34e4f9840f70cd9c47633b66fd94b7","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":5,"decision":"keep","reason":"Keep adversarial 'quote-only' value '\"'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"quote-only","value":"\""}},{"table_id":"8.T5","line":8,"endLine":8,"expression":"{ name: 'two-quotes', value: '\"\"' }","source_sha256":"ef8227e10c5725d118ae0890d5bd05f6f5284b5df57e29d5bef1dea5c06dd84b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":6,"decision":"keep","reason":"Keep adversarial 'two-quotes' value '\"\"'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"two-quotes","value":"\"\""}},{"table_id":"8.T5","line":9,"endLine":9,"expression":"{ name: 'caret', value: 'a^b' }","source_sha256":"383f847cb92d5ef25f7c4a01c7775785c191a5cdcccc46a58c60c9879f3ff242","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":7,"decision":"keep","reason":"Keep adversarial 'caret' value 'a^b'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"caret","value":"a^b"}},{"table_id":"8.T5","line":10,"endLine":10,"expression":"{ name: 'ampersand', value: 'a&b' }","source_sha256":"904bef30bf07b1a5b59f75bddaa9b49771afd3b608b95a5acbddede50655ffe1","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":8,"decision":"keep","reason":"Keep adversarial 'ampersand' value 'a&b'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"ampersand","value":"a&b"}},{"table_id":"8.T5","line":11,"endLine":11,"expression":"{ name: 'pipe', value: 'a|b' }","source_sha256":"9d255e43a388b9baf05c8821a21aed084f7cab444339349b772677fce4834651","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":9,"decision":"keep","reason":"Keep adversarial 'pipe' value 'a|b'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"pipe","value":"a|b"}},{"table_id":"8.T5","line":12,"endLine":12,"expression":"{ name: 'redirect', value: 'ac' }","source_sha256":"8e47ce6fd2bd08244db354ecb871934b659bddd0a661fc73389fe7fdf3857fd1","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":10,"decision":"keep","reason":"Keep adversarial 'redirect' value 'ac'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"redirect","value":"ac"}},{"table_id":"8.T5","line":13,"endLine":13,"expression":"{ name: 'percent-pair', value: 'e%F%g' }","source_sha256":"e083ee349cfe10a720596616c69eecbe46f470b97f438a10dc91645b660a1445","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":11,"decision":"keep","reason":"Keep adversarial 'percent-pair' value 'e%F%g'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"percent-pair","value":"e%F%g"}},{"table_id":"8.T5","line":15,"endLine":15,"expression":"{ name: 'percent-after-backslash', value: 'C:\\\\Users\\\\%F%\\\\x' }","source_sha256":"14bff028f5d3760d1cc39951b32124c936515474077614ae7463a87d67001133","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":12,"decision":"keep","reason":"Keep adversarial 'percent-after-backslash' value 'C:\\\\Users\\\\%F%\\\\x'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"percent-after-backslash","value":"C:\\Users\\%F%\\x"}},{"table_id":"8.T5","line":16,"endLine":16,"expression":"{ name: 'percent-after-two-backslashes', value: 'C:\\\\\\\\%F%' }","source_sha256":"a682c63f457dfda222f54341159e8c3970f20a00ef2503025e980ad57cc3904d","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":13,"decision":"keep","reason":"Keep adversarial 'percent-after-two-backslashes' value 'C:\\\\\\\\%F%'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"percent-after-two-backslashes","value":"C:\\\\%F%"}},{"table_id":"8.T5","line":17,"endLine":17,"expression":"{ name: 'percent-lone', value: '100% done' }","source_sha256":"b7a458d66445ac9d60dbd86aa4719d44ac9f3040cdfbc8b41cff2c0a46c5dcab","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":14,"decision":"keep","reason":"Keep adversarial 'percent-lone' value '100% done'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"percent-lone","value":"100% done"}},{"table_id":"8.T5","line":18,"endLine":18,"expression":"{ name: 'bang', value: 'q!VAR!r' }","source_sha256":"9b7aad10d671d1e569936c3925af7ef58bda50d1370c41dd290b071ba8ac338b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":15,"decision":"keep","reason":"Keep adversarial 'bang' value 'q!VAR!r'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"bang","value":"q!VAR!r"}},{"table_id":"8.T5","line":19,"endLine":19,"expression":"{ name: 'parens', value: 'a(b)c' }","source_sha256":"291bb0293522eabbebf82bfdd745a4d41922fcf48c35dda4d19d7c885c34ac0d","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":16,"decision":"keep","reason":"Keep adversarial 'parens' value 'a(b)c'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"parens","value":"a(b)c"}},{"table_id":"8.T5","line":20,"endLine":20,"expression":"{ name: 'trailing-backslash', value: 'C:\\\\dir\\\\' }","source_sha256":"141f047963e3b18cf0ed52cfee6cb47377f26f5ab7dceccb52fcd1d7a7bc4018","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":17,"decision":"keep","reason":"Keep adversarial 'trailing-backslash' value 'C:\\\\dir\\\\'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"trailing-backslash","value":"C:\\dir\\"}},{"table_id":"8.T5","line":21,"endLine":21,"expression":"{ name: 'backslash-quote', value: 'a\\\\\"b' }","source_sha256":"ac209a19b69447a4aaebd90357bab2cdc6996ea8f91fab52d0fa2104f75e41a7","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":18,"decision":"keep","reason":"Keep adversarial 'backslash-quote' value 'a\\\\\"b'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"backslash-quote","value":"a\\\"b"}},{"table_id":"8.T5","line":22,"endLine":22,"expression":"{ name: 'double-backslash-quote', value: 'a\\\\\\\\\"b' }","source_sha256":"c0affc22388dbea93765e641c39cb64eb63b1a687cabab5824e1e5737f592540","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":19,"decision":"keep","reason":"Keep adversarial 'double-backslash-quote' value 'a\\\\\\\\\"b'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"double-backslash-quote","value":"a\\\\\"b"}},{"table_id":"8.T5","line":23,"endLine":23,"expression":"{ name: 'only-backslashes', value: '\\\\\\\\\\\\' }","source_sha256":"f1b92bca0e6b372a2f81c5e1b497a5a822b070e2a96aa3b335c48a78efe8b1bc","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":20,"decision":"keep","reason":"Keep adversarial 'only-backslashes' value '\\\\\\\\\\\\'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"only-backslashes","value":"\\\\\\"}},{"table_id":"8.T5","line":24,"endLine":24,"expression":"{ name: 'semicolon-comma', value: 'a;b,c' }","source_sha256":"c83b1e38280df27b64e692f983b5a7881412600ea5d06b54f732e5c13ae429f5","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":21,"decision":"keep","reason":"Keep adversarial 'semicolon-comma' value 'a;b,c'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"semicolon-comma","value":"a;b,c"}},{"table_id":"8.T5","line":25,"endLine":25,"expression":"{ name: 'unicode', value: '\u65e5\u672c\u8a9e caf\u00e9' }","source_sha256":"fc0e69c50d7ecb955390a875735f800120de4c425b20d2988af2337cbaa13271","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":22,"decision":"keep","reason":"Keep adversarial 'unicode' value '\u65e5\u672c\u8a9e caf\u00e9'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"unicode","value":"\u65e5\u672c\u8a9e caf\u00e9"}},{"table_id":"8.T5","line":26,"endLine":26,"expression":"{ name: 'combined', value: 'x\"y&z%F%' }","source_sha256":"aea5fee9be7bc434d9830e0631d951c6736579ba58b192c5fa664b1c80a9d49b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":23,"decision":"keep","reason":"Keep adversarial 'combined' value 'x\"y&z%F%'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"combined","value":"x\"y&z%F%"}},{"table_id":"8.T5","line":27,"endLine":27,"expression":"{ name: 'agent-prompt', value: 'Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)' }","source_sha256":"4195ef0188aa9ca7b1115510415f171d986f453e7a8d08df77b8730bfba07606","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":24,"decision":"keep","reason":"Keep adversarial 'agent-prompt' value 'Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"agent-prompt","value":"Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)"}}]},{"line":81,"endLine":102,"source_sha256":"0b33fffbca4e0b0d3dd53780712d361d80392da862809514cd78aa97e6e02bb1","source_path":"src/packages/process-host/src/run-process.test.ts","id":"8.7","title":"accepts string stdin with byte capture %s","decision":"keep","reason":"Both capture modes use a real child to round-trip string stdin, binary suffix and stderr; independent byte expectations protect the null/invalid-UTF8 boundary.","final_line":81,"final_title":"accepts string stdin with byte capture %s","final_source_sha256":"0b33fffbca4e0b0d3dd53780712d361d80392da862809514cd78aa97e6e02bb1","implementation_status":"validated","input_decisions":[{"table_id":"8.T1","line":81,"endLine":81,"expression":"false","source_sha256":"fcbcf165908dd18a9e49f7ff27810176db8e9f63b4352213741664245224f8aa","source_path":"src/packages/process-host/src/run-process.test.ts","row":1,"decision":"keep","reason":"captureStdoutAsBytes=False: preserve real stdin delivery and expected text versus raw-byte output plus stderr.","value":false},{"table_id":"8.T1","line":81,"endLine":81,"expression":"true","source_sha256":"b5bea41b6c623f7c09f1bf24dcae58ebab3c0cdd90ad966bc43a45b44867e12b","source_path":"src/packages/process-host/src/run-process.test.ts","row":2,"decision":"keep","reason":"captureStdoutAsBytes=True: preserve real stdin delivery and expected text versus raw-byte output plus stderr.","value":true}]},{"line":104,"endLine":111,"source_sha256":"0ac3153e6df4bd88fae33484c81f99ec5612c96816d0a7a4404f4656476c6aef","source_path":"src/packages/process-host/src/run-process.test.ts","id":"8.8","title":"reports a timeout as timedOut","decision":"keep","reason":"A real synchronous child exceeds an actual spawnSync timeout and must be reported timedOut; substituting fake JS timers would not test this native boundary.","final_line":104,"final_title":"reports a timeout as timedOut","final_source_sha256":"0ac3153e6df4bd88fae33484c81f99ec5612c96816d0a7a4404f4656476c6aef","implementation_status":"validated"},{"line":113,"endLine":122,"source_sha256":"e186906330e4d09892b8da7a1aa562cd8c6e3a3763876e845c15a2c9815ab713","source_path":"src/packages/process-host/src/run-process.test.ts","id":"8.9","title":"does not report a deliberately terminated child as timedOut","decision":"keep","reason":"Real self-termination with SIGTERM remains distinct from ETIMEDOUT; code/signal assertion deliberately accepts platform-specific exit representation.","final_line":113,"final_title":"does not report a deliberately terminated child as timedOut","final_source_sha256":"e186906330e4d09892b8da7a1aa562cd8c6e3a3763876e845c15a2c9815ab713","implementation_status":"validated"},{"line":124,"endLine":131,"source_sha256":"e057476e2e4e6d402bf64db4cc81262a80baaa7b50a8dde35b8e28f24df46d41","source_path":"src/packages/process-host/src/run-process.test.ts","id":"8.10","title":"captures stdout and the exit code without throwing on failure","decision":"keep","reason":"A real nonzero child returns both stdout and code without throwing.","final_line":124,"final_title":"captures stdout and the exit code without throwing on failure","final_source_sha256":"e057476e2e4e6d402bf64db4cc81262a80baaa7b50a8dde35b8e28f24df46d41","implementation_status":"validated"},{"line":135,"endLine":143,"source_sha256":"8c4dd710e894b2577094dbb305c06326b361f2e0f7399c3a0a91a2c7e441bf88","source_path":"src/packages/process-host/src/run-process.test.ts","id":"8.11","title":"reports a clipped answer instead of passing it off as the whole one","decision":"keep","reason":"Actual async output exceeding its cap retains the expected prefix and identifies clipping.","final_line":135,"final_title":"reports a clipped answer instead of passing it off as the whole one","final_source_sha256":"8c4dd710e894b2577094dbb305c06326b361f2e0f7399c3a0a91a2c7e441bf88","implementation_status":"validated"},{"line":145,"endLine":152,"source_sha256":"3429a3ad3ee8b2913546516057f76a7e3eef24e55fdd276312e6cd7d25a3bccc","source_path":"src/packages/process-host/src/run-process.test.ts","id":"8.12","title":"does not call output that exactly fills the cap truncated","decision":"fix","reason":"The existing real-child exactly-at-cap case now asserts stdout is exactly eight x bytes and exit code zero as well as no truncation. An isolated copied production sink that drops exactly-at-cap data escapes the old flag-only assertion and fails the repaired stdout expectation.","final_line":145,"final_title":"does not call output that exactly fills the cap truncated","final_source_sha256":"999a136711e97cd649d40ccff0194da7603d4b4df136c6ad65cdb1a8af62daf6","implementation_status":"validated"},{"line":156,"endLine":166,"source_sha256":"13ff01774cd9ed736be9fe5d755ad6a01005057ed96030704e126e45f7aae391","source_path":"src/packages/process-host/src/run-process.test.ts","id":"8.13","title":"forwards stderr as it arrives without changing the captured result","decision":"keep","reason":"The real onStderr observer receives all emitted bytes while retained capture remains capped; the callback output is produced by the child, not a canned mock result.","final_line":158,"final_title":"forwards stderr as it arrives without changing the captured result","final_source_sha256":"13ff01774cd9ed736be9fe5d755ad6a01005057ed96030704e126e45f7aae391","implementation_status":"validated"},{"line":170,"endLine":181,"source_sha256":"f6dd2e0d9d4f9aa25b05c6f575408ec1c98c99160bc1c55cc1d89db84ec651db","source_path":"src/packages/process-host/src/run-process.test.ts","id":"8.14","title":"settles after the grace period rather than outliving its own deadline","decision":"fix","reason":"The real child reports readiness before its two-second timeout and the result is timedOut; no assertion measures the grace period, and Windows does not honor POSIX SIGTERM handlers. Narrow the title to timeout settlement for a ready child. Renamed to 'settles a timeout after the child reports ready'; all inputs, assertions and cleanup remain unchanged.","final_line":172,"final_title":"settles a timeout after the child reports ready","final_source_sha256":"6ea8e8e31a16125efced941d4ee4435cc78bb990b7759e72938097b5a4607b42","implementation_status":"validated"},{"line":185,"endLine":209,"source_sha256":"9d6711169d2d637cfdc295f0fafc1b45b5cacfbffb632da877e8c238fc82ebdb","source_path":"src/packages/process-host/src/run-process.test.ts","id":"8.15","title":"settles after the grace period when an aborted child ignores the signal","decision":"fix","reason":"Readiness is observed before abort with finally cleanup; the result establishes non-timeout settlement. No assertion proves a particular grace delay, and Windows termination differs. Narrow the title to aborting an already-ready child. Renamed to 'settles an abort after the child reports ready'; all inputs, assertions and cleanup remain unchanged.","final_line":187,"final_title":"settles an abort after the child reports ready","final_source_sha256":"bd998c1da49cf90a1ddd60a4aad501741f0bfceaaa72d21a06ad2efc10bdbf9c","implementation_status":"validated"},{"line":211,"endLine":246,"source_sha256":"770d6360a6d3abcb181168dc6ea3c6a13ce4e74451cb277ca16f9a260ea0ddf6","source_path":"src/packages/process-host/src/run-process.test.ts","id":"8.16","title":"kills the process group and waits for confirmed root exit with a termination barrier","decision":"keep","reason":"A real POSIX descendant installs its TERM trap before readiness; abort signals the group and the independent marker observes descendant delivery while the barrier waits for confirmation.","final_line":213,"final_title":"kills the process group and waits for confirmed root exit with a termination barrier","final_source_sha256":"770d6360a6d3abcb181168dc6ea3c6a13ce4e74451cb277ca16f9a260ea0ddf6","implementation_status":"validated"},{"line":250,"endLine":260,"source_sha256":"ec9468ae78ae5725ff592e2221affe10f97af5d1f4ec0accfc1842d5ea8613eb","source_path":"src/packages/process-host/src/run-process.test.ts","id":"8.17","title":"survives a child that exits without reading its input","decision":"keep","reason":"A real child exiting without reading a large stdin payload returns exit code seven instead of an uncaught EPIPE; the fixture exercises actual stream failure scheduling.","final_line":252,"final_title":"survives a child that exits without reading its input","final_source_sha256":"ec9468ae78ae5725ff592e2221affe10f97af5d1f4ec0accfc1842d5ea8613eb","implementation_status":"validated"},{"line":264,"endLine":276,"source_sha256":"acf2b11d386dd71d4939fe32c4e7f457c64df027033a7376af9f342452cf0a56","source_path":"src/packages/process-host/src/run-process.test.ts","id":"8.18","title":"stops the child instead of running it to the timeout","decision":"keep","reason":"The already-aborted request contains a missing program whose spawn would reject; successful result with exactly one termination callback proves early no-spawn settlement without a wall-time assertion.","final_line":266,"final_title":"stops the child instead of running it to the timeout","final_source_sha256":"acf2b11d386dd71d4939fe32c4e7f457c64df027033a7376af9f342452cf0a56","implementation_status":"validated"},{"line":283,"endLine":291,"source_sha256":"8fc850388202a3b9da75a2dcb4e940acc28e2971118b7ea7deba8a8cfce18857","source_path":"src/packages/process-host/src/run-process.test.ts","id":"8.19","title":"keeps the head by default","decision":"keep","reason":"Actual default stderr capture retains the exact head and excludes final failure bytes beyond the cap; distinct stream/default-mode contract from stdout clipping.","final_line":285,"final_title":"keeps the head by default","final_source_sha256":"8fc850388202a3b9da75a2dcb4e940acc28e2971118b7ea7deba8a8cfce18857","implementation_status":"validated"}],"tables":[{"line":81,"endLine":81,"expression":"it.each([false, true])","source_sha256":"9fc0824cd24789fc7b5ace820c8222f81bbbb96cc9eebdd8a626c3266ab15af2","source_path":"src/packages/process-host/src/run-process.test.ts","kind":"each","owner":"8.7","domain":"[false, true]","rows":[{"line":81,"endLine":81,"expression":"false","source_sha256":"fcbcf165908dd18a9e49f7ff27810176db8e9f63b4352213741664245224f8aa","source_path":"src/packages/process-host/src/run-process.test.ts","row":1,"decision":"keep","reason":"captureStdoutAsBytes=False: preserve real stdin delivery and expected text versus raw-byte output plus stderr.","value":false},{"line":81,"endLine":81,"expression":"true","source_sha256":"b5bea41b6c623f7c09f1bf24dcae58ebab3c0cdd90ad966bc43a45b44867e12b","source_path":"src/packages/process-host/src/run-process.test.ts","row":2,"decision":"keep","reason":"captureStdoutAsBytes=True: preserve real stdin delivery and expected text versus raw-byte output plus stderr.","value":true}],"decision":"keep","id":"8.T1","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":13,"endLine":13,"expression":"['win32', 'darwin', 'linux'] as const","source_sha256":"0e0873ed6c6eb2fcbdf5b75eb51d0e289375db66c5aa5121e270573f681b0c57","source_path":"src/packages/process-host/src/run-process.test.ts","kind":"for-of","owner":"8.1","domain":"['win32', 'darwin', 'linux'] as const","rows":[{"line":13,"endLine":13,"expression":"'win32'","source_sha256":"79447999dfa004d7de272d9a63459bbea0a040b4d92b62224b69c9f9bda9d9a2","source_path":"src/packages/process-host/src/run-process.test.ts","row":1,"decision":"keep","reason":"Retain original platform/serialization dimension 'win32'; all supported platforms and both IPC modes remain exercised.","value":"win32"},{"line":13,"endLine":13,"expression":"'darwin'","source_sha256":"5439872b0b815293e9c1ca8fa801adb3ab87f33f1d24e842e43584033acffd97","source_path":"src/packages/process-host/src/run-process.test.ts","row":2,"decision":"keep","reason":"Retain original platform/serialization dimension 'darwin'; all supported platforms and both IPC modes remain exercised.","value":"darwin"},{"line":13,"endLine":13,"expression":"'linux'","source_sha256":"09d194165bd76c3f3dc6b372cc266be2e98c365d3658f818184f9b59182a0a3b","source_path":"src/packages/process-host/src/run-process.test.ts","row":3,"decision":"keep","reason":"Retain original platform/serialization dimension 'linux'; all supported platforms and both IPC modes remain exercised.","value":"linux"}],"decision":"keep","id":"8.T2","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":21,"endLine":21,"expression":"['win32', 'darwin', 'linux'] as const","source_sha256":"0e0873ed6c6eb2fcbdf5b75eb51d0e289375db66c5aa5121e270573f681b0c57","source_path":"src/packages/process-host/src/run-process.test.ts","kind":"for-of","owner":"8.2","domain":"['win32', 'darwin', 'linux'] as const","rows":[{"line":21,"endLine":21,"expression":"'win32'","source_sha256":"79447999dfa004d7de272d9a63459bbea0a040b4d92b62224b69c9f9bda9d9a2","source_path":"src/packages/process-host/src/run-process.test.ts","row":1,"decision":"keep","reason":"Retain original platform/serialization dimension 'win32'; all supported platforms and both IPC modes remain exercised.","value":"win32"},{"line":21,"endLine":21,"expression":"'darwin'","source_sha256":"5439872b0b815293e9c1ca8fa801adb3ab87f33f1d24e842e43584033acffd97","source_path":"src/packages/process-host/src/run-process.test.ts","row":2,"decision":"keep","reason":"Retain original platform/serialization dimension 'darwin'; all supported platforms and both IPC modes remain exercised.","value":"darwin"},{"line":21,"endLine":21,"expression":"'linux'","source_sha256":"09d194165bd76c3f3dc6b372cc266be2e98c365d3658f818184f9b59182a0a3b","source_path":"src/packages/process-host/src/run-process.test.ts","row":3,"decision":"keep","reason":"Retain original platform/serialization dimension 'linux'; all supported platforms and both IPC modes remain exercised.","value":"linux"}],"decision":"keep","id":"8.T3","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":22,"endLine":22,"expression":"['json', 'advanced'] as const","source_sha256":"d4b7f60ca66df7b6cd39da2bb0748e0643f21a255e4fca96534bf3f998dba513","source_path":"src/packages/process-host/src/run-process.test.ts","kind":"for-of","owner":"8.2","domain":"['json', 'advanced'] as const","rows":[{"line":22,"endLine":22,"expression":"'json'","source_sha256":"fb97b451af8304805c66b24f082d2abf4b747a1e84b163bbc91033c85e251eb6","source_path":"src/packages/process-host/src/run-process.test.ts","row":1,"decision":"keep","reason":"Retain original platform/serialization dimension 'json'; all supported platforms and both IPC modes remain exercised.","value":"json"},{"line":22,"endLine":22,"expression":"'advanced'","source_sha256":"1021d86a2ffd3b2730fa1813941d66290ce915697c499920b6cdada882cc546a","source_path":"src/packages/process-host/src/run-process.test.ts","row":2,"decision":"keep","reason":"Retain original platform/serialization dimension 'advanced'; all supported platforms and both IPC modes remain exercised.","value":"advanced"}],"decision":"keep","id":"8.T4","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":61,"endLine":61,"expression":"WINDOWS_ARGUMENT_CORPUS","source_sha256":"d2278b44b392c9f6048dbc5ebb751a5a94e5cf5ddd154d9875b6f3335a97cbf1","source_path":"src/packages/process-host/src/run-process.test.ts","kind":"for-of","owner":"8.6","domain":"WINDOWS_ARGUMENT_CORPUS","rows":[{"line":3,"endLine":3,"expression":"{ name: 'plain', value: 'hello' }","source_sha256":"c14f0dd691171cd4c4949b3363757f9bf349e008512bfbfe9dc8bbb7fc827945","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":1,"decision":"keep","reason":"Keep adversarial 'plain' value 'hello'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"plain","value":"hello"}},{"line":4,"endLine":4,"expression":"{ name: 'empty', value: '' }","source_sha256":"743d63b3b58247d3f386fb5e00ff33b099e33e7dd9a0cda0c86fff586dc019cc","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":2,"decision":"keep","reason":"Keep adversarial 'empty' value ''; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"empty","value":""}},{"line":5,"endLine":5,"expression":"{ name: 'space', value: 'hello world' }","source_sha256":"7b1e4ba3a30a8d1e85d9d3a5535bfc3711b86dbba5aa2c14ada98b27aae04ff2","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":3,"decision":"keep","reason":"Keep adversarial 'space' value 'hello world'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"space","value":"hello world"}},{"line":6,"endLine":6,"expression":"{ name: 'double-quote', value: 'say \"hi\" ok' }","source_sha256":"74f32c2d35258fcec42ecadb23d10b69016bdac6c4323379febe24dc6fa36e8f","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":4,"decision":"keep","reason":"Keep adversarial 'double-quote' value 'say \"hi\" ok'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"double-quote","value":"say \"hi\" ok"}},{"line":7,"endLine":7,"expression":"{ name: 'quote-only', value: '\"' }","source_sha256":"0e80ea28fd1b46bc3c1da0f92facf7efcf34e4f9840f70cd9c47633b66fd94b7","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":5,"decision":"keep","reason":"Keep adversarial 'quote-only' value '\"'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"quote-only","value":"\""}},{"line":8,"endLine":8,"expression":"{ name: 'two-quotes', value: '\"\"' }","source_sha256":"ef8227e10c5725d118ae0890d5bd05f6f5284b5df57e29d5bef1dea5c06dd84b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":6,"decision":"keep","reason":"Keep adversarial 'two-quotes' value '\"\"'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"two-quotes","value":"\"\""}},{"line":9,"endLine":9,"expression":"{ name: 'caret', value: 'a^b' }","source_sha256":"383f847cb92d5ef25f7c4a01c7775785c191a5cdcccc46a58c60c9879f3ff242","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":7,"decision":"keep","reason":"Keep adversarial 'caret' value 'a^b'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"caret","value":"a^b"}},{"line":10,"endLine":10,"expression":"{ name: 'ampersand', value: 'a&b' }","source_sha256":"904bef30bf07b1a5b59f75bddaa9b49771afd3b608b95a5acbddede50655ffe1","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":8,"decision":"keep","reason":"Keep adversarial 'ampersand' value 'a&b'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"ampersand","value":"a&b"}},{"line":11,"endLine":11,"expression":"{ name: 'pipe', value: 'a|b' }","source_sha256":"9d255e43a388b9baf05c8821a21aed084f7cab444339349b772677fce4834651","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":9,"decision":"keep","reason":"Keep adversarial 'pipe' value 'a|b'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"pipe","value":"a|b"}},{"line":12,"endLine":12,"expression":"{ name: 'redirect', value: 'ac' }","source_sha256":"8e47ce6fd2bd08244db354ecb871934b659bddd0a661fc73389fe7fdf3857fd1","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":10,"decision":"keep","reason":"Keep adversarial 'redirect' value 'ac'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"redirect","value":"ac"}},{"line":13,"endLine":13,"expression":"{ name: 'percent-pair', value: 'e%F%g' }","source_sha256":"e083ee349cfe10a720596616c69eecbe46f470b97f438a10dc91645b660a1445","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":11,"decision":"keep","reason":"Keep adversarial 'percent-pair' value 'e%F%g'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"percent-pair","value":"e%F%g"}},{"line":15,"endLine":15,"expression":"{ name: 'percent-after-backslash', value: 'C:\\\\Users\\\\%F%\\\\x' }","source_sha256":"14bff028f5d3760d1cc39951b32124c936515474077614ae7463a87d67001133","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":12,"decision":"keep","reason":"Keep adversarial 'percent-after-backslash' value 'C:\\\\Users\\\\%F%\\\\x'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"percent-after-backslash","value":"C:\\Users\\%F%\\x"}},{"line":16,"endLine":16,"expression":"{ name: 'percent-after-two-backslashes', value: 'C:\\\\\\\\%F%' }","source_sha256":"a682c63f457dfda222f54341159e8c3970f20a00ef2503025e980ad57cc3904d","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":13,"decision":"keep","reason":"Keep adversarial 'percent-after-two-backslashes' value 'C:\\\\\\\\%F%'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"percent-after-two-backslashes","value":"C:\\\\%F%"}},{"line":17,"endLine":17,"expression":"{ name: 'percent-lone', value: '100% done' }","source_sha256":"b7a458d66445ac9d60dbd86aa4719d44ac9f3040cdfbc8b41cff2c0a46c5dcab","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":14,"decision":"keep","reason":"Keep adversarial 'percent-lone' value '100% done'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"percent-lone","value":"100% done"}},{"line":18,"endLine":18,"expression":"{ name: 'bang', value: 'q!VAR!r' }","source_sha256":"9b7aad10d671d1e569936c3925af7ef58bda50d1370c41dd290b071ba8ac338b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":15,"decision":"keep","reason":"Keep adversarial 'bang' value 'q!VAR!r'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"bang","value":"q!VAR!r"}},{"line":19,"endLine":19,"expression":"{ name: 'parens', value: 'a(b)c' }","source_sha256":"291bb0293522eabbebf82bfdd745a4d41922fcf48c35dda4d19d7c885c34ac0d","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":16,"decision":"keep","reason":"Keep adversarial 'parens' value 'a(b)c'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"parens","value":"a(b)c"}},{"line":20,"endLine":20,"expression":"{ name: 'trailing-backslash', value: 'C:\\\\dir\\\\' }","source_sha256":"141f047963e3b18cf0ed52cfee6cb47377f26f5ab7dceccb52fcd1d7a7bc4018","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":17,"decision":"keep","reason":"Keep adversarial 'trailing-backslash' value 'C:\\\\dir\\\\'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"trailing-backslash","value":"C:\\dir\\"}},{"line":21,"endLine":21,"expression":"{ name: 'backslash-quote', value: 'a\\\\\"b' }","source_sha256":"ac209a19b69447a4aaebd90357bab2cdc6996ea8f91fab52d0fa2104f75e41a7","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":18,"decision":"keep","reason":"Keep adversarial 'backslash-quote' value 'a\\\\\"b'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"backslash-quote","value":"a\\\"b"}},{"line":22,"endLine":22,"expression":"{ name: 'double-backslash-quote', value: 'a\\\\\\\\\"b' }","source_sha256":"c0affc22388dbea93765e641c39cb64eb63b1a687cabab5824e1e5737f592540","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":19,"decision":"keep","reason":"Keep adversarial 'double-backslash-quote' value 'a\\\\\\\\\"b'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"double-backslash-quote","value":"a\\\\\"b"}},{"line":23,"endLine":23,"expression":"{ name: 'only-backslashes', value: '\\\\\\\\\\\\' }","source_sha256":"f1b92bca0e6b372a2f81c5e1b497a5a822b070e2a96aa3b335c48a78efe8b1bc","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":20,"decision":"keep","reason":"Keep adversarial 'only-backslashes' value '\\\\\\\\\\\\'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"only-backslashes","value":"\\\\\\"}},{"line":24,"endLine":24,"expression":"{ name: 'semicolon-comma', value: 'a;b,c' }","source_sha256":"c83b1e38280df27b64e692f983b5a7881412600ea5d06b54f732e5c13ae429f5","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":21,"decision":"keep","reason":"Keep adversarial 'semicolon-comma' value 'a;b,c'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"semicolon-comma","value":"a;b,c"}},{"line":25,"endLine":25,"expression":"{ name: 'unicode', value: '\u65e5\u672c\u8a9e caf\u00e9' }","source_sha256":"fc0e69c50d7ecb955390a875735f800120de4c425b20d2988af2337cbaa13271","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":22,"decision":"keep","reason":"Keep adversarial 'unicode' value '\u65e5\u672c\u8a9e caf\u00e9'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"unicode","value":"\u65e5\u672c\u8a9e caf\u00e9"}},{"line":26,"endLine":26,"expression":"{ name: 'combined', value: 'x\"y&z%F%' }","source_sha256":"aea5fee9be7bc434d9830e0631d951c6736579ba58b192c5fa664b1c80a9d49b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":23,"decision":"keep","reason":"Keep adversarial 'combined' value 'x\"y&z%F%'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"combined","value":"x\"y&z%F%"}},{"line":27,"endLine":27,"expression":"{ name: 'agent-prompt', value: 'Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)' }","source_sha256":"4195ef0188aa9ca7b1115510415f171d986f453e7a8d08df77b8730bfba07606","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":24,"decision":"keep","reason":"Keep adversarial 'agent-prompt' value 'Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)'; the composed resolveSpawn operator/quote-state property must cover this original input.","value":{"name":"agent-prompt","value":"Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)"}}],"decision":"keep","id":"8.T5","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":66,"endLine":66,"expression":"body","source_sha256":"230d8358dc8e8890b4c58deeb62912ee2f20357ae92a5cc861b98e68fe31acb5","source_path":"src/packages/process-host/src/run-process.test.ts","kind":"for-of","owner":"8.6","domain":"body","rows":null,"decision":"keep","id":"8.T6","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","quantified_policy":"For every UTF-16/iteration character yielded by every one of the 24 resolved command bodies: update quote state for quotes, assert operators &|<> occur inside quotes, and assert final quote state false. This is an invariant on computed output; no claim of a fixed zero-row domain.","source_phase":"original"}],"previous_review":{"record":"root-0001.jsonl","record_sha256":"0b458c16578e120bade0d0d73c6d99ceee4d9585fe67e217642fa5f8a481ef1e","source_commit":"6d473f4bea1d190cb3649af97e04f1cdde170c5f","sha256":"d748752eb33b81df1e017b5510fbe0f0dd5875cd2e02ec292f22d0fcc937168d","reviewed_sha256":"c0c71f807d37b8df922524ba9d075751f76116930b6b486c01a0e74cf1b721c0"},"serialization_cross_product":[{"platform":"win32","serialization":"json","decision":"keep"},{"platform":"win32","serialization":"advanced","decision":"keep"},{"platform":"darwin","serialization":"json","decision":"keep"},{"platform":"darwin","serialization":"advanced","decision":"keep"},{"platform":"linux","serialization":"json","decision":"keep"},{"platform":"linux","serialization":"advanced","decision":"keep"}],"runtime_validation":null,"validation":"reviews/upstream-0001-validation.json"}
+{"path":"src/packages/process-host/src/windows-command-line.test.ts","sha256":"76dbd68fadf4c0b1c3a2d721dd5990facfcd785dcfdea39edb07d9ea6bee945d","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","reviewed_sha256":"76dbd68fadf4c0b1c3a2d721dd5990facfcd785dcfdea39edb07d9ea6bee945d","reviewer":"audit_mobile","status":"reviewed","decision":"keep","rationale":"Comments shortened only; all ten declarations and imported/inline table domains remain unchanged.","evidence":["src/packages/process-host/src/run-process.ts","src/packages/process-host/src/spawn-resolution.ts","src/packages/process-host/src/process-tree-termination.ts","src/packages/process-host/src/windows-tree-kill.ts","src/packages/process-host/src/windows-command-line.ts","src/packages/process-host/src/windows-cmd-shim-resolution.ts","src/packages/process-host/src/process-tree-kill-gate.ts","src/packages/process-host/src/posix-lsof-probe.ts","src/packages/process-host/src/child-termination-reporter.ts","src/packages/process-host/src/bounded-output-sink.ts","src/packages/process-host/src/windows-system-binary.ts","src/shared/__tests__/process-host/windows-command-line.win32.test.ts","src/shared/__tests__/process-host/windows-cmd-shim-resolution.win32.test.ts","src/shared/__tests__/process-host/windows-cmd-shim-resolution.test.ts"],"cases":[{"line":16,"endLine":21,"source_sha256":"7f45e38ddb2b96c07f691f5bd7cab579317334e5c109f0e9e8bba5abff81ed80","source_path":"src/packages/process-host/src/windows-command-line.test.ts","id":"9.1","title":"round-trips $name through the command-line parser","decision":"keep","reason":"All 24 shared adversarial rows round-trip through shipped quote/parser code for fast cross-platform feedback; the corrected title accurately names the parser, with exact byte controls and native Windows tests providing independent oracles.","final_line":16,"final_title":"round-trips $name through the command-line parser","final_source_sha256":"7f45e38ddb2b96c07f691f5bd7cab579317334e5c109f0e9e8bba5abff81ed80","implementation_status":"validated","input_decisions":[{"table_id":"9.T1","line":3,"endLine":3,"expression":"{ name: 'plain', value: 'hello' }","source_sha256":"c14f0dd691171cd4c4949b3363757f9bf349e008512bfbfe9dc8bbb7fc827945","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":1,"decision":"keep","reason":"Keep adversarial 'plain' value 'hello'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"plain","value":"hello"}},{"table_id":"9.T1","line":4,"endLine":4,"expression":"{ name: 'empty', value: '' }","source_sha256":"743d63b3b58247d3f386fb5e00ff33b099e33e7dd9a0cda0c86fff586dc019cc","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":2,"decision":"keep","reason":"Keep adversarial 'empty' value ''; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"empty","value":""}},{"table_id":"9.T1","line":5,"endLine":5,"expression":"{ name: 'space', value: 'hello world' }","source_sha256":"7b1e4ba3a30a8d1e85d9d3a5535bfc3711b86dbba5aa2c14ada98b27aae04ff2","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":3,"decision":"keep","reason":"Keep adversarial 'space' value 'hello world'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"space","value":"hello world"}},{"table_id":"9.T1","line":6,"endLine":6,"expression":"{ name: 'double-quote', value: 'say \"hi\" ok' }","source_sha256":"74f32c2d35258fcec42ecadb23d10b69016bdac6c4323379febe24dc6fa36e8f","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":4,"decision":"keep","reason":"Keep adversarial 'double-quote' value 'say \"hi\" ok'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"double-quote","value":"say \"hi\" ok"}},{"table_id":"9.T1","line":7,"endLine":7,"expression":"{ name: 'quote-only', value: '\"' }","source_sha256":"0e80ea28fd1b46bc3c1da0f92facf7efcf34e4f9840f70cd9c47633b66fd94b7","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":5,"decision":"keep","reason":"Keep adversarial 'quote-only' value '\"'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"quote-only","value":"\""}},{"table_id":"9.T1","line":8,"endLine":8,"expression":"{ name: 'two-quotes', value: '\"\"' }","source_sha256":"ef8227e10c5725d118ae0890d5bd05f6f5284b5df57e29d5bef1dea5c06dd84b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":6,"decision":"keep","reason":"Keep adversarial 'two-quotes' value '\"\"'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"two-quotes","value":"\"\""}},{"table_id":"9.T1","line":9,"endLine":9,"expression":"{ name: 'caret', value: 'a^b' }","source_sha256":"383f847cb92d5ef25f7c4a01c7775785c191a5cdcccc46a58c60c9879f3ff242","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":7,"decision":"keep","reason":"Keep adversarial 'caret' value 'a^b'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"caret","value":"a^b"}},{"table_id":"9.T1","line":10,"endLine":10,"expression":"{ name: 'ampersand', value: 'a&b' }","source_sha256":"904bef30bf07b1a5b59f75bddaa9b49771afd3b608b95a5acbddede50655ffe1","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":8,"decision":"keep","reason":"Keep adversarial 'ampersand' value 'a&b'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"ampersand","value":"a&b"}},{"table_id":"9.T1","line":11,"endLine":11,"expression":"{ name: 'pipe', value: 'a|b' }","source_sha256":"9d255e43a388b9baf05c8821a21aed084f7cab444339349b772677fce4834651","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":9,"decision":"keep","reason":"Keep adversarial 'pipe' value 'a|b'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"pipe","value":"a|b"}},{"table_id":"9.T1","line":12,"endLine":12,"expression":"{ name: 'redirect', value: 'ac' }","source_sha256":"8e47ce6fd2bd08244db354ecb871934b659bddd0a661fc73389fe7fdf3857fd1","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":10,"decision":"keep","reason":"Keep adversarial 'redirect' value 'ac'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"redirect","value":"ac"}},{"table_id":"9.T1","line":13,"endLine":13,"expression":"{ name: 'percent-pair', value: 'e%F%g' }","source_sha256":"e083ee349cfe10a720596616c69eecbe46f470b97f438a10dc91645b660a1445","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":11,"decision":"keep","reason":"Keep adversarial 'percent-pair' value 'e%F%g'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"percent-pair","value":"e%F%g"}},{"table_id":"9.T1","line":15,"endLine":15,"expression":"{ name: 'percent-after-backslash', value: 'C:\\\\Users\\\\%F%\\\\x' }","source_sha256":"14bff028f5d3760d1cc39951b32124c936515474077614ae7463a87d67001133","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":12,"decision":"keep","reason":"Keep adversarial 'percent-after-backslash' value 'C:\\\\Users\\\\%F%\\\\x'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"percent-after-backslash","value":"C:\\Users\\%F%\\x"}},{"table_id":"9.T1","line":16,"endLine":16,"expression":"{ name: 'percent-after-two-backslashes', value: 'C:\\\\\\\\%F%' }","source_sha256":"a682c63f457dfda222f54341159e8c3970f20a00ef2503025e980ad57cc3904d","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":13,"decision":"keep","reason":"Keep adversarial 'percent-after-two-backslashes' value 'C:\\\\\\\\%F%'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"percent-after-two-backslashes","value":"C:\\\\%F%"}},{"table_id":"9.T1","line":17,"endLine":17,"expression":"{ name: 'percent-lone', value: '100% done' }","source_sha256":"b7a458d66445ac9d60dbd86aa4719d44ac9f3040cdfbc8b41cff2c0a46c5dcab","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":14,"decision":"keep","reason":"Keep adversarial 'percent-lone' value '100% done'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"percent-lone","value":"100% done"}},{"table_id":"9.T1","line":18,"endLine":18,"expression":"{ name: 'bang', value: 'q!VAR!r' }","source_sha256":"9b7aad10d671d1e569936c3925af7ef58bda50d1370c41dd290b071ba8ac338b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":15,"decision":"keep","reason":"Keep adversarial 'bang' value 'q!VAR!r'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"bang","value":"q!VAR!r"}},{"table_id":"9.T1","line":19,"endLine":19,"expression":"{ name: 'parens', value: 'a(b)c' }","source_sha256":"291bb0293522eabbebf82bfdd745a4d41922fcf48c35dda4d19d7c885c34ac0d","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":16,"decision":"keep","reason":"Keep adversarial 'parens' value 'a(b)c'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"parens","value":"a(b)c"}},{"table_id":"9.T1","line":20,"endLine":20,"expression":"{ name: 'trailing-backslash', value: 'C:\\\\dir\\\\' }","source_sha256":"141f047963e3b18cf0ed52cfee6cb47377f26f5ab7dceccb52fcd1d7a7bc4018","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":17,"decision":"keep","reason":"Keep adversarial 'trailing-backslash' value 'C:\\\\dir\\\\'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"trailing-backslash","value":"C:\\dir\\"}},{"table_id":"9.T1","line":21,"endLine":21,"expression":"{ name: 'backslash-quote', value: 'a\\\\\"b' }","source_sha256":"ac209a19b69447a4aaebd90357bab2cdc6996ea8f91fab52d0fa2104f75e41a7","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":18,"decision":"keep","reason":"Keep adversarial 'backslash-quote' value 'a\\\\\"b'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"backslash-quote","value":"a\\\"b"}},{"table_id":"9.T1","line":22,"endLine":22,"expression":"{ name: 'double-backslash-quote', value: 'a\\\\\\\\\"b' }","source_sha256":"c0affc22388dbea93765e641c39cb64eb63b1a687cabab5824e1e5737f592540","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":19,"decision":"keep","reason":"Keep adversarial 'double-backslash-quote' value 'a\\\\\\\\\"b'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"double-backslash-quote","value":"a\\\\\"b"}},{"table_id":"9.T1","line":23,"endLine":23,"expression":"{ name: 'only-backslashes', value: '\\\\\\\\\\\\' }","source_sha256":"f1b92bca0e6b372a2f81c5e1b497a5a822b070e2a96aa3b335c48a78efe8b1bc","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":20,"decision":"keep","reason":"Keep adversarial 'only-backslashes' value '\\\\\\\\\\\\'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"only-backslashes","value":"\\\\\\"}},{"table_id":"9.T1","line":24,"endLine":24,"expression":"{ name: 'semicolon-comma', value: 'a;b,c' }","source_sha256":"c83b1e38280df27b64e692f983b5a7881412600ea5d06b54f732e5c13ae429f5","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":21,"decision":"keep","reason":"Keep adversarial 'semicolon-comma' value 'a;b,c'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"semicolon-comma","value":"a;b,c"}},{"table_id":"9.T1","line":25,"endLine":25,"expression":"{ name: 'unicode', value: '\u65e5\u672c\u8a9e caf\u00e9' }","source_sha256":"fc0e69c50d7ecb955390a875735f800120de4c425b20d2988af2337cbaa13271","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":22,"decision":"keep","reason":"Keep adversarial 'unicode' value '\u65e5\u672c\u8a9e caf\u00e9'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"unicode","value":"\u65e5\u672c\u8a9e caf\u00e9"}},{"table_id":"9.T1","line":26,"endLine":26,"expression":"{ name: 'combined', value: 'x\"y&z%F%' }","source_sha256":"aea5fee9be7bc434d9830e0631d951c6736579ba58b192c5fa664b1c80a9d49b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":23,"decision":"keep","reason":"Keep adversarial 'combined' value 'x\"y&z%F%'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"combined","value":"x\"y&z%F%"}},{"table_id":"9.T1","line":27,"endLine":27,"expression":"{ name: 'agent-prompt', value: 'Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)' }","source_sha256":"4195ef0188aa9ca7b1115510415f171d986f453e7a8d08df77b8730bfba07606","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":24,"decision":"keep","reason":"Keep adversarial 'agent-prompt' value 'Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"agent-prompt","value":"Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)"}}]},{"line":23,"endLine":27,"source_sha256":"b040164c3e08385c8f98e656dd4863b00c8c4ca8a84590d8b1747e50b7de1600","source_path":"src/packages/process-host/src/windows-command-line.test.ts","id":"9.2","title":"round-trips the whole corpus as a single multi-argument line","decision":"keep","reason":"Combining every corpus argument in one actual quote/parser line catches quote-state leakage between arguments that isolated rows can miss.","final_line":23,"final_title":"round-trips the whole corpus as a single multi-argument line","final_source_sha256":"b040164c3e08385c8f98e656dd4863b00c8c4ca8a84590d8b1747e50b7de1600","implementation_status":"validated","input_decisions":[{"table_id":"9.T5","line":3,"endLine":3,"expression":"{ name: 'plain', value: 'hello' }","source_sha256":"c14f0dd691171cd4c4949b3363757f9bf349e008512bfbfe9dc8bbb7fc827945","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":1,"decision":"keep","reason":"Keep adversarial 'plain' value 'hello'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"plain","value":"hello"}},{"table_id":"9.T5","line":4,"endLine":4,"expression":"{ name: 'empty', value: '' }","source_sha256":"743d63b3b58247d3f386fb5e00ff33b099e33e7dd9a0cda0c86fff586dc019cc","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":2,"decision":"keep","reason":"Keep adversarial 'empty' value ''; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"empty","value":""}},{"table_id":"9.T5","line":5,"endLine":5,"expression":"{ name: 'space', value: 'hello world' }","source_sha256":"7b1e4ba3a30a8d1e85d9d3a5535bfc3711b86dbba5aa2c14ada98b27aae04ff2","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":3,"decision":"keep","reason":"Keep adversarial 'space' value 'hello world'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"space","value":"hello world"}},{"table_id":"9.T5","line":6,"endLine":6,"expression":"{ name: 'double-quote', value: 'say \"hi\" ok' }","source_sha256":"74f32c2d35258fcec42ecadb23d10b69016bdac6c4323379febe24dc6fa36e8f","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":4,"decision":"keep","reason":"Keep adversarial 'double-quote' value 'say \"hi\" ok'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"double-quote","value":"say \"hi\" ok"}},{"table_id":"9.T5","line":7,"endLine":7,"expression":"{ name: 'quote-only', value: '\"' }","source_sha256":"0e80ea28fd1b46bc3c1da0f92facf7efcf34e4f9840f70cd9c47633b66fd94b7","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":5,"decision":"keep","reason":"Keep adversarial 'quote-only' value '\"'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"quote-only","value":"\""}},{"table_id":"9.T5","line":8,"endLine":8,"expression":"{ name: 'two-quotes', value: '\"\"' }","source_sha256":"ef8227e10c5725d118ae0890d5bd05f6f5284b5df57e29d5bef1dea5c06dd84b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":6,"decision":"keep","reason":"Keep adversarial 'two-quotes' value '\"\"'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"two-quotes","value":"\"\""}},{"table_id":"9.T5","line":9,"endLine":9,"expression":"{ name: 'caret', value: 'a^b' }","source_sha256":"383f847cb92d5ef25f7c4a01c7775785c191a5cdcccc46a58c60c9879f3ff242","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":7,"decision":"keep","reason":"Keep adversarial 'caret' value 'a^b'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"caret","value":"a^b"}},{"table_id":"9.T5","line":10,"endLine":10,"expression":"{ name: 'ampersand', value: 'a&b' }","source_sha256":"904bef30bf07b1a5b59f75bddaa9b49771afd3b608b95a5acbddede50655ffe1","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":8,"decision":"keep","reason":"Keep adversarial 'ampersand' value 'a&b'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"ampersand","value":"a&b"}},{"table_id":"9.T5","line":11,"endLine":11,"expression":"{ name: 'pipe', value: 'a|b' }","source_sha256":"9d255e43a388b9baf05c8821a21aed084f7cab444339349b772677fce4834651","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":9,"decision":"keep","reason":"Keep adversarial 'pipe' value 'a|b'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"pipe","value":"a|b"}},{"table_id":"9.T5","line":12,"endLine":12,"expression":"{ name: 'redirect', value: 'ac' }","source_sha256":"8e47ce6fd2bd08244db354ecb871934b659bddd0a661fc73389fe7fdf3857fd1","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":10,"decision":"keep","reason":"Keep adversarial 'redirect' value 'ac'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"redirect","value":"ac"}},{"table_id":"9.T5","line":13,"endLine":13,"expression":"{ name: 'percent-pair', value: 'e%F%g' }","source_sha256":"e083ee349cfe10a720596616c69eecbe46f470b97f438a10dc91645b660a1445","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":11,"decision":"keep","reason":"Keep adversarial 'percent-pair' value 'e%F%g'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"percent-pair","value":"e%F%g"}},{"table_id":"9.T5","line":15,"endLine":15,"expression":"{ name: 'percent-after-backslash', value: 'C:\\\\Users\\\\%F%\\\\x' }","source_sha256":"14bff028f5d3760d1cc39951b32124c936515474077614ae7463a87d67001133","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":12,"decision":"keep","reason":"Keep adversarial 'percent-after-backslash' value 'C:\\\\Users\\\\%F%\\\\x'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"percent-after-backslash","value":"C:\\Users\\%F%\\x"}},{"table_id":"9.T5","line":16,"endLine":16,"expression":"{ name: 'percent-after-two-backslashes', value: 'C:\\\\\\\\%F%' }","source_sha256":"a682c63f457dfda222f54341159e8c3970f20a00ef2503025e980ad57cc3904d","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":13,"decision":"keep","reason":"Keep adversarial 'percent-after-two-backslashes' value 'C:\\\\\\\\%F%'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"percent-after-two-backslashes","value":"C:\\\\%F%"}},{"table_id":"9.T5","line":17,"endLine":17,"expression":"{ name: 'percent-lone', value: '100% done' }","source_sha256":"b7a458d66445ac9d60dbd86aa4719d44ac9f3040cdfbc8b41cff2c0a46c5dcab","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":14,"decision":"keep","reason":"Keep adversarial 'percent-lone' value '100% done'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"percent-lone","value":"100% done"}},{"table_id":"9.T5","line":18,"endLine":18,"expression":"{ name: 'bang', value: 'q!VAR!r' }","source_sha256":"9b7aad10d671d1e569936c3925af7ef58bda50d1370c41dd290b071ba8ac338b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":15,"decision":"keep","reason":"Keep adversarial 'bang' value 'q!VAR!r'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"bang","value":"q!VAR!r"}},{"table_id":"9.T5","line":19,"endLine":19,"expression":"{ name: 'parens', value: 'a(b)c' }","source_sha256":"291bb0293522eabbebf82bfdd745a4d41922fcf48c35dda4d19d7c885c34ac0d","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":16,"decision":"keep","reason":"Keep adversarial 'parens' value 'a(b)c'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"parens","value":"a(b)c"}},{"table_id":"9.T5","line":20,"endLine":20,"expression":"{ name: 'trailing-backslash', value: 'C:\\\\dir\\\\' }","source_sha256":"141f047963e3b18cf0ed52cfee6cb47377f26f5ab7dceccb52fcd1d7a7bc4018","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":17,"decision":"keep","reason":"Keep adversarial 'trailing-backslash' value 'C:\\\\dir\\\\'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"trailing-backslash","value":"C:\\dir\\"}},{"table_id":"9.T5","line":21,"endLine":21,"expression":"{ name: 'backslash-quote', value: 'a\\\\\"b' }","source_sha256":"ac209a19b69447a4aaebd90357bab2cdc6996ea8f91fab52d0fa2104f75e41a7","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":18,"decision":"keep","reason":"Keep adversarial 'backslash-quote' value 'a\\\\\"b'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"backslash-quote","value":"a\\\"b"}},{"table_id":"9.T5","line":22,"endLine":22,"expression":"{ name: 'double-backslash-quote', value: 'a\\\\\\\\\"b' }","source_sha256":"c0affc22388dbea93765e641c39cb64eb63b1a687cabab5824e1e5737f592540","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":19,"decision":"keep","reason":"Keep adversarial 'double-backslash-quote' value 'a\\\\\\\\\"b'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"double-backslash-quote","value":"a\\\\\"b"}},{"table_id":"9.T5","line":23,"endLine":23,"expression":"{ name: 'only-backslashes', value: '\\\\\\\\\\\\' }","source_sha256":"f1b92bca0e6b372a2f81c5e1b497a5a822b070e2a96aa3b335c48a78efe8b1bc","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":20,"decision":"keep","reason":"Keep adversarial 'only-backslashes' value '\\\\\\\\\\\\'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"only-backslashes","value":"\\\\\\"}},{"table_id":"9.T5","line":24,"endLine":24,"expression":"{ name: 'semicolon-comma', value: 'a;b,c' }","source_sha256":"c83b1e38280df27b64e692f983b5a7881412600ea5d06b54f732e5c13ae429f5","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":21,"decision":"keep","reason":"Keep adversarial 'semicolon-comma' value 'a;b,c'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"semicolon-comma","value":"a;b,c"}},{"table_id":"9.T5","line":25,"endLine":25,"expression":"{ name: 'unicode', value: '\u65e5\u672c\u8a9e caf\u00e9' }","source_sha256":"fc0e69c50d7ecb955390a875735f800120de4c425b20d2988af2337cbaa13271","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":22,"decision":"keep","reason":"Keep adversarial 'unicode' value '\u65e5\u672c\u8a9e caf\u00e9'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"unicode","value":"\u65e5\u672c\u8a9e caf\u00e9"}},{"table_id":"9.T5","line":26,"endLine":26,"expression":"{ name: 'combined', value: 'x\"y&z%F%' }","source_sha256":"aea5fee9be7bc434d9830e0631d951c6736579ba58b192c5fa664b1c80a9d49b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":23,"decision":"keep","reason":"Keep adversarial 'combined' value 'x\"y&z%F%'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"combined","value":"x\"y&z%F%"}},{"table_id":"9.T5","line":27,"endLine":27,"expression":"{ name: 'agent-prompt', value: 'Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)' }","source_sha256":"4195ef0188aa9ca7b1115510415f171d986f453e7a8d08df77b8730bfba07606","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":24,"decision":"keep","reason":"Keep adversarial 'agent-prompt' value 'Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"agent-prompt","value":"Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)"}}]},{"line":29,"endLine":32,"source_sha256":"87062e35cfb29c81a5a12fa7ad57b871ea4f8cedcc4280886ec50d9120a0b704","source_path":"src/packages/process-host/src/windows-command-line.test.ts","id":"9.3","title":"writes an embedded quote as \"\" so cmd quote parity stays even","decision":"keep","reason":"Independent expected encoded bytes for an embedded quote retain doubled-quote cmd parity; this prevents matching bugs in encoder/parser from silently passing all round trips.","final_line":29,"final_title":"writes an embedded quote as \"\" so cmd quote parity stays even","final_source_sha256":"87062e35cfb29c81a5a12fa7ad57b871ea4f8cedcc4280886ec50d9120a0b704","implementation_status":"validated"},{"line":34,"endLine":36,"source_sha256":"9cf95f3f0e40b5c5066767624188936468fb9d1facebc95152718273c37e7342","source_path":"src/packages/process-host/src/windows-command-line.test.ts","id":"9.4","title":"doubles a trailing backslash run so the closing quote survives","decision":"keep","reason":"An explicit expected trailing-backslash encoding guards the closing quote independently of the shipped parser.","final_line":34,"final_title":"doubles a trailing backslash run so the closing quote survives","final_source_sha256":"9cf95f3f0e40b5c5066767624188936468fb9d1facebc95152718273c37e7342","implementation_status":"validated"},{"line":40,"endLine":45,"source_sha256":"73be7968ccbfc5e4f30a871b441318ebe297b9d9d517bfeaf3f162a9f9864808","source_path":"src/packages/process-host/src/windows-command-line.test.ts","id":"9.5","title":"keeps cmd quote parity even for every corpus entry","decision":"keep","reason":"The complete cmd-shim command line must have even quote parity for each of the 24 original adversarial arguments, including percent-escape insertion.","final_line":40,"final_title":"keeps cmd quote parity even for every corpus entry","final_source_sha256":"73be7968ccbfc5e4f30a871b441318ebe297b9d9d517bfeaf3f162a9f9864808","implementation_status":"validated","input_decisions":[{"table_id":"9.T4","line":3,"endLine":3,"expression":"{ name: 'plain', value: 'hello' }","source_sha256":"c14f0dd691171cd4c4949b3363757f9bf349e008512bfbfe9dc8bbb7fc827945","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":1,"decision":"keep","reason":"Keep adversarial 'plain' value 'hello'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"plain","value":"hello"}},{"table_id":"9.T4","line":4,"endLine":4,"expression":"{ name: 'empty', value: '' }","source_sha256":"743d63b3b58247d3f386fb5e00ff33b099e33e7dd9a0cda0c86fff586dc019cc","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":2,"decision":"keep","reason":"Keep adversarial 'empty' value ''; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"empty","value":""}},{"table_id":"9.T4","line":5,"endLine":5,"expression":"{ name: 'space', value: 'hello world' }","source_sha256":"7b1e4ba3a30a8d1e85d9d3a5535bfc3711b86dbba5aa2c14ada98b27aae04ff2","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":3,"decision":"keep","reason":"Keep adversarial 'space' value 'hello world'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"space","value":"hello world"}},{"table_id":"9.T4","line":6,"endLine":6,"expression":"{ name: 'double-quote', value: 'say \"hi\" ok' }","source_sha256":"74f32c2d35258fcec42ecadb23d10b69016bdac6c4323379febe24dc6fa36e8f","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":4,"decision":"keep","reason":"Keep adversarial 'double-quote' value 'say \"hi\" ok'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"double-quote","value":"say \"hi\" ok"}},{"table_id":"9.T4","line":7,"endLine":7,"expression":"{ name: 'quote-only', value: '\"' }","source_sha256":"0e80ea28fd1b46bc3c1da0f92facf7efcf34e4f9840f70cd9c47633b66fd94b7","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":5,"decision":"keep","reason":"Keep adversarial 'quote-only' value '\"'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"quote-only","value":"\""}},{"table_id":"9.T4","line":8,"endLine":8,"expression":"{ name: 'two-quotes', value: '\"\"' }","source_sha256":"ef8227e10c5725d118ae0890d5bd05f6f5284b5df57e29d5bef1dea5c06dd84b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":6,"decision":"keep","reason":"Keep adversarial 'two-quotes' value '\"\"'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"two-quotes","value":"\"\""}},{"table_id":"9.T4","line":9,"endLine":9,"expression":"{ name: 'caret', value: 'a^b' }","source_sha256":"383f847cb92d5ef25f7c4a01c7775785c191a5cdcccc46a58c60c9879f3ff242","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":7,"decision":"keep","reason":"Keep adversarial 'caret' value 'a^b'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"caret","value":"a^b"}},{"table_id":"9.T4","line":10,"endLine":10,"expression":"{ name: 'ampersand', value: 'a&b' }","source_sha256":"904bef30bf07b1a5b59f75bddaa9b49771afd3b608b95a5acbddede50655ffe1","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":8,"decision":"keep","reason":"Keep adversarial 'ampersand' value 'a&b'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"ampersand","value":"a&b"}},{"table_id":"9.T4","line":11,"endLine":11,"expression":"{ name: 'pipe', value: 'a|b' }","source_sha256":"9d255e43a388b9baf05c8821a21aed084f7cab444339349b772677fce4834651","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":9,"decision":"keep","reason":"Keep adversarial 'pipe' value 'a|b'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"pipe","value":"a|b"}},{"table_id":"9.T4","line":12,"endLine":12,"expression":"{ name: 'redirect', value: 'ac' }","source_sha256":"8e47ce6fd2bd08244db354ecb871934b659bddd0a661fc73389fe7fdf3857fd1","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":10,"decision":"keep","reason":"Keep adversarial 'redirect' value 'ac'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"redirect","value":"ac"}},{"table_id":"9.T4","line":13,"endLine":13,"expression":"{ name: 'percent-pair', value: 'e%F%g' }","source_sha256":"e083ee349cfe10a720596616c69eecbe46f470b97f438a10dc91645b660a1445","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":11,"decision":"keep","reason":"Keep adversarial 'percent-pair' value 'e%F%g'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"percent-pair","value":"e%F%g"}},{"table_id":"9.T4","line":15,"endLine":15,"expression":"{ name: 'percent-after-backslash', value: 'C:\\\\Users\\\\%F%\\\\x' }","source_sha256":"14bff028f5d3760d1cc39951b32124c936515474077614ae7463a87d67001133","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":12,"decision":"keep","reason":"Keep adversarial 'percent-after-backslash' value 'C:\\\\Users\\\\%F%\\\\x'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"percent-after-backslash","value":"C:\\Users\\%F%\\x"}},{"table_id":"9.T4","line":16,"endLine":16,"expression":"{ name: 'percent-after-two-backslashes', value: 'C:\\\\\\\\%F%' }","source_sha256":"a682c63f457dfda222f54341159e8c3970f20a00ef2503025e980ad57cc3904d","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":13,"decision":"keep","reason":"Keep adversarial 'percent-after-two-backslashes' value 'C:\\\\\\\\%F%'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"percent-after-two-backslashes","value":"C:\\\\%F%"}},{"table_id":"9.T4","line":17,"endLine":17,"expression":"{ name: 'percent-lone', value: '100% done' }","source_sha256":"b7a458d66445ac9d60dbd86aa4719d44ac9f3040cdfbc8b41cff2c0a46c5dcab","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":14,"decision":"keep","reason":"Keep adversarial 'percent-lone' value '100% done'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"percent-lone","value":"100% done"}},{"table_id":"9.T4","line":18,"endLine":18,"expression":"{ name: 'bang', value: 'q!VAR!r' }","source_sha256":"9b7aad10d671d1e569936c3925af7ef58bda50d1370c41dd290b071ba8ac338b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":15,"decision":"keep","reason":"Keep adversarial 'bang' value 'q!VAR!r'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"bang","value":"q!VAR!r"}},{"table_id":"9.T4","line":19,"endLine":19,"expression":"{ name: 'parens', value: 'a(b)c' }","source_sha256":"291bb0293522eabbebf82bfdd745a4d41922fcf48c35dda4d19d7c885c34ac0d","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":16,"decision":"keep","reason":"Keep adversarial 'parens' value 'a(b)c'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"parens","value":"a(b)c"}},{"table_id":"9.T4","line":20,"endLine":20,"expression":"{ name: 'trailing-backslash', value: 'C:\\\\dir\\\\' }","source_sha256":"141f047963e3b18cf0ed52cfee6cb47377f26f5ab7dceccb52fcd1d7a7bc4018","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":17,"decision":"keep","reason":"Keep adversarial 'trailing-backslash' value 'C:\\\\dir\\\\'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"trailing-backslash","value":"C:\\dir\\"}},{"table_id":"9.T4","line":21,"endLine":21,"expression":"{ name: 'backslash-quote', value: 'a\\\\\"b' }","source_sha256":"ac209a19b69447a4aaebd90357bab2cdc6996ea8f91fab52d0fa2104f75e41a7","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":18,"decision":"keep","reason":"Keep adversarial 'backslash-quote' value 'a\\\\\"b'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"backslash-quote","value":"a\\\"b"}},{"table_id":"9.T4","line":22,"endLine":22,"expression":"{ name: 'double-backslash-quote', value: 'a\\\\\\\\\"b' }","source_sha256":"c0affc22388dbea93765e641c39cb64eb63b1a687cabab5824e1e5737f592540","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":19,"decision":"keep","reason":"Keep adversarial 'double-backslash-quote' value 'a\\\\\\\\\"b'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"double-backslash-quote","value":"a\\\\\"b"}},{"table_id":"9.T4","line":23,"endLine":23,"expression":"{ name: 'only-backslashes', value: '\\\\\\\\\\\\' }","source_sha256":"f1b92bca0e6b372a2f81c5e1b497a5a822b070e2a96aa3b335c48a78efe8b1bc","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":20,"decision":"keep","reason":"Keep adversarial 'only-backslashes' value '\\\\\\\\\\\\'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"only-backslashes","value":"\\\\\\"}},{"table_id":"9.T4","line":24,"endLine":24,"expression":"{ name: 'semicolon-comma', value: 'a;b,c' }","source_sha256":"c83b1e38280df27b64e692f983b5a7881412600ea5d06b54f732e5c13ae429f5","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":21,"decision":"keep","reason":"Keep adversarial 'semicolon-comma' value 'a;b,c'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"semicolon-comma","value":"a;b,c"}},{"table_id":"9.T4","line":25,"endLine":25,"expression":"{ name: 'unicode', value: '\u65e5\u672c\u8a9e caf\u00e9' }","source_sha256":"fc0e69c50d7ecb955390a875735f800120de4c425b20d2988af2337cbaa13271","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":22,"decision":"keep","reason":"Keep adversarial 'unicode' value '\u65e5\u672c\u8a9e caf\u00e9'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"unicode","value":"\u65e5\u672c\u8a9e caf\u00e9"}},{"table_id":"9.T4","line":26,"endLine":26,"expression":"{ name: 'combined', value: 'x\"y&z%F%' }","source_sha256":"aea5fee9be7bc434d9830e0631d951c6736579ba58b192c5fa664b1c80a9d49b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":23,"decision":"keep","reason":"Keep adversarial 'combined' value 'x\"y&z%F%'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"combined","value":"x\"y&z%F%"}},{"table_id":"9.T4","line":27,"endLine":27,"expression":"{ name: 'agent-prompt', value: 'Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)' }","source_sha256":"4195ef0188aa9ca7b1115510415f171d986f453e7a8d08df77b8730bfba07606","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":24,"decision":"keep","reason":"Keep adversarial 'agent-prompt' value 'Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"agent-prompt","value":"Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)"}}]},{"line":47,"endLine":51,"source_sha256":"0d2ca39e06daf2cba3ad25058213d3e99ac95f88054c41804f4921debaebc900","source_path":"src/packages/process-host/src/windows-command-line.test.ts","id":"9.6","title":"breaks every percent out of the quoted run","decision":"keep","reason":"An actual percent pair must be escaped out of a quoted run so environment expansion cannot silently rewrite the argument.","final_line":47,"final_title":"breaks every percent out of the quoted run","final_source_sha256":"0d2ca39e06daf2cba3ad25058213d3e99ac95f88054c41804f4921debaebc900","implementation_status":"validated"},{"line":53,"endLine":57,"source_sha256":"a9ea4a46cf6c231213bdd9226f45a09e22a498e8797df6d95679ad57abcd3c49","source_path":"src/packages/process-host/src/windows-command-line.test.ts","id":"9.7","title":"pins the cmd flags that make the encoding safe","decision":"keep","reason":"Required cmd switches disable AutoRun/delayed expansion and preserve outer quoting; they are execution safety requirements, not arbitrary string inventories.","final_line":53,"final_title":"pins the cmd flags that make the encoding safe","final_source_sha256":"a9ea4a46cf6c231213bdd9226f45a09e22a498e8797df6d95679ad57abcd3c49","implementation_status":"validated"},{"line":59,"endLine":62,"source_sha256":"cb08f3432de28f207f822b9beb895b9e2ee477142086651c8a9d26fdfb310592","source_path":"src/packages/process-host/src/windows-command-line.test.ts","id":"9.8","title":"quotes a program path containing spaces","decision":"keep","reason":"The program path itself is independently quoted when it contains spaces; argument quoting alone cannot protect executable selection.","final_line":59,"final_title":"quotes a program path containing spaces","final_source_sha256":"cb08f3432de28f207f822b9beb895b9e2ee477142086651c8a9d26fdfb310592","implementation_status":"validated"},{"line":66,"endLine":75,"source_sha256":"5be43a16c5fecf4cda870d6c3713f52d6b04ff4f15c93895495e8b5b3f664960","source_path":"src/packages/process-host/src/windows-command-line.test.ts","id":"9.9","title":"%s -> %s","decision":"keep","reason":"All six extension/case examples exercise the actual interpreter-routing predicate, including positive .cmd/.CMD/.bat and negative .exe/extensionless/.ps1 controls.","final_line":66,"final_title":"%s -> %s","final_source_sha256":"5be43a16c5fecf4cda870d6c3713f52d6b04ff4f15c93895495e8b5b3f664960","implementation_status":"validated","input_decisions":[{"table_id":"9.T2","line":67,"endLine":67,"expression":"['C:\\\\bin\\\\agent.cmd', true]","source_sha256":"a7e3b3930edc8acecbb41dab69717c059fa4035c1d857571a0cd98baa6e02194","source_path":"src/packages/process-host/src/windows-command-line.test.ts","row":1,"decision":"keep","reason":"Interpreter predicate for 'C:\\\\bin\\\\agent.cmd' must return independently expected True.","value":["C:\\bin\\agent.cmd",true]},{"table_id":"9.T2","line":68,"endLine":68,"expression":"['C:\\\\bin\\\\agent.CMD', true]","source_sha256":"41a8eb5b6412a6808892a4dca02331c4aa65a47539f5408e1cea89bd5f7f998c","source_path":"src/packages/process-host/src/windows-command-line.test.ts","row":2,"decision":"keep","reason":"Interpreter predicate for 'C:\\\\bin\\\\agent.CMD' must return independently expected True.","value":["C:\\bin\\agent.CMD",true]},{"table_id":"9.T2","line":69,"endLine":69,"expression":"['C:\\\\bin\\\\agent.bat', true]","source_sha256":"50348fb97270d207df86b39a657921fda203fa0d5597e115acb6436515b12297","source_path":"src/packages/process-host/src/windows-command-line.test.ts","row":3,"decision":"keep","reason":"Interpreter predicate for 'C:\\\\bin\\\\agent.bat' must return independently expected True.","value":["C:\\bin\\agent.bat",true]},{"table_id":"9.T2","line":70,"endLine":70,"expression":"['C:\\\\bin\\\\agent.exe', false]","source_sha256":"a9ab347897fe088ba52ccc8da190afb801309cbba121a619c46d76ff50e9e58a","source_path":"src/packages/process-host/src/windows-command-line.test.ts","row":4,"decision":"keep","reason":"Interpreter predicate for 'C:\\\\bin\\\\agent.exe' must return independently expected False.","value":["C:\\bin\\agent.exe",false]},{"table_id":"9.T2","line":71,"endLine":71,"expression":"['C:\\\\bin\\\\agent', false]","source_sha256":"ef69990ab1d97c16b9c50652815bf6dd2bc6066b3cd2ddad47c6c1b24d55f464","source_path":"src/packages/process-host/src/windows-command-line.test.ts","row":5,"decision":"keep","reason":"Interpreter predicate for 'C:\\\\bin\\\\agent' must return independently expected False.","value":["C:\\bin\\agent",false]},{"table_id":"9.T2","line":72,"endLine":72,"expression":"['C:\\\\bin\\\\agent.ps1', false]","source_sha256":"cc46fcd4034bb16fdd57826177d0ebb1d4836f958b998ea84c7fd40a2c03d67e","source_path":"src/packages/process-host/src/windows-command-line.test.ts","row":6,"decision":"keep","reason":"Interpreter predicate for 'C:\\\\bin\\\\agent.ps1' must return independently expected False.","value":["C:\\bin\\agent.ps1",false]}]},{"line":79,"endLine":86,"source_sha256":"f9ea0d0dcbbfc751f4c3ecc03dfccb9e961d261a73ca11203bc31551a94d981e","source_path":"src/packages/process-host/src/windows-command-line.test.ts","id":"9.10","title":"rejects %s rather than truncating it","decision":"keep","reason":"All three CR/LF argument/program rows hit actual line-break rejection before command construction can truncate input or introduce a second command.","final_line":79,"final_title":"rejects %s rather than truncating it","final_source_sha256":"f9ea0d0dcbbfc751f4c3ecc03dfccb9e961d261a73ca11203bc31551a94d981e","implementation_status":"validated","input_decisions":[{"table_id":"9.T3","line":80,"endLine":80,"expression":"['newline in an argument', 'agent', ['fix\\nthis']]","source_sha256":"a340e20ad9dbb7e9a13085c126e76feba2dd7bb5868ae1790bafe69ba4c890df","source_path":"src/packages/process-host/src/windows-command-line.test.ts","row":1,"decision":"keep","reason":"Reject newline in an argument with actual line-break error; keep exact program='agent', args=['fix\\nthis'].","value":["newline in an argument","agent",["fix\nthis"]]},{"table_id":"9.T3","line":81,"endLine":81,"expression":"['carriage return in an argument', 'agent', ['fix\\rthis']]","source_sha256":"d95b41ec80c69e35a3225912c025a7020556210de29f086818601c7236f745e9","source_path":"src/packages/process-host/src/windows-command-line.test.ts","row":2,"decision":"keep","reason":"Reject carriage return in an argument with actual line-break error; keep exact program='agent', args=['fix\\rthis'].","value":["carriage return in an argument","agent",["fix\rthis"]]},{"table_id":"9.T3","line":82,"endLine":82,"expression":"['newline in the program path', 'C:\\\\a\\nb.cmd', []]","source_sha256":"37398992e758fc9e198a5544acabb546ffe25784178cda5b95dc82a0df761a81","source_path":"src/packages/process-host/src/windows-command-line.test.ts","row":3,"decision":"keep","reason":"Reject newline in the program path with actual line-break error; keep exact program='C:\\\\a\\nb.cmd', args=[].","value":["newline in the program path","C:\\a\nb.cmd",[]]}]}],"tables":[{"line":16,"endLine":16,"expression":"it.each(WINDOWS_ARGUMENT_CORPUS)","source_sha256":"cdbcc30cc8e43802fcf755ad345e7a673db6fc04f7709cea2b0d70a694b64003","source_path":"src/packages/process-host/src/windows-command-line.test.ts","kind":"each","owner":"9.1","domain":"WINDOWS_ARGUMENT_CORPUS","rows":[{"line":3,"endLine":3,"expression":"{ name: 'plain', value: 'hello' }","source_sha256":"c14f0dd691171cd4c4949b3363757f9bf349e008512bfbfe9dc8bbb7fc827945","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":1,"decision":"keep","reason":"Keep adversarial 'plain' value 'hello'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"plain","value":"hello"}},{"line":4,"endLine":4,"expression":"{ name: 'empty', value: '' }","source_sha256":"743d63b3b58247d3f386fb5e00ff33b099e33e7dd9a0cda0c86fff586dc019cc","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":2,"decision":"keep","reason":"Keep adversarial 'empty' value ''; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"empty","value":""}},{"line":5,"endLine":5,"expression":"{ name: 'space', value: 'hello world' }","source_sha256":"7b1e4ba3a30a8d1e85d9d3a5535bfc3711b86dbba5aa2c14ada98b27aae04ff2","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":3,"decision":"keep","reason":"Keep adversarial 'space' value 'hello world'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"space","value":"hello world"}},{"line":6,"endLine":6,"expression":"{ name: 'double-quote', value: 'say \"hi\" ok' }","source_sha256":"74f32c2d35258fcec42ecadb23d10b69016bdac6c4323379febe24dc6fa36e8f","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":4,"decision":"keep","reason":"Keep adversarial 'double-quote' value 'say \"hi\" ok'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"double-quote","value":"say \"hi\" ok"}},{"line":7,"endLine":7,"expression":"{ name: 'quote-only', value: '\"' }","source_sha256":"0e80ea28fd1b46bc3c1da0f92facf7efcf34e4f9840f70cd9c47633b66fd94b7","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":5,"decision":"keep","reason":"Keep adversarial 'quote-only' value '\"'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"quote-only","value":"\""}},{"line":8,"endLine":8,"expression":"{ name: 'two-quotes', value: '\"\"' }","source_sha256":"ef8227e10c5725d118ae0890d5bd05f6f5284b5df57e29d5bef1dea5c06dd84b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":6,"decision":"keep","reason":"Keep adversarial 'two-quotes' value '\"\"'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"two-quotes","value":"\"\""}},{"line":9,"endLine":9,"expression":"{ name: 'caret', value: 'a^b' }","source_sha256":"383f847cb92d5ef25f7c4a01c7775785c191a5cdcccc46a58c60c9879f3ff242","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":7,"decision":"keep","reason":"Keep adversarial 'caret' value 'a^b'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"caret","value":"a^b"}},{"line":10,"endLine":10,"expression":"{ name: 'ampersand', value: 'a&b' }","source_sha256":"904bef30bf07b1a5b59f75bddaa9b49771afd3b608b95a5acbddede50655ffe1","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":8,"decision":"keep","reason":"Keep adversarial 'ampersand' value 'a&b'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"ampersand","value":"a&b"}},{"line":11,"endLine":11,"expression":"{ name: 'pipe', value: 'a|b' }","source_sha256":"9d255e43a388b9baf05c8821a21aed084f7cab444339349b772677fce4834651","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":9,"decision":"keep","reason":"Keep adversarial 'pipe' value 'a|b'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"pipe","value":"a|b"}},{"line":12,"endLine":12,"expression":"{ name: 'redirect', value: 'ac' }","source_sha256":"8e47ce6fd2bd08244db354ecb871934b659bddd0a661fc73389fe7fdf3857fd1","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":10,"decision":"keep","reason":"Keep adversarial 'redirect' value 'ac'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"redirect","value":"ac"}},{"line":13,"endLine":13,"expression":"{ name: 'percent-pair', value: 'e%F%g' }","source_sha256":"e083ee349cfe10a720596616c69eecbe46f470b97f438a10dc91645b660a1445","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":11,"decision":"keep","reason":"Keep adversarial 'percent-pair' value 'e%F%g'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"percent-pair","value":"e%F%g"}},{"line":15,"endLine":15,"expression":"{ name: 'percent-after-backslash', value: 'C:\\\\Users\\\\%F%\\\\x' }","source_sha256":"14bff028f5d3760d1cc39951b32124c936515474077614ae7463a87d67001133","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":12,"decision":"keep","reason":"Keep adversarial 'percent-after-backslash' value 'C:\\\\Users\\\\%F%\\\\x'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"percent-after-backslash","value":"C:\\Users\\%F%\\x"}},{"line":16,"endLine":16,"expression":"{ name: 'percent-after-two-backslashes', value: 'C:\\\\\\\\%F%' }","source_sha256":"a682c63f457dfda222f54341159e8c3970f20a00ef2503025e980ad57cc3904d","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":13,"decision":"keep","reason":"Keep adversarial 'percent-after-two-backslashes' value 'C:\\\\\\\\%F%'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"percent-after-two-backslashes","value":"C:\\\\%F%"}},{"line":17,"endLine":17,"expression":"{ name: 'percent-lone', value: '100% done' }","source_sha256":"b7a458d66445ac9d60dbd86aa4719d44ac9f3040cdfbc8b41cff2c0a46c5dcab","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":14,"decision":"keep","reason":"Keep adversarial 'percent-lone' value '100% done'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"percent-lone","value":"100% done"}},{"line":18,"endLine":18,"expression":"{ name: 'bang', value: 'q!VAR!r' }","source_sha256":"9b7aad10d671d1e569936c3925af7ef58bda50d1370c41dd290b071ba8ac338b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":15,"decision":"keep","reason":"Keep adversarial 'bang' value 'q!VAR!r'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"bang","value":"q!VAR!r"}},{"line":19,"endLine":19,"expression":"{ name: 'parens', value: 'a(b)c' }","source_sha256":"291bb0293522eabbebf82bfdd745a4d41922fcf48c35dda4d19d7c885c34ac0d","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":16,"decision":"keep","reason":"Keep adversarial 'parens' value 'a(b)c'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"parens","value":"a(b)c"}},{"line":20,"endLine":20,"expression":"{ name: 'trailing-backslash', value: 'C:\\\\dir\\\\' }","source_sha256":"141f047963e3b18cf0ed52cfee6cb47377f26f5ab7dceccb52fcd1d7a7bc4018","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":17,"decision":"keep","reason":"Keep adversarial 'trailing-backslash' value 'C:\\\\dir\\\\'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"trailing-backslash","value":"C:\\dir\\"}},{"line":21,"endLine":21,"expression":"{ name: 'backslash-quote', value: 'a\\\\\"b' }","source_sha256":"ac209a19b69447a4aaebd90357bab2cdc6996ea8f91fab52d0fa2104f75e41a7","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":18,"decision":"keep","reason":"Keep adversarial 'backslash-quote' value 'a\\\\\"b'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"backslash-quote","value":"a\\\"b"}},{"line":22,"endLine":22,"expression":"{ name: 'double-backslash-quote', value: 'a\\\\\\\\\"b' }","source_sha256":"c0affc22388dbea93765e641c39cb64eb63b1a687cabab5824e1e5737f592540","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":19,"decision":"keep","reason":"Keep adversarial 'double-backslash-quote' value 'a\\\\\\\\\"b'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"double-backslash-quote","value":"a\\\\\"b"}},{"line":23,"endLine":23,"expression":"{ name: 'only-backslashes', value: '\\\\\\\\\\\\' }","source_sha256":"f1b92bca0e6b372a2f81c5e1b497a5a822b070e2a96aa3b335c48a78efe8b1bc","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":20,"decision":"keep","reason":"Keep adversarial 'only-backslashes' value '\\\\\\\\\\\\'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"only-backslashes","value":"\\\\\\"}},{"line":24,"endLine":24,"expression":"{ name: 'semicolon-comma', value: 'a;b,c' }","source_sha256":"c83b1e38280df27b64e692f983b5a7881412600ea5d06b54f732e5c13ae429f5","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":21,"decision":"keep","reason":"Keep adversarial 'semicolon-comma' value 'a;b,c'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"semicolon-comma","value":"a;b,c"}},{"line":25,"endLine":25,"expression":"{ name: 'unicode', value: '\u65e5\u672c\u8a9e caf\u00e9' }","source_sha256":"fc0e69c50d7ecb955390a875735f800120de4c425b20d2988af2337cbaa13271","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":22,"decision":"keep","reason":"Keep adversarial 'unicode' value '\u65e5\u672c\u8a9e caf\u00e9'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"unicode","value":"\u65e5\u672c\u8a9e caf\u00e9"}},{"line":26,"endLine":26,"expression":"{ name: 'combined', value: 'x\"y&z%F%' }","source_sha256":"aea5fee9be7bc434d9830e0631d951c6736579ba58b192c5fa664b1c80a9d49b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":23,"decision":"keep","reason":"Keep adversarial 'combined' value 'x\"y&z%F%'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"combined","value":"x\"y&z%F%"}},{"line":27,"endLine":27,"expression":"{ name: 'agent-prompt', value: 'Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)' }","source_sha256":"4195ef0188aa9ca7b1115510415f171d986f453e7a8d08df77b8730bfba07606","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":24,"decision":"keep","reason":"Keep adversarial 'agent-prompt' value 'Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)'; quote plus shipped parser must preserve this exact value, without claiming native Windows execution.","value":{"name":"agent-prompt","value":"Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)"}}],"decision":"keep","id":"9.T1","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":66,"endLine":73,"expression":"it.each([\n ['C:\\\\bin\\\\agent.cmd', true],\n ['C:\\\\bin\\\\agent.CMD', true],\n ['C:\\\\bin\\\\agent.bat', true],\n ['C:\\\\bin\\\\agent.exe', false],\n ['C:\\\\bin\\\\agent', false],\n ['C:\\\\bin\\\\agent.ps1', false]\n ])","source_sha256":"9e8540d18ed756191d1e7e25a25e326b48aa52f93b7463035278a4537f1539f6","source_path":"src/packages/process-host/src/windows-command-line.test.ts","kind":"each","owner":"9.9","domain":"[\n ['C:\\\\bin\\\\agent.cmd', true],\n ['C:\\\\bin\\\\agent.CMD', true],\n ['C:\\\\bin\\\\agent.bat', true],\n ['C:\\\\bin\\\\agent.exe', false],\n ['C:\\\\bin\\\\agent', false],\n ['C:\\\\bin\\\\agent.ps1', false]\n ]","rows":[{"line":67,"endLine":67,"expression":"['C:\\\\bin\\\\agent.cmd', true]","source_sha256":"a7e3b3930edc8acecbb41dab69717c059fa4035c1d857571a0cd98baa6e02194","source_path":"src/packages/process-host/src/windows-command-line.test.ts","row":1,"decision":"keep","reason":"Interpreter predicate for 'C:\\\\bin\\\\agent.cmd' must return independently expected True.","value":["C:\\bin\\agent.cmd",true]},{"line":68,"endLine":68,"expression":"['C:\\\\bin\\\\agent.CMD', true]","source_sha256":"41a8eb5b6412a6808892a4dca02331c4aa65a47539f5408e1cea89bd5f7f998c","source_path":"src/packages/process-host/src/windows-command-line.test.ts","row":2,"decision":"keep","reason":"Interpreter predicate for 'C:\\\\bin\\\\agent.CMD' must return independently expected True.","value":["C:\\bin\\agent.CMD",true]},{"line":69,"endLine":69,"expression":"['C:\\\\bin\\\\agent.bat', true]","source_sha256":"50348fb97270d207df86b39a657921fda203fa0d5597e115acb6436515b12297","source_path":"src/packages/process-host/src/windows-command-line.test.ts","row":3,"decision":"keep","reason":"Interpreter predicate for 'C:\\\\bin\\\\agent.bat' must return independently expected True.","value":["C:\\bin\\agent.bat",true]},{"line":70,"endLine":70,"expression":"['C:\\\\bin\\\\agent.exe', false]","source_sha256":"a9ab347897fe088ba52ccc8da190afb801309cbba121a619c46d76ff50e9e58a","source_path":"src/packages/process-host/src/windows-command-line.test.ts","row":4,"decision":"keep","reason":"Interpreter predicate for 'C:\\\\bin\\\\agent.exe' must return independently expected False.","value":["C:\\bin\\agent.exe",false]},{"line":71,"endLine":71,"expression":"['C:\\\\bin\\\\agent', false]","source_sha256":"ef69990ab1d97c16b9c50652815bf6dd2bc6066b3cd2ddad47c6c1b24d55f464","source_path":"src/packages/process-host/src/windows-command-line.test.ts","row":5,"decision":"keep","reason":"Interpreter predicate for 'C:\\\\bin\\\\agent' must return independently expected False.","value":["C:\\bin\\agent",false]},{"line":72,"endLine":72,"expression":"['C:\\\\bin\\\\agent.ps1', false]","source_sha256":"cc46fcd4034bb16fdd57826177d0ebb1d4836f958b998ea84c7fd40a2c03d67e","source_path":"src/packages/process-host/src/windows-command-line.test.ts","row":6,"decision":"keep","reason":"Interpreter predicate for 'C:\\\\bin\\\\agent.ps1' must return independently expected False.","value":["C:\\bin\\agent.ps1",false]}],"decision":"keep","id":"9.T2","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":79,"endLine":83,"expression":"it.each([\n ['newline in an argument', 'agent', ['fix\\nthis']],\n ['carriage return in an argument', 'agent', ['fix\\rthis']],\n ['newline in the program path', 'C:\\\\a\\nb.cmd', []]\n ])","source_sha256":"8d52dde04d5ead98d432f40781c8d64f857f4e396b629b05abbdd778ae432adf","source_path":"src/packages/process-host/src/windows-command-line.test.ts","kind":"each","owner":"9.10","domain":"[\n ['newline in an argument', 'agent', ['fix\\nthis']],\n ['carriage return in an argument', 'agent', ['fix\\rthis']],\n ['newline in the program path', 'C:\\\\a\\nb.cmd', []]\n ]","rows":[{"line":80,"endLine":80,"expression":"['newline in an argument', 'agent', ['fix\\nthis']]","source_sha256":"a340e20ad9dbb7e9a13085c126e76feba2dd7bb5868ae1790bafe69ba4c890df","source_path":"src/packages/process-host/src/windows-command-line.test.ts","row":1,"decision":"keep","reason":"Reject newline in an argument with actual line-break error; keep exact program='agent', args=['fix\\nthis'].","value":["newline in an argument","agent",["fix\nthis"]]},{"line":81,"endLine":81,"expression":"['carriage return in an argument', 'agent', ['fix\\rthis']]","source_sha256":"d95b41ec80c69e35a3225912c025a7020556210de29f086818601c7236f745e9","source_path":"src/packages/process-host/src/windows-command-line.test.ts","row":2,"decision":"keep","reason":"Reject carriage return in an argument with actual line-break error; keep exact program='agent', args=['fix\\rthis'].","value":["carriage return in an argument","agent",["fix\rthis"]]},{"line":82,"endLine":82,"expression":"['newline in the program path', 'C:\\\\a\\nb.cmd', []]","source_sha256":"37398992e758fc9e198a5544acabb546ffe25784178cda5b95dc82a0df761a81","source_path":"src/packages/process-host/src/windows-command-line.test.ts","row":3,"decision":"keep","reason":"Reject newline in the program path with actual line-break error; keep exact program='C:\\\\a\\nb.cmd', args=[].","value":["newline in the program path","C:\\a\nb.cmd",[]]}],"decision":"keep","id":"9.T3","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":41,"endLine":41,"expression":"WINDOWS_ARGUMENT_CORPUS","source_sha256":"d2278b44b392c9f6048dbc5ebb751a5a94e5cf5ddd154d9875b6f3335a97cbf1","source_path":"src/packages/process-host/src/windows-command-line.test.ts","kind":"for-of","owner":"9.5","domain":"WINDOWS_ARGUMENT_CORPUS","rows":[{"line":3,"endLine":3,"expression":"{ name: 'plain', value: 'hello' }","source_sha256":"c14f0dd691171cd4c4949b3363757f9bf349e008512bfbfe9dc8bbb7fc827945","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":1,"decision":"keep","reason":"Keep adversarial 'plain' value 'hello'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"plain","value":"hello"}},{"line":4,"endLine":4,"expression":"{ name: 'empty', value: '' }","source_sha256":"743d63b3b58247d3f386fb5e00ff33b099e33e7dd9a0cda0c86fff586dc019cc","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":2,"decision":"keep","reason":"Keep adversarial 'empty' value ''; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"empty","value":""}},{"line":5,"endLine":5,"expression":"{ name: 'space', value: 'hello world' }","source_sha256":"7b1e4ba3a30a8d1e85d9d3a5535bfc3711b86dbba5aa2c14ada98b27aae04ff2","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":3,"decision":"keep","reason":"Keep adversarial 'space' value 'hello world'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"space","value":"hello world"}},{"line":6,"endLine":6,"expression":"{ name: 'double-quote', value: 'say \"hi\" ok' }","source_sha256":"74f32c2d35258fcec42ecadb23d10b69016bdac6c4323379febe24dc6fa36e8f","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":4,"decision":"keep","reason":"Keep adversarial 'double-quote' value 'say \"hi\" ok'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"double-quote","value":"say \"hi\" ok"}},{"line":7,"endLine":7,"expression":"{ name: 'quote-only', value: '\"' }","source_sha256":"0e80ea28fd1b46bc3c1da0f92facf7efcf34e4f9840f70cd9c47633b66fd94b7","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":5,"decision":"keep","reason":"Keep adversarial 'quote-only' value '\"'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"quote-only","value":"\""}},{"line":8,"endLine":8,"expression":"{ name: 'two-quotes', value: '\"\"' }","source_sha256":"ef8227e10c5725d118ae0890d5bd05f6f5284b5df57e29d5bef1dea5c06dd84b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":6,"decision":"keep","reason":"Keep adversarial 'two-quotes' value '\"\"'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"two-quotes","value":"\"\""}},{"line":9,"endLine":9,"expression":"{ name: 'caret', value: 'a^b' }","source_sha256":"383f847cb92d5ef25f7c4a01c7775785c191a5cdcccc46a58c60c9879f3ff242","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":7,"decision":"keep","reason":"Keep adversarial 'caret' value 'a^b'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"caret","value":"a^b"}},{"line":10,"endLine":10,"expression":"{ name: 'ampersand', value: 'a&b' }","source_sha256":"904bef30bf07b1a5b59f75bddaa9b49771afd3b608b95a5acbddede50655ffe1","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":8,"decision":"keep","reason":"Keep adversarial 'ampersand' value 'a&b'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"ampersand","value":"a&b"}},{"line":11,"endLine":11,"expression":"{ name: 'pipe', value: 'a|b' }","source_sha256":"9d255e43a388b9baf05c8821a21aed084f7cab444339349b772677fce4834651","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":9,"decision":"keep","reason":"Keep adversarial 'pipe' value 'a|b'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"pipe","value":"a|b"}},{"line":12,"endLine":12,"expression":"{ name: 'redirect', value: 'ac' }","source_sha256":"8e47ce6fd2bd08244db354ecb871934b659bddd0a661fc73389fe7fdf3857fd1","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":10,"decision":"keep","reason":"Keep adversarial 'redirect' value 'ac'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"redirect","value":"ac"}},{"line":13,"endLine":13,"expression":"{ name: 'percent-pair', value: 'e%F%g' }","source_sha256":"e083ee349cfe10a720596616c69eecbe46f470b97f438a10dc91645b660a1445","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":11,"decision":"keep","reason":"Keep adversarial 'percent-pair' value 'e%F%g'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"percent-pair","value":"e%F%g"}},{"line":15,"endLine":15,"expression":"{ name: 'percent-after-backslash', value: 'C:\\\\Users\\\\%F%\\\\x' }","source_sha256":"14bff028f5d3760d1cc39951b32124c936515474077614ae7463a87d67001133","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":12,"decision":"keep","reason":"Keep adversarial 'percent-after-backslash' value 'C:\\\\Users\\\\%F%\\\\x'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"percent-after-backslash","value":"C:\\Users\\%F%\\x"}},{"line":16,"endLine":16,"expression":"{ name: 'percent-after-two-backslashes', value: 'C:\\\\\\\\%F%' }","source_sha256":"a682c63f457dfda222f54341159e8c3970f20a00ef2503025e980ad57cc3904d","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":13,"decision":"keep","reason":"Keep adversarial 'percent-after-two-backslashes' value 'C:\\\\\\\\%F%'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"percent-after-two-backslashes","value":"C:\\\\%F%"}},{"line":17,"endLine":17,"expression":"{ name: 'percent-lone', value: '100% done' }","source_sha256":"b7a458d66445ac9d60dbd86aa4719d44ac9f3040cdfbc8b41cff2c0a46c5dcab","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":14,"decision":"keep","reason":"Keep adversarial 'percent-lone' value '100% done'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"percent-lone","value":"100% done"}},{"line":18,"endLine":18,"expression":"{ name: 'bang', value: 'q!VAR!r' }","source_sha256":"9b7aad10d671d1e569936c3925af7ef58bda50d1370c41dd290b071ba8ac338b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":15,"decision":"keep","reason":"Keep adversarial 'bang' value 'q!VAR!r'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"bang","value":"q!VAR!r"}},{"line":19,"endLine":19,"expression":"{ name: 'parens', value: 'a(b)c' }","source_sha256":"291bb0293522eabbebf82bfdd745a4d41922fcf48c35dda4d19d7c885c34ac0d","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":16,"decision":"keep","reason":"Keep adversarial 'parens' value 'a(b)c'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"parens","value":"a(b)c"}},{"line":20,"endLine":20,"expression":"{ name: 'trailing-backslash', value: 'C:\\\\dir\\\\' }","source_sha256":"141f047963e3b18cf0ed52cfee6cb47377f26f5ab7dceccb52fcd1d7a7bc4018","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":17,"decision":"keep","reason":"Keep adversarial 'trailing-backslash' value 'C:\\\\dir\\\\'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"trailing-backslash","value":"C:\\dir\\"}},{"line":21,"endLine":21,"expression":"{ name: 'backslash-quote', value: 'a\\\\\"b' }","source_sha256":"ac209a19b69447a4aaebd90357bab2cdc6996ea8f91fab52d0fa2104f75e41a7","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":18,"decision":"keep","reason":"Keep adversarial 'backslash-quote' value 'a\\\\\"b'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"backslash-quote","value":"a\\\"b"}},{"line":22,"endLine":22,"expression":"{ name: 'double-backslash-quote', value: 'a\\\\\\\\\"b' }","source_sha256":"c0affc22388dbea93765e641c39cb64eb63b1a687cabab5824e1e5737f592540","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":19,"decision":"keep","reason":"Keep adversarial 'double-backslash-quote' value 'a\\\\\\\\\"b'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"double-backslash-quote","value":"a\\\\\"b"}},{"line":23,"endLine":23,"expression":"{ name: 'only-backslashes', value: '\\\\\\\\\\\\' }","source_sha256":"f1b92bca0e6b372a2f81c5e1b497a5a822b070e2a96aa3b335c48a78efe8b1bc","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":20,"decision":"keep","reason":"Keep adversarial 'only-backslashes' value '\\\\\\\\\\\\'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"only-backslashes","value":"\\\\\\"}},{"line":24,"endLine":24,"expression":"{ name: 'semicolon-comma', value: 'a;b,c' }","source_sha256":"c83b1e38280df27b64e692f983b5a7881412600ea5d06b54f732e5c13ae429f5","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":21,"decision":"keep","reason":"Keep adversarial 'semicolon-comma' value 'a;b,c'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"semicolon-comma","value":"a;b,c"}},{"line":25,"endLine":25,"expression":"{ name: 'unicode', value: '\u65e5\u672c\u8a9e caf\u00e9' }","source_sha256":"fc0e69c50d7ecb955390a875735f800120de4c425b20d2988af2337cbaa13271","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":22,"decision":"keep","reason":"Keep adversarial 'unicode' value '\u65e5\u672c\u8a9e caf\u00e9'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"unicode","value":"\u65e5\u672c\u8a9e caf\u00e9"}},{"line":26,"endLine":26,"expression":"{ name: 'combined', value: 'x\"y&z%F%' }","source_sha256":"aea5fee9be7bc434d9830e0631d951c6736579ba58b192c5fa664b1c80a9d49b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":23,"decision":"keep","reason":"Keep adversarial 'combined' value 'x\"y&z%F%'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"combined","value":"x\"y&z%F%"}},{"line":27,"endLine":27,"expression":"{ name: 'agent-prompt', value: 'Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)' }","source_sha256":"4195ef0188aa9ca7b1115510415f171d986f453e7a8d08df77b8730bfba07606","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":24,"decision":"keep","reason":"Keep adversarial 'agent-prompt' value 'Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)'; the complete cmd shim line must retain even quote parity for this exact input.","value":{"name":"agent-prompt","value":"Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)"}}],"decision":"keep","id":"9.T4","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":24,"endLine":24,"expression":"WINDOWS_ARGUMENT_CORPUS","source_sha256":"d2278b44b392c9f6048dbc5ebb751a5a94e5cf5ddd154d9875b6f3335a97cbf1","source_path":"src/packages/process-host/src/windows-command-line.test.ts","kind":"map-all","owner":"9.2","domain":"WINDOWS_ARGUMENT_CORPUS","rows":[{"line":3,"endLine":3,"expression":"{ name: 'plain', value: 'hello' }","source_sha256":"c14f0dd691171cd4c4949b3363757f9bf349e008512bfbfe9dc8bbb7fc827945","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":1,"decision":"keep","reason":"Keep adversarial 'plain' value 'hello'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"plain","value":"hello"}},{"line":4,"endLine":4,"expression":"{ name: 'empty', value: '' }","source_sha256":"743d63b3b58247d3f386fb5e00ff33b099e33e7dd9a0cda0c86fff586dc019cc","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":2,"decision":"keep","reason":"Keep adversarial 'empty' value ''; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"empty","value":""}},{"line":5,"endLine":5,"expression":"{ name: 'space', value: 'hello world' }","source_sha256":"7b1e4ba3a30a8d1e85d9d3a5535bfc3711b86dbba5aa2c14ada98b27aae04ff2","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":3,"decision":"keep","reason":"Keep adversarial 'space' value 'hello world'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"space","value":"hello world"}},{"line":6,"endLine":6,"expression":"{ name: 'double-quote', value: 'say \"hi\" ok' }","source_sha256":"74f32c2d35258fcec42ecadb23d10b69016bdac6c4323379febe24dc6fa36e8f","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":4,"decision":"keep","reason":"Keep adversarial 'double-quote' value 'say \"hi\" ok'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"double-quote","value":"say \"hi\" ok"}},{"line":7,"endLine":7,"expression":"{ name: 'quote-only', value: '\"' }","source_sha256":"0e80ea28fd1b46bc3c1da0f92facf7efcf34e4f9840f70cd9c47633b66fd94b7","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":5,"decision":"keep","reason":"Keep adversarial 'quote-only' value '\"'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"quote-only","value":"\""}},{"line":8,"endLine":8,"expression":"{ name: 'two-quotes', value: '\"\"' }","source_sha256":"ef8227e10c5725d118ae0890d5bd05f6f5284b5df57e29d5bef1dea5c06dd84b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":6,"decision":"keep","reason":"Keep adversarial 'two-quotes' value '\"\"'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"two-quotes","value":"\"\""}},{"line":9,"endLine":9,"expression":"{ name: 'caret', value: 'a^b' }","source_sha256":"383f847cb92d5ef25f7c4a01c7775785c191a5cdcccc46a58c60c9879f3ff242","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":7,"decision":"keep","reason":"Keep adversarial 'caret' value 'a^b'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"caret","value":"a^b"}},{"line":10,"endLine":10,"expression":"{ name: 'ampersand', value: 'a&b' }","source_sha256":"904bef30bf07b1a5b59f75bddaa9b49771afd3b608b95a5acbddede50655ffe1","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":8,"decision":"keep","reason":"Keep adversarial 'ampersand' value 'a&b'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"ampersand","value":"a&b"}},{"line":11,"endLine":11,"expression":"{ name: 'pipe', value: 'a|b' }","source_sha256":"9d255e43a388b9baf05c8821a21aed084f7cab444339349b772677fce4834651","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":9,"decision":"keep","reason":"Keep adversarial 'pipe' value 'a|b'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"pipe","value":"a|b"}},{"line":12,"endLine":12,"expression":"{ name: 'redirect', value: 'ac' }","source_sha256":"8e47ce6fd2bd08244db354ecb871934b659bddd0a661fc73389fe7fdf3857fd1","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":10,"decision":"keep","reason":"Keep adversarial 'redirect' value 'ac'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"redirect","value":"ac"}},{"line":13,"endLine":13,"expression":"{ name: 'percent-pair', value: 'e%F%g' }","source_sha256":"e083ee349cfe10a720596616c69eecbe46f470b97f438a10dc91645b660a1445","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":11,"decision":"keep","reason":"Keep adversarial 'percent-pair' value 'e%F%g'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"percent-pair","value":"e%F%g"}},{"line":15,"endLine":15,"expression":"{ name: 'percent-after-backslash', value: 'C:\\\\Users\\\\%F%\\\\x' }","source_sha256":"14bff028f5d3760d1cc39951b32124c936515474077614ae7463a87d67001133","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":12,"decision":"keep","reason":"Keep adversarial 'percent-after-backslash' value 'C:\\\\Users\\\\%F%\\\\x'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"percent-after-backslash","value":"C:\\Users\\%F%\\x"}},{"line":16,"endLine":16,"expression":"{ name: 'percent-after-two-backslashes', value: 'C:\\\\\\\\%F%' }","source_sha256":"a682c63f457dfda222f54341159e8c3970f20a00ef2503025e980ad57cc3904d","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":13,"decision":"keep","reason":"Keep adversarial 'percent-after-two-backslashes' value 'C:\\\\\\\\%F%'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"percent-after-two-backslashes","value":"C:\\\\%F%"}},{"line":17,"endLine":17,"expression":"{ name: 'percent-lone', value: '100% done' }","source_sha256":"b7a458d66445ac9d60dbd86aa4719d44ac9f3040cdfbc8b41cff2c0a46c5dcab","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":14,"decision":"keep","reason":"Keep adversarial 'percent-lone' value '100% done'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"percent-lone","value":"100% done"}},{"line":18,"endLine":18,"expression":"{ name: 'bang', value: 'q!VAR!r' }","source_sha256":"9b7aad10d671d1e569936c3925af7ef58bda50d1370c41dd290b071ba8ac338b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":15,"decision":"keep","reason":"Keep adversarial 'bang' value 'q!VAR!r'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"bang","value":"q!VAR!r"}},{"line":19,"endLine":19,"expression":"{ name: 'parens', value: 'a(b)c' }","source_sha256":"291bb0293522eabbebf82bfdd745a4d41922fcf48c35dda4d19d7c885c34ac0d","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":16,"decision":"keep","reason":"Keep adversarial 'parens' value 'a(b)c'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"parens","value":"a(b)c"}},{"line":20,"endLine":20,"expression":"{ name: 'trailing-backslash', value: 'C:\\\\dir\\\\' }","source_sha256":"141f047963e3b18cf0ed52cfee6cb47377f26f5ab7dceccb52fcd1d7a7bc4018","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":17,"decision":"keep","reason":"Keep adversarial 'trailing-backslash' value 'C:\\\\dir\\\\'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"trailing-backslash","value":"C:\\dir\\"}},{"line":21,"endLine":21,"expression":"{ name: 'backslash-quote', value: 'a\\\\\"b' }","source_sha256":"ac209a19b69447a4aaebd90357bab2cdc6996ea8f91fab52d0fa2104f75e41a7","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":18,"decision":"keep","reason":"Keep adversarial 'backslash-quote' value 'a\\\\\"b'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"backslash-quote","value":"a\\\"b"}},{"line":22,"endLine":22,"expression":"{ name: 'double-backslash-quote', value: 'a\\\\\\\\\"b' }","source_sha256":"c0affc22388dbea93765e641c39cb64eb63b1a687cabab5824e1e5737f592540","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":19,"decision":"keep","reason":"Keep adversarial 'double-backslash-quote' value 'a\\\\\\\\\"b'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"double-backslash-quote","value":"a\\\\\"b"}},{"line":23,"endLine":23,"expression":"{ name: 'only-backslashes', value: '\\\\\\\\\\\\' }","source_sha256":"f1b92bca0e6b372a2f81c5e1b497a5a822b070e2a96aa3b335c48a78efe8b1bc","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":20,"decision":"keep","reason":"Keep adversarial 'only-backslashes' value '\\\\\\\\\\\\'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"only-backslashes","value":"\\\\\\"}},{"line":24,"endLine":24,"expression":"{ name: 'semicolon-comma', value: 'a;b,c' }","source_sha256":"c83b1e38280df27b64e692f983b5a7881412600ea5d06b54f732e5c13ae429f5","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":21,"decision":"keep","reason":"Keep adversarial 'semicolon-comma' value 'a;b,c'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"semicolon-comma","value":"a;b,c"}},{"line":25,"endLine":25,"expression":"{ name: 'unicode', value: '\u65e5\u672c\u8a9e caf\u00e9' }","source_sha256":"fc0e69c50d7ecb955390a875735f800120de4c425b20d2988af2337cbaa13271","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":22,"decision":"keep","reason":"Keep adversarial 'unicode' value '\u65e5\u672c\u8a9e caf\u00e9'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"unicode","value":"\u65e5\u672c\u8a9e caf\u00e9"}},{"line":26,"endLine":26,"expression":"{ name: 'combined', value: 'x\"y&z%F%' }","source_sha256":"aea5fee9be7bc434d9830e0631d951c6736579ba58b192c5fa664b1c80a9d49b","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":23,"decision":"keep","reason":"Keep adversarial 'combined' value 'x\"y&z%F%'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"combined","value":"x\"y&z%F%"}},{"line":27,"endLine":27,"expression":"{ name: 'agent-prompt', value: 'Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)' }","source_sha256":"4195ef0188aa9ca7b1115510415f171d986f453e7a8d08df77b8730bfba07606","source_path":"src/packages/process-host/src/__fixtures__/windows-argument-corpus.ts","row":24,"decision":"keep","reason":"Keep adversarial 'agent-prompt' value 'Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)'; include this exact value and position in the single combined line to expose cross-argument state leakage.","value":{"name":"agent-prompt","value":"Fix \"src/a b.ts\" & run tests 100% !now! ^ (v2)"}}],"decision":"keep","id":"9.T5","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"}],"previous_review":{"record":"root-0001.jsonl","record_sha256":"0b458c16578e120bade0d0d73c6d99ceee4d9585fe67e217642fa5f8a481ef1e","source_commit":"6d473f4bea1d190cb3649af97e04f1cdde170c5f","sha256":"d0a7d4ad1ebf3c7414da22ecfe2a49cf56dec24174a671a81ebce6e2734455ce","reviewed_sha256":"9ddbeb41f7655d4fc927d85f85a4776101b9754f4d7403550009a050b5f6e815"},"runtime_validation":null,"validation":"reviews/upstream-0001-validation.json"}
+{"path":"src/packages/process-host/src/windows-tree-kill.test.ts","sha256":"0478b29856fdc3cc8b545e9a434610819d00416cb0f4c6c61598d7e90ee725ef","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","reviewed_sha256":"0478b29856fdc3cc8b545e9a434610819d00416cb0f4c6c61598d7e90ee725ef","reviewer":"audit_mobile","status":"reviewed","decision":"keep","rationale":"Adds four scheduling declarations expanding to eight cases and os-adapter mocks: two lowered priorities, three normal/elevated, two read/write failures and one POSIX bypass. Original eight declarations are retained.","evidence":["src/packages/process-host/src/run-process.ts","src/packages/process-host/src/spawn-resolution.ts","src/packages/process-host/src/process-tree-termination.ts","src/packages/process-host/src/windows-tree-kill.ts","src/packages/process-host/src/windows-command-line.ts","src/packages/process-host/src/windows-cmd-shim-resolution.ts","src/packages/process-host/src/process-tree-kill-gate.ts","src/packages/process-host/src/posix-lsof-probe.ts","src/packages/process-host/src/child-termination-reporter.ts","src/packages/process-host/src/bounded-output-sink.ts","src/packages/process-host/src/windows-system-binary.ts","src/shared/__tests__/process-host/windows-command-line.win32.test.ts","src/shared/__tests__/process-host/windows-cmd-shim-resolution.win32.test.ts","src/shared/__tests__/process-host/windows-cmd-shim-resolution.test.ts"],"cases":[{"line":50,"endLine":62,"source_sha256":"25db32c70907ebacfd8b6073e7af84b2c4c0bc69187315a4a76879e82114a8ff","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","id":"10.1","title":"reports exited only once taskkill succeeds","decision":"keep","reason":"Only successful taskkill close proves tree exit; before that verdict is live and root fallback is forbidden.","final_line":50,"final_title":"reports exited only once taskkill succeeds","final_source_sha256":"25db32c70907ebacfd8b6073e7af84b2c4c0bc69187315a4a76879e82114a8ff","implementation_status":"validated"},{"line":64,"endLine":87,"source_sha256":"717f67ac38aa711a9ac0ef4bf0a64ffdad63dc887d2ce59468a01527b4a92992","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","id":"10.2","title":"keeps one taskkill running past the wait and lets later requests join it","decision":"keep","reason":"Caller wait expiry preserves one helper per child handle; retry joins, late close verifies, and proven handles are never walked again even if PID is reissued.","final_line":64,"final_title":"keeps one taskkill running past the wait and lets later requests join it","final_source_sha256":"717f67ac38aa711a9ac0ef4bf0a64ffdad63dc887d2ce59468a01527b4a92992","implementation_status":"validated"},{"line":89,"endLine":108,"source_sha256":"512e17a8b695bd4bc92b99027aebadc38e688c83fca50b182cd61cce2c0cc35e","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","id":"10.3","title":"reports %s as unverifiable, kills the root, and allows a retry","decision":"keep","reason":"Both failed close and asynchronous spawn error report unverifiable, invoke root fallback once and permit a new helper attempt.","final_line":89,"final_title":"reports %s as unverifiable, kills the root, and allows a retry","final_source_sha256":"512e17a8b695bd4bc92b99027aebadc38e688c83fca50b182cd61cce2c0cc35e","implementation_status":"validated","input_decisions":[{"table_id":"10.T1","line":90,"endLine":90,"expression":"['a failed taskkill', (taskkill: FakeProcess) => taskkill.emit('close', 128)]","source_sha256":"f5530d1b9c3b166ff5a0b0364ae7add3a7c65159be29a57cfe25876d61e9caed","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","row":1,"decision":"keep","reason":"Preserve a failed taskkill as a distinct injected lifecycle failure; actual tracker must report unverifiable, root fallback and new retry.","value":["a failed taskkill",{"$expression":"(taskkill: FakeProcess) => taskkill.emit('close', 128)"}]},{"table_id":"10.T1","line":91,"endLine":94,"expression":"[\n 'a taskkill that cannot start',\n (taskkill: FakeProcess) => taskkill.emit('error', new Error('spawn EPERM'))\n ]","source_sha256":"cc14b2645bd96238cd2b0187a83425638a75431fd52095ced90179f69abb63ac","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","row":2,"decision":"keep","reason":"Preserve a taskkill that cannot start as a distinct injected lifecycle failure; actual tracker must report unverifiable, root fallback and new retry.","value":["a taskkill that cannot start",{"$expression":"(taskkill: FakeProcess) => taskkill.emit('error', new Error('spawn EPERM'))"}]}]},{"line":110,"endLine":120,"source_sha256":"888315bd54dc9811e9d0c6a99d979757c94612816116fcd05ae6effa89835ae6","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","id":"10.4","title":"reports a launch that throws as unverifiable","decision":"keep","reason":"A synchronous launcher exception settles unverifiable and returns a false wait verdict without escaping or hanging.","final_line":110,"final_title":"reports a launch that throws as unverifiable","final_source_sha256":"888315bd54dc9811e9d0c6a99d979757c94612816116fcd05ae6effa89835ae6","implementation_status":"validated"},{"line":122,"endLine":137,"source_sha256":"e583930268e3cf8fe63e15d862e201cb7e3521dd09edc3f3a04d2e84fc1266d6","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","id":"10.5","title":"abandons a wedged taskkill at the deadline, then kills the root","decision":"keep","reason":"Absolute deadline has a before/at boundary, abandons helper and root once, and ignores a late successful close.","final_line":122,"final_title":"abandons a wedged taskkill at the deadline, then kills the root","final_source_sha256":"e583930268e3cf8fe63e15d862e201cb7e3521dd09edc3f3a04d2e84fc1266d6","implementation_status":"validated"},{"line":139,"endLine":148,"source_sha256":"7147a53799b082b4f26c4ddf3210fe88db6621a40ab6013bc1b53ff4cd48ad03","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","id":"10.6","title":"still proves a tree when taskkill finishes soon after killing the root","decision":"keep","reason":"Taskkill success just before root-exit grace expiry can still prove the complete tree; this is a necessary positive control to abandonment.","final_line":139,"final_title":"still proves a tree when taskkill finishes soon after killing the root","final_source_sha256":"7147a53799b082b4f26c4ddf3210fe88db6621a40ab6013bc1b53ff4cd48ad03","implementation_status":"validated"},{"line":150,"endLine":159,"source_sha256":"394a575ebbff978e0639675c433b043cedeb8135ff77338932987cc11e0c00d8","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","id":"10.7","title":"abandons taskkill once the root has been gone long enough for its pid to be reissued","decision":"keep","reason":"Expired root-exit grace abandons a helper before a released PID can be walked later.","final_line":150,"final_title":"abandons taskkill once the root has been gone long enough for its pid to be reissued","final_source_sha256":"394a575ebbff978e0639675c433b043cedeb8135ff77338932987cc11e0c00d8","implementation_status":"validated"},{"line":161,"endLine":166,"source_sha256":"672ed842a21774d02d8af1fbab1fabc445e960ff37ec0de7d54c3b4e5db11f40","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","id":"10.8","title":"never joins two children that share a reused pid","decision":"keep","reason":"Distinct child handles with reused numeric PID start distinct helpers; identity assertions elsewhere protect handle-keyed ownership.","final_line":161,"final_title":"never joins two children that share a reused pid","final_source_sha256":"672ed842a21774d02d8af1fbab1fabc445e960ff37ec0de7d54c3b4e5db11f40","implementation_status":"validated"},{"line":190,"endLine":200,"source_sha256":"1af175ea246ae8ab4b0e0a093d2a7f7c4c744edbc351479e478b032cfe92aa21","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","id":"10.9","title":"restores normal priority for a background helper at %i","decision":"keep","reason":"New lower-priority values 10 and 19 both cause the actual scheduling adapter to restore the spawned helper pid to normal priority, while normal tree verification still works. This observes native-adapter arguments, not OS scheduler execution.","final_line":190,"final_title":"restores normal priority for a background helper at %i","final_source_sha256":"1af175ea246ae8ab4b0e0a093d2a7f7c4c744edbc351479e478b032cfe92aa21","implementation_status":"validated","input_decisions":[{"table_id":"10.T2","line":190,"endLine":190,"expression":"10","source_sha256":"4a44dc15364204a80fe80e9039455cc1608281820fe2b24f1e5233ade6af1dd5","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","row":1,"decision":"keep","reason":"Helper priority 10 is below normal scheduling: production must call setPriority(5678, 0), then still complete on taskkill close.","value":10},{"table_id":"10.T2","line":190,"endLine":190,"expression":"19","source_sha256":"9400f1b21cb527d7fa3d3eabba93557a18ebe7a2ca4e471cfe5e4c5b4ca7f767","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","row":2,"decision":"keep","reason":"Helper priority 19 is below normal scheduling: production must call setPriority(5678, 0), then still complete on taskkill close.","value":19}]},{"line":202,"endLine":208,"source_sha256":"f822c73fb07da3aa6ef6649bc72f1869935563ed7e70f6ed1fc92d990bb30c23","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","id":"10.10","title":"preserves a helper already at priority %i","decision":"keep","reason":"New normal/elevated values 0, -7 and -14 do not downgrade helper scheduling, while completion still follows taskkill close.","final_line":202,"final_title":"preserves a helper already at priority %i","final_source_sha256":"f822c73fb07da3aa6ef6649bc72f1869935563ed7e70f6ed1fc92d990bb30c23","implementation_status":"validated","input_decisions":[{"table_id":"10.T3","line":202,"endLine":202,"expression":"0","source_sha256":"5feceb66ffc86f38d952786c6d696c79c2dbc239dd4e91b46729d73a27fb57e9","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","row":1,"decision":"keep","reason":"Helper priority 0 is already normal/elevated: preserve no priority write and normal successful close.","value":0},{"table_id":"10.T3","line":202,"endLine":202,"expression":"-7","source_sha256":"a770d3270c9dcdedf12ed9fd70444f7c8a95c26cae3cae9bd867499090a2f14b","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","row":2,"decision":"keep","reason":"Helper priority -7 is already normal/elevated: preserve no priority write and normal successful close.","value":-7},{"table_id":"10.T3","line":202,"endLine":202,"expression":"-14","source_sha256":"dabc4b1c58574fe898c4c218a0856669d55f817ee7df27b63c534892fd1fb5d9","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","row":3,"decision":"keep","reason":"Helper priority -14 is already normal/elevated: preserve no priority write and normal successful close.","value":-14}]},{"line":210,"endLine":227,"source_sha256":"5cc04bea51b2dd9b46d73ae9d814a398ffdf1e3bea9630a9a370e6bee5ba72d3","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","id":"10.11","title":"keeps tracking when the priority %s fails","decision":"keep","reason":"Both getPriority and setPriority exceptions leave the same tree live through caller wait and allow later successful completion, so best-effort scheduling cannot break termination.","final_line":210,"final_title":"keeps tracking when the priority %s fails","final_source_sha256":"5cc04bea51b2dd9b46d73ae9d814a398ffdf1e3bea9630a9a370e6bee5ba72d3","implementation_status":"validated","input_decisions":[{"table_id":"10.T4","line":210,"endLine":210,"expression":"'read'","source_sha256":"9cc73317bae2d8cdb97402f48a527cbca0c56570fbd159ab8a1f0a9249e5dc88","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","row":1,"decision":"keep","reason":"Throw from priority read; preserve live tracking after wait expiry and actual successful completion on later close.","value":"read"},{"table_id":"10.T4","line":210,"endLine":210,"expression":"'write'","source_sha256":"95a17aba66ab7c413be4c2613ef509858b65d14c747567f3363feef025571fd4","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","row":2,"decision":"keep","reason":"Throw from priority write; preserve live tracking after wait expiry and actual successful completion on later close.","value":"write"}]},{"line":229,"endLine":236,"source_sha256":"447644c3d55e2078c4646cda68b275ca47abea3c271ce09e1a56f0a8a3e34958","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","id":"10.12","title":"leaves POSIX scheduling unchanged","decision":"keep","reason":"The POSIX platform control bypasses both Windows priority adapters even for a helper with a pid, and retains its completion path.","final_line":229,"final_title":"leaves POSIX scheduling unchanged","final_source_sha256":"447644c3d55e2078c4646cda68b275ca47abea3c271ce09e1a56f0a8a3e34958","implementation_status":"validated"}],"tables":[{"line":89,"endLine":95,"expression":"it.each([\n ['a failed taskkill', (taskkill: FakeProcess) => taskkill.emit('close', 128)],\n [\n 'a taskkill that cannot start',\n (taskkill: FakeProcess) => taskkill.emit('error', new Error('spawn EPERM'))\n ]\n ])","source_sha256":"adea46425adf56691b1e857515c02283c0690a54c259d5afeb9da829d2b3d426","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","kind":"each","owner":"10.3","domain":"[\n ['a failed taskkill', (taskkill: FakeProcess) => taskkill.emit('close', 128)],\n [\n 'a taskkill that cannot start',\n (taskkill: FakeProcess) => taskkill.emit('error', new Error('spawn EPERM'))\n ]\n ]","rows":[{"line":90,"endLine":90,"expression":"['a failed taskkill', (taskkill: FakeProcess) => taskkill.emit('close', 128)]","source_sha256":"f5530d1b9c3b166ff5a0b0364ae7add3a7c65159be29a57cfe25876d61e9caed","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","row":1,"decision":"keep","reason":"Preserve a failed taskkill as a distinct injected lifecycle failure; actual tracker must report unverifiable, root fallback and new retry.","value":["a failed taskkill",{"$expression":"(taskkill: FakeProcess) => taskkill.emit('close', 128)"}]},{"line":91,"endLine":94,"expression":"[\n 'a taskkill that cannot start',\n (taskkill: FakeProcess) => taskkill.emit('error', new Error('spawn EPERM'))\n ]","source_sha256":"cc14b2645bd96238cd2b0187a83425638a75431fd52095ced90179f69abb63ac","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","row":2,"decision":"keep","reason":"Preserve a taskkill that cannot start as a distinct injected lifecycle failure; actual tracker must report unverifiable, root fallback and new retry.","value":["a taskkill that cannot start",{"$expression":"(taskkill: FakeProcess) => taskkill.emit('error', new Error('spawn EPERM'))"}]}],"decision":"keep","id":"10.T1","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":190,"endLine":190,"expression":"it.each([10, 19])","source_sha256":"68af097af62961ed3f25c9c3173fe476333b03893d69b110197e3a98b5515314","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","kind":"each","owner":"10.9","domain":"[10, 19]","rows":[{"line":190,"endLine":190,"expression":"10","source_sha256":"4a44dc15364204a80fe80e9039455cc1608281820fe2b24f1e5233ade6af1dd5","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","row":1,"decision":"keep","reason":"Helper priority 10 is below normal scheduling: production must call setPriority(5678, 0), then still complete on taskkill close.","value":10},{"line":190,"endLine":190,"expression":"19","source_sha256":"9400f1b21cb527d7fa3d3eabba93557a18ebe7a2ca4e471cfe5e4c5b4ca7f767","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","row":2,"decision":"keep","reason":"Helper priority 19 is below normal scheduling: production must call setPriority(5678, 0), then still complete on taskkill close.","value":19}],"decision":"keep","id":"10.T2","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":202,"endLine":202,"expression":"it.each([0, -7, -14])","source_sha256":"0d1da049ed395ebb1368d6d000f17ac2e60c83078ec988198030a3daa36de8d8","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","kind":"each","owner":"10.10","domain":"[0, -7, -14]","rows":[{"line":202,"endLine":202,"expression":"0","source_sha256":"5feceb66ffc86f38d952786c6d696c79c2dbc239dd4e91b46729d73a27fb57e9","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","row":1,"decision":"keep","reason":"Helper priority 0 is already normal/elevated: preserve no priority write and normal successful close.","value":0},{"line":202,"endLine":202,"expression":"-7","source_sha256":"a770d3270c9dcdedf12ed9fd70444f7c8a95c26cae3cae9bd867499090a2f14b","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","row":2,"decision":"keep","reason":"Helper priority -7 is already normal/elevated: preserve no priority write and normal successful close.","value":-7},{"line":202,"endLine":202,"expression":"-14","source_sha256":"dabc4b1c58574fe898c4c218a0856669d55f817ee7df27b63c534892fd1fb5d9","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","row":3,"decision":"keep","reason":"Helper priority -14 is already normal/elevated: preserve no priority write and normal successful close.","value":-14}],"decision":"keep","id":"10.T3","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"},{"line":210,"endLine":210,"expression":"it.each(['read', 'write'])","source_sha256":"5ce0f500ed2c95a63799a1d527bfa730d56a4201b812da9b284261eef4df81eb","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","kind":"each","owner":"10.11","domain":"['read', 'write']","rows":[{"line":210,"endLine":210,"expression":"'read'","source_sha256":"9cc73317bae2d8cdb97402f48a527cbca0c56570fbd159ab8a1f0a9249e5dc88","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","row":1,"decision":"keep","reason":"Throw from priority read; preserve live tracking after wait expiry and actual successful completion on later close.","value":"read"},{"line":210,"endLine":210,"expression":"'write'","source_sha256":"95a17aba66ab7c413be4c2613ef509858b65d14c747567f3363feef025571fd4","source_path":"src/packages/process-host/src/windows-tree-kill.test.ts","row":2,"decision":"keep","reason":"Throw from priority write; preserve live tracking after wait expiry and actual successful completion on later close.","value":"write"}],"decision":"keep","id":"10.T4","policy":"Every original row/input is retained. Inputs are never replaced by values generated from the expected production outcome.","source_phase":"original"}],"previous_review":{"record":"root-0001.jsonl","record_sha256":"0b458c16578e120bade0d0d73c6d99ceee4d9585fe67e217642fa5f8a481ef1e","source_commit":"6d473f4bea1d190cb3649af97e04f1cdde170c5f","sha256":"5f37d562ab0bce8805e99285e7ae62d4b3093bc6444bd2e938e0bb32688a672f","reviewed_sha256":"5f37d562ab0bce8805e99285e7ae62d4b3093bc6444bd2e938e0bb32688a672f"},"runtime_validation":null,"validation":"reviews/upstream-0001-validation.json"}
diff --git a/docs/audits/test-value/reviews/upstream-0002-validation.json b/docs/audits/test-value/reviews/upstream-0002-validation.json
new file mode 100644
index 00000000000..0ed257f6148
--- /dev/null
+++ b/docs/audits/test-value/reviews/upstream-0002-validation.json
@@ -0,0 +1,141 @@
+{
+ "batch": "upstream-0002",
+ "reviewer": "root",
+ "source_commit": "b6101c69369",
+ "current_commit": "41b5cf015be7970a23e91d4ce76d52d781db4e1b",
+ "files": 8,
+ "original_declarations": 88,
+ "parameter_inputs": 31,
+ "records_sha256": "c9b1cc2dd2cce5c7ec682bdbf68313bcec6d1822305aba934f66e81fbc862755",
+ "source_edits": false,
+ "review": "Read all changed comment text; independently verify identical non-trivia token streams and comment-free TypeScript AST for all eight complete suites and all referenced production/support files. Preserve prior case decisions and mutation provenance at their historical source hashes.",
+ "checks": [
+ {
+ "command": "ORCA_BACKGROUND_LAUNCH=1 pnpm test --reporter=json --outputFile=/tmp/orca-audit-7-postmerge-root-tests.json",
+ "result": "8 suites / 110 tests passed",
+ "num_passed_tests": 110,
+ "num_failed_tests": 0,
+ "report": "/tmp/orca-audit-7-postmerge-root-tests.json",
+ "report_sha256": "2de1aa299e795b15b1ffe948f0cba2c56a62891d760ada257dc2614583116de1",
+ "log": "/tmp/orca-audit-7-postmerge-root-tests.log",
+ "log_sha256": "03e42be26239b618b45d7c13dd928fd7f60996566f8ee4687bfc4285decd59a5"
+ }
+ ],
+ "integrity": [
+ {
+ "path": "src/cli/handlers/orchestration-request-show-cli.test.ts",
+ "original_sha256": "2fe9b87adb3299d6e51bef12d88d6b4dff3109ee2a4912c694b329484f07e491",
+ "current_sha256": "2d3b204f422fdbaf36b6bc3dad38f39939bb4c4c9c79ce3111c4c0c11798bbe7",
+ "non_trivia_tokens": 400,
+ "ast_equal": true,
+ "token_equal": true,
+ "evidence_comment_deltas": [
+ "src/cli/handlers/orchestration/mutation-request-show-handler.ts",
+ "src/cli/test-fixtures.ts",
+ "src/cli/format.ts"
+ ]
+ },
+ {
+ "path": "src/cli/handlers/orchestration-task-list-brief.test.ts",
+ "original_sha256": "d96abac2198f698f6765f04b1aedd37a6d1a82e9c6db8be7b774db185a8aa3db",
+ "current_sha256": "9626ccc08202eff4bd26a8af901b6438bbeda87b0b94ba70819d600ab04c1dc8",
+ "non_trivia_tokens": 444,
+ "ast_equal": true,
+ "token_equal": true,
+ "evidence_comment_deltas": [
+ "src/cli/handlers/orchestration/task-handlers.ts",
+ "src/cli/handlers/orchestration/terminal-identity.ts",
+ "src/cli/format.ts",
+ "src/cli/test-fixtures.ts"
+ ]
+ },
+ {
+ "path": "src/cli/handlers/orchestration-worker-cli.test.ts",
+ "original_sha256": "4bd566b92e4621dc7963ae0df106337dfea79027946eea767262d5365f3edd3c",
+ "current_sha256": "aadd091613f5e559c61de4a4f3261d9866b6e798844b291991f527ef733ffe52",
+ "non_trivia_tokens": 3607,
+ "ast_equal": true,
+ "token_equal": true,
+ "evidence_comment_deltas": [
+ "src/cli/handlers/orchestration/worker-terminal-handlers.ts",
+ "src/cli/handlers/orchestration/worker-observation-handlers.ts",
+ "src/cli/handlers/orchestration/worker-output.ts",
+ "src/cli/handlers/orchestration/worker-list-run-scope.ts",
+ "src/cli/handlers/orchestration/terminal-identity.ts",
+ "src/cli/handlers/orchestration/mutation-request.ts",
+ "src/cli/args.ts",
+ "src/cli/help.ts",
+ "src/cli/format.ts",
+ "src/cli/test-fixtures.ts"
+ ]
+ },
+ {
+ "path": "src/cli/handlers/orchestration-worker-show-wait-cli.test.ts",
+ "original_sha256": "7b8a37bfde13936b093e46eda0911484b403603f85556138b335febd7b0b9c7c",
+ "current_sha256": "710992a3d868c1d803f506946815f93d3e3340f962669aada056bb58c65a0f1d",
+ "non_trivia_tokens": 522,
+ "ast_equal": true,
+ "token_equal": true,
+ "evidence_comment_deltas": [
+ "src/cli/handlers/orchestration/worker-observation-handlers.ts",
+ "src/cli/format.ts",
+ "src/cli/test-fixtures.ts"
+ ]
+ },
+ {
+ "path": "src/cli/handlers/orchestration.test.ts",
+ "original_sha256": "7b4d7cec11b53639a118d9222cb8464031a9f81104fe65d0cbc9ef9477b1c75a",
+ "current_sha256": "16f4fe004f94050f71fa6fdbaa13f2c5aa8a12b421752a89f60212dfaf0b6df0",
+ "non_trivia_tokens": 3791,
+ "ast_equal": true,
+ "token_equal": true,
+ "evidence_comment_deltas": [
+ "src/cli/handlers/orchestration/message-send-handler.ts",
+ "src/cli/handlers/orchestration/message-check-handler.ts",
+ "src/cli/handlers/orchestration/question-handler.ts",
+ "src/cli/handlers/orchestration/message-payload.ts",
+ "src/cli/handlers/orchestration/terminal-identity.ts"
+ ]
+ },
+ {
+ "path": "src/cli/handlers/orchestration/mutation-request.test.ts",
+ "original_sha256": "3390a87bda316491b8dbbe706a0e6bf49a5fd5c11acb99719e34be167f147645",
+ "current_sha256": "f730d6ef1e630586421b79b1d4f256cacd8d754b1210f011b5a9e65c9667d91d",
+ "non_trivia_tokens": 1424,
+ "ast_equal": true,
+ "token_equal": true,
+ "evidence_comment_deltas": [
+ "src/cli/handlers/orchestration/mutation-request.ts",
+ "src/cli/orchestration-mutation-recovery.ts"
+ ]
+ },
+ {
+ "path": "src/cli/handlers/orchestration/worker-list-run-scope.test.ts",
+ "original_sha256": "f49c1d6f02367a1768521b57c1cbcbc85be492dae239c0f7c5033eba9f0bb839",
+ "current_sha256": "89cb8c2316f50ad7e2e2dc11cffab9bf8608cecc00507def888150c1af36be8a",
+ "non_trivia_tokens": 698,
+ "ast_equal": true,
+ "token_equal": true,
+ "evidence_comment_deltas": [
+ "src/cli/handlers/orchestration/worker-list-run-scope.ts",
+ "src/cli/handlers/orchestration/worker-terminal-handlers.ts",
+ "src/cli/handlers/orchestration/terminal-identity.ts",
+ "src/cli/format.ts",
+ "src/cli/test-fixtures.ts"
+ ]
+ },
+ {
+ "path": "src/cli/handlers/orchestration/worker-output.test.ts",
+ "original_sha256": "f298b6c7e256e591cf11b4f4403d0255620ac8474a41235e5eb938edfd20b4bf",
+ "current_sha256": "edb6aa60817383bc900222aa0d7e96c0e1c67dd043d2b9b9573fa6221ba492eb",
+ "non_trivia_tokens": 2499,
+ "ast_equal": true,
+ "token_equal": true,
+ "evidence_comment_deltas": ["src/cli/handlers/orchestration/worker-output.ts"]
+ }
+ ],
+ "platform_limits": [
+ "Runtime validation is Linux. Existing Windows-only Unix-socket exclusion is retained; no native Windows/macOS execution is claimed.",
+ "Historical mutation results remain tied to their recorded earlier source hashes; this batch does not rerun mutations for comment-only changes."
+ ]
+}
diff --git a/docs/audits/test-value/reviews/upstream-0002.jsonl b/docs/audits/test-value/reviews/upstream-0002.jsonl
new file mode 100644
index 00000000000..1369c19ee00
--- /dev/null
+++ b/docs/audits/test-value/reviews/upstream-0002.jsonl
@@ -0,0 +1,8 @@
+{"path":"src/cli/handlers/orchestration-request-show-cli.test.ts","sha256":"2fe9b87adb3299d6e51bef12d88d6b4dff3109ee2a4912c694b329484f07e491","reviewed_sha256":"2d3b204f422fdbaf36b6bc3dad38f39939bb4c4c9c79ce3111c4c0c11798bbe7","source_commit":"b6101c69369","reviewer":"root","status":"reviewed","decision":"fix","classification":"vitest-cli-orchestration-rpc-output-and-settlement-boundary","rationale":"Re-review after the merge at 41b5cf015be7970a23e91d4ce76d52d781db4e1b: all upstream changes are comments. Non-trivia tokens and comment-free printed AST are identical to the prior audited final source. Prior decisions, parameter inputs and production contracts remain. Read all original test bodies, hooks, fixed fixtures and both reset parameter rows against the actual handlers and producer/output contracts. Keep distinct settlement and compatibility behavior; repair inaccurate envelopes, environment leakage and stale writer-callback reuse.","evidence":["src/cli/handlers/orchestration/mutation-request-show-handler.ts","src/main/runtime/rpc/methods/orchestration/runs/mutation-request-show.ts","src/shared/orchestration-mutation-request.ts","src/cli/test-fixtures.ts","src/cli/format.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/mutation-request-show-handler.ts":"ecaae2b70913263025d2be3d808aa4e1db3d26f9e2089a6f9768978d86cb8e52","src/main/runtime/rpc/methods/orchestration/runs/mutation-request-show.ts":"20d225c00febf29e7320137b75dc896a70b1de9a31f110207890d2febad4c402","src/shared/orchestration-mutation-request.ts":"c134b85cf814ba68cd5541f51e9cab37bb5e0113368f0312f42e1add05cede6b","src/cli/test-fixtures.ts":"6aedc6de29e6067251033e2be73efdc64e0da89f7e205726026981eac5db610c","src/cli/format.ts":"6dc590cc2ba444024dbfb156af548af4bcdd687c77b64a107ae5bd4573284414"},"evidence_source_sha256":{"src/cli/handlers/orchestration/mutation-request-show-handler.ts":"66a907a2193da3be14664a91e6ff2d20635303f0ec459705232fb03a88454cbd","src/main/runtime/rpc/methods/orchestration/runs/mutation-request-show.ts":"20d225c00febf29e7320137b75dc896a70b1de9a31f110207890d2febad4c402","src/shared/orchestration-mutation-request.ts":"c134b85cf814ba68cd5541f51e9cab37bb5e0113368f0312f42e1add05cede6b","src/cli/test-fixtures.ts":"de24d3f101b8617a402e27a895fc1e45f88fb79f6229a1771107622d243f9a7b","src/cli/format.ts":"f4ff6e2216c90a2a7ddc706957cd966f1510e7ff7304bdfd89d935d9665778d9"},"cases":[{"line":30,"title":"asks the runtime without sending a mutation request id","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Keep the exact read-only requestShow method and params; repair its successful fixture with the existing RPC envelope factory so the actual output boundary receives a real response shape.","source_sha256":"fb930485831880e9e3ec41484bc7eb44deb45df4214fca147341ac067120df58","start":1008,"end":1348,"parameter_inputs":[],"previous_review":{"batch":"root-0066.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":29,"title":"asks the runtime without sending a mutation request id","decision":"fix","reason":"Keep the exact read-only requestShow method and params; repair its successful fixture with the existing RPC envelope factory so the actual output boundary receives a real response shape."}},{"line":40,"title":"renders the state and the honest reading of it","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Repair the raw-result double and manually bypassed unwrap: capture the current output call, verify its envelope/plain mode and execute its formatter with that response.result. Preserve the exact honest state text.","source_sha256":"1b9d17f5c63351450fc7c0a9456cfcea86c7b1b97d261af3aaa0ec25ac8c089e","start":1352,"end":2123,"parameter_inputs":[],"previous_review":{"batch":"root-0066.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":37,"title":"renders the state and the honest reading of it","decision":"fix","reason":"Repair the raw-result double and manually bypassed unwrap: capture the current output call, verify its envelope/plain mode and execute its formatter with that response.result. Preserve the exact honest state text."}},{"line":62,"title":"names the version gap when the server predates the command","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. An older server method_not_found becomes incompatible_runtime with actionable server-update guidance; remote clients and hosts can update independently.","source_sha256":"fac449af49c6236c03eb698684a6e673e9fb1c39758537190198a30f34d03998","start":2127,"end":2513,"parameter_inputs":[],"previous_review":{"batch":"root-0066.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":58,"title":"names the version gap when the server predates the command","decision":"keep","reason":"An older server method_not_found becomes incompatible_runtime with actionable server-update guidance; remote clients and hosts can update independently."}}],"original_declarations":3,"final_declarations":3,"validation":"reviews/upstream-0002-validation.json","previous_review":{"batch":"root-0066.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","reviewed_sha256":"2fe9b87adb3299d6e51bef12d88d6b4dff3109ee2a4912c694b329484f07e491","validation":"reviews/root-0066-validation.json"}}
+{"path":"src/cli/handlers/orchestration-task-list-brief.test.ts","sha256":"d96abac2198f698f6765f04b1aedd37a6d1a82e9c6db8be7b774db185a8aa3db","reviewed_sha256":"9626ccc08202eff4bd26a8af901b6438bbeda87b0b94ba70819d600ab04c1dc8","source_commit":"b6101c69369","reviewer":"root","status":"reviewed","decision":"fix","classification":"vitest-cli-task-brief-mixed-version-output","rationale":"Re-review after the merge at 41b5cf015be7970a23e91d4ce76d52d781db4e1b: all upstream changes are comments. Non-trivia tokens and comment-free printed AST are identical to the prior audited final source. Prior decisions, parameter inputs and production contracts remain. Read both cases and actual task-list/summary/output contracts. Name a Run to isolate brief preprocessing from caller identity RPCs; require one exact list RPC and one fresh JSON writer call. Replace unchecked casts and length-only output oracle; preserve server row values without imposing object identity. Final integration uses an actual RuntimeClient instance with a stubbed call method and complete checked handler context, removing unsafe context casts.","evidence":["src/cli/handlers/orchestration/task-handlers.ts","src/shared/orchestration-task-summary.ts","src/cli/handlers/orchestration/terminal-identity.ts","src/cli/format.ts","src/cli/test-fixtures.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/task-handlers.ts":"48bb3f873d09c289bd83ea21bbcb9858ff787845d17476d2c264a4faa99d0c81","src/shared/orchestration-task-summary.ts":"71564bbb614278f5cc0882c08e0d255696b1333dc42174471c64f0777e9ea288","src/cli/handlers/orchestration/terminal-identity.ts":"e6a9f5d441954f796faeeeed1cb608f08aec29e7423d7750dd3837bf2d5c3f4f","src/cli/format.ts":"6dc590cc2ba444024dbfb156af548af4bcdd687c77b64a107ae5bd4573284414","src/cli/test-fixtures.ts":"6aedc6de29e6067251033e2be73efdc64e0da89f7e205726026981eac5db610c"},"evidence_source_sha256":{"src/cli/handlers/orchestration/task-handlers.ts":"a3421ada9a349c1ffde7ba38203459d9a7cb83502b9adf8eb6038661872c7988","src/shared/orchestration-task-summary.ts":"71564bbb614278f5cc0882c08e0d255696b1333dc42174471c64f0777e9ea288","src/cli/handlers/orchestration/terminal-identity.ts":"17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306","src/cli/format.ts":"f4ff6e2216c90a2a7ddc706957cd966f1510e7ff7304bdfd89d935d9665778d9","src/cli/test-fixtures.ts":"de24d3f101b8617a402e27a895fc1e45f88fb79f6229a1771107622d243f9a7b"},"cases":[{"line":46,"title":"requests server-side brief and falls back client-side for older runtimes","start":1435,"end":2028,"source_sha256":"1610883c19a28565ee5a60f090a057153ff56dad6c15a46eb433f34dbfed7839","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Use an actual RPC response envelope and a Run-scoped read, require exactly one taskList request and its current JSON output, and compare the independently stated normalized 160-character text plus truncation flag instead of length alone.","parameter_inputs":[],"previous_review":{"batch":"root-0067.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":26,"title":"requests server-side brief and falls back client-side for older runtimes","decision":"fix","reason":"Use an actual RPC response envelope and a Run-scoped read, require exactly one taskList request and its current JSON output, and compare the independently stated normalized 160-character text plus truncation flag instead of length alone."}},{"line":61,"title":"passes server-abbreviated rows through untouched","start":2032,"end":2613,"source_sha256":"a1dd03d8387ab25e8cc78cdb1ce616574e6b36eec1d000d805f43000991eba35","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Preserve the server-provided brief row and true truncation flag by comparing output values. Remove array-identity requirement; a semantically equivalent copy is valid, while incorrectly re-abbreviating the short server result flips its flag and fails.","parameter_inputs":[],"previous_review":{"batch":"root-0067.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":45,"title":"passes server-abbreviated rows through untouched","decision":"fix","reason":"Preserve the server-provided brief row and true truncation flag by comparing output values. Remove array-identity requirement; a semantically equivalent copy is valid, while incorrectly re-abbreviating the short server result flips its flag and fails."}}],"original_declarations":2,"final_declarations":2,"validation":"reviews/upstream-0002-validation.json","previous_review":{"batch":"root-0067.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","reviewed_sha256":"d96abac2198f698f6765f04b1aedd37a6d1a82e9c6db8be7b774db185a8aa3db","validation":"reviews/root-0067-validation.json"}}
+{"path":"src/cli/handlers/orchestration-worker-cli.test.ts","sha256":"4bd566b92e4621dc7963ae0df106337dfea79027946eea767262d5365f3edd3c","reviewed_sha256":"aadd091613f5e559c61de4a4f3261d9866b6e798844b291991f527ef733ffe52","source_commit":"b6101c69369","reviewer":"root","status":"reviewed","decision":"fix","classification":"vitest-cli-worker-contract-and-output","rationale":"Re-review after the merge at 41b5cf015be7970a23e91d4ce76d52d781db4e1b: all upstream changes are comments. Non-trivia tokens and comment-free printed AST are identical to the prior audited final source. Prior decisions, parameter inputs and production contracts remain. Review all21 declarations, both parameter tables and actual launch/read/list/terminal handlers, parser/spec/help/format/scoping contracts. Replace duplicated formatter fixtures with real writer output, isolate environment/exit/console state, route scope RPCs independently and exercise actual flag validation. Retain all24 runtime controls with fewer lines; temporary warning mutation distinguishes old/new coverage. Final integration uses an actual RuntimeClient instance with a stubbed call method and complete checked handler context, removing unsafe context casts.","evidence":["src/cli/handlers/orchestration/worker-launch-handler.ts","src/cli/handlers/orchestration/worker-terminal-handlers.ts","src/cli/handlers/orchestration/worker-observation-handlers.ts","src/cli/handlers/orchestration/worker-output.ts","src/cli/handlers/orchestration/worker-list-run-scope.ts","src/cli/handlers/orchestration/terminal-identity.ts","src/cli/handlers/orchestration/mutation-request.ts","src/cli/specs/orchestration-worker-specs.ts","src/cli/args.ts","src/cli/help.ts","src/cli/format.ts","src/cli/test-fixtures.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/worker-launch-handler.ts":"e93e6413b9fb5c25827b77f83b99e68c097d94bf230f22a8caaca4ea9f67f584","src/cli/handlers/orchestration/worker-terminal-handlers.ts":"4840c64afebf0dcd1294a103c9729ba60cb2f9e2f90b8856b973aa0452ca57ff","src/cli/handlers/orchestration/worker-observation-handlers.ts":"66bc77cbe6b69123ac6769fd77f344c1f278ccb69d7acbd514eea37c23865778","src/cli/handlers/orchestration/worker-output.ts":"440b124706f981a16d7ad1e4314a25adb10a0b7c9ad9159b0674277860d4868a","src/cli/handlers/orchestration/worker-list-run-scope.ts":"d793a32c2a9bf5c4f8a7cb3a77472515fc0872e42f45e0768f89ed8c173ee0fc","src/cli/handlers/orchestration/terminal-identity.ts":"e6a9f5d441954f796faeeeed1cb608f08aec29e7423d7750dd3837bf2d5c3f4f","src/cli/handlers/orchestration/mutation-request.ts":"f02e3b7cd7e00d32914b02b3909ce2f03dcf13168db4495a25a8482bb0eba1c0","src/cli/specs/orchestration-worker-specs.ts":"ffcd3e08792a5fdde24d2c149ea5a16a48861f8fcbbb5d4a7e83acf6a43e09d3","src/cli/args.ts":"fd556b57765a4a4615d30491a167283db2bda39abb542d6f24e95668bac63db7","src/cli/help.ts":"7833f058dafd74316b80ea310f2f0827556462c0019b9f45b4b84648f8a334a0","src/cli/format.ts":"6dc590cc2ba444024dbfb156af548af4bcdd687c77b64a107ae5bd4573284414","src/cli/test-fixtures.ts":"6aedc6de29e6067251033e2be73efdc64e0da89f7e205726026981eac5db610c"},"evidence_source_sha256":{"src/cli/handlers/orchestration/worker-launch-handler.ts":"e93e6413b9fb5c25827b77f83b99e68c097d94bf230f22a8caaca4ea9f67f584","src/cli/handlers/orchestration/worker-terminal-handlers.ts":"dfba8229284864bd4babfb6d542f000c3aef0542667c7a51021f7a9ce65025b2","src/cli/handlers/orchestration/worker-observation-handlers.ts":"cb4233d5ec2469db2efe5dacb74f1e622d0a61bdaba7a0beaef2be5bdca6d9aa","src/cli/handlers/orchestration/worker-output.ts":"6fcd061ec6aa88d174eca5e51ef53eceb8f3f40f63c417f5dab9d764d66be4cf","src/cli/handlers/orchestration/worker-list-run-scope.ts":"a1fb99643fd1fa72ef2491b323b40906294034df8a9b5b7d323c352b8ebca135","src/cli/handlers/orchestration/terminal-identity.ts":"17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306","src/cli/handlers/orchestration/mutation-request.ts":"66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408","src/cli/specs/orchestration-worker-specs.ts":"ffcd3e08792a5fdde24d2c149ea5a16a48861f8fcbbb5d4a7e83acf6a43e09d3","src/cli/args.ts":"25e5670ee14e1bbc29b6eff5893fdf16aab868947e9dd079854219245cbe3536","src/cli/help.ts":"2240c133948e5bca9a2281a74fcbbf624b51206108c88e08d27aad8a9af38cce","src/cli/format.ts":"f4ff6e2216c90a2a7ddc706957cd966f1510e7ff7304bdfd89d935d9665778d9","src/cli/test-fixtures.ts":"de24d3f101b8617a402e27a895fc1e45f88fb79f6229a1771107622d243f9a7b"},"cases":[{"line":71,"title":"passes the complete supported creation contract and retry receipt","start":2505,"end":4118,"source_sha256":"283684dd2c2e901d94ea3d1a5098fc5e8ea06063ab3c1229f7090f1eba7d5162","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain exact workerStart mapping of all creation flags and retry receipt id; explicit coordinator avoids identity lookup and successful state leaves the exit code unset.","parameter_inputs":[],"previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":51,"title":"passes the complete supported creation contract and retry receipt","decision":"keep","reason":"Retain exact workerStart mapping of all creation flags and retry receipt id; explicit coordinator avoids identity lookup and successful state leaves the exit code unset."}},{"line":127,"title":"capability-gates and forwards per-invocation launch preferences","start":4122,"end":5139,"source_sha256":"65e8ea6f13560a467c163a93903dbb4d8110c28531bb3ad3f1d597c7cc0136a6","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain ordered runtime capability probe before forwarding per-invocation model/effort; mutation must be the second request with the chosen agent and preferences.","parameter_inputs":[],"previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":107,"title":"capability-gates and forwards per-invocation launch preferences","decision":"keep","reason":"Retain ordered runtime capability probe before forwarding per-invocation model/effort; mutation must be the second request with the chosen agent and preferences."}},{"line":167,"title":"forwards --spec without a task for atomic creation","start":5143,"end":5704,"source_sha256":"b88aced361f82942dd07354128a84bd4c01ec7e07f5b0f00ea093b431fe7ab7c","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain atomic --spec creation without --task at the actual workerStart request boundary.","parameter_inputs":[],"previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":147,"title":"forwards --spec without a task for atomic creation","decision":"keep","reason":"Retain atomic --spec creation without --task at the actual workerStart request boundary."}},{"line":184,"title":"fails before worker-start when the runtime would strip launch preferences","start":5708,"end":6220,"source_sha256":"b3c7813d605e085e44f3b1c2419c3ffcd6864956c517916a06ed66a7b30d3da4","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. An older host with no launch-preference capability must reject before mutation; exactly one status probe is allowed.","parameter_inputs":[],"previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":164,"title":"fails before worker-start when the runtime would strip launch preferences","decision":"keep","reason":"An older host with no launch-preference capability must reject before mutation; exactly one status probe is allowed."}},{"line":201,"title":"sets an unsuccessful exit code for an unknown receipt","start":6224,"end":6718,"source_sha256":"c9e33e87311d4e3f6caa0d50cae073d88031d291233f0fbbe1efae61528806e7","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain unknown receipt exit-1 control; rename the reviewed title to unknown only and independently check the failed receipt exit in the existing refused-start case.","parameter_inputs":[],"previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":181,"title":"sets an unsuccessful exit code for failed and unknown receipts","decision":"keep","reason":"Retain unknown receipt exit-1 control; rename the reviewed title to unknown only and independently check the failed receipt exit in the existing refused-start case."}},{"line":223,"title":"renders %s recovery commands through the resolved %s executable","start":6722,"end":8159,"source_sha256":"db0677e16e581b3d3ce8d2af14a7cfb07821fb217b6350192f11e7172396817b","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Require one fresh real writer/console call; verify resolved nextCommands in the actual receipt and printed plain output, removing the unchecked cast and preserving both executable/format rows.","parameter_inputs":[{"line":224,"expression":"['JSON', 'orca-dev', true]","decision":"keep","reason":"JSON recovery receipt uses dev executable and unknown exit state.","row":1,"source_sha256":"58efc15fedf0d476e89e37bef0d75d2589dc18211e88aeafb9f9fbb4e95f4886"},{"line":225,"expression":"['plain', 'orca-ide', false]","decision":"keep","reason":"Plain recovery output uses Linux packaged alias and must show resolved next command.","row":2,"source_sha256":"82bc7016b6613cc6cb8c522cde13ee18740e71d363129a7905ba903dd7bb9e20"}],"previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":203,"title":"renders %s recovery commands through the resolved %s executable","decision":"fix","reason":"Require one fresh real writer/console call; verify resolved nextCommands in the actual receipt and printed plain output, removing the unchecked cast and preserving both executable/format rows."}},{"line":268,"title":"prints the host error for a refused worker start","start":8163,"end":8897,"source_sha256":"e7136c9dbc78558948334239c86f300fcf60034edbb2ec67f0a3dc76d5958c1e","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Observe the host lastError through actual console output rather than reconstructed formatter data; also assert failed state sets exit 1.","parameter_inputs":[],"previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":250,"title":"prints the host error for a refused worker start","decision":"fix","reason":"Observe the host lastError through actual console output rather than reconstructed formatter data; also assert failed state sets exit 1."}},{"line":296,"title":"prints a reveal warning for a live background worker","start":8901,"end":9646,"source_sha256":"4ca0d5b99cc52b7cbda4a36f8fec00605726b4e9d524bfb6bb79978e12b15e42","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Observe the reveal warning through the actual response-to-writer path. The original suite passes when the handler drops warning; the reviewed case fails, with all other cases passing.","parameter_inputs":[],"previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":294,"title":"prints a reveal warning for a live background worker","decision":"fix","reason":"Observe the reveal warning through the actual response-to-writer path. The original suite passes when the handler drops warning; the reviewed case fails, with all other cases passing."}},{"line":324,"title":"states the worker mode that actually ran, so a fallback is never silent","start":9650,"end":10602,"source_sha256":"9d812371a3de0f64c24edb8ed2bb48540475064c59c3361276e38f87f77b2cbe","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Assert actual printed fallback mode detail from the host receipt; remove duplicated fixture and formatter cast that bypassed handler data flow.","parameter_inputs":[],"previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":335,"title":"states the worker mode that actually ran, so a fallback is never silent","decision":"fix","reason":"Assert actual printed fallback mode detail from the host receipt; remove duplicated fixture and formatter cast that bypassed handler data flow."}},{"line":356,"title":"prints the retained-process warning for a manual worker-stop","start":10606,"end":11288,"source_sha256":"c1fb037561f85308286569ef58968e8676e743e418240af5d1a0fdc6a624a4a6","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Assert actual printed retained-process warning from workerStop; remove reconstructed receipt and unchecked formatter cast.","parameter_inputs":[],"previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":388,"title":"prints the retained-process warning for a manual worker-stop","decision":"fix","reason":"Assert actual printed retained-process warning from workerStop; remove reconstructed receipt and unchecked formatter cast."}},{"line":378,"title":"allows the initial zero cursor when paging worker output","start":11292,"end":11964,"source_sha256":"0f62f6c1ca9cef722d3da5720424dc61fb7b7f30b4ae242a85a54b94f131598f","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain initial string zero cursor normalization to number 0 with explicit limit at the workerRead wire boundary.","parameter_inputs":[],"previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":425,"title":"allows the initial zero cursor when paging worker output","decision":"keep","reason":"Retain initial string zero cursor normalization to number 0 with explicit limit at the workerRead wire boundary."}},{"line":405,"title":"passes opaque source-pinned cursors and explicit source selection","start":11968,"end":12717,"source_sha256":"b0978702dfe0955c79b4062bc3ecfee86ef559d2f2b0e8a599b1e530176b48af","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain opaque cursor unchanged and explicit transcript source at workerRead; numeric coercion would corrupt pinned opaque cursor semantics.","parameter_inputs":[],"previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":452,"title":"passes opaque source-pinned cursors and explicit source selection","decision":"keep","reason":"Retain opaque cursor unchanged and explicit transcript source at workerRead; numeric coercion would corrupt pinned opaque cursor semantics."}},{"line":433,"title":"formats a legacy worker-list response without projection or page fields","start":12721,"end":13499,"source_sha256":"53bce7e10fc4f666eb95faccfb9b0c3bfd9c99621c62ae141b2619270b7ca544","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Give bound-Run lookup a real distinct no-current-Run envelope and assert legacy worker row through actual output; preserve absent projection/page compatibility.","parameter_inputs":[],"previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":480,"title":"formats a legacy worker-list response without projection or page fields","decision":"fix","reason":"Give bound-Run lookup a real distinct no-current-Run envelope and assert legacy worker row through actual output; preserve absent projection/page compatibility."}},{"line":462,"title":"passes a truncation warning to the receipt and still prints the cursor hint","start":13503,"end":14429,"source_sha256":"6996a539f5b20f945e46654b4313b520a18cbebf99108336f4937817a04f4e5d","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Select actual plain output and check its warning/cursor; retain receipt warning preservation and return the worker response only to workerList, never runCurrent.","parameter_inputs":[],"previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":528,"title":"passes a truncation warning to the receipt and still prints the cursor hint","decision":"fix","reason":"Select actual plain output and check its warning/cursor; retain receipt warning preservation and return the worker response only to workerList, never runCurrent."}},{"line":490,"title":"fails closed when an older runtime strips explicit %s semantics","start":14433,"end":15341,"source_sha256":"12f9c8b1bbab09aa595fe7a4ad681b1e60f8d16d92209a1957fad3dc39e0214e","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Each explicit modern flag must reject a page-less old-host result without output or enumeration retry. Return real no-current-Run response for scope probe, keeping three independent flag rows.","parameter_inputs":[{"line":491,"expression":"['--include-remote', new Map([['include-remote', true]])]","decision":"keep","reason":"Remote opt-in cannot silently degrade to local-only enumeration on old hosts.","row":1,"source_sha256":"8cbb0688fd10023e45ee98969373629ec1d103355381cf1b40e69c0b8214f978"},{"line":492,"expression":"['--limit', new Map([['limit', '10']])]","decision":"keep","reason":"An explicit limit cannot be silently ignored by an old host.","row":2,"source_sha256":"c57094c2cebb90d27df3ad6c3ee690bdb38ce2571cc3ed239f496d8f1b4b4d93"},{"line":493,"expression":"['--cursor', new Map([['cursor', 'legacy_cursor']])]","decision":"keep","reason":"An explicit opaque cursor cannot be silently ignored by an old host.","row":3,"source_sha256":"1208b18410ae29f7b16938ba73e81a80405073694a1f7629c33aeca1b94ab3da"}],"previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":559,"title":"fails closed when an older runtime strips explicit %s semantics","decision":"fix","reason":"Each explicit modern flag must reject a page-less old-host result without output or enumeration retry. Return real no-current-Run response for scope probe, keeping three independent flag rows."}},{"line":513,"title":"prints each projected row with its literal next-action argv","start":15345,"end":17651,"source_sha256":"2758ff0f7ecfefeea1f5b5cc467561e5d25ae51949d804ef25aff29f815d66de","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Read live/released projected rows and literal next-action argv from actual printed output; remove captured formatter casts and feed scope lookup a distinct valid envelope.","parameter_inputs":[],"previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":582,"title":"prints each projected row with its literal next-action argv","decision":"fix","reason":"Read live/released projected rows and literal next-action argv from actual printed output; remove captured formatter casts and feed scope lookup a distinct valid envelope."}},{"line":580,"title":"prints partial host warnings alongside worker rows","start":17655,"end":18976,"source_sha256":"bc855bf0daf7ebce59aa81b10c986cc72dd657ae7b35a9a7827ba4c30e644e64","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Observe remote worker row plus exact partial-host warning in actual printed output, preserving environment identity, error code and dispatch identity.","parameter_inputs":[],"previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":652,"title":"prints partial host warnings alongside worker rows","decision":"fix","reason":"Observe remote worker row plus exact partial-host warning in actual printed output, preserving environment identity, error code and dispatch identity."}},{"line":623,"title":"prints partial host warnings when no worker rows are available","start":18980,"end":19953,"source_sha256":"39e31f2f910db78ed101ed057883295aa2d7610ec014182589c96616ef7f5baf","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Observe actual empty-worker output and its partial-host warning, preserving fallback scope and empty dispatch list wording.","parameter_inputs":[],"previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":698,"title":"prints partial host warnings when no worker rows are available","decision":"fix","reason":"Observe actual empty-worker output and its partial-host warning, preserving fallback scope and empty dispatch list wording."}},{"line":654,"title":"preserves partial host errors in JSON output","start":19957,"end":20820,"source_sha256":"450207f3b5aa797f09b37e2654812ea2bd22f131e283dd336b7847491abf3621","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Keep exact JSON writer receipt/format control while routing scope and workerList mocks separately, preventing malformed scope fixtures from silently falling back.","parameter_inputs":[],"previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":732,"title":"preserves partial host errors in JSON output","decision":"fix","reason":"Keep exact JSON writer receipt/format control while routing scope and workerList mocks separately, preventing malformed scope fixtures from silently falling back."}},{"line":686,"title":"parses, forwards, and documents the remote fleet opt-in","start":20824,"end":22375,"source_sha256":"3a1e52e101adf1e6c8f1bb7ecd73541612ff221634e28bea2377d4247a7d628c","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Parse and validate the real remote opt-in and pass those parsed flags to the handler. Retain help, forwarding and default-omission controls while removing copied BOOLEAN_FLAGS/allowedFlags inventories.","parameter_inputs":[],"previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":764,"title":"parses, forwards, and documents the remote fleet opt-in","decision":"fix","reason":"Parse and validate the real remote opt-in and pass those parsed flags to the handler. Retain help, forwarding and default-omission controls while removing copied BOOLEAN_FLAGS/allowedFlags inventories."}},{"line":732,"title":"keeps cleanup and retention TTL controls off the public CLI surface","start":22379,"end":23790,"source_sha256":"1d1de08b70f99234e6606dc339560535b41e7e4794668dee73cba51b6bcec4a2","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Invoke real command/flag validation for unsupported cleanup, until and policy with a valid retain control; pass parsed retain flags to actual handler instead of asserting copied spec inventories.","parameter_inputs":[],"previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","line":809,"title":"keeps cleanup and retention TTL controls off the public CLI surface","decision":"fix","reason":"Invoke real command/flag validation for unsupported cleanup, until and policy with a valid retain control; pass parsed retain flags to actual handler instead of asserting copied spec inventories."}}],"original_declarations":21,"final_declarations":21,"validation":"reviews/upstream-0002-validation.json","previous_review":{"batch":"root-0068.jsonl","source_commit":"5d32f372e76983b6436d5700ce688990662e7243","reviewed_sha256":"4bd566b92e4621dc7963ae0df106337dfea79027946eea767262d5365f3edd3c","validation":"reviews/root-0068-validation.json"}}
+{"path":"src/cli/handlers/orchestration-worker-show-wait-cli.test.ts","sha256":"7b8a37bfde13936b093e46eda0911484b403603f85556138b335febd7b0b9c7c","reviewed_sha256":"710992a3d868c1d803f506946815f93d3e3340f962669aada056bb58c65a0f1d","source_commit":"b6101c69369","reviewer":"root","status":"reviewed","decision":"fix","classification":"vitest-cli-worker-wait-mixed-version-output","rationale":"Re-review after the merge at 41b5cf015be7970a23e91d4ce76d52d781db4e1b: all upstream changes are comments. Non-trivia tokens and comment-free printed AST are identical to the prior audited final source. Prior decisions, parameter inputs and production contracts remain. Read all4 cases and actual worker-show handler/printResult. Replace malformed raw RPC result, snake_case fields, reference-identity/cast formatter bypass with real envelopes, actual writer output, exact dispatch request and fresh console observation. Retain evaluated-none versus unknown compatibility cases.","evidence":["src/cli/handlers/orchestration/worker-observation-handlers.ts","src/cli/format.ts","src/cli/test-fixtures.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/worker-observation-handlers.ts":"66bc77cbe6b69123ac6769fd77f344c1f278ccb69d7acbd514eea37c23865778","src/cli/format.ts":"6dc590cc2ba444024dbfb156af548af4bcdd687c77b64a107ae5bd4573284414","src/cli/test-fixtures.ts":"6aedc6de29e6067251033e2be73efdc64e0da89f7e205726026981eac5db610c"},"evidence_source_sha256":{"src/cli/handlers/orchestration/worker-observation-handlers.ts":"cb4233d5ec2469db2efe5dacb74f1e622d0a61bdaba7a0beaef2be5bdca6d9aa","src/cli/format.ts":"f4ff6e2216c90a2a7ddc706957cd966f1510e7ff7304bdfd89d935d9665778d9","src/cli/test-fixtures.ts":"de24d3f101b8617a402e27a895fc1e45f88fb79f6229a1771107622d243f9a7b"},"cases":[{"line":51,"title":"names the prompt when a worker is waiting on a human","start":1761,"end":2105,"source_sha256":"446b4b6a609888cd0044249e060f1d97e9434602a070f58cb049a395ec768980","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Use real RPC envelope and camelCase contract fields; observe actual writer-to-console human-wait reason/source instead of calling captured formatter on a raw object.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":44,"title":"names the prompt when a worker is waiting on a human","decision":"fix","reason":"Use real RPC envelope and camelCase contract fields; observe actual writer-to-console human-wait reason/source instead of calling captured formatter on a raw object."}},{"line":61,"title":"says none when the pane was evaluated and nothing was waiting","start":2109,"end":2339,"source_sha256":"33c449df9437ae6d1c03ad74d2f3c6947de01351dcace78a7e0c8fa047585ba4","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Use actual printed output for evaluated null agentWait, preserving explicit none rather than unknown.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":54,"title":"says none when the pane was evaluated and nothing was waiting","decision":"fix","reason":"Use actual printed output for evaluated null agentWait, preserving explicit none rather than unknown."}},{"line":67,"title":"says unknown when the field is absent, not none","start":2343,"end":2808,"source_sha256":"6ced1e381576ce0b62d8bdc53b2814e3475dfdc1aedaa882628b0e59227dd0e8","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Use actual printed output for absent agentWait inside an observation; preserve unknown and forbid false none.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":60,"title":"says unknown when the field is absent, not none","decision":"fix","reason":"Use actual printed output for absent agentWait inside an observation; preserve unknown and forbid false none."}},{"line":76,"title":"says unknown when the host sent no observation at all","start":2812,"end":3008,"source_sha256":"3b982502fc7d6ad6b34a9ba8ea8c00085c8dae73f1c8d3a231788ddd353c88bc","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Use actual printed output for entirely absent observation, preserving older-host unknown state.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":69,"title":"says unknown when the host sent no observation at all","decision":"fix","reason":"Use actual printed output for entirely absent observation, preserving older-host unknown state."}}],"original_declarations":4,"final_declarations":4,"validation":"reviews/upstream-0002-validation.json","previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","reviewed_sha256":"7b8a37bfde13936b093e46eda0911484b403603f85556138b335febd7b0b9c7c","validation":"reviews/root-0069-validation.json"}}
+{"path":"src/cli/handlers/orchestration.test.ts","sha256":"7b4d7cec11b53639a118d9222cb8464031a9f81104fe65d0cbc9ef9477b1c75a","reviewed_sha256":"16f4fe004f94050f71fa6fdbaa13f2c5aa8a12b421752a89f60212dfaf0b6df0","source_commit":"b6101c69369","reviewer":"root","status":"reviewed","decision":"fix","classification":"vitest-cli-orchestration-message-and-question-contracts","rationale":"Re-review after the merge at 41b5cf015be7970a23e91d4ce76d52d781db4e1b: all upstream changes are comments. Non-trivia tokens and comment-free printed AST are identical to the prior audited final source. Prior decisions, parameter inputs and production contracts remain. Read all28 declarations,6 parameter tables with24 rows, generated100-message warning fixture and actual send/check/ask/payload/identity/numeric/runtime contracts. Repair a sender-error test that stopped at an earlier guard, make writer/environment state isolated for every invocation, use a real send envelope and replace unchecked peek result cast. Preserve all46 runtime cases.","evidence":["src/cli/handlers/orchestration/message-send-handler.ts","src/cli/handlers/orchestration/message-check-handler.ts","src/cli/handlers/orchestration/question-handler.ts","src/cli/handlers/orchestration/message-payload.ts","src/cli/handlers/orchestration/numeric-flags.ts","src/cli/handlers/orchestration/terminal-identity.ts","src/cli/handlers/orchestration/runtime-compatibility.ts","src/shared/orchestration-check-output.ts","src/shared/orchestration-ask-timeout.ts","src/shared/timer-delay.ts","src/shared/agent-session-caller-env.ts","src/shared/structured-session-marker.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/message-send-handler.ts":"16b1d8feee98dc70f7a87146331f823fde60a99147582f05b0f4de291b1025f1","src/cli/handlers/orchestration/message-check-handler.ts":"7091261a48a28aa3df8e17f29f6a5971409dfc000ccf3917f68ca31e7dc1261d","src/cli/handlers/orchestration/question-handler.ts":"953812a912e8476869b9c1762d7a3aadb1a5c20fcb6e120ef8f50748d8e1ae1c","src/cli/handlers/orchestration/message-payload.ts":"586c37240fe144af1464f4a8d2b11f154e6425b64a7db33d7d2bb882e5213520","src/cli/handlers/orchestration/numeric-flags.ts":"4597506912c474a62f22a2e09d7e9d002adb9a154c7cfffc427c01c3c2159841","src/cli/handlers/orchestration/terminal-identity.ts":"e6a9f5d441954f796faeeeed1cb608f08aec29e7423d7750dd3837bf2d5c3f4f","src/cli/handlers/orchestration/runtime-compatibility.ts":"a102ef1800a19043e2f39efcc12d44d67b8c038ec010fca91e8fa541ec3b19b7","src/shared/orchestration-check-output.ts":"900597c3285f8e5a541ee9c190943ff9426ef4d6603f3eca2cd0dfa5211e7b01","src/shared/orchestration-ask-timeout.ts":"6f6cafcfd2e4133736d3f861c728db98dad615e23e54cf6b3925c76c5579f930","src/shared/timer-delay.ts":"7e529ed30d1b25521f5d72d7c2a6d05d16efe66faf2619b859d67b330cca767f","src/shared/agent-session-caller-env.ts":"5bd635cb3fbcf59fa5784580e501e4223401cd69601d986075d84007017d67cc","src/shared/structured-session-marker.ts":"ee5721b69ac9ecd2aeec64f165dec4b97549a102fd87c0dde93345b03582a683"},"evidence_source_sha256":{"src/cli/handlers/orchestration/message-send-handler.ts":"b8e8e7941f3fa99a9dd782de98be1a296904e0a57e5257a9f75869fdda3036d3","src/cli/handlers/orchestration/message-check-handler.ts":"34bd1b02a753a0a249aebf3d5f39548bddea7e6afae102e42ee23a669abbff39","src/cli/handlers/orchestration/question-handler.ts":"f5219b0475299896027c5a50e26a5a19839365908e91a6d6114197c13ad1015f","src/cli/handlers/orchestration/message-payload.ts":"c27711a5b5f875ec5e93d9eaa0ba4fb23b679596f4ff9d7375fea80cf02db33c","src/cli/handlers/orchestration/numeric-flags.ts":"4597506912c474a62f22a2e09d7e9d002adb9a154c7cfffc427c01c3c2159841","src/cli/handlers/orchestration/terminal-identity.ts":"17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306","src/cli/handlers/orchestration/runtime-compatibility.ts":"a102ef1800a19043e2f39efcc12d44d67b8c038ec010fca91e8fa541ec3b19b7","src/shared/orchestration-check-output.ts":"900597c3285f8e5a541ee9c190943ff9426ef4d6603f3eca2cd0dfa5211e7b01","src/shared/orchestration-ask-timeout.ts":"6f6cafcfd2e4133736d3f861c728db98dad615e23e54cf6b3925c76c5579f930","src/shared/timer-delay.ts":"7e529ed30d1b25521f5d72d7c2a6d05d16efe66faf2619b859d67b330cca767f","src/shared/agent-session-caller-env.ts":"5bd635cb3fbcf59fa5784580e501e4223401cd69601d986075d84007017d67cc","src/shared/structured-session-marker.ts":"ee5721b69ac9ecd2aeec64f165dec4b97549a102fd87c0dde93345b03582a683"},"cases":[{"line":57,"title":"serializes common worker payload fields as JSON","start":2064,"end":3210,"source_sha256":"c86aceb0103552921815b5c79fb0cdeea0976fdf3a62537cec1afa90bb704e74","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain complete structured worker payload serialization at the send RPC boundary, including trimmed nonempty file list, task/dispatch/outcome/report/phase and settlement request.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":69,"title":"serializes common worker payload fields as JSON","decision":"keep","reason":"Retain complete structured worker payload serialization at the send RPC boundary, including trimmed nonempty file list, task/dispatch/outcome/report/phase and settlement request."}},{"line":98,"title":"forwards multiline message bodies without normalization","start":3214,"end":3677,"source_sha256":"372276ce2771887ce44aacbf5131c56c4fb169dfc1dbe229282147793fb72618","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain exact multiline body forwarding with paragraph boundaries; no formatter normalization should change message content.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":110,"title":"forwards multiline message bodies without normalization","decision":"keep","reason":"Retain exact multiline body forwarding with paragraph boundaries; no formatter normalization should change message content."}},{"line":113,"title":"carries Dispatch authority in the RPC envelope instead of message params","start":3681,"end":4390,"source_sha256":"6a981a80cfdae7c5b43f0808ec324373d288cc465cfad323d9804ed81af81c3c","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain dispatch capability and retry id solely in RPC options rather than public message params.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":125,"title":"carries Dispatch authority in the RPC envelope instead of message params","decision":"keep","reason":"Retain dispatch capability and retry id solely in RPC options rather than public message params."}},{"line":135,"title":"rejects mixing raw payload with structured payload flags","start":4394,"end":4838,"source_sha256":"37a6ca97faf5d9089f171f6ff4c91e12f36e0af320346e28a6e57f8fbeacc99c","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain mutually exclusive raw/structured payload refusal before send RPC.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":147,"title":"rejects mixing raw payload with structured payload flags","decision":"keep","reason":"Retain mutually exclusive raw/structured payload refusal before send RPC."}},{"line":150,"title":"rejects worker_done group sends before resolving a sender handle","start":4842,"end":5443,"source_sha256":"32beb78b8081047b39e25db678622adf56287c64e03981229fae1a91413d6721","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain worker_done group-address refusal before sender lookup and RPC, with exact lifecycle group error.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":162,"title":"rejects worker_done group sends before resolving a sender handle","decision":"keep","reason":"Retain worker_done group-address refusal before sender lookup and RPC, with exact lifecycle group error."}},{"line":170,"title":"rejects heartbeat group sends before resolving a sender handle","start":5447,"end":6044,"source_sha256":"2820ffb0720997fc12e3e24c7ce6c9be9845c3019bedbdaa079906f7d7890345","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain heartbeat group-address refusal before sender lookup and RPC, separate from worker_done retry/settlement behavior.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":182,"title":"rejects heartbeat group sends before resolving a sender handle","decision":"keep","reason":"Retain heartbeat group-address refusal before sender lookup and RPC, separate from worker_done retry/settlement behavior."}},{"line":190,"title":"continues to allow worker_done to a concrete terminal handle","start":6048,"end":6807,"source_sha256":"23383f8f2e5ba5e1c31b78ebf03564bf1a0a6ae27926b4db1286c2d8df90878d","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain concrete terminal recipient positive control, structured outcome and lifecycle settlement request.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":202,"title":"continues to allow worker_done to a concrete terminal handle","decision":"keep","reason":"Retain concrete terminal recipient positive control, structured outcome and lifecycle settlement request."}},{"line":219,"title":"sends lifecycle messages from ORCA_TERMINAL_HANDLE without a liveness probe","start":6811,"end":7660,"source_sha256":"0a063e3168951677dcbb1b4df6b129b5b2c5703a3e0fb95d62fb5a20c622bc1f","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain environment sender verbatim with exactly one send RPC and no liveness probe; mixed-version lifecycle authority depends on the original handle.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":231,"title":"sends lifecycle messages from ORCA_TERMINAL_HANDLE without a liveness probe","decision":"keep","reason":"Retain environment sender verbatim with exactly one send RPC and no liveness probe; mixed-version lifecycle authority depends on the original handle."}},{"line":250,"title":"never probes or remints a %s sender even when a pane key is set","start":7664,"end":8759,"source_sha256":"0699eed3bc7d3e2e50f291e7a869eb3f0fc69bc5e9c1748cf5adef1a19c7aa4f","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain both lifecycle types without liveness/reminting despite pane identity; exact one-call count detects accidental scope/probe RPCs.","parameter_inputs":[{"line":8,"expression":"'worker_done'","decision":"keep","reason":"worker_done retains settlement/retry authority.","row":1,"source_sha256":"bb3275af4dadd1627a638b0acd07a88b1432378c3f0a1d8da95e138cbfaa5c22"},{"line":8,"expression":"'heartbeat'","decision":"keep","reason":"heartbeat retains nonsettlement lifecycle authority.","row":2,"source_sha256":"9ee555574fb5ddbed9f6c58bbbb6f256624fb6dd79ebb9ffb0551fbca85cf446"}],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":262,"title":"never probes or remints a %s sender even when a pane key is set","decision":"keep","reason":"Retain both lifecycle types without liveness/reminting despite pane identity; exact one-call count detects accidental scope/probe RPCs."}},{"line":278,"title":"passes ORCA_PANE_KEY as the sender pane identity","start":8763,"end":9335,"source_sha256":"92ebb41a67b003f4fbba2cf974a12bfb444f068e43064431e7e1ef1b209df7e6","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain senderPaneKey forwarding for environment terminal authority and worker_done request envelope.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":290,"title":"passes ORCA_PANE_KEY as the sender pane identity","decision":"keep","reason":"Retain senderPaneKey forwarding for environment terminal authority and worker_done request envelope."}},{"line":298,"title":"reports sender resolution failure instead of raw no_active_terminal","start":9339,"end":9952,"source_sha256":"b496ede7855a4b2860a420f169aa34bd16b7e7e9db5891d248f42b39ded7c5f8","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Use an ordinary send so implicit sender lookup actually executes; lifecycle sends fail earlier and previously bypassed the mocked no_active_terminal rejection. Require lookup once and translated error before send. Targeted production mutation passes the original whole46-case suite and fails exactly this reviewed case.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":310,"title":"reports sender resolution failure instead of raw no_active_terminal","decision":"fix","reason":"Use an ordinary send so implicit sender lookup actually executes; lifecycle sends fail earlier and previously bypassed the mocked no_active_terminal rejection. Require lookup once and translated error before send. Targeted production mutation passes the original whole46-case suite and fails exactly this reviewed case."}},{"line":318,"title":"refuses a structured session without naming a handle it could pass","start":9956,"end":10820,"source_sha256":"3f3f9d163d5cfb8ea1ac9c58581e7fc1732fc1bef886d095a940f912513edc53","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain old structured-session refusal without unsafe --from advice and without focus-based sender or runtime lookup.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":331,"title":"refuses a structured session without naming a handle it could pass","decision":"keep","reason":"Retain old structured-session refusal without unsafe --from advice and without focus-based sender or runtime lookup."}},{"line":341,"title":"does not resolve an identity-less %s sender from the active terminal","start":10824,"end":11519,"source_sha256":"c71d2e8819e447bd41d5b161ae3b77593d9e3dc42cfc56bb5804014180cb83aa","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain both identity-less lifecycle types refusing before active-terminal guessing or RPC; arbitrary focused coordinator cannot become worker authority.","parameter_inputs":[{"line":8,"expression":"'worker_done'","decision":"keep","reason":"worker_done retains settlement/retry authority.","row":1,"source_sha256":"bb3275af4dadd1627a638b0acd07a88b1432378c3f0a1d8da95e138cbfaa5c22"},{"line":8,"expression":"'heartbeat'","decision":"keep","reason":"heartbeat retains nonsettlement lifecycle authority.","row":2,"source_sha256":"9ee555574fb5ddbed9f6c58bbbb6f256624fb6dd79ebb9ffb0551fbca85cf446"}],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":354,"title":"does not resolve an identity-less %s sender from the active terminal","decision":"keep","reason":"Retain both identity-less lifecycle types refusing before active-terminal guessing or RPC; arbitrary focused coordinator cannot become worker authority."}},{"line":399,"title":"rejects invalid check --timeout-ms: %s","start":12572,"end":12957,"source_sha256":"3499c032a15efa1ccce947df2d424978d6c96ae8ef62c506637c11bcd80e91ec","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain all8 distinct invalid check timeout representations rejecting before identity/RPC, including missing, empty, sign, fractional rounding and safe-integer boundary.","parameter_inputs":[{"line":365,"expression":"['missing', true]","decision":"keep","reason":"Reject missing value boolean before caller resolution or RPC.","row":1,"source_sha256":"b69befb887c9f5f2230f384c62605201d30f288181cedd3d2e2ea4e5709e48f0"},{"line":366,"expression":"['empty', '']","decision":"keep","reason":"Reject empty value before caller resolution or RPC.","row":2,"source_sha256":"fa0ea37190f52604e936eab677c899ca7e295980f8b8c58d21f24fb3f99645ec"},{"line":367,"expression":"['non-numeric', 'not-a-number']","decision":"keep","reason":"Reject nonnumeric text before caller resolution or RPC.","row":3,"source_sha256":"d3832f9bd97782b2452801d2bd12bd8eba4e8b5e82e60f96db4c7449a8dfa4a4"},{"line":368,"expression":"['zero', '0']","decision":"keep","reason":"Reject zero before caller resolution or RPC.","row":4,"source_sha256":"8fcb9d4a5c92994ef84f2f7d3b5f03c4df3c354cf6be4f8fc0f5a569d3f6efd9"},{"line":369,"expression":"['negative', '-1']","decision":"keep","reason":"Reject negative integer before caller resolution or RPC.","row":5,"source_sha256":"5cdd316d9f61e6bd83104a6639106c76f5c170541972d7ce003092570b4164f6"},{"line":370,"expression":"['fractional', '1.5']","decision":"keep","reason":"Reject visible fractional text before caller resolution or RPC.","row":6,"source_sha256":"dbc5cb02fc1bc10d7db7352856fc6360c30427f0502d1ab1325632063711bffb"},{"line":371,"expression":"['rounded fractional', '9007199254740991.1']","decision":"keep","reason":"Reject fraction that rounds to a safe integer before caller resolution or RPC.","row":7,"source_sha256":"620bc5f640a92e403a70b550e968100f1421fbefb04fe9317d20b16802018ead"},{"line":372,"expression":"['unsafe integer', String(Number.MAX_SAFE_INTEGER + 1)]","decision":"keep","reason":"Reject unsafe integer before caller resolution or RPC.","row":8,"source_sha256":"22d0824281f3ef09a1da19b40051f09a10bc31472234b1e7edafbc9a90462c41"}],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":420,"title":"rejects invalid check --timeout-ms: %s","decision":"keep","reason":"Retain all8 distinct invalid check timeout representations rejecting before identity/RPC, including missing, empty, sign, fractional rounding and safe-integer boundary."}},{"line":410,"title":"passes a parsed check timeout and peek mode into the RPC payload","start":12961,"end":13896,"source_sha256":"8a60de5e8ac20a7e92dce443a77175e2983c71e3e378b21ad79126ab4f82ea4f","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain parsed check timeout and peek=true/unread=false wire contract so older hosts fall back to nonconsuming all mode.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":431,"title":"passes a parsed check timeout and peek mode into the RPC payload","decision":"keep","reason":"Retain parsed check timeout and peek=true/unread=false wire contract so older hosts fall back to nonconsuming all mode."}},{"line":440,"title":"filters already-read rows from a peek response for pre-peek runtimes","start":13900,"end":14916,"source_sha256":"26251e8c149dd6062e8c1662269ec0bf3b7d3eaad18422be0686abf2ecfd9c28","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Require one fresh writer call; compare exact surviving unread row, count and cleared stale formatted banner through checked property matchers instead of unchecked result cast. Central reset prevents earlier output satisfying the case.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":461,"title":"filters already-read rows from a peek response for pre-peek runtimes","decision":"fix","reason":"Require one fresh writer call; compare exact surviving unread row, count and cleared stale formatted banner through checked property matchers instead of unchecked result cast. Central reset prevents earlier output satisfying the case."}},{"line":465,"title":"rejects combined read modes before calling the runtime","start":14920,"end":15370,"source_sha256":"8d75c299aabf95954c52f29ad1676fc10ed5a5028f31f62e08f9bb7dd12757d1","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain conflicting unread+peek rejection before runtime access.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":487,"title":"rejects combined read modes before calling the runtime","decision":"keep","reason":"Retain conflicting unread+peek rejection before runtime access."}},{"line":481,"title":"warns when a pre-peek runtime returned a full 100-row page","start":15374,"end":16020,"source_sha256":"d7897c38d6c28f9c2a1dd28d83e7cbc59cfece18c766fae442e23c3c98d14fd5","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain actual100-row page boundary warning with one unread/99read fixture rows; this is a generated fixture population, not100 separate runtime tests.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":505,"title":"warns when a pre-peek runtime returned a full 100-row page","decision":"keep","reason":"Retain actual100-row page boundary warning with one unread/99read fixture rows; this is a generated fixture population, not100 separate runtime tests."}},{"line":498,"title":"fails --peek --wait against a runtime that returned only read rows","start":16024,"end":16547,"source_sha256":"b3f7e03553b8acd99ffa98a841094208daa63ce2d8482724612e920c0983d21a","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain pre-peek wait refusal when legacy host returns only read rows rather than pretending the requested wait was honored.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":522,"title":"fails --peek --wait against a runtime that returned only read rows","decision":"keep","reason":"Retain pre-peek wait refusal when legacy host returns only read rows rather than pretending the requested wait was honored."}},{"line":517,"title":"rejects invalid ask --timeout-ms: %s","start":16551,"end":16970,"source_sha256":"3de63f42cd203ee7f327b0bb9a02838bdbe75e0e799ab938848105931d870357","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain all8 invalid ask timeout representations before resolving caller or creating question.","parameter_inputs":[{"line":365,"expression":"['missing', true]","decision":"keep","reason":"Reject missing value boolean before caller resolution or RPC.","row":1,"source_sha256":"b69befb887c9f5f2230f384c62605201d30f288181cedd3d2e2ea4e5709e48f0"},{"line":366,"expression":"['empty', '']","decision":"keep","reason":"Reject empty value before caller resolution or RPC.","row":2,"source_sha256":"fa0ea37190f52604e936eab677c899ca7e295980f8b8c58d21f24fb3f99645ec"},{"line":367,"expression":"['non-numeric', 'not-a-number']","decision":"keep","reason":"Reject nonnumeric text before caller resolution or RPC.","row":3,"source_sha256":"d3832f9bd97782b2452801d2bd12bd8eba4e8b5e82e60f96db4c7449a8dfa4a4"},{"line":368,"expression":"['zero', '0']","decision":"keep","reason":"Reject zero before caller resolution or RPC.","row":4,"source_sha256":"8fcb9d4a5c92994ef84f2f7d3b5f03c4df3c354cf6be4f8fc0f5a569d3f6efd9"},{"line":369,"expression":"['negative', '-1']","decision":"keep","reason":"Reject negative integer before caller resolution or RPC.","row":5,"source_sha256":"5cdd316d9f61e6bd83104a6639106c76f5c170541972d7ce003092570b4164f6"},{"line":370,"expression":"['fractional', '1.5']","decision":"keep","reason":"Reject visible fractional text before caller resolution or RPC.","row":6,"source_sha256":"dbc5cb02fc1bc10d7db7352856fc6360c30427f0502d1ab1325632063711bffb"},{"line":371,"expression":"['rounded fractional', '9007199254740991.1']","decision":"keep","reason":"Reject fraction that rounds to a safe integer before caller resolution or RPC.","row":7,"source_sha256":"620bc5f640a92e403a70b550e968100f1421fbefb04fe9317d20b16802018ead"},{"line":372,"expression":"['unsafe integer', String(Number.MAX_SAFE_INTEGER + 1)]","decision":"keep","reason":"Reject unsafe integer before caller resolution or RPC.","row":8,"source_sha256":"22d0824281f3ef09a1da19b40051f09a10bc31472234b1e7edafbc9a90462c41"}],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":541,"title":"rejects invalid ask --timeout-ms: %s","decision":"keep","reason":"Retain all8 invalid ask timeout representations before resolving caller or creating question."}},{"line":529,"title":"accepts an ask timeout %s within the supported range with transport headroom","start":16974,"end":17767,"source_sha256":"e3d49a33dc280764abb9b9fc20910c3b76e7bd0d9d68f09727fc94e2cac16c90","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain minimum1ms and maximum1800000ms asks, both carrying5000ms client transport headroom.","parameter_inputs":[{"line":319,"expression":"'1'","decision":"keep","reason":"Minimum positive wait accepted with transport grace.","row":1,"source_sha256":"9a7622b24ae73586214f453f44ed438ce5c63aa07c720c2ccc29ae5bd7ec5322"},{"line":529,"expression":"'1800000'","decision":"keep","reason":"Maximum supported wait accepted with transport grace.","row":2,"source_sha256":"5871eafa9c400cbed6d98a8346de9bffb08e92f21a98c076041a1be593912c05"}],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":553,"title":"accepts an ask timeout %s within the supported range with transport headroom","decision":"keep","reason":"Retain minimum1ms and maximum1800000ms asks, both carrying5000ms client transport headroom."}},{"line":554,"title":"rejects an oversized ask timeout %s before resolving identity or creating a question","start":17771,"end":18586,"source_sha256":"669f76e0b08b4b8795165f2845be974bb4ac7492f1be3663594dd3ec3f626a82","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain just-over-max and max-safe oversized timeout refusals before caller/question access.","parameter_inputs":[{"line":554,"expression":"'1800001'","decision":"keep","reason":"First wait beyond maximum refuses.","row":1,"source_sha256":"015eefa2c57d5bf2e0431dd04878cba3a81a75dddd3bde0503ec6bb70d227a2c"},{"line":554,"expression":"String(Number.MAX_SAFE_INTEGER)","decision":"keep","reason":"Large safe integer is still outside supported wait budget.","row":2,"source_sha256":"c4850a542de407534b9534599dea1e168aeeaf741ab0af144a0f86a4de31cc0c"}],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":578,"title":"rejects an oversized ask timeout %s before resolving identity or creating a question","decision":"keep","reason":"Retain just-over-max and max-safe oversized timeout refusals before caller/question access."}},{"line":577,"title":"keeps an omitted ask timeout out of the payload while using default headroom","start":18590,"end":19238,"source_sha256":"f154e60c2361bcf5c3cf33e26d40a0bd3e3163095934d55a839c48fbe2ee3b92","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain omitted ask timeout absent from request and exact default605000ms client budget.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":601,"title":"keeps an omitted ask timeout out of the payload while using default headroom","decision":"keep","reason":"Retain omitted ask timeout absent from request and exact default605000ms client budget."}},{"line":598,"title":"prints the pending message ID and exact capability-bound resume command on timeout","start":19242,"end":20301,"source_sha256":"41ed14e53e8b9db56f10ea72d8d528b3423654117030a1e6db18a0988d85a656","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain actual plain timeout diagnostic with pending message id, capability-bound resolved executable resume command, effective server timeout and exit1.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":622,"title":"prints the pending message ID and exact capability-bound resume command on timeout","decision":"keep","reason":"Retain actual plain timeout diagnostic with pending message id, capability-bound resolved executable resume command, effective server timeout and exit1."}},{"line":629,"title":"uses the parsed ask timeout for both runtime wait and client timeout","start":20305,"end":21318,"source_sha256":"f2671f23e4ca07d46b4e6d99db6f8052b3cd3d9342e6d18b5fb8c392952c8df6","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain parsed123ms ask timeout at request boundary and5123ms transport timeout plus exact caller/compatibility fields.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":653,"title":"uses the parsed ask timeout for both runtime wait and client timeout","decision":"keep","reason":"Retain parsed123ms ask timeout at request boundary and5123ms transport timeout plus exact caller/compatibility fields."}},{"line":666,"title":"envelopes ask --json through the shared result printer","start":21322,"end":22034,"source_sha256":"eb026e4f6a87b61e659b6dcc9babb1bc3f9f02e78bd80a751348c9c240e6d6f2","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain shared JSON printer envelope rather than direct console output, with full id/ok/result/runtime metadata. Shared per-case reset now makes writer history fresh.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":690,"title":"envelopes ask --json through the shared result printer","decision":"keep","reason":"Retain shared JSON printer envelope rather than direct console output, with full id/ok/result/runtime metadata. Shared per-case reset now makes writer history fresh."}},{"line":688,"title":"passes an ask resume without creating a new question payload","start":22038,"end":22976,"source_sha256":"235bfd50cc72db779a843686a0ba6184cdf4e0349b3d8bcb887863482ed0e4f9","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain resume RPC with no new question/options, original message id and default client headroom.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":713,"title":"passes an ask resume without creating a new question payload","decision":"keep","reason":"Retain resume RPC with no new question/options, original message id and default client headroom."}},{"line":719,"title":"rejects ambiguous ask create/resume input before RPC","start":22980,"end":23373,"source_sha256":"378478f6afee35d65bed3f1958a661aae48337378f0faeef3c28c099eb510962","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain ambiguous create+resume rejection before runtime mutation.","parameter_inputs":[],"previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","line":744,"title":"rejects ambiguous ask create/resume input before RPC","decision":"keep","reason":"Retain ambiguous create+resume rejection before runtime mutation."}}],"original_declarations":28,"final_declarations":28,"validation":"reviews/upstream-0002-validation.json","previous_review":{"batch":"root-0069.jsonl","source_commit":"427fab262ca5c2db953b37cace69b906e8f13310","reviewed_sha256":"7b4d7cec11b53639a118d9222cb8464031a9f81104fe65d0cbc9ef9477b1c75a","validation":"reviews/root-0069-validation.json"}}
+{"path":"src/cli/handlers/orchestration/mutation-request.test.ts","sha256":"3390a87bda316491b8dbbe706a0e6bf49a5fd5c11acb99719e34be167f147645","reviewed_sha256":"f730d6ef1e630586421b79b1d4f256cacd8d754b1210f011b5a9e65c9667d91d","source_commit":"b6101c69369","reviewer":"root","status":"reviewed","decision":"fix","classification":"vitest-cli-mutation-retry-identity-and-live-runtime-recovery","rationale":"Re-review after the merge at 41b5cf015be7970a23e91d4ce76d52d781db4e1b: all upstream changes are comments. Non-trivia tokens and comment-free printed AST are identical to the prior audited final source. Prior decisions, parameter inputs and production contracts remain. Review all6 declarations,2 explicit identity rows, actual retry/recovery loop and real RuntimeClient/Unix socket fixture. Replace count-only approximate deadline evidence with settled-by-budget/no-further-attempt observations, preserving all7 expanded cases and explicit Windows integration skip.","evidence":["src/cli/handlers/orchestration/mutation-request.ts","src/cli/orchestration-mutation-recovery.ts","src/cli/runtime/client.ts","src/cli/runtime/runtime-source-fence.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/mutation-request.ts":"f02e3b7cd7e00d32914b02b3909ce2f03dcf13168db4495a25a8482bb0eba1c0","src/cli/orchestration-mutation-recovery.ts":"4ae8e10398114d05ebaa2617731e1bb8c115ee67c33690738effb2214e2115c9","src/cli/runtime/client.ts":"c36891f1f51cb15108b03a38012545f4c95f9f86d308f25532298ca40165edf2","src/cli/runtime/runtime-source-fence.ts":"22e8c3c368473695b7625302e5e7dd81e5c2bd4971a9ab4b9965b98cb8127fd4"},"evidence_source_sha256":{"src/cli/handlers/orchestration/mutation-request.ts":"66158d48995b0f98b828ec6304ec9cd2bc9d3bed7b1b30253fee403f389f4408","src/cli/orchestration-mutation-recovery.ts":"2a122b19241be3aea3355f0ad9d59c18e60f442f2a84de294e116ed3409e64f4","src/cli/runtime/client.ts":"c36891f1f51cb15108b03a38012545f4c95f9f86d308f25532298ca40165edf2","src/cli/runtime/runtime-source-fence.ts":"22e8c3c368473695b7625302e5e7dd81e5c2bd4971a9ab4b9965b98cb8127fd4"},"cases":[{"line":65,"title":"retries with %s request id until the runtime answers","start":2218,"end":3206,"source_sha256":"238292525741505901ecf5d046397cf3dd72522b40375a2ab943707b0a1271f0","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Both fresh and explicit mutation identities survive two unavailable responses and reach successful third attempt; fake timers advance actual retry loop and all request ids must match.","parameter_inputs":[{"line":66,"expression":"['a fresh', new Map(), expect.stringMatching(/^[0-9a-f-]{36}$/)]","decision":"keep","reason":"Fresh opt-in mutation mints one valid UUID reused for every attempt.","row":1,"source_sha256":"e271d0426e03ca156af94523352d311f5db93d5e6c6cac27884c2c22b9251a26"},{"line":67,"expression":" [\n 'an explicit --retry-request',\n new Map([['retry-request', '11111111-2222-4333-8444-555555555555']]),\n '11111111-2222-4333-8444-555555555555'\n ]","decision":"keep","reason":"Explicit retry request remains verbatim across every unavailable attempt.","row":2,"source_sha256":"58ab0656a0e9d5bb9ec13c2d64fd07bd23867ae583e8b769f330a9c7f36d85bf"}],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":65,"title":"retries with %s request id until the runtime answers","decision":"keep","reason":"Both fresh and explicit mutation identities survive two unavailable responses and reach successful third attempt; fake timers advance actual retry loop and all request ids must match."}},{"line":95,"title":"does not retry an error other than runtime_unavailable","start":3210,"end":3695,"source_sha256":"1b1a07813db67c2eed8f755aba3c63aef7ef53b21dfcc6f8e5a0d1463dc9ef2c","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. runtime_timeout is a terminal response with exactly one attempt even when unavailable retry was requested.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":95,"title":"does not retry an error other than runtime_unavailable","decision":"keep","reason":"runtime_timeout is a terminal response with exactly one attempt even when unavailable retry was requested."}},{"line":112,"title":"does not retry mutations that did not opt in","start":3699,"end":4088,"source_sha256":"5a35acc9c63c4e480490b4205961560d9deb9f25c735966a26b9fd6980ba328c","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Mutations without opt-in preserve undefined request id and refuse unavailable immediately without another attempt.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":112,"title":"does not retry mutations that did not opt in","decision":"keep","reason":"Mutations without opt-in preserve undefined request id and refuse unavailable immediately without another attempt."}},{"line":122,"title":"keeps the recovery command when the last attempt fails before its request id is attached","start":4092,"end":4812,"source_sha256":"72d45d9bdc260dbb774d25130004d479776fa6a951fda6ffc98eb139c30116c3","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Later unavailable errors without metadata retain the first sent recovery identity after the actual retry budget.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":122,"title":"keeps the recovery command when the last attempt fails before its request id is attached","decision":"keep","reason":"Later unavailable errors without metadata retain the first sent recovery identity after the actual retry budget."}},{"line":143,"title":"gives up after about two minutes and prints the recovery command with the same id","start":4816,"end":6190,"source_sha256":"269e4acd6ff8f20aa42d591a3b91d44fd33d572241dc71e490b47daf0385876c","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Observe settlement by the120000ms budget and within one max-backoff of its end, then assert no further attempts for30000ms. Replace arbitrary attempt-count threshold with actual time-bound behavior while retaining stable recovery id/command. The refined opted-in30-second-overrun mutant passes all7 original cases and fails only this reviewed budget case.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":143,"title":"gives up after about two minutes and prints the recovery command with the same id","decision":"fix","reason":"Observe settlement by the120000ms budget and within one max-backoff of its end, then assert no further attempts for30000ms. Replace arbitrary attempt-count threshold with actual time-bound behavior while retaining stable recovery id/command. The refined opted-in30-second-overrun mutant passes all7 original cases and fails only this reviewed budget case."}},{"line":191,"title":"reaches a runtime that comes back after the first attempt found it down","start":6283,"end":8536,"source_sha256":"afdb38f617921a0124cb7f6cf41189347e41509e77f2b9389c541fea26de2124","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Actual RuntimeClient starts while metadata is absent, then reconnects to a real Unix socket and replays the same request id after a dropped send connection. Windows skip is explicit because this endpoint is a Unix filesystem socket.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":180,"title":"reaches a runtime that comes back after the first attempt found it down","decision":"keep","reason":"Actual RuntimeClient starts while metadata is absent, then reconnects to a real Unix socket and replays the same request id after a dropped send connection. Windows skip is explicit because this endpoint is a Unix filesystem socket."}}],"original_declarations":6,"final_declarations":6,"validation":"reviews/upstream-0002-validation.json","previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","reviewed_sha256":"3390a87bda316491b8dbbe706a0e6bf49a5fd5c11acb99719e34be167f147645","validation":"reviews/root-0070-validation.json"}}
+{"path":"src/cli/handlers/orchestration/worker-list-run-scope.test.ts","sha256":"f49c1d6f02367a1768521b57c1cbcbc85be492dae239c0f7c5033eba9f0bb839","reviewed_sha256":"89cb8c2316f50ad7e2e2dc11cffab9bf8608cecc00507def888150c1af36be8a","source_commit":"b6101c69369","reviewer":"root","status":"reviewed","decision":"fix","classification":"vitest-cli-worker-list-run-scope-output","rationale":"Re-review after the merge at 41b5cf015be7970a23e91d4ce76d52d781db4e1b: all upstream changes are comments. Non-trivia tokens and comment-free printed AST are identical to the prior audited final source. Prior decisions, parameter inputs and production contracts remain. Read4 cases and actual list/scope/identity/writer contracts. Use real response envelopes, isolated restored caller env, exact per-invocation RPC order/count and one real output; keep parsed receipt unknown and compare properties instead of unchecked any access.","evidence":["src/cli/handlers/orchestration/worker-list-run-scope.ts","src/cli/handlers/orchestration/worker-terminal-handlers.ts","src/cli/handlers/orchestration/terminal-identity.ts","src/cli/format.ts","src/cli/test-fixtures.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/worker-list-run-scope.ts":"d793a32c2a9bf5c4f8a7cb3a77472515fc0872e42f45e0768f89ed8c173ee0fc","src/cli/handlers/orchestration/worker-terminal-handlers.ts":"4840c64afebf0dcd1294a103c9729ba60cb2f9e2f90b8856b973aa0452ca57ff","src/cli/handlers/orchestration/terminal-identity.ts":"e6a9f5d441954f796faeeeed1cb608f08aec29e7423d7750dd3837bf2d5c3f4f","src/cli/format.ts":"6dc590cc2ba444024dbfb156af548af4bcdd687c77b64a107ae5bd4573284414","src/cli/test-fixtures.ts":"6aedc6de29e6067251033e2be73efdc64e0da89f7e205726026981eac5db610c"},"evidence_source_sha256":{"src/cli/handlers/orchestration/worker-list-run-scope.ts":"a1fb99643fd1fa72ef2491b323b40906294034df8a9b5b7d323c352b8ebca135","src/cli/handlers/orchestration/worker-terminal-handlers.ts":"dfba8229284864bd4babfb6d542f000c3aef0542667c7a51021f7a9ce65025b2","src/cli/handlers/orchestration/terminal-identity.ts":"17dbbe6811ece95b3645b6df2ec93697bca335e5b09d1f9d5ec9c7e552384306","src/cli/format.ts":"f4ff6e2216c90a2a7ddc706957cd966f1510e7ff7304bdfd89d935d9665778d9","src/cli/test-fixtures.ts":"de24d3f101b8617a402e27a895fc1e45f88fb79f6229a1771107622d243f9a7b"},"cases":[{"line":68,"title":"defaults an unscoped list to the Run bound to the calling terminal","start":2302,"end":2761,"source_sha256":"8b3794bbe5edc06a5a63ad02d28bb77aee4d6be4bb420a6da69e03d207ae074a","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Use real per-method response envelopes and isolate/restore terminal/session/structured/pane env. Require exactly runCurrent then workerList and one output; preserve bound Run wire filter and JSON source=bound.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":59,"title":"defaults an unscoped list to the Run bound to the calling terminal","decision":"fix","reason":"Use real per-method response envelopes and isolate/restore terminal/session/structured/pane env. Require exactly runCurrent then workerList and one output; preserve bound Run wire filter and JSON source=bound."}},{"line":79,"title":"keeps --run as the override and never asks for the binding","start":2765,"end":3232,"source_sha256":"d94edd3322fbe11c1672c0b88fd7d09e9fd5f3411a3e12e44ae7fd13cac7ac41","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Use isolated caller state and one real JSON output; require only workerList with explicit Run override and source=flag, never a binding lookup.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":70,"title":"keeps --run as the override and never asks for the binding","decision":"fix","reason":"Use isolated caller state and one real JSON output; require only workerList with explicit Run override and source=flag, never a binding lookup."}},{"line":90,"title":"still lists every Run when the caller has no bound Run","start":3236,"end":3563,"source_sha256":"ad62b39385d7decfcc7ea5a82aedc21868119928307e023bcebe27bf5bb69684","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Use distinct no-bound-Run response, exact two-request sequence and one JSON output; preserve omitted run filter and source=all.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":81,"title":"still lists every Run when the caller has no bound Run","decision":"fix","reason":"Use distinct no-bound-Run response, exact two-request sequence and one JSON output; preserve omitted run filter and source=all."}},{"line":100,"title":"names the scope in the human-readable receipt","start":3567,"end":3836,"source_sha256":"162eb6c76ad2a8d3e69ccfe30e4e0f5acb06f183b01d84a891532e9d6f8576cc","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Use actual single plain writer output and exact binding/enumeration order; preserve human scope wording for bound Run.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":91,"title":"names the scope in the human-readable receipt","decision":"fix","reason":"Use actual single plain writer output and exact binding/enumeration order; preserve human scope wording for bound Run."}}],"original_declarations":4,"final_declarations":4,"validation":"reviews/upstream-0002-validation.json","previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","reviewed_sha256":"f49c1d6f02367a1768521b57c1cbcbc85be492dae239c0f7c5033eba9f0bb839","validation":"reviews/root-0070-validation.json"}}
+{"path":"src/cli/handlers/orchestration/worker-output.test.ts","sha256":"f298b6c7e256e591cf11b4f4403d0255620ac8474a41235e5eb938edfd20b4bf","reviewed_sha256":"edb6aa60817383bc900222aa0d7e96c0e1c67dd043d2b9b9573fa6221ba492eb","source_commit":"b6101c69369","reviewer":"root","status":"reviewed","decision":"fix","classification":"vitest-cli-worker-receipt-and-transcript-compatibility","rationale":"Re-review after the merge at 41b5cf015be7970a23e91d4ce76d52d781db4e1b: all upstream changes are comments. Non-trivia tokens and comment-free printed AST are identical to the prior audited final source. Prior decisions, parameter inputs and production contracts remain. Read all20 cases, source unions, actual receipt formatter and shared transcript/subagent summary paths. Keep independent full output oracles, replace borrowed twin/roster expected wording with literal expectations, correct invalid archived terminal state and remove redundant casts. Retain all existing error/provenance/mixed-version controls.","evidence":["src/cli/handlers/orchestration/worker-output.ts","src/shared/orchestration-worker-output.ts","src/shared/runtime-terminal-contracts.ts","src/shared/worker-transcript-text.ts","src/shared/native-chat-subagent-summary.ts"],"evidence_sha256":{"src/cli/handlers/orchestration/worker-output.ts":"440b124706f981a16d7ad1e4314a25adb10a0b7c9ad9159b0674277860d4868a","src/shared/orchestration-worker-output.ts":"789903dea4b7ede492695d63964893c9a27ba12bb91b52e334e9f662863d780e","src/shared/runtime-terminal-contracts.ts":"8ab7f0a522e8c025317fda7a2fa65b1ca5a7b52ab877ccd63bd4ccd16105d057","src/shared/worker-transcript-text.ts":"e92f8e99fb7c7cd379a343cb5701d5f2ff23026f45fc8293a99b9f6e4ac4f0d2","src/shared/native-chat-subagent-summary.ts":"8847ccff35206cea1ba67905cec6afa65b59a23dcddb204906ffcd65b3725bcd"},"evidence_source_sha256":{"src/cli/handlers/orchestration/worker-output.ts":"6fcd061ec6aa88d174eca5e51ef53eceb8f3f40f63c417f5dab9d764d66be4cf","src/shared/orchestration-worker-output.ts":"789903dea4b7ede492695d63964893c9a27ba12bb91b52e334e9f662863d780e","src/shared/runtime-terminal-contracts.ts":"8ab7f0a522e8c025317fda7a2fa65b1ca5a7b52ab877ccd63bd4ccd16105d057","src/shared/worker-transcript-text.ts":"e92f8e99fb7c7cd379a343cb5701d5f2ff23026f45fc8293a99b9f6e4ac4f0d2","src/shared/native-chat-subagent-summary.ts":"8847ccff35206cea1ba67905cec6afa65b59a23dcddb204906ffcd65b3725bcd"},"cases":[{"line":45,"title":"renders partial effects, residual resources, and exact recovery commands for unknown starts","start":1672,"end":2715,"source_sha256":"6fd21607c7cf38a8492a22105be53d4237cc4f6820f551a817b25e7017237b91","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Keep exact unknown-start effects/resources/error and ordered recovery commands; expected JSON text and labels are stated independently.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":45,"title":"renders partial effects, residual resources, and exact recovery commands for unknown starts","decision":"keep","reason":"Keep exact unknown-start effects/resources/error and ordered recovery commands; expected JSON text and labels are stated independently."}},{"line":72,"title":"renders nonempty effects and residual resources for failed starts","start":2719,"end":3406,"source_sha256":"06cef73f61c61fffce16f0dfcd4671e3f57986a1fcf89bf8aaadb04916205876","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Keep failed-start nonempty worktree effects/residual resource output distinct from ready success.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":72,"title":"renders nonempty effects and residual resources for failed starts","decision":"keep","reason":"Keep failed-start nonempty worktree effects/residual resource output distinct from ready success."}},{"line":91,"title":"keeps ready receipts concise when effects describe successful setup","start":3410,"end":3766,"source_sha256":"13553d7b5d08cd34c454467e37d0585a4183924eef8ec385a0eb5156eb174074","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Keep ready receipt concise despite successful setup effects, preventing verbose recovery evidence on success.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":91,"title":"keeps ready receipts concise when effects describe successful setup","decision":"keep","reason":"Keep ready receipt concise despite successful setup effects, preventing verbose recovery evidence on success."}},{"line":105,"title":"renders transcript provenance, incomplete coverage, warnings, and opaque cursor guidance","start":3822,"end":5277,"source_sha256":"f49942a0a84b3bd9fbc424d419ddbb31b88e3fe30113d320c76ca26e3b020f88","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Keep exact transcript provenance/completeness/clipping/warning/opaque continuation output and source-identity privacy by full independent string.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":105,"title":"renders transcript provenance, incomplete coverage, warnings, and opaque cursor guidance","decision":"keep","reason":"Keep exact transcript provenance/completeness/clipping/warning/opaque continuation output and source-identity privacy by full independent string."}},{"line":147,"title":"labels terminal fallback evidence and every warning","start":5281,"end":6514,"source_sha256":"a2a9b04e1696b4314325c628a63696eedecb3513710b9161e371a62ae77f71d2","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Keep terminal fallback reason, nonexact/incomplete metadata, clipping and both warning rows with exact independent text.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":147,"title":"labels terminal fallback evidence and every warning","decision":"keep","reason":"Keep terminal fallback reason, nonexact/incomplete metadata, clipping and both warning rows with exact independent text."}},{"line":183,"title":"truthfully labels an exact empty transcript without reading terminal evidence","start":6518,"end":7508,"source_sha256":"3f88e756ec128692f043ba3f50146b6910a4e4856cd2b5539e3dac274c3a2f1c","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Keep exact-empty transcript explanation and complete=true provenance without claiming the formatter itself performed a terminal read.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":183,"title":"truthfully labels an exact empty transcript without reading terminal evidence","decision":"keep","reason":"Keep exact-empty transcript explanation and complete=true provenance without claiming the formatter itself performed a terminal read."}},{"line":213,"title":"separates the PTY verdict from the fleet agent verdict","start":7511,"end":8253,"source_sha256":"56c75aee2c5b365aa187351c538a83ad87a2b7c5c3e5f6dce39dbc913c78e9fb","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Keep conflicting live PTY/unverifiable agent verdicts separately labeled; bare ambiguous Liveness label is forbidden.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":213,"title":"separates the PTY verdict from the fleet agent verdict","decision":"keep","reason":"Keep conflicting live PTY/unverifiable agent verdicts separately labeled; bare ambiguous Liveness label is forbidden."}},{"line":237,"title":"omits the agent verdict when the host published no projection","start":8257,"end":8899,"source_sha256":"7cf05dd678833c1c3ad6667b519b7941c8681e2a427631e8b596eb7358ad2647","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Keep old-host absence of fleet projection omitting agent verdict rather than inventing one.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":237,"title":"omits the agent verdict when the host published no projection","decision":"keep","reason":"Keep old-host absence of fleet projection omitting agent verdict rather than inventing one."}},{"line":259,"title":"distinguishes a released archive read from a live one","start":8903,"end":9631,"source_sha256":"79d48ef931cbfffd93b2e57aaf42b76b8addf329f7077cdd39569c680316d33b","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Use valid terminal state exited for released archive fixture and remove unnecessary unchecked result cast; preserve actual archive/worker/liveness output controls.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":259,"title":"distinguishes a released archive read from a live one","decision":"fix","reason":"Use valid terminal state exited for released archive fixture and remove unnecessary unchecked result cast; preserve actual archive/worker/liveness output controls."}},{"line":339,"title":"replays a mid-flight roster row without claiming a child is still working","start":11391,"end":12079,"source_sha256":"416a55969f677a74668935d14bae93565e75e8563537cd53b9cb579b383211d4","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Keep independently stated durable midflight roster text without claiming live working children; real producer supplies input while expected text is literal.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":339,"title":"replays a mid-flight roster row without claiming a child is still working","decision":"keep","reason":"Keep independently stated durable midflight roster text without claiming live working children; real producer supplies input while expected text is literal."}},{"line":361,"title":"prints the roster sentence once for the two-block row the producer writes","start":12401,"end":12940,"source_sha256":"71b7386a6fa4a59859e2bee8c5b6687eecbc60be84f1a4c553cb62cd053323b3","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain real producer twin input but state expected sentence/count independently, preventing the helper from also defining its own output oracle.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":361,"title":"prints the roster sentence once for the two-block row the producer writes","decision":"fix","reason":"Retain real producer twin input but state expected sentence/count independently, preventing the helper from also defining its own output oracle."}},{"line":380,"title":"stands in for the second roster block when only one twin accompanies two","start":13186,"end":13883,"source_sha256":"b8f05e60f7a41a16c53ee6c843131ec699899f409932d5ae854f7f6d4dd8bf04","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain one twin plus two distinct groups with independent expected first sentence count and singular completed second sentence; input still uses real producer.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":380,"title":"stands in for the second roster block when only one twin accompanies two","decision":"fix","reason":"Retain one twin plus two distinct groups with independent expected first sentence count and singular completed second sentence; input still uses real producer."}},{"line":403,"title":"claims a lone twin for the group it names, not the first group in the message","start":14203,"end":14930,"source_sha256":"400b109a81bde78eb864ee7b26f0460b6a7451ddb38af4da398ab031aacb981d","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain later-group twin identity matching with independent exact completed-group sentence count and earlier group stand-in, not production-derived expected text.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":403,"title":"claims a lone twin for the group it names, not the first group in the message","decision":"fix","reason":"Retain later-group twin identity matching with independent exact completed-group sentence count and earlier group stand-in, not production-derived expected text."}},{"line":425,"title":"claims a trailing twin for the group it names","start":15084,"end":15779,"source_sha256":"40a3aadb776635e7887b3cbebad754135e2344f127f765c57851b5a4ceb1494c","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain trailing later-group twin permutation with independent expected completed sentence count and earlier group stand-in.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":425,"title":"claims a trailing twin for the group it names","decision":"fix","reason":"Retain trailing later-group twin permutation with independent expected completed sentence count and earlier group stand-in."}},{"line":448,"title":"stands in for a roster block that arrived without its twin","start":15997,"end":16306,"source_sha256":"7b367bb3cdf9f467bc005dd0a171001bd5115e9c9ac153fe843ee7db139570e8","decision":"fix","reason":"Retain the prior audited case and its decision; upstream changed comments only. Retain no-twin fallback with independently stated durable stand-in sentence rather than computing expected wording through the same production helper.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":448,"title":"stands in for a roster block that arrived without its twin","decision":"fix","reason":"Retain no-twin fallback with independently stated durable stand-in sentence rather than computing expected wording through the same production helper."}},{"line":461,"title":"prints the roster once when the twin names a state this build cannot reproduce","start":16666,"end":17535,"source_sha256":"9dafa341232e0c09fab7a0c7071a8072b69654a4c37fcc0c80194ae0d5f476ac","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Keep unknown newer-host state and frozen cancelled twin displayed once without contradictory unverifiable sentence; unavoidable malformed-wire fixture cast is line-justified.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":461,"title":"prints the roster once when the twin names a state this build cannot reproduce","decision":"keep","reason":"Keep unknown newer-host state and frozen cancelled twin displayed once without contradictory unverifiable sentence; unavoidable malformed-wire fixture cast is line-justified."}},{"line":490,"title":"degrades an unknown block type from a newer host instead of throwing","start":17823,"end":18320,"source_sha256":"5c9961b4a393cc3522c40f3a7e597707a6f558bdfb593e322f74da15a1f75095","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Keep unknown newer-host block degrading to unsupported marker between surrounding text, with line-specific rationale for the malformed-wire cast.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":489,"title":"degrades an unknown block type from a newer host instead of throwing","decision":"keep","reason":"Keep unknown newer-host block degrading to unsupported marker between surrounding text, with line-specific rationale for the malformed-wire cast."}},{"line":505,"title":"renders terminal tails without changing line boundaries","start":18396,"end":18766,"source_sha256":"386c8050cd0b6624bc7bf9beed85cc88f9d6c3252b80be022d9be8aaad13a25b","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Keep legacy terminal tail preserving interior empty line exactly.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":503,"title":"renders terminal tails without changing line boundaries","decision":"keep","reason":"Keep legacy terminal tail preserving interior empty line exactly."}},{"line":520,"title":"renders transcript blocks and survives unserializable tool input","start":18770,"end":20218,"source_sha256":"c7b761d59489a46eea0578ce2417219de98051dffc8b67d094d5f4b43dcae7fb","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Keep actual cyclic tool input, tool result error and image blocks rendered safely with independent full text; no JSON shortcut erases the cyclic boundary.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":518,"title":"renders transcript blocks and survives unserializable tool input","decision":"keep","reason":"Keep actual cyclic tool input, tool result error and image blocks rendered safely with independent full text; no JSON shortcut erases the cyclic boundary."}},{"line":563,"title":"renders release evidence in receipt order","start":20222,"end":20811,"source_sha256":"978fd4bdfe304f3c89620ae69cfd815da032dfd723b9e3d6ab7eb05b0b2386a1","decision":"keep","reason":"Retain the prior audited case and its decision; upstream changed comments only. Keep release evidence order for unknown state, reason, archive, last error and recovery using exact independent text.","parameter_inputs":[],"previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","line":561,"title":"renders release evidence in receipt order","decision":"keep","reason":"Keep release evidence order for unknown state, reason, archive, last error and recovery using exact independent text."}}],"original_declarations":20,"final_declarations":20,"validation":"reviews/upstream-0002-validation.json","previous_review":{"batch":"root-0070.jsonl","source_commit":"3afac4f41829c86da99f6268c5676c0533ad2f32","reviewed_sha256":"f298b6c7e256e591cf11b4f4403d0255620ac8474a41235e5eb938edfd20b4bf","validation":"reviews/root-0070-validation.json"}}
diff --git a/docs/audits/test-value/reviews/upstream-0003-validation.json b/docs/audits/test-value/reviews/upstream-0003-validation.json
new file mode 100644
index 00000000000..2be1aafa805
--- /dev/null
+++ b/docs/audits/test-value/reviews/upstream-0003-validation.json
@@ -0,0 +1,207 @@
+{
+ "batch": "upstream-0003",
+ "reviewer": "audit_cloud",
+ "phase": "runtime-validated-upstream-rereview",
+ "source_commit": "6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1",
+ "rereviewed_files": 10,
+ "runnable_suite_files": 8,
+ "support_fixture_files": 2,
+ "original_declarations": 105,
+ "case_records": 105,
+ "case_decisions": {
+ "keep": 105
+ },
+ "explicit_parameter_tables": 1,
+ "explicit_parameter_rows": 4,
+ "independent_synthetic_command_spec_rows": 5,
+ "independent_synthetic_alias_rows": 2,
+ "runtime_traversals": 6,
+ "generated_paging_workloads": 4,
+ "support_functions_reviewed": 20,
+ "support_return_values": 7,
+ "ordered_support_return_rows": 3,
+ "referenced_capability_input_rows": 12,
+ "source_review_complete": true,
+ "runtime_validation_complete": true,
+ "tests_executed": true,
+ "production_changes": false,
+ "source_changes": false,
+ "tracked_changes": false,
+ "git_mutations": false,
+ "findings": "All ten upstream diffs contain only removed/rewritten comments. Complete current bodies, tables, factories, fixture return rows and traversal policies retain their reviewed executable syntax and independent assertions. No source change is proposed. Post-merge runtime validation passed all108 cases across the eight runnable suites. Both auxiliary fixture paths were included in the command and declare no standalone cases.",
+ "previous_review_comparison": {
+ "matching_reviewed_snapshot_source_commit": "70acd58dd2d049ba74492b66d8999ed2ce64ff21",
+ "matching_reviewed_hashes_verified": 10,
+ "prior_batches": [
+ "reviews/root-0051.jsonl",
+ "reviews/root-0052.jsonl",
+ "reviews/root-0053.jsonl",
+ "reviews/root-0054.jsonl",
+ "reviews/root-0055.jsonl",
+ "reviews/root-0056.jsonl"
+ ],
+ "current_vs_previous_executable_ast_equal": true,
+ "current_vs_previous_noncomment_tokens_equal": true,
+ "independent_typescript_ast_equal": true,
+ "preserved_fixes": [
+ "Automation owner projection is reversed relative to list order, with host assertions scoped to each independently identified row.",
+ "Legacy automation output requires the actual visible row alongside the absent host.",
+ "Paging shrink requires all forty ordered run identities; legacy host output requires original rows; one-page output requires exact ten rows and cursor.",
+ "Command suggestion consolidation remains complete: two old duplicate declarations remain absent while their canonical/alias assertions are retained together.",
+ "Host malformed values remain four explicit rows nested under their single current declaration."
+ ]
+ },
+ "case_count_reconciliation": "111 previous case records minus two previously consolidated declarations absent from both reviewed/current source minus four formerly separate parameter records nested under one current declaration = 105 current declarations. The four parameter inputs expand that declaration to four cases; all 108 expanded cases passed in the post-merge run.",
+ "current_static_expanded_case_estimate": 108,
+ "passing_runtime_cases": 108,
+ "checks": [
+ {
+ "command": ["node", "/tmp/orca-cli-upstream-rereview-0002/analyze.mjs"],
+ "result": "passed",
+ "scope": "Read-only Babel AST and noncomment-token comparison of all ten pinned upstream/previous-reviewed sources; refresh declaration parser count.",
+ "script_sha256": "64b56e85bf58eeb6a0001c86cea8ef80a32c2644eaa8636bc03fca0b7aaa72eb",
+ "report": "/tmp/orca-cli-upstream-rereview-0002/analysis.json",
+ "report_sha256": "d496cf76cbe484377117f9d8103f5cd45b1a4aaf726bce57aafedf9cd48fc9a0"
+ },
+ {
+ "command": ["node", "/tmp/orca-cli-upstream-rereview-0002/build-records.mjs"],
+ "result": "passed",
+ "scope": "Construct exact immutable case/table/fixture/loop records, map all current cases to prior decisions, and preserve historical consolidation attribution.",
+ "script_sha256": "47ac17220cb80b175cae9f0fbca5c0faa49b05db0482e10ff5a71497601ac7e0"
+ },
+ {
+ "command": ["node", "/tmp/orca-cli-upstream-rereview-0002/verify.mjs"],
+ "result": "passed",
+ "scope": "Unmodified refresh review parser, immutable Git hashes and185 exact source slices,6 loop headers,105 current cases/four parameter rows, plus independent TypeScript syntax-tree comparison.",
+ "script_sha256": "eecca9a30d6e1820477eb8b5c47563d87e31d135cda4510f461ce7255e2538c9",
+ "report": "/tmp/orca-cli-upstream-rereview-0002/integrity.json",
+ "report_sha256": "a74364f3adc8d1e33d7399558c795d8c5a41e8300044a46adbb834633a29c1d5",
+ "log": "/tmp/orca-cli-upstream-rereview-0002/verify.log",
+ "log_sha256": "a74364f3adc8d1e33d7399558c795d8c5a41e8300044a46adbb834633a29c1d5"
+ },
+ {
+ "label": "post-merge-cli-suites",
+ "batch": "upstream-0003",
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/agent-launch-test-fixtures.ts",
+ "src/cli/automation-format.test.ts",
+ "src/cli/automation-owner-conflict-recovery.test.ts",
+ "src/cli/automation-runs-paging.test.ts",
+ "src/cli/browser-empty-values.test.ts",
+ "src/cli/command-suggestion.test.ts",
+ "src/cli/execution-host-flag.test.ts",
+ "src/cli/format-recovery.test.ts",
+ "src/cli/handler-group-manifest.test.ts",
+ "src/cli/test-fixtures.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.json"
+ ],
+ "cwd": "/home/neil/orca/workspaces/orca/comprehensive-test-audit-7",
+ "env": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "source_commit": "6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1",
+ "execution_commit": "41b5cf015be7970a23e91d4ce76d52d781db4e1b",
+ "started_at": 1792769976.390187,
+ "exit_code": 0,
+ "finished_at": 1792769982.8965194,
+ "result": "8 test files /108 tests passed;0 failed/skipped",
+ "report": "/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.json",
+ "report_sha256": "5efdd36e8a1730b0146a04f5948b2a16f046ac11b96c24416f681adf823640eb",
+ "log": "/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.log",
+ "log_sha256": "a61c033dad812ef5e0da43927bf6ecd313070a4985bf46489c6aa9e517cf3202",
+ "command_artifact": "/tmp/orca-cli-upstream-rereview-0002/post-merge-tests-command.json",
+ "command_artifact_sha256": "bfdfbbae010b126e2001c5cfb910e3da4582b1522909bdf8eb38785a06618c59",
+ "passing_runtime_cases": 108
+ },
+ {
+ "label": "final-runtime-record-integrity",
+ "command": ["node", "/tmp/orca-cli-upstream-rereview-0002/verify-runtime.mjs"],
+ "result": "passed",
+ "script_sha256": "b668a480a1f07bff39dd1cf7cdfc45eb05713e208dc76bf7a2041ad9a73bb3bf",
+ "report": "/tmp/orca-cli-upstream-rereview-0002/upstream-0003-integrity.json",
+ "report_sha256": "bca4270200d6665501281f0950e3876ace88a40bf262ccf213d74a31d9aa08b6",
+ "log": "/tmp/orca-cli-upstream-rereview-0002/verify-runtime.log",
+ "log_sha256": "bca4270200d6665501281f0950e3876ace88a40bf262ccf213d74a31d9aa08b6"
+ }
+ ],
+ "pending_runtime_checks": [],
+ "integrity": {
+ "batch": "upstream-0003",
+ "source_commit": "6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1",
+ "previous_snapshot_source_commit": "70acd58dd2d049ba74492b66d8999ed2ce64ff21",
+ "record_sha256": "1c5d9c8f4d15b59e5c16933ebeaca7789c75daffc225f5ce0eb6ff9b228f42bd",
+ "refresh_source_sha256": "8296df957f493fb39555831bdc45cc4aefaadfae948919805d4bc60ab06fa5ee",
+ "refresh_parser_validation_errors": [],
+ "refresh_parser_compatibility_verified": true,
+ "refresh_validation_scope": "Unmodified review-loading and declaration parser prefix run against only the /tmp proposal records. Inventory and progress write phase excluded.",
+ "source_records_verified": 10,
+ "matching_prior_reviewed_snapshots_verified": 10,
+ "independent_typescript_parser_comparisons": 10,
+ "all_typescript_syntax_trees_equal": true,
+ "current_case_records_verified": 105,
+ "explicit_parameter_rows_verified": 4,
+ "exact_source_slices_verified": 185,
+ "exact_loop_headers_verified": 6,
+ "reviewed_sha256_binds": "Pinned upstream Git bytes, merged41b5cf015be7970a23e91d4ce76d52d781db4e1b snapshots and final working checkout all match.",
+ "runtime_executed": true,
+ "repository_writes": false,
+ "selection_sha256": "8dee629204babdc7a3976b0c01208bc6e25dbcc157e884cc077d5b71535c16ac",
+ "previous_review_records_sha256": "1b4b397a67bb6ffb1a7b55baa16cfa48afbba3deb8c305ee318801ad8c3e2ce9",
+ "upstream_diff_sha256": "28e6a308c5faa42ba3bc7759bb2fc701cc91a4cfd29fdb1ca3d78e28d75e6ca3",
+ "source_analysis_sha256": "d496cf76cbe484377117f9d8103f5cd45b1a4aaf726bce57aafedf9cd48fc9a0",
+ "record_generator_sha256": "47ac17220cb80b175cae9f0fbca5c0faa49b05db0482e10ff5a71497601ac7e0",
+ "validation_generator_sha256": "9fbbc43ef857ed7da53ce51fb974346fb02764520e98d03debe16a2cc0f5ea2d",
+ "refresh_parser_source_sha256": "a13a325c0d4359ae5433ea898510bc93acac05c944f53fae23c1c54adb581c21",
+ "runtime_passed": 108,
+ "runtime_report_sha256": "5efdd36e8a1730b0146a04f5948b2a16f046ac11b96c24416f681adf823640eb",
+ "final_checkout_hashes_verified": 10,
+ "final_record_integrity_sha256": "bca4270200d6665501281f0950e3876ace88a40bf262ccf213d74a31d9aa08b6",
+ "initial_proposal_records_sha256": "c154a06f1ec7ec5acf181b0ca2860696e0b8f0617c6c81fad6536cb3df7a7a59",
+ "merged_commit": "41b5cf015be7970a23e91d4ce76d52d781db4e1b",
+ "merged_checkout_integrity": "/tmp/orca-cli-upstream-rereview-0002/merged-checkout-integrity.json",
+ "merged_checkout_integrity_sha256": "70e6dd936b92055443738668ec17d5e48aca7c3f3abb0ef0dc8b0f0a2a552d78",
+ "final_checkout_integrity": "/tmp/orca-cli-upstream-rereview-0002/final-checkout-integrity.json",
+ "final_checkout_integrity_sha256": "a57c07a5f99d45da70d4c9f0e1c49178784f8382a7130fd8cf5aa711f9f7799a",
+ "final_ten_checkout_hashes_match": true,
+ "runtime_script_sha256": "509b36060465e0e65001392fb9cca320c299a37e96c4a383b3c8d762bbc05154",
+ "runtime_finalizer_sha256": "f18d090fd974f86aee788fff4b69bdd29a81ba1c5ce363b7aa61dcb9c46848d7"
+ },
+ "reviewed_file_hashes": {
+ "src/cli/agent-launch-test-fixtures.ts": "23a6ef61547cd232e1f70a2cc68937dab93c147d13db89c2c240c2ef0056762e",
+ "src/cli/automation-format.test.ts": "f94a68ef9d94c4f431efa16946959db782f19acc7ca823e2e7140782c45da9ae",
+ "src/cli/automation-owner-conflict-recovery.test.ts": "e59897c9945c80dd9fb09176c7bb488e5153e9a24f43951cf0083690db67b92e",
+ "src/cli/automation-runs-paging.test.ts": "ba580de6354da7528fb6f5a010890ed06e28fe84ba9252ba038792425c44f005",
+ "src/cli/browser-empty-values.test.ts": "eba33dbca800e36fd202f38b586b07fc4884616b2dfb54bdba6a46b7a38d9229",
+ "src/cli/command-suggestion.test.ts": "8879a975bb956b42bca0f76939d9febda22b271801ed1a680a2562496f425113",
+ "src/cli/execution-host-flag.test.ts": "b69baf15ac20d577efbc493aa6b5b44c9b4263cec3453d0e99d656601ac6f1ca",
+ "src/cli/format-recovery.test.ts": "6bc3b85edac47b311c9dcc73a52c553656509b08a305e4027eca6363e63d6c84",
+ "src/cli/handler-group-manifest.test.ts": "3c4c8a9954f9be66715233dbb50afac4da93bcfe86b6dc7d2b9ec6e358bbf6ba",
+ "src/cli/test-fixtures.ts": "6aedc6de29e6067251033e2be73efdc64e0da89f7e205726026981eac5db610c"
+ },
+ "limitations": [
+ "Runtime verification ran on Linux against merged41b5cf015be7970a23e91d4ce76d52d781db4e1b, with ORCA_BACKGROUND_LAUNCH=1. No visible Electron app or focus operation was launched.",
+ "Eight runnable suites passed108 cases; two support fixtures have zero declarations. Including their paths in the requested command does not create runtime cases or prove every fixture factory executed.",
+ "No production mutation, typecheck or lint was executed for this rereview. All selected source changes from their matching reviewed snapshots are comments only, independently verified with Babel AST/tokens and TypeScript AST.",
+ "Browser cases execute actual CLI parse/handler dispatch behind a mocked RPC boundary. They do not launch a browser or native shell; PowerShell/cmd.exe empty argv and wrapping quotes remain literal cross-platform input fixtures.",
+ "Paging runs the actual shared paginator behind an injected size-rejecting RPC seam and verifies ordered identities/cursors. It does not establish real remote network framing.",
+ "Host routing uses injected pairing and SSH catalogs, preserving cross-axis identity/ambiguity and mixed-version recovery without claiming live paired-server/SSH connections.",
+ "Handler-manifest runtime cases now executed their actual group imports and recursive handler-module census, and passed. They check routability/callable exports rather than executing every handler operation.",
+ "The unchanged agent-launch fixture capability values are protocol inputs; it has no standalone cases and no selected launch-process consumer suite was added. Shared test-fixture queues are consumed by the selected browser cases.",
+ "Stored-only supporting evidence retains explicit read-state labels; retrieving its pinned source is not a completed test-file review.",
+ "All artifacts were written under /tmp only. This agent made no tracker/source/checkout edits or Git staging, commit, push, rebase or hook changes. The pnpm test command ran the repository build:packages prerequisite, producing generated package output only."
+ ],
+ "execution_commit": "41b5cf015be7970a23e91d4ce76d52d781db4e1b",
+ "runtime_test_files": 8,
+ "runtime_failed": 0,
+ "runtime_skipped": 0,
+ "reviewed_files": 10,
+ "integration": {
+ "delivered_validation_sha256": "16ac06dd18d25756081521bfcd28adf86cfaf6db7a72ed4e51720fc84e77035e",
+ "adjustment": "Update the earlier static-estimate sentence to reflect the completed runtime run; preserve all check results and source/case provenance."
+ },
+ "records_sha256": "1c5d9c8f4d15b59e5c16933ebeaca7789c75daffc225f5ce0eb6ff9b228f42bd"
+}
diff --git a/docs/audits/test-value/reviews/upstream-0003.jsonl b/docs/audits/test-value/reviews/upstream-0003.jsonl
new file mode 100644
index 00000000000..ac8239ae0cf
--- /dev/null
+++ b/docs/audits/test-value/reviews/upstream-0003.jsonl
@@ -0,0 +1,10 @@
+{"path":"src/cli/agent-launch-test-fixtures.ts","sha256":"23a6ef61547cd232e1f70a2cc68937dab93c147d13db89c2c240c2ef0056762e","reviewed_sha256":"23a6ef61547cd232e1f70a2cc68937dab93c147d13db89c2c240c2ef0056762e","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","reviewer":"audit_cloud","status":"reviewed","decision":"keep","classification":"auxiliary CLI fixture","rationale":"Shared typed success envelopes supply launch/status fixtures. No standalone assertions or runnable cases; preserving capabilities as inputs is appropriate for protocol fixtures. Complete upstream body and every fixture factory/traversal reread; only comments differ from the previous reviewed snapshot. No standalone runtime case is invented.","phase":"runtime-validated-upstream-rereview","complete_body_and_tables_reviewed":true,"implementation_status":"reviewed-unchanged","checkout_edits":false,"original_declarations":0,"final_declarations":0,"cases":[],"explicit_input_controls":[],"support_functions":[{"path":"src/cli/agent-launch-test-fixtures.ts","line":4,"end_line":6,"start":139,"end":274,"byte_start":139,"byte_end":274,"source":"export function agentLaunchHostFixture() {\n return okFixture('req_status', { capabilities: [...AGENT_LAUNCH_RUNTIME_CAPABILITIES] })\n}","source_sha256":"da10f9f4938e90b7c479941378318ee20168000f1aaa8f4eb5c35fad2b03168c","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","name":"agentLaunchHostFixture","decision":"keep","reason":"Preserve typed status success envelope and current capability list as protocol input for launch dispatch; it is not an assertion that capabilities copy themselves.","runtime_case":false},{"path":"src/cli/agent-launch-test-fixtures.ts","line":8,"end_line":21,"start":276,"end":809,"byte_start":276,"byte_end":809,"source":"export function agentLaunchFixture(worktreeId: string, warning?: string) {\n return okFixture('req_launch', {\n outcome: { kind: 'structured', sessionId: 'codex_1', handle: 'agent_1' },\n worktreeId,\n receipt: {\n mode: 'structured',\n preferred: 'structured',\n reason: 'user_default',\n detail: 'Started a structured chat session, the default for new agent tabs in your settings.'\n },\n prompt: { delivery: 'submit', outcome: 'journaled', messageId: 'msg_1' },\n ...(warning ? { warning } : {})\n })\n}","source_sha256":"5ea3e600f747f0ad7730a935bac0cbe8f0e5862c89505a6bf7ab539ff7f08f91","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","name":"agentLaunchFixture","decision":"keep","reason":"Preserve structured outcome, workspace identity, typed receipt and journaled prompt result, including the optional top-level warning branch.","runtime_case":false}],"historical_cases_absent_from_current_source":[],"previous_explicit_parameter_case_records":[],"previous_review":{"path":"reviews/root-0051.jsonl","source_commit":"8f6283b32bcdefa746613e4c28d04bb1fe954eb9","original_sha256":"968e3affaa5b285a2a52da6f7d6cc653568e96522d72c0c50d8a581eb56b3b7e","reviewed_sha256":"968e3affaa5b285a2a52da6f7d6cc653568e96522d72c0c50d8a581eb56b3b7e","matching_reviewed_snapshot_source_commit":"70acd58dd2d049ba74492b66d8999ed2ce64ff21"},"upstream_comparison":{"same_executable_ast":true,"same_noncomment_tokens":true,"canonical_ast_sha256":"7620d1d17a5c0f1ded454b8ef8cd1300cdab563072c71b9987b5497fb99587ed","noncomment_tokens_sha256":"b652d0dc771fb85ffb572b4aa0e43dfffe0e90d8b68fa5481bb166838f283531","source_diff":"/tmp/orca-cli-upstream-rereview-0002/upstream-diff.patch"},"evidence":["src/cli/test-fixtures.ts","src/shared/agent-launch-runtime-capability.ts","src/cli/agent-launch-process.test.ts"],"evidence_sha256":{"src/cli/test-fixtures.ts":"6aedc6de29e6067251033e2be73efdc64e0da89f7e205726026981eac5db610c","src/shared/agent-launch-runtime-capability.ts":"36f2b7a0a4802c67cb385d352b698c61806b3e6aac2e1be67d2ef7e33253f32b","src/cli/agent-launch-process.test.ts":"c508ac82014c308b351e76fabcd148e07f4ae26b3770b3c1c346eb8c962bdf76"},"evidence_detail":[{"path":"src/cli/test-fixtures.ts","sha256":"6aedc6de29e6067251033e2be73efdc64e0da89f7e205726026981eac5db610c","lines":85,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"},{"path":"src/shared/agent-launch-runtime-capability.ts","sha256":"36f2b7a0a4802c67cb385d352b698c61806b3e6aac2e1be67d2ef7e33253f32b","lines":89,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"},{"path":"src/cli/agent-launch-process.test.ts","sha256":"c508ac82014c308b351e76fabcd148e07f4ae26b3770b3c1c346eb8c962bdf76","lines":144,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"stored_snapshot_and_prior_evidence_only_not_newly_read"}],"validation":"reviews/upstream-0003-validation.json","tests_executed":false,"runtime_validation":"zero-declaration-support-file-no-standalone-runtime-cases","integration_note":"Pinned upstream and merged checkout hashes match; eight runnable selected suites passed108 cases. Two auxiliary fixtures have no standalone cases.","support_return_values":[{"path":"src/cli/agent-launch-test-fixtures.ts","line":5,"end_line":5,"start":191,"end":272,"byte_start":191,"byte_end":272,"source":"okFixture('req_status', { capabilities: [...AGENT_LAUNCH_RUNTIME_CAPABILITIES] })","source_sha256":"14067f3dd2e043a6eeec93af00c084b5f317c7ea77d393e5e64e0ff6dde2c272","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","kind":"support-return-value","factory":"agentLaunchHostFixture","decision":"keep","reason":"Preserve this typed fixture return and every literal field/conditional/spread exactly as reviewed; it is protocol input rather than an independent assertion.","rows":[]},{"path":"src/cli/agent-launch-test-fixtures.ts","line":9,"end_line":20,"start":360,"end":807,"byte_start":360,"byte_end":807,"source":"okFixture('req_launch', {\n outcome: { kind: 'structured', sessionId: 'codex_1', handle: 'agent_1' },\n worktreeId,\n receipt: {\n mode: 'structured',\n preferred: 'structured',\n reason: 'user_default',\n detail: 'Started a structured chat session, the default for new agent tabs in your settings.'\n },\n prompt: { delivery: 'submit', outcome: 'journaled', messageId: 'msg_1' },\n ...(warning ? { warning } : {})\n })","source_sha256":"aad8d869b1b728f1c9fc3fc07dd5528c6f852116f049feb76ebb11313bb0f79b","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","kind":"support-return-value","factory":"agentLaunchFixture","decision":"keep","reason":"Preserve this typed fixture return and every literal field/conditional/spread exactly as reviewed; it is protocol input rather than an independent assertion.","rows":[]}],"referenced_protocol_input_controls":[{"kind":"advertised-capability-input","path":"src/shared/agent-launch-runtime-capability.ts","line":76,"end_line":89,"start":4665,"end":5229,"byte_start":4665,"byte_end":5229,"source":"[\n AGENT_LAUNCH_SETTINGS_CAPABILITY,\n AGENT_LAUNCH_AUTO_PERMISSIONS_CAPABILITY,\n AGENT_LAUNCH_NATIVE_CHAT_PERMISSIONS_CAPABILITY,\n AGENT_LAUNCH_RUNTIME_CAPABILITY,\n AGENT_LAUNCH_REPLAY_RUNTIME_CAPABILITY,\n AGENT_LAUNCH_REPLAY_REQUIRED_RUNTIME_CAPABILITY,\n AGENT_LAUNCH_PROMPT_CARRY_RUNTIME_CAPABILITY,\n AGENT_LAUNCH_PROMPT_UNCONFIRMED_RUNTIME_CAPABILITY,\n AGENT_LAUNCH_PLACEMENT_RUNTIME_CAPABILITY,\n AGENT_LAUNCH_LOCAL_PRESENTATION_RUNTIME_CAPABILITY,\n AGENT_LAUNCH_CREATE_FOLDER_WORKSPACE_RUNTIME_CAPABILITY,\n AGENT_LAUNCH_SURFACE_RUNTIME_CAPABILITY\n]","source_sha256":"fb784ad632185119d0aa147462a551ba02b8ef7ca003e9faf2b9df62cda9c957","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","decision":"keep","reason":"Retain all advertised capability inputs in the synthetic status envelope; this input expansion is not a copied-value assertion or additional runnable suite.","rows":[{"index":1,"path":"src/shared/agent-launch-runtime-capability.ts","line":77,"end_line":77,"start":4669,"end":4701,"byte_start":4669,"byte_end":4701,"source":"AGENT_LAUNCH_SETTINGS_CAPABILITY","source_sha256":"e0c78e84071df1358c4e6bdc3ec644e734056c46814fcdadd0925474d870808b","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","resolved_value":{"path":"src/shared/agent-launch-runtime-capability.ts","line":62,"end_line":62,"start":3891,"end":3917,"byte_start":3891,"byte_end":3917,"source":"'settings.agent-launch.v1'","source_sha256":"21d14cd91296973b106d48276497d93776f76b6a4a4fae6bec4edff25c9bed90","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1"},"decision":"keep","reason":"Advertise this current protocol capability as fixture input to actual launch negotiation."},{"index":2,"path":"src/shared/agent-launch-runtime-capability.ts","line":78,"end_line":78,"start":4705,"end":4745,"byte_start":4705,"byte_end":4745,"source":"AGENT_LAUNCH_AUTO_PERMISSIONS_CAPABILITY","source_sha256":"755f9d28091bede9ccece8f557502309b5850b6b97f012404872de12c7162c2e","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","resolved_value":{"path":"src/shared/agent-launch-runtime-capability.ts","line":66,"end_line":66,"start":4056,"end":4099,"byte_start":4056,"byte_end":4099,"source":"'settings.agent-launch.auto-permissions.v1'","source_sha256":"56bc39c1f9449346056f4bdac71425406ca04905259d2edf8449280585941e90","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1"},"decision":"keep","reason":"Advertise this current protocol capability as fixture input to actual launch negotiation."},{"index":3,"path":"src/shared/agent-launch-runtime-capability.ts","line":79,"end_line":79,"start":4749,"end":4796,"byte_start":4749,"byte_end":4796,"source":"AGENT_LAUNCH_NATIVE_CHAT_PERMISSIONS_CAPABILITY","source_sha256":"aa617b14b813a59009dd0e68878bd43e771fadb91155575fa883882f2588c062","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","resolved_value":{"path":"src/shared/agent-launch-runtime-capability.ts","line":70,"end_line":70,"start":4276,"end":4326,"byte_start":4276,"byte_end":4326,"source":"'settings.agent-launch.native-chat-permissions.v1'","source_sha256":"0a624d37520c3c10fa15f6ba389d732e4e2e0e080c0fec83a9925ce6f0714bee","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1"},"decision":"keep","reason":"Advertise this current protocol capability as fixture input to actual launch negotiation."},{"index":4,"path":"src/shared/agent-launch-runtime-capability.ts","line":80,"end_line":80,"start":4800,"end":4831,"byte_start":4800,"byte_end":4831,"source":"AGENT_LAUNCH_RUNTIME_CAPABILITY","source_sha256":"d6ed8bef2d49ee5552435b7f9d913c8f604c5a237e7549ef8791c55317dce54e","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","resolved_value":{"path":"src/shared/agent-launch-runtime-capability.ts","line":19,"end_line":19,"start":1179,"end":1196,"byte_start":1179,"byte_end":1196,"source":"'agent.launch.v2'","source_sha256":"4dd5a1e2118c7101ffce83e7b2ef5759e32231f5fbd8df067e01caed3443a9a7","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1"},"decision":"keep","reason":"Advertise this current protocol capability as fixture input to actual launch negotiation."},{"index":5,"path":"src/shared/agent-launch-runtime-capability.ts","line":81,"end_line":81,"start":4835,"end":4873,"byte_start":4835,"byte_end":4873,"source":"AGENT_LAUNCH_REPLAY_RUNTIME_CAPABILITY","source_sha256":"f9773e9cdbb60b64e59a065713fe0184382a87ca4eed42806e2327ddb577a38f","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","resolved_value":{"path":"src/shared/agent-launch-runtime-capability.ts","line":22,"end_line":22,"start":1371,"end":1395,"byte_start":1371,"byte_end":1395,"source":"'agent.launch.replay.v1'","source_sha256":"5d941f1f7219b6f169d6e389b4b74717d75539e2615d5eb640fe9fe54c85df3a","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1"},"decision":"keep","reason":"Advertise this current protocol capability as fixture input to actual launch negotiation."},{"index":6,"path":"src/shared/agent-launch-runtime-capability.ts","line":82,"end_line":82,"start":4877,"end":4924,"byte_start":4877,"byte_end":4924,"source":"AGENT_LAUNCH_REPLAY_REQUIRED_RUNTIME_CAPABILITY","source_sha256":"529600ef456370eca137cd12860f5a82c5f12bc077aec2fc6ead8dc7b8de7857","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","resolved_value":{"path":"src/shared/agent-launch-runtime-capability.ts","line":30,"end_line":30,"start":1855,"end":1888,"byte_start":1855,"byte_end":1888,"source":"'agent.launch.replay-required.v1'","source_sha256":"d1520160bd0e3ba5eac9be360d7b7e48660dcffe633a63de1b4d27012a832367","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1"},"decision":"keep","reason":"Advertise this current protocol capability as fixture input to actual launch negotiation."},{"index":7,"path":"src/shared/agent-launch-runtime-capability.ts","line":83,"end_line":83,"start":4928,"end":4972,"byte_start":4928,"byte_end":4972,"source":"AGENT_LAUNCH_PROMPT_CARRY_RUNTIME_CAPABILITY","source_sha256":"a8d0770e99747e1bb0aa876149c1a6640070be53012862c4d0c09716981fe8b6","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","resolved_value":{"path":"src/shared/agent-launch-runtime-capability.ts","line":26,"end_line":26,"start":1658,"end":1688,"byte_start":1658,"byte_end":1688,"source":"'agent.launch.prompt-carry.v1'","source_sha256":"385b54a331ad63ee84b1c51a2534795a196f4326ef668c2827bd71d17cec8212","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1"},"decision":"keep","reason":"Advertise this current protocol capability as fixture input to actual launch negotiation."},{"index":8,"path":"src/shared/agent-launch-runtime-capability.ts","line":84,"end_line":84,"start":4976,"end":5026,"byte_start":4976,"byte_end":5026,"source":"AGENT_LAUNCH_PROMPT_UNCONFIRMED_RUNTIME_CAPABILITY","source_sha256":"a23731d88a2fc6da147b52aad936cbb7167b596bda7388d8e5780553a349b289","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","resolved_value":{"path":"src/shared/agent-launch-runtime-capability.ts","line":35,"end_line":35,"start":2164,"end":2200,"byte_start":2164,"byte_end":2200,"source":"'agent.launch.prompt-unconfirmed.v1'","source_sha256":"70b3d9ba7ae9f798ff22937b6371981534d43b1947fb74d30944655a38351730","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1"},"decision":"keep","reason":"Advertise this current protocol capability as fixture input to actual launch negotiation."},{"index":9,"path":"src/shared/agent-launch-runtime-capability.ts","line":85,"end_line":85,"start":5030,"end":5071,"byte_start":5030,"byte_end":5071,"source":"AGENT_LAUNCH_PLACEMENT_RUNTIME_CAPABILITY","source_sha256":"3e153bc7639de5631c7fc6fd592190dff01c0a6b179fae98928abc157b46f053","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","resolved_value":{"path":"src/shared/agent-launch-runtime-capability.ts","line":39,"end_line":39,"start":2429,"end":2456,"byte_start":2429,"byte_end":2456,"source":"'agent.launch.placement.v1'","source_sha256":"619e173b93f80283dba84a22858c5c288d9df36161c2e3337592abc6e3b2d77c","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1"},"decision":"keep","reason":"Advertise this current protocol capability as fixture input to actual launch negotiation."},{"index":10,"path":"src/shared/agent-launch-runtime-capability.ts","line":86,"end_line":86,"start":5075,"end":5125,"byte_start":5075,"byte_end":5125,"source":"AGENT_LAUNCH_LOCAL_PRESENTATION_RUNTIME_CAPABILITY","source_sha256":"b18516207dcd4190a5404298a3856a7f0b7953506870a4f11b5b7d045744faee","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","resolved_value":{"path":"src/shared/agent-launch-runtime-capability.ts","line":43,"end_line":43,"start":2634,"end":2670,"byte_start":2634,"byte_end":2670,"source":"'agent.launch.local-presentation.v1'","source_sha256":"b6c211ad6a833ff4755a42ac14c9bb0fdf7bc80899b055a5d841d7aa8a79d47a","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1"},"decision":"keep","reason":"Advertise this current protocol capability as fixture input to actual launch negotiation."},{"index":11,"path":"src/shared/agent-launch-runtime-capability.ts","line":87,"end_line":87,"start":5129,"end":5184,"byte_start":5129,"byte_end":5184,"source":"AGENT_LAUNCH_CREATE_FOLDER_WORKSPACE_RUNTIME_CAPABILITY","source_sha256":"1fdd881307a4e94c31eae2f7f3a53d129a83899b9f44c4903fbc11ac1712c5ec","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","resolved_value":{"path":"src/shared/agent-launch-runtime-capability.ts","line":50,"end_line":50,"start":3116,"end":3157,"byte_start":3116,"byte_end":3157,"source":"'agent.launch.create-folder-workspace.v1'","source_sha256":"b4cc2b715a589ab4bafae0b9041d4c6470c5dd8889a4be5f29eef2ae34f92e8e","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1"},"decision":"keep","reason":"Advertise this current protocol capability as fixture input to actual launch negotiation."},{"index":12,"path":"src/shared/agent-launch-runtime-capability.ts","line":88,"end_line":88,"start":5188,"end":5227,"byte_start":5188,"byte_end":5227,"source":"AGENT_LAUNCH_SURFACE_RUNTIME_CAPABILITY","source_sha256":"e35ae384655c1bc2fd2080174032c4bd9ee4b30574d69bde864739506cdab594","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","resolved_value":{"path":"src/shared/agent-launch-runtime-capability.ts","line":74,"end_line":74,"start":4580,"end":4605,"byte_start":4580,"byte_end":4605,"source":"'agent.launch.surface.v1'","source_sha256":"496ecb5feb8ec9135e2c507032c7a259c635de0c8d4e244fb874013b712bb48d","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1"},"decision":"keep","reason":"Advertise this current protocol capability as fixture input to actual launch negotiation."}]}],"execution_commit":"41b5cf015be7970a23e91d4ce76d52d781db4e1b","runtime_evidence":{"command_artifact":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests-command.json","command_artifact_sha256":"bfdfbbae010b126e2001c5cfb910e3da4582b1522909bdf8eb38785a06618c59","report":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.json","report_sha256":"5efdd36e8a1730b0146a04f5948b2a16f046ac11b96c24416f681adf823640eb","log":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.log","log_sha256":"a61c033dad812ef5e0da43927bf6ecd313070a4985bf46489c6aa9e517cf3202","test_file_included":false,"passed_cases":0,"cases":[],"support_limit":"Requested path has no runnable declarations. Passing suite counts do not add fixture cases or prove every fixture factory executed."}}
+{"path":"src/cli/automation-format.test.ts","sha256":"f94a68ef9d94c4f431efa16946959db782f19acc7ca823e2e7140782c45da9ae","reviewed_sha256":"f94a68ef9d94c4f431efa16946959db782f19acc7ca823e2e7140782c45da9ae","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","reviewer":"audit_cloud","status":"reviewed","decision":"keep","classification":"behavioral CLI suite","rationale":"Read the complete pinned upstream body, every current case, parameter table, explicit fixture workload and traversal. Compared with the completed review and matching reviewed snapshot: only comments differ, all executable syntax and assertion/input values remain identical, and earlier improvements are preserved. Retain every current case. The post-merge suite passed; exact command/result evidence is in the batch validation record.","phase":"runtime-validated-upstream-rereview","complete_body_and_tables_reviewed":true,"implementation_status":"reviewed-unchanged","checkout_edits":false,"original_declarations":6,"final_declarations":6,"cases":[{"path":"src/cli/automation-format.test.ts","line":35,"end_line":48,"start":1034,"end":1612,"byte_start":1034,"byte_end":1612,"source":"it('distinguishes a live SSH host from a replaced one by its incarnation', () => {\n const live = formatAutomationShow({\n automation: automation(),\n owner: { selector: { kind: 'ssh', targetId: 'box-1', targetGeneration: 4 } }\n })\n const replaced = formatAutomationShow({\n automation: automation(),\n owner: { selector: { kind: 'ssh', targetId: 'box-1', targetGeneration: 9 } }\n })\n\n expect(live).toContain('host: ssh:box-1 (generation 4)')\n expect(replaced).toContain('host: ssh:box-1 (generation 9)')\n expect(live).not.toBe(replaced)\n })","source_sha256":"8a5f84ccfb6230cb67c6f7362587f646d21798a148d065028ef12822b0b34154","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"distinguishes a live SSH host from a replaced one by its incarnation","decision":"keep","reason":"Identical stored target with generation 4 versus 9 renders distinct authoritative host incarnations.","previous_decision":"keep","previous_original_line":39,"previous_reviewed_snapshot_line":39,"previous_reviewed_body_sha256":"8a5f84ccfb6230cb67c6f7362587f646d21798a148d065028ef12822b0b34154","executable_body_unchanged":true,"semantic_body_sha256":"4374c45d4002e9d790a711beba8c86fa240562593ef715ce2322aee5c8202873","explicit_input_controls":[]},{"path":"src/cli/automation-format.test.ts","line":50,"end_line":59,"start":1616,"end":2050,"byte_start":1616,"byte_end":2050,"source":"it('says outright that an orphan has no host, rather than naming its dead target', () => {\n const output = formatAutomationShow({\n automation: automation(),\n owner: { selector: { kind: 'orphan' } }\n })\n\n expect(output).toContain('host: orphan (no host can run this automation)')\n // Keep the stored target as history, separately from current host ownership.\n expect(output).toContain('target: ssh:box-1')\n })","source_sha256":"4e0dc164370abc0ae9817f20b0bed33ee9f92b36c1fbb8971be091fc47947cc6","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"says outright that an orphan has no host, rather than naming its dead target","decision":"keep","reason":"Orphan authority prints no runnable host while preserving the stored target as history.","previous_decision":"keep","previous_original_line":54,"previous_reviewed_snapshot_line":54,"previous_reviewed_body_sha256":"06127c491bde3f124f0a8259b8fef591b7fb79c6cf3bbc96f9d75a1278dc7f90","executable_body_unchanged":true,"semantic_body_sha256":"4891579b051f2293e305366607ba593945c5a636ad40005fb524f791c27e8422","explicit_input_controls":[]},{"path":"src/cli/automation-format.test.ts","line":61,"end_line":68,"start":2054,"end":2350,"byte_start":2054,"byte_end":2350,"source":"it('names the local host for a self-owned automation', () => {\n const output = formatAutomationShow({\n automation: automation({ executionTargetType: 'local', executionTargetId: 'local' }),\n owner: { selector: { kind: 'self' } }\n })\n\n expect(output).toContain('host: self')\n })","source_sha256":"838c14d54a18aab54dbb6fa6ca8a1d57580c200194128a0d0c2d220d333f75eb","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"names the local host for a self-owned automation","decision":"keep","reason":"Self-owned automation renders explicit self host.","previous_decision":"keep","previous_original_line":65,"previous_reviewed_snapshot_line":65,"previous_reviewed_body_sha256":"838c14d54a18aab54dbb6fa6ca8a1d57580c200194128a0d0c2d220d333f75eb","executable_body_unchanged":true,"semantic_body_sha256":"68112a10bdcaa35df31d7d0e6ed33a4fabc311c78b2e61d611b2bc56cdc35e1f","explicit_input_controls":[]},{"path":"src/cli/automation-format.test.ts","line":70,"end_line":75,"start":2354,"end":2591,"byte_start":2354,"byte_end":2591,"source":"it('omits the host line when the authority reports no owner', () => {\n const output = formatAutomationShow({ automation: automation() })\n\n expect(output).not.toContain('host:')\n expect(output).toContain('target: ssh:box-1')\n })","source_sha256":"8dfc20b0d5e8459def4c9cdd10472a771fd2dcbc6da86798663eacc1027235e7","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"omits the host line when the authority reports no owner","decision":"keep","reason":"Older authority without owner omits invented host while still rendering stored target.","previous_decision":"keep","previous_original_line":76,"previous_reviewed_snapshot_line":76,"previous_reviewed_body_sha256":"8dfc20b0d5e8459def4c9cdd10472a771fd2dcbc6da86798663eacc1027235e7","executable_body_unchanged":true,"semantic_body_sha256":"8120df672b48057caf5158f742864a4c7bb0a6481b3edec16ddab0ea206aedd3","explicit_input_controls":[]},{"path":"src/cli/automation-format.test.ts","line":79,"end_line":99,"start":2661,"end":3469,"byte_start":2661,"byte_end":3471,"source":"it('names the orphan issue so the list explains why a row cannot run', () => {\n const output = formatAutomationList({\n automations: [automation(), automation({ id: 'auto-2', name: 'Weekly' })],\n items: [\n {\n automationId: 'auto-2',\n selector: { kind: 'orphan', issue: AUTOMATION_ORPHAN_ISSUES.targetMissing }\n },\n {\n automationId: 'auto-1',\n selector: { kind: 'ssh', targetId: 'box-1', targetGeneration: 4 }\n }\n ]\n })\n\n const [nightly, weekly] = output.split('\\n\\n')\n expect(nightly).toContain('auto-1 Nightly')\n expect(nightly).toContain('host: ssh:box-1 (generation 4)')\n expect(weekly).toContain('auto-2 Weekly')\n expect(weekly).toContain(`host: orphan \u2014 ${AUTOMATION_ORPHAN_ISSUES.targetMissing}`)\n })","source_sha256":"fc9c7c82dfaf9a8d26c14acb4c4febb06779e505c619aa7f1bcf2fdd47dbdbb0","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"names the orphan issue so the list explains why a row cannot run","decision":"keep","reason":"Retain reversed owner projections and host assertions within individually identified automation rows, preserving the earlier fix against index-based association.","previous_decision":"fix","previous_original_line":85,"previous_reviewed_snapshot_line":85,"previous_reviewed_body_sha256":"fc9c7c82dfaf9a8d26c14acb4c4febb06779e505c619aa7f1bcf2fdd47dbdbb0","executable_body_unchanged":true,"semantic_body_sha256":"281f9cdc778adb4384a5c0cfb1306936349e5f58897bd01dffd3a27ae3ee1a9b","explicit_input_controls":[]},{"path":"src/cli/automation-format.test.ts","line":101,"end_line":106,"start":3473,"end":3720,"byte_start":3475,"byte_end":3722,"source":"it('omits the host line for rows an older authority does not qualify', () => {\n const output = formatAutomationList({ automations: [automation()] })\n\n expect(output).toContain('auto-1 Nightly')\n expect(output).not.toContain('host:')\n })","source_sha256":"af028ed09d57edeb3e3e2d720e4653875589736fa0d135f7d918e93bdddd4dc7","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"omits the host line for rows an older authority does not qualify","decision":"keep","reason":"Retain the visible legacy automation row alongside absence of an invented host, so empty output cannot satisfy the case.","previous_decision":"fix","previous_original_line":104,"previous_reviewed_snapshot_line":107,"previous_reviewed_body_sha256":"af028ed09d57edeb3e3e2d720e4653875589736fa0d135f7d918e93bdddd4dc7","executable_body_unchanged":true,"semantic_body_sha256":"4389e8ac9ae77f16174721f1a8769d5b263b7ccfc632d37b32557175b877cd66","explicit_input_controls":[]}],"explicit_input_controls":[],"support_functions":[{"path":"src/cli/automation-format.test.ts","line":6,"end_line":32,"start":265,"end":949,"byte_start":265,"byte_end":949,"source":"function automation(overrides: Partial = {}): Automation {\n return {\n id: 'auto-1',\n name: 'Nightly',\n prompt: 'Run checks',\n precheck: null,\n agentId: 'codex',\n projectId: 'repo-legacy',\n executionTargetType: 'ssh',\n executionTargetId: 'box-1',\n schedulerOwner: 'local_host_service',\n workspaceMode: 'new_per_run',\n workspaceId: null,\n baseBranch: null,\n reuseSession: false,\n timezone: 'UTC',\n rrule: 'FREQ=DAILY;BYHOUR=9;BYMINUTE=0',\n dtstart: 0,\n enabled: true,\n nextRunAt: 0,\n missedRunPolicy: 'run_once_within_grace',\n missedRunGraceMinutes: 720,\n createdAt: 0,\n updatedAt: 0,\n ...overrides\n }\n}","source_sha256":"4985725123c468611e59c51635bca9118c395a9434e2143b4507b52aab3fb9b6","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","name":"automation","decision":"keep","reason":"Keep independent automation domain defaults with explicit overrides so authority-projected owner outputs are tested against stored target history.","runtime_case":false}],"historical_cases_absent_from_current_source":[],"previous_explicit_parameter_case_records":[],"previous_review":{"path":"reviews/root-0052.jsonl","source_commit":"8f6283b32bcdefa746613e4c28d04bb1fe954eb9","original_sha256":"7a23802e9b010d5ad1676863663f134fec2968d3cdaacadac8417cfc5855bbfc","reviewed_sha256":"4d763109cc1e37a4acf2419aab178e531c2012e5e355d900372005aaaeaef181","matching_reviewed_snapshot_source_commit":"70acd58dd2d049ba74492b66d8999ed2ce64ff21"},"upstream_comparison":{"same_executable_ast":true,"same_noncomment_tokens":true,"canonical_ast_sha256":"921130bddfc530ef6f012655fec032a2b352b48bf3e1c922311a2a2cfc97cd59","noncomment_tokens_sha256":"5c3349dce24a43e710f698d601d0ab4fae198f9ef50aebddc26fc370bf8c14e8","source_diff":"/tmp/orca-cli-upstream-rereview-0002/upstream-diff.patch"},"evidence":["src/cli/automation-format.ts","src/shared/automation-list-scope.ts"],"evidence_sha256":{"src/cli/automation-format.ts":"9e231e6d6539dbd3c0802381e537696897579e4797a27a6a713d5e0a3f040c3b","src/shared/automation-list-scope.ts":"b9f4b713ddc0a9c4f1f5546df8c62df1216248c53ec5b3fdeccae8cefd15dbb2"},"evidence_detail":[{"path":"src/cli/automation-format.ts","sha256":"9e231e6d6539dbd3c0802381e537696897579e4797a27a6a713d5e0a3f040c3b","lines":202,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"},{"path":"src/shared/automation-list-scope.ts","sha256":"b9f4b713ddc0a9c4f1f5546df8c62df1216248c53ec5b3fdeccae8cefd15dbb2","lines":304,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"stored_snapshot_and_prior_evidence_only_not_newly_read"}],"validation":"reviews/upstream-0003-validation.json","tests_executed":true,"runtime_validation":"passed_post_merge","integration_note":"Pinned upstream and merged checkout hashes match; eight runnable selected suites passed108 cases. Two auxiliary fixtures have no standalone cases.","execution_commit":"41b5cf015be7970a23e91d4ce76d52d781db4e1b","runtime_evidence":{"command_artifact":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests-command.json","command_artifact_sha256":"bfdfbbae010b126e2001c5cfb910e3da4582b1522909bdf8eb38785a06618c59","report":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.json","report_sha256":"5efdd36e8a1730b0146a04f5948b2a16f046ac11b96c24416f681adf823640eb","log":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.log","log_sha256":"a61c033dad812ef5e0da43927bf6ecd313070a4985bf46489c6aa9e517cf3202","test_file_included":true,"passed_cases":6,"cases":[{"title":"formatAutomationShow reports the host the authority projects distinguishes a live SSH host from a replaced one by its incarnation","status":"passed"},{"title":"formatAutomationShow reports the host the authority projects says outright that an orphan has no host, rather than naming its dead target","status":"passed"},{"title":"formatAutomationShow reports the host the authority projects names the local host for a self-owned automation","status":"passed"},{"title":"formatAutomationShow reports the host the authority projects omits the host line when the authority reports no owner","status":"passed"},{"title":"formatAutomationList reports each row host names the orphan issue so the list explains why a row cannot run","status":"passed"},{"title":"formatAutomationList reports each row host omits the host line for rows an older authority does not qualify","status":"passed"}],"support_limit":null}}
+{"path":"src/cli/automation-owner-conflict-recovery.test.ts","sha256":"e59897c9945c80dd9fb09176c7bb488e5153e9a24f43951cf0083690db67b92e","reviewed_sha256":"e59897c9945c80dd9fb09176c7bb488e5153e9a24f43951cf0083690db67b92e","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","reviewer":"audit_cloud","status":"reviewed","decision":"keep","classification":"behavioral CLI suite","rationale":"Read the complete pinned upstream body, every current case, parameter table, explicit fixture workload and traversal. Compared with the completed review and matching reviewed snapshot: only comments differ, all executable syntax and assertion/input values remain identical, and earlier improvements are preserved. Retain every current case. The post-merge suite passed; exact command/result evidence is in the batch validation record.","phase":"runtime-validated-upstream-rereview","complete_body_and_tables_reviewed":true,"implementation_status":"reviewed-unchanged","checkout_edits":false,"original_declarations":7,"final_declarations":7,"cases":[{"path":"src/cli/automation-owner-conflict-recovery.test.ts","line":18,"end_line":26,"start":621,"end":1037,"byte_start":621,"byte_end":1037,"source":"it('drops the machine token from the human message and names the recovery', () => {\n const output = formatCliError(\n conflict(AUTOMATION_OWNER_CONFLICT_CODES.ownerChanged, \"This automation's host changed.\")\n )\n\n expect(output).toContain(\"This automation's host changed.\")\n expect(output).not.toContain('automation_owner_changed')\n expect(output).toContain('Next step: Run the command again')\n })","source_sha256":"e40d641de5569f281c3b698cd418e4ced3b5dac2a2d86bf2091cf1eeafb2e3eb","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"drops the machine token from the human message and names the recovery","decision":"keep","reason":"Typed owner-change failure drops machine suffix from human text and names the retry recovery.","previous_decision":"keep","previous_original_line":18,"previous_reviewed_snapshot_line":18,"previous_reviewed_body_sha256":"e40d641de5569f281c3b698cd418e4ced3b5dac2a2d86bf2091cf1eeafb2e3eb","executable_body_unchanged":true,"semantic_body_sha256":"f2a4326cc596086041a9919f8628b3be88dd344a7fe6ca68d4f2125f4e12e853","explicit_input_controls":[]},{"path":"src/cli/automation-owner-conflict-recovery.test.ts","line":28,"end_line":37,"start":1041,"end":1462,"byte_start":1041,"byte_end":1462,"source":"it('never proposes a retry for a removed target', () => {\n const output = formatCliError(\n conflict(AUTOMATION_OWNER_CONFLICT_CODES.targetRemoved, 'Host removed.')\n )\n\n expect(output).not.toMatch(/run the command again|try again/i)\n expect(output).toContain('retrying will not change that')\n expect(output).toContain('Re-add that SSH host')\n expect(output).toContain('orca automations remove')\n })","source_sha256":"ebd8487e6f2175d40bc4578ae2ec5466250b8a4ca62edf82f498f96008da7c60","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"never proposes a retry for a removed target","decision":"keep","reason":"Removed target offers re-add/delete recovery and never a futile retry.","previous_decision":"keep","previous_original_line":30,"previous_reviewed_snapshot_line":30,"previous_reviewed_body_sha256":"ebd8487e6f2175d40bc4578ae2ec5466250b8a4ca62edf82f498f96008da7c60","executable_body_unchanged":true,"semantic_body_sha256":"5ce42ae8a5d44b5d6612edb886645fa359d131e52214ac319190e54c4550b815","explicit_input_controls":[]},{"path":"src/cli/automation-owner-conflict-recovery.test.ts","line":39,"end_line":51,"start":1466,"end":2032,"byte_start":1466,"byte_end":2032,"source":"it('keeps the code machine-readable in --json while carrying the same steps', () => {\n const log = vi.spyOn(console, 'log').mockImplementation(() => undefined)\n\n reportCliError(\n conflict(AUTOMATION_OWNER_CONFLICT_CODES.fencingRequired, 'Owner required.'),\n true\n )\n\n const payload = JSON.parse(log.mock.calls[0]![0] as string)\n expect(payload.error.code).toBe('automation_owner_fencing_required')\n expect(payload.error.message).toBe('Owner required.')\n expect(payload.error.data.nextSteps[1]).toContain('Update Orca on the host')\n })","source_sha256":"46e621dc0712c507d51e52eb1a4785362a0456e37db112cdcf90f6a20b05a8e4","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"keeps the code machine-readable in --json while carrying the same steps","decision":"keep","reason":"Actual console JSON envelope preserves machine conflict code, stripped message and host-update recovery.","previous_decision":"keep","previous_original_line":41,"previous_reviewed_snapshot_line":41,"previous_reviewed_body_sha256":"46e621dc0712c507d51e52eb1a4785362a0456e37db112cdcf90f6a20b05a8e4","executable_body_unchanged":true,"semantic_body_sha256":"05445f64e4ffd7f9d93f5d301475d42778b9d0d42774403ca57a235b296bde74","explicit_input_controls":[]},{"path":"src/cli/automation-owner-conflict-recovery.test.ts","line":53,"end_line":57,"start":2036,"end":2227,"byte_start":2036,"byte_end":2227,"source":"it('leaves unrelated failures untouched', () => {\n const output = formatCliError(conflict('runtime_error', 'Something else'))\n\n expect(output).toBe('Something else: runtime_error')\n })","source_sha256":"4ecc4e1fc04b284a4615d9b5f682f14b0b3d16ef32f80c6aad9bda76d1a6ae3e","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"leaves unrelated failures untouched","decision":"keep","reason":"Unrelated runtime failure remains unchanged rather than acquiring automation recovery.","previous_decision":"keep","previous_original_line":55,"previous_reviewed_snapshot_line":55,"previous_reviewed_body_sha256":"4ecc4e1fc04b284a4615d9b5f682f14b0b3d16ef32f80c6aad9bda76d1a6ae3e","executable_body_unchanged":true,"semantic_body_sha256":"46287f09d54f8e826f1087395d51274f8eeb57b34c864dea8c14d7343a4d33cf","explicit_input_controls":[]},{"path":"src/cli/automation-owner-conflict-recovery.test.ts","line":59,"end_line":74,"start":2231,"end":2784,"byte_start":2231,"byte_end":2784,"source":"it('recovers the conflict from the message when a hop flattened the code', () => {\n const flattened = new RuntimeRpcFailureError({\n id: 'request-1',\n ok: false,\n error: {\n code: 'runtime_error',\n message: `This automation's host changed.: ${AUTOMATION_OWNER_CONFLICT_CODES.ownerChanged}`\n },\n _meta: { runtimeId: 'runtime-1' }\n })\n\n const output = formatCliError(flattened)\n\n expect(output).not.toContain('automation_owner_changed')\n expect(output).toContain('Next step: Run the command again')\n })","source_sha256":"40857030b2a0f44b509155453c0d1791fce8c8cfcdfcba1a8ab7b79d57553065","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"recovers the conflict from the message when a hop flattened the code","decision":"keep","reason":"Flattened runtime_error still recovers owner conflict from transported suffix.","previous_decision":"keep","previous_original_line":64,"previous_reviewed_snapshot_line":64,"previous_reviewed_body_sha256":"40857030b2a0f44b509155453c0d1791fce8c8cfcdfcba1a8ab7b79d57553065","executable_body_unchanged":true,"semantic_body_sha256":"e2a16c94c9290a5540896352b8438ab824b4eef10b67c7785799caba5f97f08d","explicit_input_controls":[]},{"path":"src/cli/automation-owner-conflict-recovery.test.ts","line":76,"end_line":96,"start":2788,"end":3511,"byte_start":2788,"byte_end":3511,"source":"it('restores the flattened code for --json consumers', () => {\n const log = vi.spyOn(console, 'log').mockImplementation(() => undefined)\n\n reportCliError(\n new RuntimeRpcFailureError({\n id: 'request-1',\n ok: false,\n error: {\n code: 'runtime_error',\n message: `Host removed.: ${AUTOMATION_OWNER_CONFLICT_CODES.targetRemoved}`\n },\n _meta: { runtimeId: 'runtime-1' }\n }),\n true\n )\n\n const payload = JSON.parse(log.mock.calls[0]![0] as string)\n expect(payload.error.code).toBe('automation_target_removed')\n expect(payload.error.message).toBe('Host removed.')\n expect(payload.error.data.nextSteps[0]).toContain('no longer registered')\n })","source_sha256":"fa44189316134a36cbae67e207449509e6841c4f9c41b71503e58abd2c471aec","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"restores the flattened code for --json consumers","decision":"keep","reason":"Flattened target-removal JSON restores specific machine code and removal recovery.","previous_decision":"keep","previous_original_line":81,"previous_reviewed_snapshot_line":81,"previous_reviewed_body_sha256":"fa44189316134a36cbae67e207449509e6841c4f9c41b71503e58abd2c471aec","executable_body_unchanged":true,"semantic_body_sha256":"40ae457c3f69b28c875e70ec704f7ea96c59974048dd87733d12beed651b3cad","explicit_input_controls":[]},{"path":"src/cli/automation-owner-conflict-recovery.test.ts","line":98,"end_line":107,"start":3515,"end":3899,"byte_start":3515,"byte_end":3899,"source":"it('classifies a locally thrown conflict the same way', () => {\n const output = formatCliError(\n new Error(\n `Destination host is not registered.: ${AUTOMATION_OWNER_CONFLICT_CODES.invalidDestination}`\n )\n )\n\n expect(output).not.toContain('automation_destination_invalid')\n expect(output).toContain('Next step: Run `orca automations show --id `')\n })","source_sha256":"8357db1788136eac843065b63e45c9db6fd1062bb1febbf175e47b238cb681af","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"classifies a locally thrown conflict the same way","decision":"keep","reason":"Plain local Error with destination-conflict suffix receives the same actionable CLI recovery.","previous_decision":"keep","previous_original_line":104,"previous_reviewed_snapshot_line":104,"previous_reviewed_body_sha256":"8357db1788136eac843065b63e45c9db6fd1062bb1febbf175e47b238cb681af","executable_body_unchanged":true,"semantic_body_sha256":"69873c42b9c4c47a4e27c391aebd5ff2d00538d215c90027f163b6a88e4be8d7","explicit_input_controls":[]}],"explicit_input_controls":[],"support_functions":[{"path":"src/cli/automation-owner-conflict-recovery.test.ts","line":6,"end_line":13,"start":264,"end":510,"byte_start":264,"byte_end":510,"source":"function conflict(code: string, message: string): RuntimeRpcFailureError {\n return new RuntimeRpcFailureError({\n id: 'request-1',\n ok: false,\n error: { code, message: `${message}: ${code}` },\n _meta: { runtimeId: 'runtime-1' }\n })\n}","source_sha256":"00d6e31587cc745526577af3ce510d7052cf75153edee432b5016537dbd25be8","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","name":"conflict","decision":"keep","reason":"Keep typed failure envelope with a transported machine-token suffix, allowing typed, flattened and local conflict recovery to be compared.","runtime_case":false}],"historical_cases_absent_from_current_source":[],"previous_explicit_parameter_case_records":[],"previous_review":{"path":"reviews/root-0052.jsonl","source_commit":"8f6283b32bcdefa746613e4c28d04bb1fe954eb9","original_sha256":"4a30e1bf8ed7c3c0900ee2b2eae7af31a1c0f408bf51f4332b97eaa8f7adf5dd","reviewed_sha256":"4a30e1bf8ed7c3c0900ee2b2eae7af31a1c0f408bf51f4332b97eaa8f7adf5dd","matching_reviewed_snapshot_source_commit":"70acd58dd2d049ba74492b66d8999ed2ce64ff21"},"upstream_comparison":{"same_executable_ast":true,"same_noncomment_tokens":true,"canonical_ast_sha256":"42df2dea60ae76b4ff7d5d8a5b8710779755a77daa9d541a06587945eab407c4","noncomment_tokens_sha256":"c2b57b08a4642bbe4e0a12e25f670d31e9e386f5adff62ff108d406fa800e426","source_diff":"/tmp/orca-cli-upstream-rereview-0002/upstream-diff.patch"},"evidence":["src/cli/cli-error.ts","src/cli/automation-owner-conflict-recovery.ts","src/shared/automation-owner-conflict.ts"],"evidence_sha256":{"src/cli/cli-error.ts":"ad176669de9b8f31abbc6fcfa7a9ed1a8488057ac172b78eb1132b187200de57","src/cli/automation-owner-conflict-recovery.ts":"fb5d5dca5fcb4bf02f028d7431d0a5fc579b5977b4202b5f9ce1c4932963d310","src/shared/automation-owner-conflict.ts":"9903735cf22f838bb78eebed0b501480fc95ec008fcca7db39c209f4f1d8d360"},"evidence_detail":[{"path":"src/cli/cli-error.ts","sha256":"ad176669de9b8f31abbc6fcfa7a9ed1a8488057ac172b78eb1132b187200de57","lines":263,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"},{"path":"src/cli/automation-owner-conflict-recovery.ts","sha256":"fb5d5dca5fcb4bf02f028d7431d0a5fc579b5977b4202b5f9ce1c4932963d310","lines":33,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"},{"path":"src/shared/automation-owner-conflict.ts","sha256":"9903735cf22f838bb78eebed0b501480fc95ec008fcca7db39c209f4f1d8d360","lines":88,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"}],"validation":"reviews/upstream-0003-validation.json","tests_executed":true,"runtime_validation":"passed_post_merge","integration_note":"Pinned upstream and merged checkout hashes match; eight runnable selected suites passed108 cases. Two auxiliary fixtures have no standalone cases.","execution_commit":"41b5cf015be7970a23e91d4ce76d52d781db4e1b","runtime_evidence":{"command_artifact":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests-command.json","command_artifact_sha256":"bfdfbbae010b126e2001c5cfb910e3da4582b1522909bdf8eb38785a06618c59","report":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.json","report_sha256":"5efdd36e8a1730b0146a04f5948b2a16f046ac11b96c24416f681adf823640eb","log":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.log","log_sha256":"a61c033dad812ef5e0da43927bf6ecd313070a4985bf46489c6aa9e517cf3202","test_file_included":true,"passed_cases":7,"cases":[{"title":"automation owner conflicts read as CLI outcomes drops the machine token from the human message and names the recovery","status":"passed"},{"title":"automation owner conflicts read as CLI outcomes never proposes a retry for a removed target","status":"passed"},{"title":"automation owner conflicts read as CLI outcomes keeps the code machine-readable in --json while carrying the same steps","status":"passed"},{"title":"automation owner conflicts read as CLI outcomes leaves unrelated failures untouched","status":"passed"},{"title":"automation owner conflicts read as CLI outcomes recovers the conflict from the message when a hop flattened the code","status":"passed"},{"title":"automation owner conflicts read as CLI outcomes restores the flattened code for --json consumers","status":"passed"},{"title":"automation owner conflicts read as CLI outcomes classifies a locally thrown conflict the same way","status":"passed"}],"support_limit":null}}
+{"path":"src/cli/automation-runs-paging.test.ts","sha256":"ba580de6354da7528fb6f5a010890ed06e28fe84ba9252ba038792425c44f005","reviewed_sha256":"ba580de6354da7528fb6f5a010890ed06e28fe84ba9252ba038792425c44f005","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","reviewer":"audit_cloud","status":"reviewed","decision":"keep","classification":"behavioral CLI suite","rationale":"Read the complete pinned upstream body, every current case, parameter table, explicit fixture workload and traversal. Compared with the completed review and matching reviewed snapshot: only comments differ, all executable syntax and assertion/input values remain identical, and earlier improvements are preserved. Retain every current case. The post-merge suite passed; exact command/result evidence is in the batch validation record.","phase":"runtime-validated-upstream-rereview","complete_body_and_tables_reviewed":true,"implementation_status":"reviewed-unchanged","checkout_edits":false,"original_declarations":5,"final_declarations":5,"cases":[{"path":"src/cli/automation-runs-paging.test.ts","line":36,"end_line":42,"start":1549,"end":1997,"byte_start":1549,"byte_end":1997,"source":"it('reads a history larger than one remote reply, in order and without gaps', async () => {\n const runs = Array.from({ length: 430 }, (_, index) => run(index, 23_000))\n const host = pairedHost(runs)\n const result = await readAllAutomationRuns(host, undefined)\n expect(result.result.runs.map((entry) => entry.id)).toEqual(runs.map((entry) => entry.id))\n expect(host.mock.calls[0][0]).toEqual({ limit: AUTOMATION_RUNS_PAGE_SIZE })\n })","source_sha256":"3cc924320b0ee7fda96afbd5d00269e7d5725b46ad3d4720fd75169ad8e23ef4","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"reads a history larger than one remote reply, in order and without gaps","decision":"keep","reason":"Actual production paginator backs a size-rejecting RPC fixture; all 430 ordered IDs survive a history larger than the remote reply limit.","previous_decision":"keep","previous_original_line":37,"previous_reviewed_snapshot_line":37,"previous_reviewed_body_sha256":"8a2c5dfc4fa2deb1278bcaf5d1a0da12d12dce0cd57e41473faccef93ab1e136","executable_body_unchanged":true,"semantic_body_sha256":"83e613fba1b84dc5d1a09d35919530028aebb23ae645bd940b6d0f9224251ed8","explicit_input_controls":["src/cli/automation-runs-paging.test.ts:37:generated-paging-workload:0"]},{"path":"src/cli/automation-runs-paging.test.ts","line":44,"end_line":51,"start":2001,"end":2524,"byte_start":2001,"byte_end":2524,"source":"it('shrinks the page when even one page is too large for the reply', async () => {\n const runs = Array.from({ length: 40 }, (_, index) => run(index, 400_000))\n const host = pairedHost(runs)\n const result = await readAllAutomationRuns(host, 'auto-1')\n expect(result.result.runs.map((entry) => entry.id)).toEqual(runs.map((entry) => entry.id))\n expect(host.mock.calls[0][0]).toMatchObject({ automationId: 'auto-1', limit: 25 })\n expect(host.mock.calls.some(([params]) => params.limit === 6)).toBe(true)\n })","source_sha256":"b2694467077d21a0296766b5b4b8241d277e237be9047e16c42145ee4c960af3","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"shrinks the page when even one page is too large for the reply","decision":"keep","reason":"Retain all forty ordered run identities after size-triggered page shrink and the observed reduced page limit.","previous_decision":"fix","previous_original_line":46,"previous_reviewed_snapshot_line":46,"previous_reviewed_body_sha256":"b2694467077d21a0296766b5b4b8241d277e237be9047e16c42145ee4c960af3","executable_body_unchanged":true,"semantic_body_sha256":"175f4422e68c4ef22460db58e610a6ebefc388d380e999922780db5593f5a75a","explicit_input_controls":["src/cli/automation-runs-paging.test.ts:45:generated-paging-workload:1"]},{"path":"src/cli/automation-runs-paging.test.ts","line":53,"end_line":59,"start":2528,"end":2879,"byte_start":2528,"byte_end":2879,"source":"it('stops after one reply from a host that predates paging', async () => {\n const runs = Array.from({ length: 3 }, (_, index) => run(index))\n const host = pairedHost(runs, { pages: false })\n const result = await readAllAutomationRuns(host, undefined)\n expect(result.result.runs).toEqual(runs)\n expect(host).toHaveBeenCalledTimes(1)\n })","source_sha256":"b4e69a2817385c2530289bac7f80ef8b2f97cb3f835fda46ff485dce2e80389f","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"stops after one reply from a host that predates paging","decision":"keep","reason":"Retain the complete original legacy run rows and the single-call boundary when no cursor is supplied.","previous_decision":"fix","previous_original_line":55,"previous_reviewed_snapshot_line":55,"previous_reviewed_body_sha256":"b4e69a2817385c2530289bac7f80ef8b2f97cb3f835fda46ff485dce2e80389f","executable_body_unchanged":true,"semantic_body_sha256":"42deedf2f38fd24d7ce82701b990e2de379bdb9c716fbe643d234689a7591605","explicit_input_controls":["src/cli/automation-runs-paging.test.ts:54:generated-paging-workload:2"]},{"path":"src/cli/automation-runs-paging.test.ts","line":63,"end_line":68,"start":2929,"end":3281,"byte_start":2929,"byte_end":3281,"source":"it('returns one page and the cursor for the next', async () => {\n const runs = Array.from({ length: 30 }, (_, index) => run(index))\n const page = await readAutomationRunsPage(pairedHost(runs), { limit: 10 })\n expect(page.result.runs).toEqual(runs.slice(0, 10))\n expect(page.result.nextCursor).toBe(`${runs[9].createdAt}:${runs[9].id}`)\n })","source_sha256":"733fd479c040f3205e4ad4e9d71541cf93efe2aec1a9271237083499e25007b7","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"returns one page and the cursor for the next","decision":"keep","reason":"Retain exact first-ten run rows and the next cursor derived from the last returned original row.","previous_decision":"fix","previous_original_line":65,"previous_reviewed_snapshot_line":65,"previous_reviewed_body_sha256":"733fd479c040f3205e4ad4e9d71541cf93efe2aec1a9271237083499e25007b7","executable_body_unchanged":true,"semantic_body_sha256":"2a77586198196e9c57132fc4416286409467fd1f5a5c045425e5509bd0e58042","explicit_input_controls":["src/cli/automation-runs-paging.test.ts:64:generated-paging-workload:3"]},{"path":"src/cli/automation-runs-paging.test.ts","line":70,"end_line":76,"start":3285,"end":3579,"byte_start":3285,"byte_end":3579,"source":"it('surfaces a reply that is too large even for a single run', async () => {\n const host = pairedHost([run(0, 5_000_000)])\n await expect(readAutomationRunsPage(host, { limit: 4 })).rejects.toMatchObject({\n code: 'reply_too_large'\n })\n expect(host).toHaveBeenCalledTimes(3)\n })","source_sha256":"9a04e7e963ccc9df423c222c5196a3d1f9b4c899176e045c96f622b2a55556f6","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"surfaces a reply that is too large even for a single run","decision":"keep","reason":"One oversized run is rejected even after reducing page size to one; bounded retry sequence is observable.","previous_decision":"keep","previous_original_line":72,"previous_reviewed_snapshot_line":72,"previous_reviewed_body_sha256":"9a04e7e963ccc9df423c222c5196a3d1f9b4c899176e045c96f622b2a55556f6","executable_body_unchanged":true,"semantic_body_sha256":"93110a5c8d0b8ba41633c88d28216bea888709bcac995ac31bd57b019636f0c9","explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/cli/automation-runs-paging.test.ts:37:generated-paging-workload:0","kind":"generated-paging-workload","path":"src/cli/automation-runs-paging.test.ts","line":37,"end_line":37,"start":1658,"end":1719,"byte_start":1658,"byte_end":1719,"source":"Array.from({ length: 430 }, (_, index) => run(index, 23_000))","source_sha256":"07eb584d11a7c59709dcae6cae92d3ea12d3e150ba77732a0c6e9c45c7dec971","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","enclosing_case":{"line":36,"title":"reads a history larger than one remote reply, in order and without gaps"},"affected_case_lines":[],"decision":"keep","reason":"Retain exact generated count/index/snapshot-size workload. Ordered independent run identities, cursor behavior and size-triggered shrink remain asserted; generated entries are not extra test declarations.","rows":[],"generated_collection_source":"Array.from({ length: 430 }, (_, index) => run(index, 23_000))","runtime_rows":"Bounded generated data within one test, not independent declared cases."},{"id":"src/cli/automation-runs-paging.test.ts:45:generated-paging-workload:1","kind":"generated-paging-workload","path":"src/cli/automation-runs-paging.test.ts","line":45,"end_line":45,"start":2101,"end":2162,"byte_start":2101,"byte_end":2162,"source":"Array.from({ length: 40 }, (_, index) => run(index, 400_000))","source_sha256":"69bd695d5c8d0f2671ef9a2adb5ab1612faeb297040f34c740a63d7ba50fb8d8","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","enclosing_case":{"line":44,"title":"shrinks the page when even one page is too large for the reply"},"affected_case_lines":[],"decision":"keep","reason":"Retain exact generated count/index/snapshot-size workload. Ordered independent run identities, cursor behavior and size-triggered shrink remain asserted; generated entries are not extra test declarations.","rows":[],"generated_collection_source":"Array.from({ length: 40 }, (_, index) => run(index, 400_000))","runtime_rows":"Bounded generated data within one test, not independent declared cases."},{"id":"src/cli/automation-runs-paging.test.ts:54:generated-paging-workload:2","kind":"generated-paging-workload","path":"src/cli/automation-runs-paging.test.ts","line":54,"end_line":54,"start":2620,"end":2671,"byte_start":2620,"byte_end":2671,"source":"Array.from({ length: 3 }, (_, index) => run(index))","source_sha256":"9e492723b1ba050fb8be680fb83a4d1e1984e012219f6a01fffb89c041db2982","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","enclosing_case":{"line":53,"title":"stops after one reply from a host that predates paging"},"affected_case_lines":[],"decision":"keep","reason":"Retain exact generated count/index/snapshot-size workload. Ordered independent run identities, cursor behavior and size-triggered shrink remain asserted; generated entries are not extra test declarations.","rows":[],"generated_collection_source":"Array.from({ length: 3 }, (_, index) => run(index))","runtime_rows":"Bounded generated data within one test, not independent declared cases."},{"id":"src/cli/automation-runs-paging.test.ts:64:generated-paging-workload:3","kind":"generated-paging-workload","path":"src/cli/automation-runs-paging.test.ts","line":64,"end_line":64,"start":3011,"end":3063,"byte_start":3011,"byte_end":3063,"source":"Array.from({ length: 30 }, (_, index) => run(index))","source_sha256":"27bed9287944137c44f5f403f1b7214fa8191a427b4e23ed4a3121b2828dcc7f","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","enclosing_case":{"line":63,"title":"returns one page and the cursor for the next"},"affected_case_lines":[],"decision":"keep","reason":"Retain exact generated count/index/snapshot-size workload. Ordered independent run identities, cursor behavior and size-triggered shrink remain asserted; generated entries are not extra test declarations.","rows":[],"generated_collection_source":"Array.from({ length: 30 }, (_, index) => run(index))","runtime_rows":"Bounded generated data within one test, not independent declared cases."}],"support_functions":[{"path":"src/cli/automation-runs-paging.test.ts","line":12,"end_line":20,"start":461,"end":860,"byte_start":461,"byte_end":860,"source":"function run(index: number, snapshotBytes = 0): AutomationRun {\n // oxlint-disable-next-line typescript/consistent-type-assertions -- SAFETY: paging reads only id, createdAt and size.\n return {\n id: `run-${String(index).padStart(4, '0')}`,\n automationId: 'auto-1',\n createdAt: 1_000_000 - index,\n outputSnapshot: { content: 'x'.repeat(snapshotBytes) }\n } as unknown as AutomationRun\n}","source_sha256":"bea6f33575c940cbb008c6c97fddd9aca98ea2e1c93056a27f9e72a301f94c98","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","name":"run","decision":"keep","reason":"Keep deterministic descending creation times, independent ordered run IDs and requested snapshot byte workload; partial typed fixture remains explicitly bounded to paginator fields.","runtime_case":false},{"path":"src/cli/automation-runs-paging.test.ts","line":22,"end_line":33,"start":862,"end":1503,"byte_start":862,"byte_end":1503,"source":"function pairedHost(runs: AutomationRun[], options: { pages: boolean } = { pages: true }) {\n return vi.fn(async (params: { automationId?: string; limit?: number; cursor?: string }) => {\n const result =\n options.pages && (params.limit !== undefined || params.cursor !== undefined)\n ? paginateAutomationRuns(runs, params.limit, params.cursor)\n : { runs }\n if (JSON.stringify(result).length > REMOTE_RUNTIME_MAX_OUTBOUND_JSON_BYTES) {\n throw new RuntimeClientError('reply_too_large', 'The result is larger than 4.0 MB.')\n }\n return { id: 'r', ok: true as const, result, _meta: { runtimeId: 'host' } }\n })\n}","source_sha256":"8d706e072c2ac9c9693941ab6f912bb97fa4855fcb134398f8b4dbc0553f94db","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","name":"pairedHost","decision":"keep","reason":"Keep the actual shared paginator behind a size-rejecting RPC seam, including legacy unpaged responses; no real remote socket is claimed.","runtime_case":false}],"historical_cases_absent_from_current_source":[],"previous_explicit_parameter_case_records":[],"previous_review":{"path":"reviews/root-0053.jsonl","source_commit":"8f6283b32bcdefa746613e4c28d04bb1fe954eb9","original_sha256":"c6414259e2605a98ad3ec1215a3a559043d5cd467eabdb6d8e80c7564fb7fb19","reviewed_sha256":"09c50e6a85f8d512941627109ed7d289658e8e944080b35413d0e3c79c0a39b7","matching_reviewed_snapshot_source_commit":"70acd58dd2d049ba74492b66d8999ed2ce64ff21"},"upstream_comparison":{"same_executable_ast":true,"same_noncomment_tokens":true,"canonical_ast_sha256":"27f8df0451723979aab649fe3a413ecbb9343fbba80a86d105f32127bf10882c","noncomment_tokens_sha256":"d834f0f222147a197ed4349e65ad9104d1c77fafbf5d107190be5f8c4b4426fa","source_diff":"/tmp/orca-cli-upstream-rereview-0002/upstream-diff.patch"},"evidence":["src/cli/automation-runs-paging.ts","src/shared/automation-run-cursor.ts","src/shared/remote-runtime-memory-limits.ts"],"evidence_sha256":{"src/cli/automation-runs-paging.ts":"d760dcb7e656a21b530c0ab8fd82f1dd5b1868841f7a07ee5b4e512912d7661f","src/shared/automation-run-cursor.ts":"5255548f5ad55f5b0267b498333640901e887f82e1cad658a145414df2fc8b24","src/shared/remote-runtime-memory-limits.ts":"85ea942d666a54b89bade4630057db64573109ac96cf0e0c44216034d09afe96"},"evidence_detail":[{"path":"src/cli/automation-runs-paging.ts","sha256":"d760dcb7e656a21b530c0ab8fd82f1dd5b1868841f7a07ee5b4e512912d7661f","lines":75,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"},{"path":"src/shared/automation-run-cursor.ts","sha256":"5255548f5ad55f5b0267b498333640901e887f82e1cad658a145414df2fc8b24","lines":75,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"},{"path":"src/shared/remote-runtime-memory-limits.ts","sha256":"85ea942d666a54b89bade4630057db64573109ac96cf0e0c44216034d09afe96","lines":98,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"stored_snapshot_and_prior_evidence_only_not_newly_read"}],"validation":"reviews/upstream-0003-validation.json","tests_executed":true,"runtime_validation":"passed_post_merge","integration_note":"Pinned upstream and merged checkout hashes match; eight runnable selected suites passed108 cases. Two auxiliary fixtures have no standalone cases.","execution_commit":"41b5cf015be7970a23e91d4ce76d52d781db4e1b","runtime_evidence":{"command_artifact":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests-command.json","command_artifact_sha256":"bfdfbbae010b126e2001c5cfb910e3da4582b1522909bdf8eb38785a06618c59","report":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.json","report_sha256":"5efdd36e8a1730b0146a04f5948b2a16f046ac11b96c24416f681adf823640eb","log":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.log","log_sha256":"a61c033dad812ef5e0da43927bf6ecd313070a4985bf46489c6aa9e517cf3202","test_file_included":true,"passed_cases":5,"cases":[{"title":"readAllAutomationRuns reads a history larger than one remote reply, in order and without gaps","status":"passed"},{"title":"readAllAutomationRuns shrinks the page when even one page is too large for the reply","status":"passed"},{"title":"readAllAutomationRuns stops after one reply from a host that predates paging","status":"passed"},{"title":"readAutomationRunsPage returns one page and the cursor for the next","status":"passed"},{"title":"readAutomationRunsPage surfaces a reply that is too large even for a single run","status":"passed"}],"support_limit":null}}
+{"path":"src/cli/browser-empty-values.test.ts","sha256":"eba33dbca800e36fd202f38b586b07fc4884616b2dfb54bdba6a46b7a38d9229","reviewed_sha256":"eba33dbca800e36fd202f38b586b07fc4884616b2dfb54bdba6a46b7a38d9229","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","reviewer":"audit_cloud","status":"reviewed","decision":"keep","classification":"behavioral CLI suite","rationale":"Read the complete pinned upstream body, every current case, parameter table, explicit fixture workload and traversal. Compared with the completed review and matching reviewed snapshot: only comments differ, all executable syntax and assertion/input values remain identical, and earlier improvements are preserved. Retain every current case. The post-merge suite passed; exact command/result evidence is in the batch validation record.","phase":"runtime-validated-upstream-rereview","complete_body_and_tables_reviewed":true,"implementation_status":"reviewed-unchanged","checkout_edits":false,"original_declarations":9,"final_declarations":9,"cases":[{"path":"src/cli/browser-empty-values.test.ts","line":50,"end_line":65,"start":1010,"end":1580,"byte_start":1010,"byte_end":1580,"source":"it('passes an empty --value through to browser.storage.local.set', async () => {\n queueFixtures(callMock, okFixture('req_storage_local_set', { success: true }))\n vi.spyOn(console, 'log').mockImplementation(() => {})\n\n await main(\n ['storage', 'local', 'set', '--key', 'flag', '--value', '', '--worktree', 'all', '--json'],\n '/tmp/not-an-orca-worktree'\n )\n\n expect(callMock).toHaveBeenCalledTimes(1)\n expect(callMock).toHaveBeenCalledWith('browser.storage.local.set', {\n key: 'flag',\n value: '',\n worktree: undefined\n })\n })","source_sha256":"af03b84502ca2dd850a0a2c001577c5ac71b4134e21dd22f9b9c8c954f931c3b","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"passes an empty --value through to browser.storage.local.set","decision":"keep","reason":"Actual CLI parse/dispatch preserves spaced empty localStorage value at the RPC boundary.","previous_decision":"keep","previous_original_line":51,"previous_reviewed_snapshot_line":51,"previous_reviewed_body_sha256":"af03b84502ca2dd850a0a2c001577c5ac71b4134e21dd22f9b9c8c954f931c3b","executable_body_unchanged":true,"semantic_body_sha256":"8a80f00b0a3b8d884a5cbe9707e58b7a5db1341c0f1cccc8da402566b3623fdf","explicit_input_controls":[]},{"path":"src/cli/browser-empty-values.test.ts","line":67,"end_line":82,"start":1584,"end":2162,"byte_start":1584,"byte_end":2162,"source":"it('passes an empty --value through to browser.storage.session.set', async () => {\n queueFixtures(callMock, okFixture('req_storage_session_set', { success: true }))\n vi.spyOn(console, 'log').mockImplementation(() => {})\n\n await main(\n ['storage', 'session', 'set', '--key', 'flag', '--value', '', '--worktree', 'all', '--json'],\n '/tmp/not-an-orca-worktree'\n )\n\n expect(callMock).toHaveBeenCalledTimes(1)\n expect(callMock).toHaveBeenCalledWith('browser.storage.session.set', {\n key: 'flag',\n value: '',\n worktree: undefined\n })\n })","source_sha256":"150e97152adc8bc453a2f633bf501cdd855a242b3537397387c179641111b3b4","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"passes an empty --value through to browser.storage.session.set","decision":"keep","reason":"Actual CLI parse/dispatch preserves spaced empty sessionStorage value at its distinct RPC boundary.","previous_decision":"keep","previous_original_line":68,"previous_reviewed_snapshot_line":68,"previous_reviewed_body_sha256":"150e97152adc8bc453a2f633bf501cdd855a242b3537397387c179641111b3b4","executable_body_unchanged":true,"semantic_body_sha256":"009956227ef07076f2197ad41380cbc1489a719ae7be85697fea42315f231598","explicit_input_controls":[]},{"path":"src/cli/browser-empty-values.test.ts","line":85,"end_line":100,"start":2244,"end":2823,"byte_start":2244,"byte_end":2823,"source":"it('passes an empty --value= (equals form) through to browser.storage.local.set', async () => {\n queueFixtures(callMock, okFixture('req_storage_local_set', { success: true }))\n vi.spyOn(console, 'log').mockImplementation(() => {})\n\n await main(\n ['storage', 'local', 'set', '--key=flag', '--value=', '--worktree', 'all', '--json'],\n '/tmp/not-an-orca-worktree'\n )\n\n expect(callMock).toHaveBeenCalledTimes(1)\n expect(callMock).toHaveBeenCalledWith('browser.storage.local.set', {\n key: 'flag',\n value: '',\n worktree: undefined\n })\n })","source_sha256":"64b8125fed5d5486f8b7f4b972cf85938a751630d91cf1757e5e9603d79a2dd0","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"passes an empty --value= (equals form) through to browser.storage.local.set","decision":"keep","reason":"Equals-form empty value supports native shells that drop empty argv entries; no real shell/platform behavior is claimed.","previous_decision":"keep","previous_original_line":86,"previous_reviewed_snapshot_line":86,"previous_reviewed_body_sha256":"64b8125fed5d5486f8b7f4b972cf85938a751630d91cf1757e5e9603d79a2dd0","executable_body_unchanged":true,"semantic_body_sha256":"2a6f25d5ef421e0ae47eb2aaefc2ee6b8e0b167696de205fd9ef500a2875d4d9","explicit_input_controls":[]},{"path":"src/cli/browser-empty-values.test.ts","line":102,"end_line":116,"start":2827,"end":3368,"byte_start":2827,"byte_end":3368,"source":"it('still rejects an empty --key before RPC dispatch', async () => {\n const errorSpy = vi.spyOn(console, 'error').mockImplementation(() => {})\n const priorExitCode = process.exitCode\n\n await main(\n ['storage', 'local', 'set', '--key', '', '--value', 'x', '--worktree', 'all'],\n '/tmp/not-an-orca-worktree'\n )\n\n expect(callMock).not.toHaveBeenCalled()\n expect(errorSpy.mock.calls.flat().join('\\n')).toContain('Missing required --key')\n expect(process.exitCode).toBe(1)\n\n process.exitCode = priorExitCode\n })","source_sha256":"02a1dbc0aa4f3d1c9d65e34924c366896d9042e55dbc7042a56ee2640eb91d4f","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"still rejects an empty --key before RPC dispatch","decision":"keep","reason":"Empty required storage key reports an error, sets exit status and performs no RPC.","previous_decision":"keep","previous_original_line":103,"previous_reviewed_snapshot_line":103,"previous_reviewed_body_sha256":"02a1dbc0aa4f3d1c9d65e34924c366896d9042e55dbc7042a56ee2640eb91d4f","executable_body_unchanged":true,"semantic_body_sha256":"3f6e4647fd9882b9cde89a7ebfc43c7d4f15bdb06611174c065c6c6c897dffc5","explicit_input_controls":[]},{"path":"src/cli/browser-empty-values.test.ts","line":118,"end_line":132,"start":3372,"end":3906,"byte_start":3372,"byte_end":3906,"source":"it('still rejects a missing --value before RPC dispatch', async () => {\n const errorSpy = vi.spyOn(console, 'error').mockImplementation(() => {})\n const priorExitCode = process.exitCode\n\n await main(\n ['storage', 'local', 'set', '--key', 'flag', '--worktree', 'all'],\n '/tmp/not-an-orca-worktree'\n )\n\n expect(callMock).not.toHaveBeenCalled()\n expect(errorSpy.mock.calls.flat().join('\\n')).toContain('Missing required --value')\n expect(process.exitCode).toBe(1)\n\n process.exitCode = priorExitCode\n })","source_sha256":"cd9bcb8890faa74b5aa772340b711a8e59977816cd20814e79d793b4cd1c4803","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"still rejects a missing --value before RPC dispatch","decision":"keep","reason":"Missing storage value reports an error, sets exit status and performs no RPC.","previous_decision":"keep","previous_original_line":119,"previous_reviewed_snapshot_line":119,"previous_reviewed_body_sha256":"cd9bcb8890faa74b5aa772340b711a8e59977816cd20814e79d793b4cd1c4803","executable_body_unchanged":true,"semantic_body_sha256":"a5c00f5556f5aa8c14ba5678d20053dff022e864b8ecacb6a168a513802fa0ea","explicit_input_controls":[]},{"path":"src/cli/browser-empty-values.test.ts","line":145,"end_line":160,"start":4133,"end":4672,"byte_start":4133,"byte_end":4672,"source":"it('passes an empty --value through to browser.cookie.set', async () => {\n queueFixtures(callMock, okFixture('req_cookie_set', { success: true }))\n vi.spyOn(console, 'log').mockImplementation(() => {})\n\n await main(\n ['cookie', 'set', '--name', 'sid', '--value', '', '--worktree', 'all', '--json'],\n '/tmp/not-an-orca-worktree'\n )\n\n expect(callMock).toHaveBeenCalledTimes(1)\n expect(callMock).toHaveBeenCalledWith('browser.cookie.set', {\n name: 'sid',\n value: '',\n worktree: undefined\n })\n })","source_sha256":"9b09c205e30fbe28303e788e5a491a8e216c8870c39badabd1bdbcce3c3bd7ad","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"passes an empty --value through to browser.cookie.set","decision":"keep","reason":"Cookie empty value is dispatched as an actual empty string rather than omitted.","previous_decision":"keep","previous_original_line":148,"previous_reviewed_snapshot_line":148,"previous_reviewed_body_sha256":"9b09c205e30fbe28303e788e5a491a8e216c8870c39badabd1bdbcce3c3bd7ad","executable_body_unchanged":true,"semantic_body_sha256":"5f5e5967cc9e52099c8e5604439f1f5f34554a67f322684e6eb8ed9d59284d7b","explicit_input_controls":[]},{"path":"src/cli/browser-empty-values.test.ts","line":162,"end_line":177,"start":4676,"end":5234,"byte_start":4676,"byte_end":5234,"source":"it('passes an empty --pass through to browser.setCredentials', async () => {\n queueFixtures(callMock, okFixture('req_set_credentials', { success: true }))\n vi.spyOn(console, 'log').mockImplementation(() => {})\n\n await main(\n ['set', 'credentials', '--user', 'token', '--pass', '', '--worktree', 'all', '--json'],\n '/tmp/not-an-orca-worktree'\n )\n\n expect(callMock).toHaveBeenCalledTimes(1)\n expect(callMock).toHaveBeenCalledWith('browser.setCredentials', {\n user: 'token',\n pass: '',\n worktree: undefined\n })\n })","source_sha256":"8f53a3a10326edb8d480f15d9ae34a52ca560cdbec72ce7495f12915f901bad8","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"passes an empty --pass through to browser.setCredentials","decision":"keep","reason":"HTTP credentials retain an empty password at actual CLI dispatch.","previous_decision":"keep","previous_original_line":165,"previous_reviewed_snapshot_line":165,"previous_reviewed_body_sha256":"8f53a3a10326edb8d480f15d9ae34a52ca560cdbec72ce7495f12915f901bad8","executable_body_unchanged":true,"semantic_body_sha256":"57b9c4c2d7b4984ab432826d86429cb3bf245252416679d83e7beba8b3162571","explicit_input_controls":[]},{"path":"src/cli/browser-empty-values.test.ts","line":179,"end_line":193,"start":5238,"end":5772,"byte_start":5238,"byte_end":5772,"source":"it('still rejects an empty --name before RPC dispatch', async () => {\n const errorSpy = vi.spyOn(console, 'error').mockImplementation(() => {})\n const priorExitCode = process.exitCode\n\n await main(\n ['cookie', 'set', '--name', '', '--value', 'x', '--worktree', 'all'],\n '/tmp/not-an-orca-worktree'\n )\n\n expect(callMock).not.toHaveBeenCalled()\n expect(errorSpy.mock.calls.flat().join('\\n')).toContain('Missing required --name')\n expect(process.exitCode).toBe(1)\n\n process.exitCode = priorExitCode\n })","source_sha256":"5ea5fe80f8a30a0a89bc0d484ce1b1ee4f46350df08ba32284bf96cf070a45c0","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"still rejects an empty --name before RPC dispatch","decision":"keep","reason":"Cookie empty name reports error/status and no mutation.","previous_decision":"keep","previous_original_line":182,"previous_reviewed_snapshot_line":182,"previous_reviewed_body_sha256":"5ea5fe80f8a30a0a89bc0d484ce1b1ee4f46350df08ba32284bf96cf070a45c0","executable_body_unchanged":true,"semantic_body_sha256":"507dab86264523012285828fc85d6580e0d4fb8c3f00f63f2c1cf08eab1242cd","explicit_input_controls":[]},{"path":"src/cli/browser-empty-values.test.ts","line":195,"end_line":209,"start":5776,"end":6305,"byte_start":5776,"byte_end":6305,"source":"it('still rejects a missing --pass before RPC dispatch', async () => {\n const errorSpy = vi.spyOn(console, 'error').mockImplementation(() => {})\n const priorExitCode = process.exitCode\n\n await main(\n ['set', 'credentials', '--user', 'token', '--worktree', 'all'],\n '/tmp/not-an-orca-worktree'\n )\n\n expect(callMock).not.toHaveBeenCalled()\n expect(errorSpy.mock.calls.flat().join('\\n')).toContain('Missing required --pass')\n expect(process.exitCode).toBe(1)\n\n process.exitCode = priorExitCode\n })","source_sha256":"9083c759f9ceb2a64862961a3b37ad7d5df75aba978f23aac1d86ee152c06242","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"still rejects a missing --pass before RPC dispatch","decision":"keep","reason":"Missing credential password reports error/status and no mutation.","previous_decision":"keep","previous_original_line":198,"previous_reviewed_snapshot_line":198,"previous_reviewed_body_sha256":"9083c759f9ceb2a64862961a3b37ad7d5df75aba978f23aac1d86ee152c06242","executable_body_unchanged":true,"semantic_body_sha256":"5d178ebfbad562bafae281ba392b331ed25b82737184c00d09459ff3f930027e","explicit_input_controls":[]}],"explicit_input_controls":[],"support_functions":[],"historical_cases_absent_from_current_source":[],"previous_explicit_parameter_case_records":[],"previous_review":{"path":"reviews/root-0053.jsonl","source_commit":"8f6283b32bcdefa746613e4c28d04bb1fe954eb9","original_sha256":"efdf43badf0ce19466a923155c671388ffe566a9c415c9234c0b83c4c3381ae5","reviewed_sha256":"efdf43badf0ce19466a923155c671388ffe566a9c415c9234c0b83c4c3381ae5","matching_reviewed_snapshot_source_commit":"70acd58dd2d049ba74492b66d8999ed2ce64ff21"},"upstream_comparison":{"same_executable_ast":true,"same_noncomment_tokens":true,"canonical_ast_sha256":"a3af43242cd80334f14dca7b167eb1acc100ad799fe5aefdf604f787e0a5afb5","noncomment_tokens_sha256":"40b67631436bfab23d28b85ac46f8ee336cdd0170bdba48403833e85b8e12ec4","source_diff":"/tmp/orca-cli-upstream-rereview-0002/upstream-diff.patch"},"evidence":["src/cli/flags.ts","src/cli/handlers/browser-storage.ts","src/cli/handlers/browser-cookie.ts","src/cli/handlers/browser-env.ts"],"evidence_sha256":{"src/cli/flags.ts":"349612a17cb9f8ee9c40a423ede075719327a4a05a6071df3059052f05a14125","src/cli/handlers/browser-storage.ts":"03f91656570d17dab19dee93865082bc382d8ee16e49b9956638f4b007b88a14","src/cli/handlers/browser-cookie.ts":"2b2f5d4a25f3b2e7cbf39e0dc6923fdcc38bee487d3252f9c30b3496f5d95d37","src/cli/handlers/browser-env.ts":"e559e14659177fbc9d260455c31140f2e3c4d2d4b4f83b98ab7c436ff6e69ed0"},"evidence_detail":[{"path":"src/cli/flags.ts","sha256":"349612a17cb9f8ee9c40a423ede075719327a4a05a6071df3059052f05a14125","lines":149,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"},{"path":"src/cli/handlers/browser-storage.ts","sha256":"03f91656570d17dab19dee93865082bc382d8ee16e49b9956638f4b007b88a14","lines":52,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"},{"path":"src/cli/handlers/browser-cookie.ts","sha256":"2b2f5d4a25f3b2e7cbf39e0dc6923fdcc38bee487d3252f9c30b3496f5d95d37","lines":94,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"},{"path":"src/cli/handlers/browser-env.ts","sha256":"e559e14659177fbc9d260455c31140f2e3c4d2d4b4f83b98ab7c436ff6e69ed0","lines":117,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"}],"validation":"reviews/upstream-0003-validation.json","tests_executed":true,"runtime_validation":"passed_post_merge","integration_note":"Pinned upstream and merged checkout hashes match; eight runnable selected suites passed108 cases. Two auxiliary fixtures have no standalone cases.","execution_commit":"41b5cf015be7970a23e91d4ce76d52d781db4e1b","runtime_evidence":{"command_artifact":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests-command.json","command_artifact_sha256":"bfdfbbae010b126e2001c5cfb910e3da4582b1522909bdf8eb38785a06618c59","report":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.json","report_sha256":"5efdd36e8a1730b0146a04f5948b2a16f046ac11b96c24416f681adf823640eb","log":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.log","log_sha256":"a61c033dad812ef5e0da43927bf6ecd313070a4985bf46489c6aa9e517cf3202","test_file_included":true,"passed_cases":9,"cases":[{"title":"orca cli storage set preserves an empty value passes an empty --value through to browser.storage.local.set","status":"passed"},{"title":"orca cli storage set preserves an empty value passes an empty --value through to browser.storage.session.set","status":"passed"},{"title":"orca cli storage set preserves an empty value passes an empty --value= (equals form) through to browser.storage.local.set","status":"passed"},{"title":"orca cli storage set preserves an empty value still rejects an empty --key before RPC dispatch","status":"passed"},{"title":"orca cli storage set preserves an empty value still rejects a missing --value before RPC dispatch","status":"passed"},{"title":"orca cli cookie set and set credentials preserve an empty value passes an empty --value through to browser.cookie.set","status":"passed"},{"title":"orca cli cookie set and set credentials preserve an empty value passes an empty --pass through to browser.setCredentials","status":"passed"},{"title":"orca cli cookie set and set credentials preserve an empty value still rejects an empty --name before RPC dispatch","status":"passed"},{"title":"orca cli cookie set and set credentials preserve an empty value still rejects a missing --pass before RPC dispatch","status":"passed"}],"support_limit":null}}
+{"path":"src/cli/command-suggestion.test.ts","sha256":"8879a975bb956b42bca0f76939d9febda22b271801ed1a680a2562496f425113","reviewed_sha256":"8879a975bb956b42bca0f76939d9febda22b271801ed1a680a2562496f425113","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","reviewer":"audit_cloud","status":"reviewed","decision":"keep","classification":"behavioral CLI suite","rationale":"Read the complete pinned upstream body, every current case, parameter table, explicit fixture workload and traversal. Compared with the completed review and matching reviewed snapshot: only comments differ, all executable syntax and assertion/input values remain identical, and earlier improvements are preserved. Retain every current case. The post-merge suite passed; exact command/result evidence is in the batch validation record.","phase":"runtime-validated-upstream-rereview","complete_body_and_tables_reviewed":true,"implementation_status":"reviewed-unchanged","checkout_edits":false,"original_declarations":13,"final_declarations":13,"cases":[{"path":"src/cli/command-suggestion.test.ts","line":47,"end_line":49,"start":1019,"end":1146,"byte_start":1019,"byte_end":1146,"source":"it('returns nothing for a wildly-off token', () => {\n expect(suggestCommands(specs, ['worktree', 'zzzzz'])).toEqual([])\n })","source_sha256":"1562c6f9fcf331cc953117d741d46da81de407bc04211d064be5ff3db839afe8","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"returns nothing for a wildly-off token","decision":"keep","reason":"Distant token yields no suggestion rather than fabricated recovery.","previous_decision":"keep","previous_original_line":59,"previous_reviewed_snapshot_line":49,"previous_reviewed_body_sha256":"1562c6f9fcf331cc953117d741d46da81de407bc04211d064be5ff3db839afe8","executable_body_unchanged":true,"semantic_body_sha256":"5fdc2f4c3d4a6ca1cc5f67929a491d5723d5371afe494db8620d867d05584fa6","explicit_input_controls":[]},{"path":"src/cli/command-suggestion.test.ts","line":51,"end_line":53,"start":1150,"end":1288,"byte_start":1150,"byte_end":1288,"source":"it('only considers commands of the same depth', () => {\n expect(suggestCommands(specs, ['worktree', 'list', 'extra'])).toEqual([])\n })","source_sha256":"f707ade1b253b021d4d4b8c474f93425e9c7928bfe21a7ca67f7e2161100e4b1","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"only considers commands of the same depth","decision":"keep","reason":"Extra command depth excludes otherwise nearby shorter commands.","previous_decision":"keep","previous_original_line":63,"previous_reviewed_snapshot_line":53,"previous_reviewed_body_sha256":"f707ade1b253b021d4d4b8c474f93425e9c7928bfe21a7ca67f7e2161100e4b1","executable_body_unchanged":true,"semantic_body_sha256":"89124d163829ebb5f9391a762d2642f68a8db62cceb30bc5fcf90fd3b01d2144","explicit_input_controls":[]},{"path":"src/cli/command-suggestion.test.ts","line":55,"end_line":57,"start":1292,"end":1425,"byte_start":1292,"byte_end":1425,"source":"it('suggests a top-level command group near-miss', () => {\n expect(suggestCommands(specs, ['worktre'])).toEqual(['worktree'])\n })","source_sha256":"bcb61a4f6eb31764b7893aa173683a014998feb8b3fb1c5b8839a2e00dc1edd4","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"suggests a top-level command group near-miss","decision":"keep","reason":"Top-level near miss yields deduplicated command group.","previous_decision":"keep","previous_original_line":67,"previous_reviewed_snapshot_line":57,"previous_reviewed_body_sha256":"bcb61a4f6eb31764b7893aa173683a014998feb8b3fb1c5b8839a2e00dc1edd4","executable_body_unchanged":true,"semantic_body_sha256":"7d392375b11761793bf959cf52404da5840857ee847f613fae45e005e6bef05a","explicit_input_controls":[]},{"path":"src/cli/command-suggestion.test.ts","line":59,"end_line":62,"start":1429,"end":1581,"byte_start":1429,"byte_end":1581,"source":"it('ranks closer matches first', () => {\n const result = suggestCommands(specs, ['terminal', 'sen'])\n expect(result[0]).toBe('terminal send')\n })","source_sha256":"111592bdb47412b877c678a4203aea520c7ccbe46424b3b59f820e80503fb2a7","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"ranks closer matches first","decision":"keep","reason":"Nearest terminal command is ranked first.","previous_decision":"keep","previous_original_line":71,"previous_reviewed_snapshot_line":61,"previous_reviewed_body_sha256":"111592bdb47412b877c678a4203aea520c7ccbe46424b3b59f820e80503fb2a7","executable_body_unchanged":true,"semantic_body_sha256":"a1a7debed59488871c8de5f3714fca195d50286efc41d893b5dae7fe055353b7","explicit_input_controls":[]},{"path":"src/cli/command-suggestion.test.ts","line":64,"end_line":69,"start":1585,"end":1890,"byte_start":1585,"byte_end":1890,"source":"it('never suggests a destructive command for a benign non-destructive typo', () => {\n const result = suggestCommands(specs, ['worktree', 'move'])\n expect(result).not.toContain('worktree remove')\n expect(result).not.toContain('worktree rm')\n expect(result).not.toContain('worktree delete')\n })","source_sha256":"305d49eebc437c6a6a56ee8cb4ce131ac1755c36f4fb9dd0f6455bd8f71b14a0","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"never suggests a destructive command for a benign non-destructive typo","decision":"keep","reason":"Benign move typo excludes all three destructive canonical/alias deletion spellings.","previous_decision":"keep","previous_original_line":76,"previous_reviewed_snapshot_line":66,"previous_reviewed_body_sha256":"e1944ded895fe9d69b3d40e5053959d08629074ef720dfb2af8daf60b7103114","executable_body_unchanged":true,"semantic_body_sha256":"b7972498397434e34b3f1633c7f3944645392da6b13656e173fb7787c4c8be4a","explicit_input_controls":[]},{"path":"src/cli/command-suggestion.test.ts","line":71,"end_line":75,"start":1894,"end":2129,"byte_start":1894,"byte_end":2129,"source":"it('still suggests remove for a near-miss of a destructive verb', () => {\n const result = suggestCommands(specs, ['worktree', 'remov'])\n expect(result).toContain('worktree rm')\n expect(result).toContain('worktree remove')\n })","source_sha256":"b8b8d91e7d1cb58cda5a1e3053ec80b72e4d598f2b9f6c5db37f6c7d1ee5471d","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"still suggests remove for a near-miss of a destructive verb","decision":"keep","reason":"Genuine remov typo retains both canonical rm and declared remove alias.","previous_decision":"keep","previous_original_line":85,"previous_reviewed_snapshot_line":75,"previous_reviewed_body_sha256":"b8b8d91e7d1cb58cda5a1e3053ec80b72e4d598f2b9f6c5db37f6c7d1ee5471d","executable_body_unchanged":true,"semantic_body_sha256":"afc08b6e9d2747cd5513646cd9bb5b24cf7b63e3ba019f8389bc75af72d7ae1d","explicit_input_controls":[]},{"path":"src/cli/command-suggestion.test.ts","line":77,"end_line":79,"start":2133,"end":2296,"byte_start":2133,"byte_end":2296,"source":"it('still suggests delete for a near-miss of the delete alias', () => {\n expect(suggestCommands(specs, ['worktree', 'delet'])).toContain('worktree delete')\n })","source_sha256":"8ec1e8e096637fd5746a4c17107bb9cabece8650c34386ed4a192b1e2450c87a","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"still suggests delete for a near-miss of the delete alias","decision":"keep","reason":"Genuine delet typo retains delete alias.","previous_decision":"keep","previous_original_line":91,"previous_reviewed_snapshot_line":81,"previous_reviewed_body_sha256":"8ec1e8e096637fd5746a4c17107bb9cabece8650c34386ed4a192b1e2450c87a","executable_body_unchanged":true,"semantic_body_sha256":"ca6ae2be57b8f76446d334239a2e2b4ee9da2e8acc14aefbf07bc9610ec0f942","explicit_input_controls":[]},{"path":"src/cli/command-suggestion.test.ts","line":81,"end_line":84,"start":2300,"end":2561,"byte_start":2300,"byte_end":2561,"source":"it('guards destructive commands outside the delete-family via the spec flag', () => {\n expect(suggestCommands(specs, ['emulator', 'ball'])).not.toContain('emulator kill')\n expect(suggestCommands(specs, ['emulator', 'kil'])).toContain('emulator kill')\n })","source_sha256":"8c026f26ecce4cf9cc4c536057903642736a0d4bc0d4f82f500e6c27cb464dcd","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"guards destructive commands outside the delete-family via the spec flag","decision":"keep","reason":"Non-deletion destructive flag still distinguishes benign ball from intended kil.","previous_decision":"keep","previous_original_line":95,"previous_reviewed_snapshot_line":85,"previous_reviewed_body_sha256":"8a47d555e803bd8bf743d41692310a82f334ee8801be499bb06c8f5a8fcfc290","executable_body_unchanged":true,"semantic_body_sha256":"329997b77e8a5417148553d0ab7e8b0f7a15f7d4aed404156ebe5474088b05e9","explicit_input_controls":[]},{"path":"src/cli/command-suggestion.test.ts","line":86,"end_line":88,"start":2565,"end":2709,"byte_start":2565,"byte_end":2709,"source":"it('still recovers non-destructive near-misses', () => {\n expect(suggestCommands(specs, ['worktree', 'lst'])).toContain('worktree list')\n })","source_sha256":"adec763d07b24b6ebd1da3906619ad5634de459794367f8ad8cca5b15f932ad1","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"still recovers non-destructive near-misses","decision":"keep","reason":"Ordinary list near miss still recovers.","previous_decision":"keep","previous_original_line":103,"previous_reviewed_snapshot_line":93,"previous_reviewed_body_sha256":"adec763d07b24b6ebd1da3906619ad5634de459794367f8ad8cca5b15f932ad1","executable_body_unchanged":true,"semantic_body_sha256":"26a62b579f266864c7c67d406a8d04bb9d512eda2ada7c4b4c3e38b28bd9dc5c","explicit_input_controls":[]},{"path":"src/cli/command-suggestion.test.ts","line":90,"end_line":92,"start":2713,"end":2865,"byte_start":2713,"byte_end":2865,"source":"it('does not suggest hidden compatibility commands', () => {\n expect(suggestCommands(specs, ['terminal', 'stp'])).not.toContain('terminal stop')\n })","source_sha256":"77009608facafb09a996fbd145bb66cb6730cfda79c7388e54e052fc96eee567","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"does not suggest hidden compatibility commands","decision":"keep","reason":"Hidden compatibility command remains excluded from typo recovery.","previous_decision":"keep","previous_original_line":107,"previous_reviewed_snapshot_line":97,"previous_reviewed_body_sha256":"77009608facafb09a996fbd145bb66cb6730cfda79c7388e54e052fc96eee567","executable_body_unchanged":true,"semantic_body_sha256":"15877d85286ee33aa6aec3734591f11a12be6fe38a732e67a1f1258cca24442c","explicit_input_controls":[]},{"path":"src/cli/command-suggestion.test.ts","line":96,"end_line":101,"start":2911,"end":3222,"byte_start":2911,"byte_end":3222,"source":"it('produces a human nextSteps line when a suggestion exists', () => {\n const data = unknownCommandData(specs, ['worktree', 'remov'])\n expect(data.suggestions).toContain('worktree rm')\n expect(data.nextSteps[0]).toContain('Did you mean')\n expect(data.nextSteps[0]).toContain('orca worktree rm')\n })","source_sha256":"a3bf855bf2a3e5b71e42d98461ae20eda973a4e54f4ad3b4b2b85a412aa568b4","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"produces a human nextSteps line when a suggestion exists","decision":"keep","reason":"Actual error-data wrapper retains canonical suggestion and reusable human next step.","previous_decision":"keep","previous_original_line":113,"previous_reviewed_snapshot_line":103,"previous_reviewed_body_sha256":"a3bf855bf2a3e5b71e42d98461ae20eda973a4e54f4ad3b4b2b85a412aa568b4","executable_body_unchanged":true,"semantic_body_sha256":"260c0613040f166646067c6a69029bb86925596ce825278ead82fe731210bcbe","explicit_input_controls":[]},{"path":"src/cli/command-suggestion.test.ts","line":103,"end_line":107,"start":3226,"end":3437,"byte_start":3226,"byte_end":3437,"source":"it('produces empty nextSteps when nothing is close', () => {\n const data = unknownCommandData(specs, ['worktree', 'zzzzz'])\n expect(data.suggestions).toEqual([])\n expect(data.nextSteps).toEqual([])\n })","source_sha256":"81d7d4aa88f027af89e46fc4896bf5da9516d6f44faaf1e84b7f8628503094ea","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"produces empty nextSteps when nothing is close","decision":"keep","reason":"No nearby input yields empty suggestions and no invented next steps.","previous_decision":"keep","previous_original_line":120,"previous_reviewed_snapshot_line":110,"previous_reviewed_body_sha256":"81d7d4aa88f027af89e46fc4896bf5da9516d6f44faaf1e84b7f8628503094ea","executable_body_unchanged":true,"semantic_body_sha256":"e57c2a9c6b4bd31d60efdeb61f8d547807219e2bf71648bbe4741eabefe0f96e","explicit_input_controls":[]},{"path":"src/cli/command-suggestion.test.ts","line":109,"end_line":113,"start":3441,"end":3704,"byte_start":3441,"byte_end":3704,"source":"it('does not route a benign typo into a destructive nextStep', () => {\n const data = unknownCommandData(specs, ['worktree', 'move'])\n expect(data.suggestions).not.toContain('worktree remove')\n expect(data.nextSteps.join(' ')).not.toContain('remove')\n })","source_sha256":"ca79b2ce3237df9f5b2d6abcbdaa05a263d9fb13aba29d413c4d9311242b027a","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"does not route a benign typo into a destructive nextStep","decision":"keep","reason":"Actual error-data wrapper never emits destructive remove recovery for benign move.","previous_decision":"keep","previous_original_line":126,"previous_reviewed_snapshot_line":116,"previous_reviewed_body_sha256":"ca79b2ce3237df9f5b2d6abcbdaa05a263d9fb13aba29d413c4d9311242b027a","executable_body_unchanged":true,"semantic_body_sha256":"208b19fdbc35a65a9ec541d146e9cbd42bd32271ab34e0d8c303d0cc7ada1989","explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/cli/command-suggestion.test.ts:6:synthetic-command-specs:0","kind":"synthetic-command-specs","path":"src/cli/command-suggestion.test.ts","line":6,"end_line":44,"start":194,"end":979,"byte_start":194,"byte_end":979,"source":"[\n {\n path: ['worktree', 'rm'],\n aliases: [\n ['worktree', 'remove'],\n ['worktree', 'delete']\n ],\n destructive: true,\n summary: 'Remove a worktree',\n usage: 'orca worktree rm',\n allowedFlags: []\n },\n {\n path: ['worktree', 'list'],\n summary: 'List worktrees',\n usage: 'orca worktree list',\n allowedFlags: []\n },\n {\n path: ['terminal', 'send'],\n summary: 'Send input',\n usage: 'orca terminal send',\n allowedFlags: []\n },\n {\n path: ['emulator', 'kill'],\n destructive: true,\n summary: 'Kill the emulator',\n usage: 'orca emulator kill',\n allowedFlags: []\n },\n {\n path: ['terminal', 'stop'],\n hidden: true,\n summary: 'Deprecated terminal stop',\n usage: 'orca terminal stop',\n allowedFlags: []\n }\n]","source_sha256":"ab4aa5d95073ee09fb0d5c480733170f7c8791a58e4c8ef54ddb4e850b037028","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain every independent synthetic command input; canonical/alias/destructive/hidden distinctions exercise the actual suggestion algorithm.","rows":[{"path":"src/cli/command-suggestion.test.ts","line":7,"end_line":17,"start":198,"end":423,"byte_start":198,"byte_end":423,"source":"{\n path: ['worktree', 'rm'],\n aliases: [\n ['worktree', 'remove'],\n ['worktree', 'delete']\n ],\n destructive: true,\n summary: 'Remove a worktree',\n usage: 'orca worktree rm',\n allowedFlags: []\n }","source_sha256":"72db51eb017393ae231caaa907a531d0fc068af20635f2eb9e83f30d6fc560b4","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","index":1,"decision":"keep","reason":"Destructive canonical worktree command and both declared aliases establish the delete-family intent guard."},{"path":"src/cli/command-suggestion.test.ts","line":18,"end_line":23,"start":427,"end":549,"byte_start":427,"byte_end":549,"source":"{\n path: ['worktree', 'list'],\n summary: 'List worktrees',\n usage: 'orca worktree list',\n allowedFlags: []\n }","source_sha256":"d15643d697c14a288565a7000cce37dbf4b8299ea6d048e727520934bee15d85","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","index":2,"decision":"keep","reason":"Ordinary non-destructive worktree command supplies the positive typo-recovery control."},{"path":"src/cli/command-suggestion.test.ts","line":24,"end_line":29,"start":553,"end":671,"byte_start":553,"byte_end":671,"source":"{\n path: ['terminal', 'send'],\n summary: 'Send input',\n usage: 'orca terminal send',\n allowedFlags: []\n }","source_sha256":"70855025c9db57ef6f020a9751da56d3b9ccf1538746b6b051ad1144107720d4","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","index":3,"decision":"keep","reason":"Non-destructive terminal command supplies closest-match ordering."},{"path":"src/cli/command-suggestion.test.ts","line":30,"end_line":36,"start":675,"end":823,"byte_start":675,"byte_end":823,"source":"{\n path: ['emulator', 'kill'],\n destructive: true,\n summary: 'Kill the emulator',\n usage: 'orca emulator kill',\n allowedFlags: []\n }","source_sha256":"1fda77e58c656ba41d0dcae3096b35bb9a74f2d2040f3d21939cd43e657ae643","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","index":4,"decision":"keep","reason":"Destructive command outside the delete family proves the spec flag drives the intent guard."},{"path":"src/cli/command-suggestion.test.ts","line":37,"end_line":43,"start":827,"end":977,"byte_start":827,"byte_end":977,"source":"{\n path: ['terminal', 'stop'],\n hidden: true,\n summary: 'Deprecated terminal stop',\n usage: 'orca terminal stop',\n allowedFlags: []\n }","source_sha256":"e485e5fee9c46a9a894b9061eab4dbca1f7314937bfe5fea72c199562d536601","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","index":5,"decision":"keep","reason":"Hidden compatibility command must stay excluded from suggestions."}]},{"id":"src/cli/command-suggestion.test.ts:9:command-alias-inputs:1","kind":"command-alias-inputs","path":"src/cli/command-suggestion.test.ts","line":9,"end_line":12,"start":243,"end":309,"byte_start":243,"byte_end":309,"source":"[\n ['worktree', 'remove'],\n ['worktree', 'delete']\n ]","source_sha256":"5612a0a5ff31f5219fe886ebf0a214b183de0da88d401e5b58aae34ebbea8b1f","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Retain both synthetic destructive aliases because canonical removal and delete-family near misses have independently asserted outcomes.","rows":[{"path":"src/cli/command-suggestion.test.ts","line":10,"end_line":10,"start":251,"end":273,"byte_start":251,"byte_end":273,"source":"['worktree', 'remove']","source_sha256":"eb7f3dfdbb5cb0b96e3fa70cbe03ae0341a2b1d4d84c792b1449f3fb5b383ed1","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","index":1,"decision":"keep","reason":"Remove alias participates in genuine remov recovery while benign move remains excluded."},{"path":"src/cli/command-suggestion.test.ts","line":11,"end_line":11,"start":281,"end":303,"byte_start":281,"byte_end":303,"source":"['worktree', 'delete']","source_sha256":"d908bb36b660d06a120f922e2cdb69ce695ed6861c82c8eaeb4aa847dd4ceecf","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","index":2,"decision":"keep","reason":"Delete alias participates in genuine delet recovery while benign move remains excluded."}]}],"support_functions":[],"historical_cases_absent_from_current_source":[{"line":49,"title":"suggests the closest command for a near-miss verb","decision":"consolidate","reason":"Exact same input/assertion is retained in the existing near-miss destructive-verb case, which checks both canonical and alias suggestions together."},{"line":53,"title":"includes alias paths among suggestions","decision":"consolidate","reason":"Exact same input/assertion is retained alongside canonical suggestion in the existing near-miss destructive-verb case."}],"previous_explicit_parameter_case_records":[],"previous_review":{"path":"reviews/root-0054.jsonl","source_commit":"8f6283b32bcdefa746613e4c28d04bb1fe954eb9","original_sha256":"a40f720569441f73739f1c55108d8ecc7bf90e22520a2c5b96e0b9055503f4ec","reviewed_sha256":"b2d1f57b3690f497ca3de8043c7d8174830bb9a9fd7576b4420335e35f0a4b14","matching_reviewed_snapshot_source_commit":"70acd58dd2d049ba74492b66d8999ed2ce64ff21"},"upstream_comparison":{"same_executable_ast":true,"same_noncomment_tokens":true,"canonical_ast_sha256":"54ddf0887b54903791f023883c38a2b1923462ded53b16c5a4fb2915b2a4496c","noncomment_tokens_sha256":"b7cbc85fe3a462ea8db4c66a3ae75f76327e24977d8afcd4a26f19fcbbe57748","source_diff":"/tmp/orca-cli-upstream-rereview-0002/upstream-diff.patch"},"evidence":["src/cli/command-suggestion.ts","src/cli/command-spec.ts"],"evidence_sha256":{"src/cli/command-suggestion.ts":"43ddbfa10e242a2e9d54ce7334495b8461d0a204f0f3bdd16a51208df4ad2b6b","src/cli/command-spec.ts":"3ea04adce746c6665d8caeebd03dac7a4366807e003bca0b05f5ec5817113c89"},"evidence_detail":[{"path":"src/cli/command-suggestion.ts","sha256":"43ddbfa10e242a2e9d54ce7334495b8461d0a204f0f3bdd16a51208df4ad2b6b","lines":131,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"},{"path":"src/cli/command-spec.ts","sha256":"3ea04adce746c6665d8caeebd03dac7a4366807e003bca0b05f5ec5817113c89","lines":25,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"stored_snapshot_and_prior_evidence_only_not_newly_read"}],"validation":"reviews/upstream-0003-validation.json","tests_executed":true,"runtime_validation":"passed_post_merge","integration_note":"Pinned upstream and merged checkout hashes match; eight runnable selected suites passed108 cases. Two auxiliary fixtures have no standalone cases.","execution_commit":"41b5cf015be7970a23e91d4ce76d52d781db4e1b","runtime_evidence":{"command_artifact":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests-command.json","command_artifact_sha256":"bfdfbbae010b126e2001c5cfb910e3da4582b1522909bdf8eb38785a06618c59","report":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.json","report_sha256":"5efdd36e8a1730b0146a04f5948b2a16f046ac11b96c24416f681adf823640eb","log":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.log","log_sha256":"a61c033dad812ef5e0da43927bf6ecd313070a4985bf46489c6aa9e517cf3202","test_file_included":true,"passed_cases":13,"cases":[{"title":"suggestCommands returns nothing for a wildly-off token","status":"passed"},{"title":"suggestCommands only considers commands of the same depth","status":"passed"},{"title":"suggestCommands suggests a top-level command group near-miss","status":"passed"},{"title":"suggestCommands ranks closer matches first","status":"passed"},{"title":"suggestCommands never suggests a destructive command for a benign non-destructive typo","status":"passed"},{"title":"suggestCommands still suggests remove for a near-miss of a destructive verb","status":"passed"},{"title":"suggestCommands still suggests delete for a near-miss of the delete alias","status":"passed"},{"title":"suggestCommands guards destructive commands outside the delete-family via the spec flag","status":"passed"},{"title":"suggestCommands still recovers non-destructive near-misses","status":"passed"},{"title":"suggestCommands does not suggest hidden compatibility commands","status":"passed"},{"title":"unknownCommandData produces a human nextSteps line when a suggestion exists","status":"passed"},{"title":"unknownCommandData produces empty nextSteps when nothing is close","status":"passed"},{"title":"unknownCommandData does not route a benign typo into a destructive nextStep","status":"passed"}],"support_limit":null}}
+{"path":"src/cli/execution-host-flag.test.ts","sha256":"b69baf15ac20d577efbc493aa6b5b44c9b4263cec3453d0e99d656601ac6f1ca","reviewed_sha256":"b69baf15ac20d577efbc493aa6b5b44c9b4263cec3453d0e99d656601ac6f1ca","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","reviewer":"audit_cloud","status":"reviewed","decision":"keep","classification":"behavioral CLI suite","rationale":"Read the complete pinned upstream body, every current case, parameter table, explicit fixture workload and traversal. Compared with the completed review and matching reviewed snapshot: only comments differ, all executable syntax and assertion/input values remain identical, and earlier improvements are preserved. Retain every current case. The post-merge suite passed; exact command/result evidence is in the batch validation record.","phase":"runtime-validated-upstream-rereview","complete_body_and_tables_reviewed":true,"implementation_status":"reviewed-unchanged","checkout_edits":false,"original_declarations":41,"final_declarations":41,"cases":[{"path":"src/cli/execution-host-flag.test.ts","line":49,"end_line":51,"start":1385,"end":1496,"byte_start":1385,"byte_end":1496,"source":"it('returns undefined when --host is absent', () => {\n expect(parseHostFlag(flags({}))).toBeUndefined()\n })","source_sha256":"cb5c28751c7fe76074fcd58a65ec9422d1add0b2d83cd0a7a8df93c6d2d4ee63","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"returns undefined when --host is absent","decision":"keep","reason":"Absent host flag retains no-selection semantics.","previous_decision":"keep","previous_original_line":49,"previous_reviewed_snapshot_line":49,"previous_reviewed_body_sha256":"cb5c28751c7fe76074fcd58a65ec9422d1add0b2d83cd0a7a8df93c6d2d4ee63","executable_body_unchanged":true,"semantic_body_sha256":"b6d034f9e49005c8d76f83a202628c3847ffd07a469aef312430706052f543bd","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":53,"end_line":55,"start":1500,"end":1645,"byte_start":1500,"byte_end":1645,"source":"it('rejects a --host flag with no value', () => {\n expect(() => parseHostFlag(flags({ host: true }))).toThrow('Missing value for --host')\n })","source_sha256":"db769782db25c3a11570c7f5e22ac4eb34ee876c58c9713064b0306422d6fc05","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"rejects a --host flag with no value","decision":"keep","reason":"Valueless flag is rejected rather than interpreted as a host alias.","previous_decision":"keep","previous_original_line":53,"previous_reviewed_snapshot_line":53,"previous_reviewed_body_sha256":"db769782db25c3a11570c7f5e22ac4eb34ee876c58c9713064b0306422d6fc05","executable_body_unchanged":true,"semantic_body_sha256":"26e69dae97d856310d78ffdd803d66a7d4ac6ad4d74c9415ace2260014c4b9ba","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":57,"end_line":59,"start":1649,"end":1850,"byte_start":1649,"byte_end":1850,"source":"it.each(['runtime:', 'ssh:', 'ssh:a|b', ' '])('rejects the unparseable host id %s', (value) => {\n expect(() => parseHostFlag(flags({ host: value }))).toThrow(`Invalid --host value: ${value}`)\n })","source_sha256":"40e7719d5dec2dee0433b0546700011c71e33bc0c47831f5b719b2d45db4b4e7","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"rejects the unparseable host id %s","decision":"keep","reason":"Empty runtime/SSH IDs, unsafe separator and whitespace are rejected; all four parameter inputs read individually.","previous_decision":"keep","previous_original_line":59,"previous_reviewed_snapshot_line":59,"previous_reviewed_body_sha256":"40e7719d5dec2dee0433b0546700011c71e33bc0c47831f5b719b2d45db4b4e7","executable_body_unchanged":true,"semantic_body_sha256":"8388e0399c5087ff8c4716a6ee0cb57c6632fcb9ebc8ba3a9c6724be55b44f69","explicit_input_controls":["src/cli/execution-host-flag.test.ts:57:parameter-table:0"]},{"path":"src/cli/execution-host-flag.test.ts","line":61,"end_line":69,"start":1854,"end":2212,"byte_start":1854,"byte_end":2212,"source":"it('parses the three supported host kinds', () => {\n expect(parseHostFlag(flags({ host: 'local' }))?.kind).toBe('local')\n expect(parseHostFlag(flags({ host: 'ssh:box-1' }))?.kind).toBe('ssh')\n expect(parseHostFlag(flags({ host: 'runtime:env-1' }))).toEqual({\n kind: 'runtime',\n id: 'runtime:env-1',\n environmentId: 'env-1'\n })\n })","source_sha256":"dff7d8506fea837f7c4b32cce3611c44cf5f006c3f62cca0db62cbcdf6b88855","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"parses the three supported host kinds","decision":"keep","reason":"Local, SSH and runtime inputs preserve their distinct target kinds and runtime identity.","previous_decision":"keep","previous_original_line":63,"previous_reviewed_snapshot_line":63,"previous_reviewed_body_sha256":"dff7d8506fea837f7c4b32cce3611c44cf5f006c3f62cca0db62cbcdf6b88855","executable_body_unchanged":true,"semantic_body_sha256":"4c5964ef43274aa0b7a8ed11e026a6ef865c8684e95526ff699a55329ab1fa8d","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":71,"end_line":80,"start":2216,"end":2540,"byte_start":2216,"byte_end":2540,"source":"it('carries an unprefixed host name through as an alias', () => {\n expect(parseHostFlag(flags({ host: 'trader-local' }))).toEqual({\n kind: 'alias',\n alias: 'trader-local'\n })\n expect(parseHostFlag(flags({ host: ' trader-local ' }))).toEqual({\n kind: 'alias',\n alias: 'trader-local'\n })\n })","source_sha256":"1aec8f9a291e6fcc93dc61e145ab286d8712438227bddc57b797aa4dca3b021a","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"carries an unprefixed host name through as an alias","decision":"keep","reason":"Unprefixed display name and whitespace-trimmed spelling survive as unresolved aliases.","previous_decision":"keep","previous_original_line":75,"previous_reviewed_snapshot_line":75,"previous_reviewed_body_sha256":"1aec8f9a291e6fcc93dc61e145ab286d8712438227bddc57b797aa4dca3b021a","executable_body_unchanged":true,"semantic_body_sha256":"aeee9f3522736220180e63fd33ecd338beee414781d4519f50ed3fc1c52aba38","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":84,"end_line":92,"start":2596,"end":2971,"byte_start":2596,"byte_end":2971,"source":"it('keeps the current connection for local and ssh hosts', async () => {\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'local' }), NO_SELECTION)\n ).resolves.toBe(null)\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'ssh:box-1' }), NO_SELECTION)\n ).resolves.toBe(null)\n expect(listEnvironmentsMock).not.toHaveBeenCalled()\n })","source_sha256":"07d49d54f1ebf073c92b5482fdd79d336b7791bfeb2e7da70c2b1ec4ccf6a53c","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"keeps the current connection for local and ssh hosts","decision":"keep","reason":"Local and SSH targets keep the connection local and avoid pairing-store enumeration.","previous_decision":"keep","previous_original_line":88,"previous_reviewed_snapshot_line":88,"previous_reviewed_body_sha256":"07d49d54f1ebf073c92b5482fdd79d336b7791bfeb2e7da70c2b1ec4ccf6a53c","executable_body_unchanged":true,"semantic_body_sha256":"317147d2ecfc2227111cfea7d5d7e9ccbfa1b898d5c7d824f8465bf283f05405","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":94,"end_line":100,"start":2975,"end":3251,"byte_start":2975,"byte_end":3251,"source":"it('routes a paired runtime host to that environment', async () => {\n listEnvironmentsMock.mockReturnValue([environment('env-1', 'gpu')])\n\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'runtime:env-1' }), NO_SELECTION)\n ).resolves.toBe('env-1')\n })","source_sha256":"f2966faedf97405e5789ac1349d661c035a459a9328a3a7cbd13427abed345b8","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"routes a paired runtime host to that environment","decision":"keep","reason":"Paired runtime identity selects the exact environment.","previous_decision":"keep","previous_original_line":98,"previous_reviewed_snapshot_line":98,"previous_reviewed_body_sha256":"f2966faedf97405e5789ac1349d661c035a459a9328a3a7cbd13427abed345b8","executable_body_unchanged":true,"semantic_body_sha256":"0bbb7f3d4b8b3e97188ee8716bd574d04ef2774eb4a34792822887962fe50738","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":102,"end_line":108,"start":3255,"end":3595,"byte_start":3255,"byte_end":3595,"source":"it('rejects a runtime host id that no paired environment owns', async () => {\n listEnvironmentsMock.mockReturnValue([environment('env-1', 'gpu')])\n\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'runtime:env-missing' }), NO_SELECTION)\n ).rejects.toThrow('no paired Orca server is named or has id env-missing')\n })","source_sha256":"90abee3a6312343877d7652378f031d60cee611853b8f298cc811bafb45d74ae","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"rejects a runtime host id that no paired environment owns","decision":"keep","reason":"Unknown runtime identity fails loudly instead of silently selecting the local runtime.","previous_decision":"keep","previous_original_line":106,"previous_reviewed_snapshot_line":106,"previous_reviewed_body_sha256":"90abee3a6312343877d7652378f031d60cee611853b8f298cc811bafb45d74ae","executable_body_unchanged":true,"semantic_body_sha256":"1e6b4eb61cd80f0bbd300288247b1c9e033d9686e3fd3e042b18ccd412388069","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":110,"end_line":116,"start":3599,"end":3871,"byte_start":3599,"byte_end":3871,"source":"it('accepts the environment name as well as its id', async () => {\n listEnvironmentsMock.mockReturnValue([environment('env-1', 'gpu')])\n\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'runtime:gpu' }), NO_SELECTION)\n ).resolves.toBe('env-1')\n })","source_sha256":"d57990238756314bce7297ce766a6fb28863224b0c960d3aacdd4740c691e144","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"accepts the environment name as well as its id","decision":"keep","reason":"Human paired-server name canonicalizes to the environment identity.","previous_decision":"keep","previous_original_line":116,"previous_reviewed_snapshot_line":116,"previous_reviewed_body_sha256":"d57990238756314bce7297ce766a6fb28863224b0c960d3aacdd4740c691e144","executable_body_unchanged":true,"semantic_body_sha256":"0414f7c8be3a94cca7f401d8bd0ef3ac8060fdd86fc1535903697b64bf60c97a","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":118,"end_line":124,"start":3875,"end":4143,"byte_start":3875,"byte_end":4143,"source":"it('decodes percent-encoded environment ids', async () => {\n listEnvironmentsMock.mockReturnValue([environment('env one')])\n\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'runtime:env%20one' }), NO_SELECTION)\n ).resolves.toBe('env one')\n })","source_sha256":"d027d6249fa6c27bdc151622e7c5f2826e288272a6970a9dee1896743189881a","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"decodes percent-encoded environment ids","decision":"keep","reason":"Percent-encoded identity is decoded before matching the pairing store.","previous_decision":"keep","previous_original_line":124,"previous_reviewed_snapshot_line":124,"previous_reviewed_body_sha256":"d027d6249fa6c27bdc151622e7c5f2826e288272a6970a9dee1896743189881a","executable_body_unchanged":true,"semantic_body_sha256":"80af737dcecd04cf9ee099bdb9811c889cf027385477f952bbfdb732b10e4675","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":126,"end_line":137,"start":4147,"end":4579,"byte_start":4147,"byte_end":4579,"source":"it('refuses a runtime host alongside --pairing-code', async () => {\n listEnvironmentsMock.mockReturnValue([environment('env-1')])\n\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'runtime:env-1' }), {\n listSshTargets: listSshTargetsMock,\n verifySshTargets: listSshTargetsMock,\n pairingCode: 'orca://pair?x',\n environmentSelector: null\n })\n ).rejects.toThrow('not both')\n })","source_sha256":"22e9053bd38e00e88d7c654e8b9e38b2ab84d97946ecd5436a13b3974208d8e3","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"refuses a runtime host alongside --pairing-code","decision":"keep","reason":"Runtime target plus pairing code is refused instead of choosing one server silently.","previous_decision":"keep","previous_original_line":132,"previous_reviewed_snapshot_line":132,"previous_reviewed_body_sha256":"22e9053bd38e00e88d7c654e8b9e38b2ab84d97946ecd5436a13b3974208d8e3","executable_body_unchanged":true,"semantic_body_sha256":"e030a1c7af9f2644f4c92de5ff846bd582a19f4a6efd80d7aa1de6baf2007fac","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":139,"end_line":151,"start":4583,"end":5135,"byte_start":4583,"byte_end":5135,"source":"it('refuses a runtime host that disagrees with --environment', async () => {\n listEnvironmentsMock.mockReturnValue([environment('env-1')])\n resolveEnvironmentMock.mockReturnValue(environment('env-2'))\n\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'runtime:env-1' }), {\n listSshTargets: listSshTargetsMock,\n verifySshTargets: listSshTargetsMock,\n pairingCode: null,\n environmentSelector: { value: 'other', label: '--environment' }\n })\n ).rejects.toThrow('name different Orca servers')\n })","source_sha256":"32e53565c996e8188282fd3fa41b9edb2d6fe39610b0db2382b4d2a1a246f6d5","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"refuses a runtime host that disagrees with --environment","decision":"keep","reason":"Explicit conflicting environment selector is rejected.","previous_decision":"keep","previous_original_line":145,"previous_reviewed_snapshot_line":145,"previous_reviewed_body_sha256":"32e53565c996e8188282fd3fa41b9edb2d6fe39610b0db2382b4d2a1a246f6d5","executable_body_unchanged":true,"semantic_body_sha256":"f3875d803f57ab32c1d815b8428425e947d7d086ea0eff3c55fb76917b173d05","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":153,"end_line":165,"start":5139,"end":5741,"byte_start":5139,"byte_end":5741,"source":"it('names the ambient variable when ORCA_ENVIRONMENT is the conflicting selector', async () => {\n listEnvironmentsMock.mockReturnValue([environment('env-1')])\n resolveEnvironmentMock.mockReturnValue(environment('env-2'))\n\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'runtime:env-1' }), {\n listSshTargets: listSshTargetsMock,\n verifySshTargets: listSshTargetsMock,\n pairingCode: null,\n environmentSelector: { value: 'staging', label: 'ORCA_ENVIRONMENT' }\n })\n ).rejects.toThrow('ORCA_ENVIRONMENT staging name different Orca servers')\n })","source_sha256":"ae312a9b2c2e5c16628e15ccf562e185b692c79d3c0d5ab30ec2c2c77c02efa3","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"names the ambient variable when ORCA_ENVIRONMENT is the conflicting selector","decision":"keep","reason":"Conflicting ambient selector names the actual environment variable and value for recovery.","previous_decision":"keep","previous_original_line":159,"previous_reviewed_snapshot_line":159,"previous_reviewed_body_sha256":"ae312a9b2c2e5c16628e15ccf562e185b692c79d3c0d5ab30ec2c2c77c02efa3","executable_body_unchanged":true,"semantic_body_sha256":"4ce22151175313a4bcf434537c424ec42681c288200d6a47591f6a51ea1cced7","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":167,"end_line":176,"start":5745,"end":6135,"byte_start":5745,"byte_end":6135,"source":"it('hands an agent the known environment ids to retry with', async () => {\n listEnvironmentsMock.mockReturnValue([environment('env-1', 'gpu')])\n\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'runtime:missing' }), NO_SELECTION)\n ).rejects.toMatchObject({\n code: 'invalid_argument',\n data: { knownEnvironments: [{ id: 'env-1', name: 'gpu' }] }\n })\n })","source_sha256":"d367701bfb5407ce30248140086534d175f375e4ce8ee3383721ab5f83c73cad","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"hands an agent the known environment ids to retry with","decision":"keep","reason":"Unknown runtime selection exposes independent known environment identities in machine-readable data.","previous_decision":"keep","previous_original_line":173,"previous_reviewed_snapshot_line":173,"previous_reviewed_body_sha256":"d367701bfb5407ce30248140086534d175f375e4ce8ee3383721ab5f83c73cad","executable_body_unchanged":true,"semantic_body_sha256":"f3d88651c6e80e9dd2ca56f522f1549ee1e7ba72ba1a913fbc19c001655ca5b1","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":178,"end_line":193,"start":6139,"end":6774,"byte_start":6139,"byte_end":6774,"source":"it('accepts ORCA_ENVIRONMENT naming the runtime host in another case', async () => {\n listEnvironmentsMock.mockReturnValue([environment('env-1', 'Build')])\n resolveEnvironmentMock.mockImplementation(() => {\n throw new Error('Unknown environment: build')\n })\n\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'runtime:env-1' }), {\n listSshTargets: listSshTargetsMock,\n verifySshTargets: listSshTargetsMock,\n pairingCode: null,\n environmentSelector: { value: 'build', label: 'ORCA_ENVIRONMENT' }\n })\n ).resolves.toBe('env-1')\n resolveEnvironmentMock.mockReset()\n })","source_sha256":"60b71fd579610c28c0813a68416ee034abf1965a6d392b112c725c2f9e3e352e","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"accepts ORCA_ENVIRONMENT naming the runtime host in another case","decision":"keep","reason":"Case-insensitive ambient match canonicalizes without invoking the exact-only fallback store resolver.","previous_decision":"keep","previous_original_line":184,"previous_reviewed_snapshot_line":184,"previous_reviewed_body_sha256":"60b71fd579610c28c0813a68416ee034abf1965a6d392b112c725c2f9e3e352e","executable_body_unchanged":true,"semantic_body_sha256":"fb6880fbfbc5040a9f2e26e6e83b82a8e0b23499b595b67978a1d4ae26d14c35","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":195,"end_line":207,"start":6778,"end":7326,"byte_start":6778,"byte_end":7326,"source":"it('accepts --environment naming the same server as the runtime host', async () => {\n listEnvironmentsMock.mockReturnValue([environment('env-1', 'gpu')])\n resolveEnvironmentMock.mockReturnValue(environment('env-1', 'gpu'))\n\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'runtime:env-1' }), {\n listSshTargets: listSshTargetsMock,\n verifySshTargets: listSshTargetsMock,\n pairingCode: null,\n environmentSelector: { value: 'gpu', label: '--environment' }\n })\n ).resolves.toBe('env-1')\n })","source_sha256":"d7e29eb97b1db339431e23034bd27b1ea2ae4219f2f49ed3e9923e6139883f53","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"accepts --environment naming the same server as the runtime host","decision":"keep","reason":"Environment selector for the same paired server remains accepted.","previous_decision":"keep","previous_original_line":201,"previous_reviewed_snapshot_line":201,"previous_reviewed_body_sha256":"d7e29eb97b1db339431e23034bd27b1ea2ae4219f2f49ed3e9923e6139883f53","executable_body_unchanged":true,"semantic_body_sha256":"17b1c355f0aa02ae7d118c9f344a0abdb82b2ec44c020dc29b4210ff9a59f6d6","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":218,"end_line":225,"start":7703,"end":8028,"byte_start":7703,"byte_end":8028,"source":"it('routes an alias that names a paired server to that environment', async () => {\n listEnvironmentsMock.mockReturnValue([environment('env-1', 'gpu')])\n listSshTargetsMock.mockResolvedValue([])\n\n await expect(resolveHostFlagEnvironmentId(flags({ host: 'gpu' }), NO_SELECTION)).resolves.toBe(\n 'env-1'\n )\n })","source_sha256":"78448a98be4797d77296e2982294bde3d5269ecda33fee84309410c9ae15e59d","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"routes an alias that names a paired server to that environment","decision":"keep","reason":"Bare server alias resolves only after the SSH collision check finds none.","previous_decision":"keep","previous_original_line":226,"previous_reviewed_snapshot_line":226,"previous_reviewed_body_sha256":"78448a98be4797d77296e2982294bde3d5269ecda33fee84309410c9ae15e59d","executable_body_unchanged":true,"semantic_body_sha256":"9639de7600fdf565e8e0b93f40b0c5b310f28ee70db4b458edd85a5fd877e02c","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":227,"end_line":233,"start":8032,"end":8315,"byte_start":8032,"byte_end":8315,"source":"it('leaves an alias that names no paired server to the SSH axis', async () => {\n listEnvironmentsMock.mockReturnValue([environment('env-1', 'gpu')])\n\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'trader-local' }), NO_SELECTION)\n ).resolves.toBe(null)\n })","source_sha256":"12e6f4f59540fa920ec0d61c0c791dee4da06f3fef0fcc77b54f511866378123","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"leaves an alias that names no paired server to the SSH axis","decision":"keep","reason":"Alias missing from pairing store remains available to connected-runtime SSH resolution.","previous_decision":"keep","previous_original_line":236,"previous_reviewed_snapshot_line":236,"previous_reviewed_body_sha256":"12e6f4f59540fa920ec0d61c0c791dee4da06f3fef0fcc77b54f511866378123","executable_body_unchanged":true,"semantic_body_sha256":"38da871ab59466bfb62f59c606de9445b79e779f26933511343c1109ccdb046e","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":235,"end_line":244,"start":8319,"end":8758,"byte_start":8319,"byte_end":8758,"source":"it('resolves an alias to the SSH target that carries that label', async () => {\n listEnvironmentsMock.mockReturnValue([])\n const client = clientWithTargets([{ id: 'ssh-1783599077486-fyasux', label: 'trader-local' }])\n\n await expect(resolveHostFlagTarget(flags({ host: 'trader-local' }), client)).resolves.toEqual({\n kind: 'ssh',\n id: 'ssh:ssh-1783599077486-fyasux',\n targetId: 'ssh-1783599077486-fyasux'\n })\n })","source_sha256":"700a5698d69b068df2db2bec22220f9c75e06cb58ff54ed85f110f9039ec645e","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"resolves an alias to the SSH target that carries that label","decision":"keep","reason":"Actual target resolver maps a known label to its distinct machine-generated SSH identity.","previous_decision":"keep","previous_original_line":244,"previous_reviewed_snapshot_line":244,"previous_reviewed_body_sha256":"700a5698d69b068df2db2bec22220f9c75e06cb58ff54ed85f110f9039ec645e","executable_body_unchanged":true,"semantic_body_sha256":"70ef8f0e3138c79a2c3b316b17f374379ab44688111d6a19175a7f64567e65f0","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":246,"end_line":252,"start":8762,"end":9074,"byte_start":8762,"byte_end":9074,"source":"it('names the alias the caller typed rather than an ssh: spelling they did not use', async () => {\n listEnvironmentsMock.mockReturnValue([])\n\n await expect(\n resolveHostFlagTarget(flags({ host: 'trader-local' }), clientWithTargets([]))\n ).rejects.toThrow('Unknown host in --host trader-local')\n })","source_sha256":"b0b34eb4bbb084009de23866bff5b4c8498d735d6412448fb2f6de9633a27b8f","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"names the alias the caller typed rather than an ssh: spelling they did not use","decision":"keep","reason":"Unknown bare alias is echoed as typed in the error rather than rewritten to an SSH-prefixed spelling.","previous_decision":"keep","previous_original_line":255,"previous_reviewed_snapshot_line":255,"previous_reviewed_body_sha256":"b0b34eb4bbb084009de23866bff5b4c8498d735d6412448fb2f6de9633a27b8f","executable_body_unchanged":true,"semantic_body_sha256":"0233ce1aa60b1e236061e42b84af3764c39e2d87ddf2825d44862bc765d7ff62","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":254,"end_line":269,"start":9078,"end":9657,"byte_start":9078,"byte_end":9657,"source":"it('refuses an alias that names a machine on both axes', async () => {\n listEnvironmentsMock.mockReturnValue([environment('env-1', 'awin')])\n listSshTargetsMock.mockResolvedValue([{ id: 'ssh-1-a', label: 'awin' }])\n\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'awin' }), NO_SELECTION)\n ).rejects.toMatchObject({\n code: 'invalid_argument',\n data: {\n nextSteps: expect.arrayContaining([\n expect.stringContaining('--host runtime:env-1'),\n expect.stringContaining('--host ssh:ssh-1-a')\n ])\n }\n })\n })","source_sha256":"b8f408b09c8dae6b6c1c78651c2ec496cb30e796fcf27f750e764d3a04fafca0","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"refuses an alias that names a machine on both axes","decision":"keep","reason":"Cross-axis name collision refuses dispatch and offers both explicit host identities.","previous_decision":"keep","previous_original_line":265,"previous_reviewed_snapshot_line":265,"previous_reviewed_body_sha256":"b8f408b09c8dae6b6c1c78651c2ec496cb30e796fcf27f750e764d3a04fafca0","executable_body_unchanged":true,"semantic_body_sha256":"6e56e0524ad2c0e88fc6314731d84d8569ee5d75f0710981c5a8ee33597b2a34","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":271,"end_line":290,"start":9661,"end":10367,"byte_start":9661,"byte_end":10367,"source":"it('refuses an alias naming a server and two SSH targets sharing a label', async () => {\n listEnvironmentsMock.mockReturnValue([environment('env-1', 'awin')])\n listSshTargetsMock.mockResolvedValue([\n { id: 'ssh-1-a', label: 'awin' },\n { id: 'ssh-2-b', label: 'awin' }\n ])\n\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'awin' }), NO_SELECTION)\n ).rejects.toMatchObject({\n code: 'invalid_argument',\n data: {\n nextSteps: expect.arrayContaining([\n expect.stringContaining('--host runtime:env-1'),\n expect.stringContaining('--host ssh:ssh-1-a'),\n expect.stringContaining('--host ssh:ssh-2-b')\n ])\n }\n })\n })","source_sha256":"a278f05ca03666c359877e58a0e3f9bf3483355e275b6aa9aa9e41581746a29b","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"refuses an alias naming a server and two SSH targets sharing a label","decision":"keep","reason":"Two SSH targets sharing the server label are additional ambiguity; all three explicit identities are offered.","previous_decision":"keep","previous_original_line":285,"previous_reviewed_snapshot_line":285,"previous_reviewed_body_sha256":"a278f05ca03666c359877e58a0e3f9bf3483355e275b6aa9aa9e41581746a29b","executable_body_unchanged":true,"semantic_body_sha256":"85eb2254211b6d260b704433f0990edf743401c27a406e739008b911ff54a4f2","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":292,"end_line":301,"start":10371,"end":10717,"byte_start":10371,"byte_end":10717,"source":"it('refuses an alias two paired servers answer to', async () => {\n listEnvironmentsMock.mockReturnValue([\n environment('env-1', 'awin'),\n environment('env-2', 'awin')\n ])\n\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'awin' }), NO_SELECTION)\n ).rejects.toThrow('Ambiguous Orca server in --host awin')\n })","source_sha256":"9f13634b1b1a16b1947b8e79fbb74bc2d140e08807e2d8af8743263ff317b8bb","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"refuses an alias two paired servers answer to","decision":"keep","reason":"Duplicated paired-server name refuses first-match guessing.","previous_decision":"keep","previous_original_line":306,"previous_reviewed_snapshot_line":306,"previous_reviewed_body_sha256":"9f13634b1b1a16b1947b8e79fbb74bc2d140e08807e2d8af8743263ff317b8bb","executable_body_unchanged":true,"semantic_body_sha256":"ac7bde68600391bd7520afc573f0be2df42ffa8ef7c652d763e45e9baba3739d","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":303,"end_line":316,"start":10721,"end":11291,"byte_start":10721,"byte_end":11291,"source":"it('refuses to route an alias to a paired server when SSH targets cannot be read', async () => {\n listEnvironmentsMock.mockReturnValue([environment('env-1', 'awin')])\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'awin' }), {\n ...NO_SELECTION,\n verifySshTargets: async () => {\n throw new Error('runtime unreachable')\n }\n })\n ).rejects.toMatchObject({\n message: expect.stringContaining('Cannot verify --host awin'),\n data: { nextSteps: [expect.stringContaining('--host runtime:env-1')] }\n })\n })","source_sha256":"a7232776f54e0fda4f4bf9228003c63891a6b4530149891a7d3680e5bc7a6f0a","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"refuses to route an alias to a paired server when SSH targets cannot be read","decision":"keep","reason":"Unreadable SSH targets cannot establish unambiguous paired-server routing; recovery offers the explicit server ID.","previous_decision":"keep","previous_original_line":317,"previous_reviewed_snapshot_line":317,"previous_reviewed_body_sha256":"a7232776f54e0fda4f4bf9228003c63891a6b4530149891a7d3680e5bc7a6f0a","executable_body_unchanged":true,"semantic_body_sha256":"6e8efcd6aefcb15483ffbf3966382297b207d742ae7d640cd0206891bf29d543","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":318,"end_line":326,"start":11295,"end":11718,"byte_start":11295,"byte_end":11718,"source":"it('resolves the local row name to --host local', async () => {\n listEnvironmentsMock.mockReturnValue([environment('env-1', 'gpu')])\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'This Machine' }), NO_SELECTION)\n ).resolves.toBe(null)\n await expect(\n resolveHostFlagTarget(flags({ host: 'this machine' }), clientWithTargets([]))\n ).resolves.toEqual({ kind: 'local', id: 'local' })\n })","source_sha256":"cdedc4a09c739a8b3e223f654dd81360c9c0ead609627489836146dd4590ed95","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"resolves the local row name to --host local","decision":"keep","reason":"Case-insensitive local display name resolves to local in both environment and target phases.","previous_decision":"keep","previous_original_line":333,"previous_reviewed_snapshot_line":333,"previous_reviewed_body_sha256":"cdedc4a09c739a8b3e223f654dd81360c9c0ead609627489836146dd4590ed95","executable_body_unchanged":true,"semantic_body_sha256":"f27e7c18fb8b4460512d4c27b7f1bf2df14a33cc61338c0f35ce478ab909b840","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":328,"end_line":344,"start":11722,"end":12309,"byte_start":11722,"byte_end":12309,"source":"it('refuses the local row name when an SSH target carries it too', async () => {\n listEnvironmentsMock.mockReturnValue([])\n await expect(\n resolveHostFlagTarget(\n flags({ host: 'this machine' }),\n clientWithTargets([{ id: 'ssh-1-a', label: 'this machine' }])\n )\n ).rejects.toMatchObject({\n message: expect.stringContaining('Ambiguous --host this machine'),\n data: {\n nextSteps: expect.arrayContaining([\n 'Use --host local for this machine.',\n expect.stringContaining('--host ssh:ssh-1-a')\n ])\n }\n })\n })","source_sha256":"414198f78ac9d3dda124da5f0ab7cbcab3a0e7b397c251ec0e0f374e5d01bf4f","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"refuses the local row name when an SSH target carries it too","decision":"keep","reason":"Local display name colliding with an SSH label refuses selection and exposes both axes.","previous_decision":"keep","previous_original_line":343,"previous_reviewed_snapshot_line":343,"previous_reviewed_body_sha256":"414198f78ac9d3dda124da5f0ab7cbcab3a0e7b397c251ec0e0f374e5d01bf4f","executable_body_unchanged":true,"semantic_body_sha256":"466131121ea0b8dee93bfd2922ac5b0ab4b16cd048000a943178cef3fab2e07a","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":346,"end_line":351,"start":12313,"end":12636,"byte_start":12313,"byte_end":12636,"source":"it('refuses the local row name when a paired server carries it too', async () => {\n listEnvironmentsMock.mockReturnValue([environment('env-1', 'this machine')])\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'this machine' }), NO_SELECTION)\n ).rejects.toThrow('Ambiguous --host this machine')\n })","source_sha256":"b6f8e20d52d9b66233ac446c948c5e18fa083d95e28f88950810939471a8c003","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"refuses the local row name when a paired server carries it too","decision":"keep","reason":"Local display name colliding with a paired server refuses selection.","previous_decision":"keep","previous_original_line":361,"previous_reviewed_snapshot_line":361,"previous_reviewed_body_sha256":"b6f8e20d52d9b66233ac446c948c5e18fa083d95e28f88950810939471a8c003","executable_body_unchanged":true,"semantic_body_sha256":"81e041d638b738df9d2a029cec7f97a936cf733348f8c6915fdc3cba268176cf","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":353,"end_line":361,"start":12640,"end":13009,"byte_start":12640,"byte_end":13009,"source":"it('resolves an SSH target label that contains spaces', async () => {\n listEnvironmentsMock.mockReturnValue([])\n const client = clientWithTargets([{ id: 'ssh-9', label: 'Build Box 2' }])\n await expect(resolveHostFlagTarget(flags({ host: 'build box 2' }), client)).resolves.toEqual({\n kind: 'ssh',\n id: 'ssh:ssh-9',\n targetId: 'ssh-9'\n })\n })","source_sha256":"869d91eae327a130c2b5c13c19f9ab516d887d226097964b9bc870fab8c106ee","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"resolves an SSH target label that contains spaces","decision":"keep","reason":"Spaced SSH display name matches case-insensitively and returns the exact target ID.","previous_decision":"keep","previous_original_line":368,"previous_reviewed_snapshot_line":368,"previous_reviewed_body_sha256":"869d91eae327a130c2b5c13c19f9ab516d887d226097964b9bc870fab8c106ee","executable_body_unchanged":true,"semantic_body_sha256":"37ce2c1e96816c137835cafce12650830a3af030eae51c2105364d97ef668fd4","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":364,"end_line":371,"start":13075,"end":13487,"byte_start":13075,"byte_end":13487,"source":"it('ignores one pair of wrapping quotes around a host name', async () => {\n listEnvironmentsMock.mockReturnValue([environment('env-1', 'gpu')])\n listSshTargetsMock.mockResolvedValue([])\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: \"'gpu'\" }), NO_SELECTION)\n ).resolves.toBe('env-1')\n expect(parseHostFlag(flags({ host: '\"local\"' }))).toEqual({ kind: 'local', id: 'local' })\n })","source_sha256":"1b154cffd3f6331343c7bbfacf6c81c2d883f319f3d201f27860e8125bca3d3f","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"ignores one pair of wrapping quotes around a host name","decision":"keep","reason":"Literal wrapping quotes from native Windows-style argv are removed for paired alias and explicit local spelling; no real shell launch is claimed.","previous_decision":"keep","previous_original_line":379,"previous_reviewed_snapshot_line":379,"previous_reviewed_body_sha256":"1b154cffd3f6331343c7bbfacf6c81c2d883f319f3d201f27860e8125bca3d3f","executable_body_unchanged":true,"semantic_body_sha256":"01f3a58925447cd199c94b6503f204750af213d08fde80ec46196e34741374a7","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":373,"end_line":390,"start":13491,"end":14165,"byte_start":13491,"byte_end":14165,"source":"it('leaves an alias to the routed server SSH targets when --environment picks the server', async () => {\n listEnvironmentsMock.mockReturnValue([\n environment('env-1', 'openclaw'),\n environment('env-2', 'omarchy')\n ])\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'omarchy' }), {\n ...NO_SELECTION,\n environmentSelector: { value: 'openclaw', label: '--environment' }\n })\n ).resolves.toBe(null)\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'openclaw' }), {\n ...NO_SELECTION,\n environmentSelector: { value: 'openclaw', label: '--environment' }\n })\n ).resolves.toBe(null)\n })","source_sha256":"5e337a82d80d450989341a2355fa3e8a70beeb9ca42f875870fce7d98b0a1fc0","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"leaves an alias to the routed server SSH targets when --environment picks the server","decision":"keep","reason":"Explicit environment selection leaves both another paired-server alias and its own alias to that routed server SSH axis.","previous_decision":"keep","previous_original_line":390,"previous_reviewed_snapshot_line":390,"previous_reviewed_body_sha256":"5e337a82d80d450989341a2355fa3e8a70beeb9ca42f875870fce7d98b0a1fc0","executable_body_unchanged":true,"semantic_body_sha256":"9ed4b43a6ba02b37ed08bde948b8f5d12a767ffea9e97a77a456e6758c616d82","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":398,"end_line":402,"start":14382,"end":14643,"byte_start":14382,"byte_end":14643,"source":"it('matches the identical host id', () => {\n expect(hostFilterMatchesHostId(runtimeHost, 'runtime:env-1')).toBe(true)\n expect(hostFilterMatchesHostId(localHost, 'local')).toBe(true)\n expect(hostFilterMatchesHostId(sshHost, 'ssh:box-1')).toBe(true)\n })","source_sha256":"84ca93a2335f8bc8070f9142c1ba90952f458e118771cc3fbc1dac656e4fb675","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"matches the identical host id","decision":"keep","reason":"Exact local, SSH and runtime host IDs each match their own filter.","previous_decision":"keep","previous_original_line":415,"previous_reviewed_snapshot_line":415,"previous_reviewed_body_sha256":"84ca93a2335f8bc8070f9142c1ba90952f458e118771cc3fbc1dac656e4fb675","executable_body_unchanged":true,"semantic_body_sha256":"a2fed693f0797550fbbb270d7e23e8cfa76a33060159422deddbe8f664125a28","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":404,"end_line":406,"start":14647,"end":14791,"byte_start":14647,"byte_end":14791,"source":"it('treats the routed runtime own local rows as that runtime', () => {\n expect(hostFilterMatchesHostId(runtimeHost, 'local')).toBe(true)\n })","source_sha256":"748f6079f4f1cc3d3d8e75b4a58fb1284d43d2e119fdd395ef088ba38de07938","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"treats the routed runtime own local rows as that runtime","decision":"keep","reason":"Runtime host filter accepts its own locally stamped rows after routing.","previous_decision":"keep","previous_original_line":421,"previous_reviewed_snapshot_line":421,"previous_reviewed_body_sha256":"748f6079f4f1cc3d3d8e75b4a58fb1284d43d2e119fdd395ef088ba38de07938","executable_body_unchanged":true,"semantic_body_sha256":"365419ef85373c0b399a6b1ce6669d925cef62e3bc2832101dc25fac66395126","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":408,"end_line":411,"start":14795,"end":14991,"byte_start":14795,"byte_end":14991,"source":"it('does not widen local or ssh filters', () => {\n expect(hostFilterMatchesHostId(localHost, 'runtime:env-1')).toBe(false)\n expect(hostFilterMatchesHostId(sshHost, 'local')).toBe(false)\n })","source_sha256":"b80eaaa34513e9b28bb750efef41c8418009adffb4dc028878035630dab71d4e","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"does not widen local or ssh filters","decision":"keep","reason":"Local and SSH filters do not expand to another kind of host.","previous_decision":"keep","previous_original_line":425,"previous_reviewed_snapshot_line":425,"previous_reviewed_body_sha256":"b80eaaa34513e9b28bb750efef41c8418009adffb4dc028878035630dab71d4e","executable_body_unchanged":true,"semantic_body_sha256":"98468e31e1b2958ecd02f1092b51686746e1ce3fd27f74a71880edf8df7f4387","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":413,"end_line":416,"start":14995,"end":15198,"byte_start":14995,"byte_end":15198,"source":"it('does not match a different runtime host', () => {\n expect(hostFilterMatchesHostId(runtimeHost, 'runtime:env-2')).toBe(false)\n expect(hostFilterMatchesHostId(runtimeHost, null)).toBe(false)\n })","source_sha256":"5cae2d9b62039d0c3cb6b44f58632a03a9dd68b6ccaa8892ba5bc44db82cb36f","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"does not match a different runtime host","decision":"keep","reason":"Different runtime identity and null candidate remain excluded from a runtime filter.","previous_decision":"keep","previous_original_line":430,"previous_reviewed_snapshot_line":430,"previous_reviewed_body_sha256":"5cae2d9b62039d0c3cb6b44f58632a03a9dd68b6ccaa8892ba5bc44db82cb36f","executable_body_unchanged":true,"semantic_body_sha256":"f9eb596ce87bcbcd63596143d2ecfa4c6ca1fe99f9b09888d2d514830ea2c5cb","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":420,"end_line":429,"start":15253,"end":15619,"byte_start":15253,"byte_end":15619,"source":"it('refuses --host runtime: when two servers share that name', async () => {\n listEnvironmentsMock.mockReturnValue([\n environment('env-1', 'awin'),\n environment('env-2', 'awin')\n ])\n\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'runtime:awin' }), NO_SELECTION)\n ).rejects.toThrow('2 paired servers are named awin')\n })","source_sha256":"a4873f857a743a5da98b3232548ac11460cc8df172ae30a0695db60005516b94","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"refuses --host runtime: when two servers share that name","decision":"keep","reason":"Prefixed runtime human name refuses duplicated pairing-store names.","previous_decision":"keep","previous_original_line":437,"previous_reviewed_snapshot_line":437,"previous_reviewed_body_sha256":"a4873f857a743a5da98b3232548ac11460cc8df172ae30a0695db60005516b94","executable_body_unchanged":true,"semantic_body_sha256":"00b19835b405db7756d4585bdb73ce9e2da11e447425014398037e6734415d3b","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":431,"end_line":440,"start":15623,"end":15975,"byte_start":15623,"byte_end":15975,"source":"it('refuses --environment when two servers share that name', async () => {\n listEnvironmentsMock.mockReturnValue([\n environment('env-1', 'awin'),\n environment('env-2', 'awin')\n ])\n\n await expect(resolveEnvironmentSelectorForStore('awin', listSshTargetsMock)).rejects.toThrow(\n '2 paired servers are named awin'\n )\n })","source_sha256":"77ec03e8f3491b643804cab1d0956ec93e6df7b4461cb28116e11a686bb2a0c4","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"refuses --environment when two servers share that name","decision":"keep","reason":"Environment-store selector also refuses duplicated pairing-store names.","previous_decision":"keep","previous_original_line":448,"previous_reviewed_snapshot_line":448,"previous_reviewed_body_sha256":"77ec03e8f3491b643804cab1d0956ec93e6df7b4461cb28116e11a686bb2a0c4","executable_body_unchanged":true,"semantic_body_sha256":"fda7a2143bdbaabe3063942dd5eecdb0fdc0024ebb7662abcc71be085309426e","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":442,"end_line":451,"start":15979,"end":16302,"byte_start":15979,"byte_end":16302,"source":"it('still routes an exact id past a colliding name', async () => {\n listEnvironmentsMock.mockReturnValue([\n environment('env-1', 'awin'),\n environment('env-2', 'awin')\n ])\n\n await expect(\n resolveHostFlagEnvironmentId(flags({ host: 'runtime:env-2' }), NO_SELECTION)\n ).resolves.toBe('env-2')\n })","source_sha256":"3f75a0d153e6df82287542f1b48ff8093efb2b3b964ee9aebfb1c6de703244ab","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"still routes an exact id past a colliding name","decision":"keep","reason":"Exact environment ID still resolves when display names collide.","previous_decision":"keep","previous_original_line":459,"previous_reviewed_snapshot_line":459,"previous_reviewed_body_sha256":"3f75a0d153e6df82287542f1b48ff8093efb2b3b964ee9aebfb1c6de703244ab","executable_body_unchanged":true,"semantic_body_sha256":"0830a65bbedbd45439c3b189b3c9e158784ccef8fc816c1b8c5febda9acfcf19","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":455,"end_line":466,"start":16364,"end":16821,"byte_start":16364,"byte_end":16821,"source":"it('accepts a paired server by name or id', async () => {\n listEnvironmentsMock.mockReturnValue([environment('env-1', 'awin')])\n listSshTargetsMock.mockClear()\n\n await expect(resolveEnvironmentSelectorForStore('awin', listSshTargetsMock)).resolves.toBe(\n 'awin'\n )\n await expect(resolveEnvironmentSelectorForStore('env-1', listSshTargetsMock)).resolves.toBe(\n 'env-1'\n )\n expect(listSshTargetsMock).not.toHaveBeenCalled()\n })","source_sha256":"023bcc73b850116308ad946ffd47de45f72330f25b8cc68e237eef37a40f3bce","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"accepts a paired server by name or id","decision":"keep","reason":"Exact paired name and exact ID survive as typed, without fetching SSH suggestions.","previous_decision":"keep","previous_original_line":472,"previous_reviewed_snapshot_line":472,"previous_reviewed_body_sha256":"023bcc73b850116308ad946ffd47de45f72330f25b8cc68e237eef37a40f3bce","executable_body_unchanged":true,"semantic_body_sha256":"938e417bd8ad4e4d984e5be1fb64254c21d511305e4fa96a565f03c6eb37f3ba","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":469,"end_line":478,"start":16898,"end":17294,"byte_start":16898,"byte_end":17294,"source":"it('hands back the id for a name typed in another case or quoted', async () => {\n listEnvironmentsMock.mockReturnValue([environment('env-1', 'Build')])\n\n await expect(resolveEnvironmentSelectorForStore('build', listSshTargetsMock)).resolves.toBe(\n 'env-1'\n )\n await expect(resolveEnvironmentSelectorForStore('\"BUILD\"', listSshTargetsMock)).resolves.toBe(\n 'env-1'\n )\n })","source_sha256":"040218b13b5538110556919d3cfabad0d7d37de78026d1930d45e40c4f354ea4","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"hands back the id for a name typed in another case or quoted","decision":"keep","reason":"Case-insensitive and wrapped-quoted paired name becomes the canonical store ID.","previous_decision":"keep","previous_original_line":487,"previous_reviewed_snapshot_line":487,"previous_reviewed_body_sha256":"040218b13b5538110556919d3cfabad0d7d37de78026d1930d45e40c4f354ea4","executable_body_unchanged":true,"semantic_body_sha256":"02b4d63e68ea1703a49e817a1088226829777253965a604f65377d3ea1bfc25a","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":480,"end_line":492,"start":17298,"end":17796,"byte_start":17298,"byte_end":17796,"source":"it('names the SSH target when the selector is one', async () => {\n listEnvironmentsMock.mockReturnValue([environment('env-1', 'awin')])\n listSshTargetsMock.mockResolvedValue([{ id: 'ssh-1-a', label: 'openclaw' }])\n\n await expect(\n resolveEnvironmentSelectorForStore('openclaw', listSshTargetsMock)\n ).rejects.toMatchObject({\n code: 'invalid_argument',\n data: {\n nextSteps: expect.arrayContaining([expect.stringContaining('--host ssh:ssh-1-a')])\n }\n })\n })","source_sha256":"eac86edd1399fe76d7e15c09a82ebadf8514f3d391c0a1820591e759f644a375","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"names the SSH target when the selector is one","decision":"keep","reason":"Wrong-axis environment input offers the exact existing SSH target identity.","previous_decision":"keep","previous_original_line":500,"previous_reviewed_snapshot_line":500,"previous_reviewed_body_sha256":"eac86edd1399fe76d7e15c09a82ebadf8514f3d391c0a1820591e759f644a375","executable_body_unchanged":true,"semantic_body_sha256":"2c774f99ed14f335cf175a6e63e4fdc732f3877d5a836db889a04b8698600510","explicit_input_controls":[]},{"path":"src/cli/execution-host-flag.test.ts","line":494,"end_line":501,"start":17800,"end":18138,"byte_start":17800,"byte_end":18138,"source":"it('still points at host list when the name is on neither axis', async () => {\n listEnvironmentsMock.mockReturnValue([])\n listSshTargetsMock.mockResolvedValue([])\n\n await expect(resolveEnvironmentSelectorForStore('nowhere', listSshTargetsMock)).rejects.toThrow(\n 'no paired Orca server is named or has id nowhere'\n )\n })","source_sha256":"f28901240409879ea5f5cf1f866189ec295c4cce8631c3f474592bb394aa1e0e","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"still points at host list when the name is on neither axis","decision":"keep","reason":"Unknown selector on both axes retains actionable pairing-store failure.","previous_decision":"keep","previous_original_line":514,"previous_reviewed_snapshot_line":514,"previous_reviewed_body_sha256":"f28901240409879ea5f5cf1f866189ec295c4cce8631c3f474592bb394aa1e0e","executable_body_unchanged":true,"semantic_body_sha256":"ffa79dfd14a18003b1cc9bc8f056bacd4eabad68eeb79999d0748d5c17e7aa25","explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/cli/execution-host-flag.test.ts:57:parameter-table:0","kind":"parameter-table","path":"src/cli/execution-host-flag.test.ts","line":57,"end_line":57,"start":1657,"end":1695,"byte_start":1657,"byte_end":1695,"source":"['runtime:', 'ssh:', 'ssh:a|b', ' ']","source_sha256":"d2c0e1749ec41f250e54013b5e97f211975d7c53ee8d23cc59040d2bbc65c613","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","enclosing_case":{"line":57,"title":"rejects the unparseable host id %s"},"affected_case_lines":[57],"decision":"keep","reason":"Retain all four malformed host inputs through the actual parser and its exact-input diagnostic.","rows":[{"path":"src/cli/execution-host-flag.test.ts","line":57,"end_line":57,"start":1658,"end":1668,"byte_start":1658,"byte_end":1668,"source":"'runtime:'","source_sha256":"471132a03ac7ad6b8b84b447b6b1faa1b56fffccc26f67913fb0691e134f1e75","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","index":1,"value":"runtime:","decision":"keep","reason":"Reject missing paired-runtime identity after its prefix; it cannot fall through to a bare alias."},{"path":"src/cli/execution-host-flag.test.ts","line":57,"end_line":57,"start":1670,"end":1676,"byte_start":1670,"byte_end":1676,"source":"'ssh:'","source_sha256":"f89d9ecb4fc98fda05bc234ecd0d250de4771a161b9ca6666738e758e7eb1dbc","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","index":2,"value":"ssh:","decision":"keep","reason":"Reject missing SSH target identity after its prefix; it cannot fall through to a bare alias."},{"path":"src/cli/execution-host-flag.test.ts","line":57,"end_line":57,"start":1678,"end":1687,"byte_start":1678,"byte_end":1687,"source":"'ssh:a|b'","source_sha256":"88ef09edd68490a580d2adb83151f6b5a40ba776f15dc494db4f81d956e15de2","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","index":3,"value":"ssh:a|b","decision":"keep","reason":"Reject the unescaped host-identity separator so the supplied SSH spelling cannot rebind identity."},{"path":"src/cli/execution-host-flag.test.ts","line":57,"end_line":57,"start":1689,"end":1694,"byte_start":1689,"byte_end":1694,"source":"' '","source_sha256":"98d8fefeee94f9abd98c49db9effe097e28700f06f7c7b6fecbbe6c0f0b9f235","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","index":4,"value":" ","decision":"keep","reason":"Reject whitespace-only input after trimming; it does not identify a host."}],"binding":"it.each","call_position":{"path":"src/cli/execution-host-flag.test.ts","line":57,"end_line":59,"start":1649,"end":1850,"byte_start":1649,"byte_end":1850,"source":"it.each(['runtime:', 'ssh:', 'ssh:a|b', ' '])('rejects the unparseable host id %s', (value) => {\n expect(() => parseHostFlag(flags({ host: value }))).toThrow(`Invalid --host value: ${value}`)\n })","source_sha256":"40e7719d5dec2dee0433b0546700011c71e33bc0c47831f5b719b2d45db4b4e7","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1"}}],"support_functions":[{"path":"src/cli/execution-host-flag.test.ts","line":40,"end_line":42,"start":1142,"end":1276,"byte_start":1142,"byte_end":1276,"source":"function flags(entries: Record): Map {\n return new Map(Object.entries(entries))\n}","source_sha256":"2ba93d13f7497372d6d01b09c9c25d16bd9c164d44a37dcecd7b15d80ae9ba0f","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","name":"flags","decision":"keep","reason":"Keep construction of actual flag maps from per-case literal host/selector inputs.","runtime_case":false},{"path":"src/cli/execution-host-flag.test.ts","line":44,"end_line":46,"start":1278,"end":1347,"byte_start":1278,"byte_end":1347,"source":"function environment(id: string, name = id) {\n return { id, name }\n}","source_sha256":"dff1c073a0ee8437e2c203b0eb9dde5e878df223b2e6400d4f6de3cd03cce90a","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","name":"environment","decision":"keep","reason":"Keep distinct independent paired-server IDs and display names as injected catalog input.","runtime_case":false},{"path":"src/cli/execution-host-flag.test.ts","line":211,"end_line":216,"start":7379,"end":7699,"byte_start":7379,"byte_end":7699,"source":"function clientWithTargets(targets: { id: string; label: string }[]): RuntimeClient {\n // oxlint-disable-next-line typescript/consistent-type-assertions -- SAFETY: SSH target resolution reads only client.call.\n return {\n call: vi.fn(async () => ({ result: { targets } }))\n } as unknown as RuntimeClient\n }","source_sha256":"a56cbb39b19ed2231a31085f31649982ed47ae7ea1172d1f5fcb47de9e9693d7","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","name":"clientWithTargets","decision":"keep","reason":"Keep only the client.call seam used by actual host-target resolution; target rows are provided independently per case.","runtime_case":false}],"historical_cases_absent_from_current_source":[],"previous_explicit_parameter_case_records":[{"line":59,"title":"parameter: 'runtime:'","decision":"keep","reason":"Malformed host value must fail actual parser before routing."},{"line":59,"title":"parameter: 'ssh:'","decision":"keep","reason":"Malformed host value must fail actual parser before routing."},{"line":59,"title":"parameter: 'ssh:a|b'","decision":"keep","reason":"Malformed host value must fail actual parser before routing."},{"line":59,"title":"parameter: ' '","decision":"keep","reason":"Malformed host value must fail actual parser before routing."}],"previous_review":{"path":"reviews/root-0055.jsonl","source_commit":"8f6283b32bcdefa746613e4c28d04bb1fe954eb9","original_sha256":"c35745714bd499c0bb616067ea4fa85f0433ae3a3b88e5e0822eec92296db239","reviewed_sha256":"c35745714bd499c0bb616067ea4fa85f0433ae3a3b88e5e0822eec92296db239","matching_reviewed_snapshot_source_commit":"70acd58dd2d049ba74492b66d8999ed2ce64ff21"},"upstream_comparison":{"same_executable_ast":true,"same_noncomment_tokens":true,"canonical_ast_sha256":"ad1745ed250de4066caaebef77945d53ed076ea4f2d6444c080760400fca513b","noncomment_tokens_sha256":"63c69bbe4982e67179763c0733730145ff5d61960ea537c3de1621e74a82d01c","source_diff":"/tmp/orca-cli-upstream-rereview-0002/upstream-diff.patch"},"evidence":["src/cli/execution-host-flag.ts","src/cli/host-selector-alternatives.ts","src/shared/execution-host.ts","src/shared/typed-name-normalization.ts"],"evidence_sha256":{"src/cli/execution-host-flag.ts":"2fdc729451ea47d48176a11278da3f215b6e51314fe136aaaf3ec2a02418f9d8","src/cli/host-selector-alternatives.ts":"baf6d2f05cd5615c1e14bc9b6f77d1691084ccc984cb1dd19df36bacfa86e047","src/shared/execution-host.ts":"3afba9899368690c9429583a531574510de988107e3f82635bcb7fdc58369d5e","src/shared/typed-name-normalization.ts":"3c050010db712b2a1d7f75b876d8289b967a1d3845ee4d6638c212ca169c36d5"},"evidence_detail":[{"path":"src/cli/execution-host-flag.ts","sha256":"2fdc729451ea47d48176a11278da3f215b6e51314fe136aaaf3ec2a02418f9d8","lines":319,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"},{"path":"src/cli/host-selector-alternatives.ts","sha256":"baf6d2f05cd5615c1e14bc9b6f77d1691084ccc984cb1dd19df36bacfa86e047","lines":190,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"},{"path":"src/shared/execution-host.ts","sha256":"3afba9899368690c9429583a531574510de988107e3f82635bcb7fdc58369d5e","lines":343,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"targeted_lines_1_188_read"},{"path":"src/shared/typed-name-normalization.ts","sha256":"3c050010db712b2a1d7f75b876d8289b967a1d3845ee4d6638c212ca169c36d5","lines":11,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"}],"validation":"reviews/upstream-0003-validation.json","tests_executed":true,"runtime_validation":"passed_post_merge","integration_note":"Pinned upstream and merged checkout hashes match; eight runnable selected suites passed108 cases. Two auxiliary fixtures have no standalone cases.","execution_commit":"41b5cf015be7970a23e91d4ce76d52d781db4e1b","runtime_evidence":{"command_artifact":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests-command.json","command_artifact_sha256":"bfdfbbae010b126e2001c5cfb910e3da4582b1522909bdf8eb38785a06618c59","report":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.json","report_sha256":"5efdd36e8a1730b0146a04f5948b2a16f046ac11b96c24416f681adf823640eb","log":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.log","log_sha256":"a61c033dad812ef5e0da43927bf6ecd313070a4985bf46489c6aa9e517cf3202","test_file_included":true,"passed_cases":44,"cases":[{"title":"parseHostFlag returns undefined when --host is absent","status":"passed"},{"title":"parseHostFlag rejects a --host flag with no value","status":"passed"},{"title":"parseHostFlag rejects the unparseable host id runtime:","status":"passed"},{"title":"parseHostFlag rejects the unparseable host id ssh:","status":"passed"},{"title":"parseHostFlag rejects the unparseable host id ssh:a|b","status":"passed"},{"title":"parseHostFlag rejects the unparseable host id ","status":"passed"},{"title":"parseHostFlag parses the three supported host kinds","status":"passed"},{"title":"parseHostFlag carries an unprefixed host name through as an alias","status":"passed"},{"title":"resolveHostFlagEnvironmentId keeps the current connection for local and ssh hosts","status":"passed"},{"title":"resolveHostFlagEnvironmentId routes a paired runtime host to that environment","status":"passed"},{"title":"resolveHostFlagEnvironmentId rejects a runtime host id that no paired environment owns","status":"passed"},{"title":"resolveHostFlagEnvironmentId accepts the environment name as well as its id","status":"passed"},{"title":"resolveHostFlagEnvironmentId decodes percent-encoded environment ids","status":"passed"},{"title":"resolveHostFlagEnvironmentId refuses a runtime host alongside --pairing-code","status":"passed"},{"title":"resolveHostFlagEnvironmentId refuses a runtime host that disagrees with --environment","status":"passed"},{"title":"resolveHostFlagEnvironmentId names the ambient variable when ORCA_ENVIRONMENT is the conflicting selector","status":"passed"},{"title":"resolveHostFlagEnvironmentId hands an agent the known environment ids to retry with","status":"passed"},{"title":"resolveHostFlagEnvironmentId accepts ORCA_ENVIRONMENT naming the runtime host in another case","status":"passed"},{"title":"resolveHostFlagEnvironmentId accepts --environment naming the same server as the runtime host","status":"passed"},{"title":"unprefixed --host aliases routes an alias that names a paired server to that environment","status":"passed"},{"title":"unprefixed --host aliases leaves an alias that names no paired server to the SSH axis","status":"passed"},{"title":"unprefixed --host aliases resolves an alias to the SSH target that carries that label","status":"passed"},{"title":"unprefixed --host aliases names the alias the caller typed rather than an ssh: spelling they did not use","status":"passed"},{"title":"unprefixed --host aliases refuses an alias that names a machine on both axes","status":"passed"},{"title":"unprefixed --host aliases refuses an alias naming a server and two SSH targets sharing a label","status":"passed"},{"title":"unprefixed --host aliases refuses an alias two paired servers answer to","status":"passed"},{"title":"unprefixed --host aliases refuses to route an alias to a paired server when SSH targets cannot be read","status":"passed"},{"title":"unprefixed --host aliases resolves the local row name to --host local","status":"passed"},{"title":"unprefixed --host aliases refuses the local row name when an SSH target carries it too","status":"passed"},{"title":"unprefixed --host aliases refuses the local row name when a paired server carries it too","status":"passed"},{"title":"unprefixed --host aliases resolves an SSH target label that contains spaces","status":"passed"},{"title":"unprefixed --host aliases ignores one pair of wrapping quotes around a host name","status":"passed"},{"title":"unprefixed --host aliases leaves an alias to the routed server SSH targets when --environment picks the server","status":"passed"},{"title":"hostFilterMatchesHostId matches the identical host id","status":"passed"},{"title":"hostFilterMatchesHostId treats the routed runtime own local rows as that runtime","status":"passed"},{"title":"hostFilterMatchesHostId does not widen local or ssh filters","status":"passed"},{"title":"hostFilterMatchesHostId does not match a different runtime host","status":"passed"},{"title":"ambiguous environment names refuses --host runtime: when two servers share that name","status":"passed"},{"title":"ambiguous environment names refuses --environment when two servers share that name","status":"passed"},{"title":"ambiguous environment names still routes an exact id past a colliding name","status":"passed"},{"title":"resolveEnvironmentSelectorForStore accepts a paired server by name or id","status":"passed"},{"title":"resolveEnvironmentSelectorForStore hands back the id for a name typed in another case or quoted","status":"passed"},{"title":"resolveEnvironmentSelectorForStore names the SSH target when the selector is one","status":"passed"},{"title":"resolveEnvironmentSelectorForStore still points at host list when the name is on neither axis","status":"passed"}],"support_limit":null}}
+{"path":"src/cli/format-recovery.test.ts","sha256":"6bc3b85edac47b311c9dcc73a52c553656509b08a305e4027eca6363e63d6c84","reviewed_sha256":"6bc3b85edac47b311c9dcc73a52c553656509b08a305e4027eca6363e63d6c84","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","reviewer":"audit_cloud","status":"reviewed","decision":"keep","classification":"behavioral CLI suite","rationale":"Read the complete pinned upstream body, every current case, parameter table, explicit fixture workload and traversal. Compared with the completed review and matching reviewed snapshot: only comments differ, all executable syntax and assertion/input values remain identical, and earlier improvements are preserved. Retain every current case. The post-merge suite passed; exact command/result evidence is in the batch validation record.","phase":"runtime-validated-upstream-rereview","complete_body_and_tables_reviewed":true,"implementation_status":"reviewed-unchanged","checkout_edits":false,"original_declarations":18,"final_declarations":18,"cases":[{"path":"src/cli/format-recovery.test.ts","line":25,"end_line":34,"start":749,"end":1170,"byte_start":749,"byte_end":1170,"source":"it('names the ambiguous --repo value and the exact forms for twin projects', () => {\n const output = formatCliError(selectorAmbiguous(), {\n commandPath: ['worktree', 'create'],\n repoSelector: 'app'\n })\n\n expect(output).toContain('More than one project matches --repo \"app\"')\n expect(output).toContain('id: or path:')\n expect(output).toContain('orca repo list --json')\n })","source_sha256":"2d4c87e0f3ab8ca1bd803837e07c6e723600ae7c7aeb529b065db4da0414aea0","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"names the ambiguous --repo value and the exact forms for twin projects","decision":"keep","reason":"Ambiguous repository selector names the typed input, exact identity/path alternatives and discovery command.","previous_decision":"keep","previous_original_line":25,"previous_reviewed_snapshot_line":25,"previous_reviewed_body_sha256":"2d4c87e0f3ab8ca1bd803837e07c6e723600ae7c7aeb529b065db4da0414aea0","executable_body_unchanged":true,"semantic_body_sha256":"827b5d1edf1eab56dd4ccec4ba366e73ba8470056830d02c36de180e646bbbc7","explicit_input_controls":[]},{"path":"src/cli/format-recovery.test.ts","line":36,"end_line":63,"start":1174,"end":2094,"byte_start":1174,"byte_end":2094,"source":"it('carries the ambiguous --worktree value into the --json failure envelope', () => {\n const log = vi.spyOn(console, 'log').mockImplementation(() => {})\n\n reportCliError(selectorAmbiguous(), true, {\n commandPath: ['terminal', 'create'],\n worktreeSelector: 'name:feature'\n })\n\n expect(JSON.parse(String(log.mock.calls[0]?.[0]))).toMatchObject({\n error: {\n code: 'selector_ambiguous',\n data: {\n ambiguousSelectors: [{ flag: '--worktree', selector: 'name:feature' }],\n nextSteps: expect.arrayContaining([expect.stringContaining('identity:')])\n }\n }\n })\n expect(JSON.parse(String(log.mock.calls[0]?.[0]))).toMatchObject({\n error: {\n data: {\n nextSteps: expect.arrayContaining([\n 'List the exact values with `orca worktree list --json`.'\n ])\n }\n }\n })\n log.mockRestore()\n })","source_sha256":"49ce9779551146b8d6914a7f81837c647852ec7af91a346096cb2ccb91018075","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"carries the ambiguous --worktree value into the --json failure envelope","decision":"keep","reason":"Ambiguous workspace selector survives into JSON error code/data plus exact identity and listing recovery.","previous_decision":"keep","previous_original_line":36,"previous_reviewed_snapshot_line":36,"previous_reviewed_body_sha256":"49ce9779551146b8d6914a7f81837c647852ec7af91a346096cb2ccb91018075","executable_body_unchanged":true,"semantic_body_sha256":"6df5258fa55117f27a0cc4b447ac1dfe715ef364ad4ded44b8f6fc7c87e0f81b","explicit_input_controls":[]},{"path":"src/cli/format-recovery.test.ts","line":65,"end_line":73,"start":2098,"end":2421,"byte_start":2098,"byte_end":2421,"source":"it('keeps the listing on the paired server the command chose', () => {\n const output = formatCliError(selectorAmbiguous(), {\n commandPath: ['repo', 'show'],\n repoSelector: 'app',\n remoteServerSelected: true\n })\n\n expect(output).toContain('`orca repo list --json`, passing the same server flag')\n })","source_sha256":"bdbab2460db831068e3a62c293634855e557169a339eb0dbb0d2abad78fd787e","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"keeps the listing on the paired server the command chose","decision":"keep","reason":"Recovery listing retains the selected paired-server context.","previous_decision":"keep","previous_original_line":65,"previous_reviewed_snapshot_line":65,"previous_reviewed_body_sha256":"bdbab2460db831068e3a62c293634855e557169a339eb0dbb0d2abad78fd787e","executable_body_unchanged":true,"semantic_body_sha256":"ad1496474d0a8bce2e5e1c41f836a5cc6c65e9bbd2f0233ef6c79db2ff2be614","explicit_input_controls":[]},{"path":"src/cli/format-recovery.test.ts","line":75,"end_line":79,"start":2425,"end":2611,"byte_start":2425,"byte_end":2611,"source":"it('stays silent when no selector flag was passed', () => {\n expect(formatCliError(selectorAmbiguous(), { commandPath: ['repo', 'list'] })).toBe(\n 'selector_ambiguous'\n )\n })","source_sha256":"8245b2464d7cf7cee8331b9a6051ea680c6a64646673ac918ef909d4a58da739","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"stays silent when no selector flag was passed","decision":"keep","reason":"No passed selector produces no invented ambiguity explanation.","previous_decision":"keep","previous_original_line":75,"previous_reviewed_snapshot_line":75,"previous_reviewed_body_sha256":"8245b2464d7cf7cee8331b9a6051ea680c6a64646673ac918ef909d4a58da739","executable_body_unchanged":true,"semantic_body_sha256":"55745e4e43950ea534c3ae15c4e2efa52c4e34ab01c6f963591f3fd53690d8f0","explicit_input_controls":[]},{"path":"src/cli/format-recovery.test.ts","line":83,"end_line":94,"start":2665,"end":3266,"byte_start":2665,"byte_end":3266,"source":"it('names the offending value and the valid forms on a bare repo id', () => {\n const output = formatCliError(selectorNotFound(), {\n commandPath: ['orchestration', 'worker-start'],\n worktreeSelector: 'id:github:stablyai/orca'\n })\n\n expect(output).toContain('No Orca workspace matched the worktree selector')\n expect(output).toContain('id:github:stablyai/orca')\n expect(output).toContain('Did you mean: id:github:stablyai/orca::')\n expect(output).toContain('Valid selector forms:')\n expect(output).toContain('a bare repository id is not a worktree id')\n })","source_sha256":"f4681c71d55edea5205d7cb797e6e4123418379d84fa3bb5c0879aad20e8a46f","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"names the offending value and the valid forms on a bare repo id","decision":"keep","reason":"Bare repository ID misused as workspace names the offending input and compound workspace grammar.","previous_decision":"keep","previous_original_line":83,"previous_reviewed_snapshot_line":83,"previous_reviewed_body_sha256":"f4681c71d55edea5205d7cb797e6e4123418379d84fa3bb5c0879aad20e8a46f","executable_body_unchanged":true,"semantic_body_sha256":"c7c118e6d22969d72bd7c33e7a5149c97c2af9850fb6b024318a4349851118ca","explicit_input_controls":[]},{"path":"src/cli/format-recovery.test.ts","line":96,"end_line":111,"start":3270,"end":3810,"byte_start":3270,"byte_end":3810,"source":"it('carries the same recovery into the --json failure envelope', () => {\n const log = vi.spyOn(console, 'log').mockImplementation(() => {})\n\n reportCliError(selectorNotFound(), true, {\n commandPath: ['terminal', 'create'],\n worktreeSelector: 'path:/nope'\n })\n\n expect(JSON.parse(String(log.mock.calls[0]?.[0]))).toMatchObject({\n error: {\n code: 'selector_not_found',\n data: { selector: 'path:/nope', validSelectorForms: expect.arrayContaining(['current']) }\n }\n })\n log.mockRestore()\n })","source_sha256":"34c26dee3d86834e568d6150a408b6dcceac8c5a3c83d517879db7f336912d4e","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"carries the same recovery into the --json failure envelope","decision":"keep","reason":"Workspace miss preserves code, exact typed selector and recognized forms in machine output.","previous_decision":"keep","previous_original_line":96,"previous_reviewed_snapshot_line":96,"previous_reviewed_body_sha256":"34c26dee3d86834e568d6150a408b6dcceac8c5a3c83d517879db7f336912d4e","executable_body_unchanged":true,"semantic_body_sha256":"1a62bff29e0bc596c8f648da004a3fd519a77c6784ce823cc400a63966776aa1","explicit_input_controls":[]},{"path":"src/cli/format-recovery.test.ts","line":113,"end_line":143,"start":3814,"end":4899,"byte_start":3814,"byte_end":4899,"source":"it('keeps the selector grammar when the error already carries mutation recovery data', () => {\n const log = vi.spyOn(console, 'log').mockImplementation(() => {})\n\n reportCliError(\n new RuntimeRpcFailureError({\n id: 'req_selector',\n ok: false,\n error: {\n code: 'selector_not_found',\n message: 'selector_not_found',\n // Preserve the request ID already attached by mutation recovery.\n data: { orchestrationRequestId: 'req_abc', nextSteps: ['Run request-show first.'] }\n },\n _meta: { runtimeId: 'runtime_local' }\n }),\n true,\n { commandPath: ['orchestration', 'worker-start'], worktreeSelector: 'bare-repo-id' }\n )\n\n expect(JSON.parse(String(log.mock.calls[0]?.[0]))).toMatchObject({\n error: {\n data: {\n orchestrationRequestId: 'req_abc',\n selector: 'bare-repo-id',\n validSelectorForms: expect.arrayContaining(['current']),\n nextSteps: expect.arrayContaining(['Run request-show first.'])\n }\n }\n })\n log.mockRestore()\n })","source_sha256":"db4a8f41ec0e2a4e54cccbd25642e25358fd39a9bfa44df17b71a6233f5c2308","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"keeps the selector grammar when the error already carries mutation recovery data","decision":"keep","reason":"Contextual selector grammar merges with existing mutation request ID and pre-existing next step.","previous_decision":"keep","previous_original_line":113,"previous_reviewed_snapshot_line":113,"previous_reviewed_body_sha256":"4ae7b9d294b8e92929b6dc78bc6a364475e15a710ce5bf0405da6095e25c7dcc","executable_body_unchanged":true,"semantic_body_sha256":"2581a30f8ca44824a7194aeec60f765ff497c6e7f00eacfc37d419ad15967a39","explicit_input_controls":[]},{"path":"src/cli/format-recovery.test.ts","line":145,"end_line":156,"start":4903,"end":5360,"byte_start":4903,"byte_end":5360,"source":"it('keeps both recoveries in the text message for a local selector error', () => {\n const output = formatCliError(\n new RuntimeClientError('selector_not_found', 'selector_not_found', {\n orchestrationRequestId: 'req_abc',\n nextSteps: ['Run request-show first.']\n }),\n { worktreeSelector: 'bare-repo-id' }\n )\n\n expect(output).toContain('Valid selector forms:')\n expect(output).toContain('Run request-show first.')\n })","source_sha256":"d83d38ddc4483d864627fdc8cf02218ea265063ec1c154430bcd6ab27fdf6c17","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"keeps both recoveries in the text message for a local selector error","decision":"keep","reason":"Local selector failure retains both grammar and mutation recovery in human output.","previous_decision":"keep","previous_original_line":145,"previous_reviewed_snapshot_line":145,"previous_reviewed_body_sha256":"d83d38ddc4483d864627fdc8cf02218ea265063ec1c154430bcd6ab27fdf6c17","executable_body_unchanged":true,"semantic_body_sha256":"9864347d7a25688da34840e720950cfa8ea5852ae4075cb8732fecf5c49a5358","explicit_input_controls":[]},{"path":"src/cli/format-recovery.test.ts","line":158,"end_line":162,"start":5364,"end":5557,"byte_start":5364,"byte_end":5557,"source":"it('stays silent when no worktree selector was passed', () => {\n expect(formatCliError(selectorNotFound(), { commandPath: ['worktree', 'show'] })).toBe(\n 'selector_not_found'\n )\n })","source_sha256":"34a95a41394279ae1780f9c5984c043dd16bea6b5b666f0a055972c37a8ca658","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"stays silent when no worktree selector was passed","decision":"keep","reason":"Without a worktree selector the original miss remains unchanged.","previous_decision":"keep","previous_original_line":158,"previous_reviewed_snapshot_line":158,"previous_reviewed_body_sha256":"34a95a41394279ae1780f9c5984c043dd16bea6b5b666f0a055972c37a8ca658","executable_body_unchanged":true,"semantic_body_sha256":"ca1b562e37f4293ee591ff12bb665500e431565494fe6718237f45f5647aff6b","explicit_input_controls":[]},{"path":"src/cli/format-recovery.test.ts","line":166,"end_line":176,"start":5603,"end":6069,"byte_start":5603,"byte_end":6069,"source":"it('prints did-you-mean next steps for an unknown-command error carrying data', () => {\n const error = new RuntimeClientError('invalid_argument', 'Unknown command: worktree remov', {\n suggestions: ['worktree rm'],\n nextSteps: ['Did you mean: orca worktree rm']\n })\n\n const output = formatCliError(error)\n\n expect(output).toContain('Unknown command: worktree remov')\n expect(output).toContain('Next step: Did you mean: orca worktree rm')\n })","source_sha256":"3ceb7c847db4b649808e86bfd914da911c74a7690db7b64853d0b17760c92a57","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"prints did-you-mean next steps for an unknown-command error carrying data","decision":"keep","reason":"Unknown-command structured recovery is printed as a human next step.","previous_decision":"keep","previous_original_line":166,"previous_reviewed_snapshot_line":166,"previous_reviewed_body_sha256":"3ceb7c847db4b649808e86bfd914da911c74a7690db7b64853d0b17760c92a57","executable_body_unchanged":true,"semantic_body_sha256":"f09fec144a7b54ba85a7d13b18d9f6f9cf2d691d71233d9a1114231af916679d","explicit_input_controls":[]},{"path":"src/cli/format-recovery.test.ts","line":178,"end_line":187,"start":6073,"end":6520,"byte_start":6073,"byte_end":6520,"source":"it('prefers structured recovery over generic computer hints in text output', () => {\n const error = new RuntimeClientError('invalid_argument', 'Unknown flag --forcce', {\n nextSteps: ['Did you mean: --force']\n })\n\n const output = formatCliError(error, { commandPath: ['computer', 'click'] })\n\n expect(output).toContain('Next step: Did you mean: --force')\n expect(output).not.toContain('Fix the command flags or RPC params')\n })","source_sha256":"e488717e5fef9dddfa1310beaed8a7fc5c876f5e42aec36f7118fef36f176dd3","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"prefers structured recovery over generic computer hints in text output","decision":"keep","reason":"Structured local flag recovery takes precedence over generic computer advice.","previous_decision":"keep","previous_original_line":178,"previous_reviewed_snapshot_line":178,"previous_reviewed_body_sha256":"e488717e5fef9dddfa1310beaed8a7fc5c876f5e42aec36f7118fef36f176dd3","executable_body_unchanged":true,"semantic_body_sha256":"0022b85e1c5067aa01306b1c85a2faa0160fc73af53c31dab9c451ae96749f7f","explicit_input_controls":[]},{"path":"src/cli/format-recovery.test.ts","line":189,"end_line":205,"start":6524,"end":7149,"byte_start":6524,"byte_end":7149,"source":"it('prefers RPC recovery over generic computer hints in text output', () => {\n const error = new RuntimeRpcFailureError({\n id: 'req_rpc_recovery',\n ok: false,\n error: {\n code: 'invalid_argument',\n message: 'Unknown runtime argument',\n data: { nextSteps: ['Use the runtime-specific option'] }\n },\n _meta: { runtimeId: 'runtime_local' }\n })\n\n const output = formatCliError(error, { commandPath: ['computer', 'click'] })\n\n expect(output).toContain('Next step: Use the runtime-specific option')\n expect(output).not.toContain('Fix the command flags or RPC params')\n })","source_sha256":"7e87c2fa97d718dfab0118a2701b83dfa5394dc61855adc51a7a51df511c185a","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"prefers RPC recovery over generic computer hints in text output","decision":"keep","reason":"Structured RPC recovery also takes precedence over generic computer advice.","previous_decision":"keep","previous_original_line":189,"previous_reviewed_snapshot_line":189,"previous_reviewed_body_sha256":"7e87c2fa97d718dfab0118a2701b83dfa5394dc61855adc51a7a51df511c185a","executable_body_unchanged":true,"semantic_body_sha256":"54417aa6627bce189564276ddefe5703a59c5e710c834585f28c92f624604cfd","explicit_input_controls":[]},{"path":"src/cli/format-recovery.test.ts","line":207,"end_line":218,"start":7153,"end":7616,"byte_start":7153,"byte_end":7616,"source":"it('keeps generic computer hints when an RPC error has no recovery data', () => {\n const error = new RuntimeRpcFailureError({\n id: 'req_rpc_fallback',\n ok: false,\n error: { code: 'invalid_argument', message: 'Invalid computer argument' },\n _meta: { runtimeId: 'runtime_local' }\n })\n\n const output = formatCliError(error, { commandPath: ['computer', 'click'] })\n\n expect(output).toContain('Fix the command flags or RPC params')\n })","source_sha256":"60258b65f08fbc6ed9b6c7a8fe74d465026a47dbd2ffb8cee03d572957727b91","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"keeps generic computer hints when an RPC error has no recovery data","decision":"keep","reason":"RPC error without specific recovery retains generic computer guidance.","previous_decision":"keep","previous_original_line":207,"previous_reviewed_snapshot_line":207,"previous_reviewed_body_sha256":"60258b65f08fbc6ed9b6c7a8fe74d465026a47dbd2ffb8cee03d572957727b91","executable_body_unchanged":true,"semantic_body_sha256":"8fa5fffb5a8032b47a35d26c25c178296c1e6b7cb2770ca3d495d3c9bd67ef8a","explicit_input_controls":[]},{"path":"src/cli/format-recovery.test.ts","line":220,"end_line":253,"start":7620,"end":8840,"byte_start":7620,"byte_end":8840,"source":"it('tells an older server to reprovision when its computer sidecar is missing', () => {\n // Older servers return generic steps without naming the server installation.\n const error = new RuntimeRpcFailureError({\n id: 'req_sidecar_exit',\n ok: false,\n error: {\n code: 'accessibility_error',\n message: 'computer sidecar exited with code 1',\n data: {\n nextSteps: [\n 'Run `orca computer capabilities --json` to confirm the provider is available before retrying.'\n ]\n }\n },\n _meta: { runtimeId: 'runtime_orcad' }\n })\n\n const output = formatCliError(error, { commandPath: ['computer', 'list-apps'] })\n expect(output).toContain('update or reprovision the server')\n\n const log = vi.spyOn(console, 'log').mockImplementation(() => {})\n reportCliError(error, true, { commandPath: ['computer', 'list-apps'] })\n expect(JSON.parse(String(log.mock.calls[0]?.[0]))).toMatchObject({\n error: {\n code: 'accessibility_error',\n data: {\n nextSteps: expect.arrayContaining([\n expect.stringContaining('update or reprovision the server')\n ])\n }\n }\n })\n log.mockRestore()\n })","source_sha256":"6b575849e26c34f6772fbedfe488f742a0b15ab62c96bd06101959e4d428d75e","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"tells an older server to reprovision when its computer sidecar is missing","decision":"keep","reason":"Older-server sidecar exit receives reprovisioning guidance in both human and machine errors.","previous_decision":"keep","previous_original_line":220,"previous_reviewed_snapshot_line":220,"previous_reviewed_body_sha256":"0d7385246a0a10bae1e636fd3d686f9f5570972eddcc4ad63e3ed33297458b6f","executable_body_unchanged":true,"semantic_body_sha256":"4b36d70108a354d92c1d0843d78aacd5e3a57c4ed672718b7ef6a27828a4a0c9","explicit_input_controls":[]},{"path":"src/cli/format-recovery.test.ts","line":255,"end_line":266,"start":8844,"end":9273,"byte_start":8844,"byte_end":9273,"source":"it('does not replace mutation recovery with generic runtime startup advice', () => {\n const error = new RuntimeClientError(\n 'runtime_unavailable',\n 'Re-issue the same command with --retry-request mutation_1.',\n { orchestrationRequestId: 'mutation_1' }\n )\n\n const output = formatCliError(error)\n\n expect(output).toContain('--retry-request mutation_1')\n expect(output).not.toContain('orca open')\n })","source_sha256":"5d549e7dda3f310395fd3e068b79968605cd1913b49150b32592229969bef204","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"does not replace mutation recovery with generic runtime startup advice","decision":"keep","reason":"Mutation retry advice retains its request identity and does not suggest a new startup flow.","previous_decision":"keep","previous_original_line":255,"previous_reviewed_snapshot_line":255,"previous_reviewed_body_sha256":"5d549e7dda3f310395fd3e068b79968605cd1913b49150b32592229969bef204","executable_body_unchanged":true,"semantic_body_sha256":"fbb886da30cbb305a45a1644e0a8fd9a04817ccbcc24a7cab35e4031442e668b","explicit_input_controls":[]},{"path":"src/cli/format-recovery.test.ts","line":279,"end_line":288,"start":9600,"end":10011,"byte_start":9600,"byte_end":10011,"source":"it('points a terminal verb with no server selected at --environment', () => {\n const output = formatCliError(staleHandle(), {\n commandPath: ['terminal', 'send'],\n remoteServerSelected: false\n })\n\n expect(output).toContain('terminal_handle_stale')\n expect(output).toContain('Next step: Terminal handles belong to the Orca server')\n expect(output).toContain('--environment ')\n })","source_sha256":"30b5f6b351ab5320ea4f3b83e6bc678b4e0eb62b89f2a7224e00781586277dfb","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"points a terminal verb with no server selected at --environment","decision":"keep","reason":"Stale handle on an unselected terminal server explains host ownership and same-server recovery.","previous_decision":"keep","previous_original_line":279,"previous_reviewed_snapshot_line":279,"previous_reviewed_body_sha256":"30b5f6b351ab5320ea4f3b83e6bc678b4e0eb62b89f2a7224e00781586277dfb","executable_body_unchanged":true,"semantic_body_sha256":"5209b05bd2a6a7e3454abd46d371f0c43165e582b8e97a80cde173b48316467c","explicit_input_controls":[]},{"path":"src/cli/format-recovery.test.ts","line":290,"end_line":305,"start":10015,"end":10517,"byte_start":10015,"byte_end":10517,"source":"it('adds the hint to the --json failure envelope', () => {\n const log = vi.spyOn(console, 'log').mockImplementation(() => {})\n\n reportCliError(staleHandle(), true, {\n commandPath: ['terminal', 'read'],\n remoteServerSelected: false\n })\n\n expect(JSON.parse(String(log.mock.calls[0]?.[0]))).toMatchObject({\n error: {\n code: 'terminal_handle_stale',\n data: { nextSteps: [expect.stringContaining('--environment ')] }\n }\n })\n log.mockRestore()\n })","source_sha256":"bcfe0a4f54a2f2dbcd6db065f57d642cf7f3ea10809787c2bebc48841fa26949","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"adds the hint to the --json failure envelope","decision":"keep","reason":"Stale terminal handle JSON preserves failure code and server hint.","previous_decision":"keep","previous_original_line":290,"previous_reviewed_snapshot_line":290,"previous_reviewed_body_sha256":"bcfe0a4f54a2f2dbcd6db065f57d642cf7f3ea10809787c2bebc48841fa26949","executable_body_unchanged":true,"semantic_body_sha256":"cd5c0e01ac679b228b59962c77409b63a52bac567d837311e4cb77fe432f074e","explicit_input_controls":[]},{"path":"src/cli/format-recovery.test.ts","line":307,"end_line":314,"start":10521,"end":10760,"byte_start":10521,"byte_end":10760,"source":"it('stays silent once a server was already selected', () => {\n expect(\n formatCliError(staleHandle(), {\n commandPath: ['terminal', 'send'],\n remoteServerSelected: true\n })\n ).toBe('terminal_handle_stale')\n })","source_sha256":"770749c0a6a2b51853593cd8494c2dc5247184520d4aa4b14d577617878c3f7a","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"stays silent once a server was already selected","decision":"keep","reason":"Existing selected server suppresses the irrelevant selection hint.","previous_decision":"keep","previous_original_line":307,"previous_reviewed_snapshot_line":307,"previous_reviewed_body_sha256":"770749c0a6a2b51853593cd8494c2dc5247184520d4aa4b14d577617878c3f7a","executable_body_unchanged":true,"semantic_body_sha256":"3d10701362bc9e634e6d9ea9ce6f2f5552040f368bf5918fb265d671cb4a19c1","explicit_input_controls":[]}],"explicit_input_controls":[],"support_functions":[{"path":"src/cli/format-recovery.test.ts","line":6,"end_line":13,"start":188,"end":441,"byte_start":188,"byte_end":441,"source":"function selectorNotFound(): RuntimeRpcFailureError {\n return new RuntimeRpcFailureError({\n id: 'req_selector',\n ok: false,\n error: { code: 'selector_not_found', message: 'selector_not_found' },\n _meta: { runtimeId: 'runtime_local' }\n })\n}","source_sha256":"e8796dc26a5c314bac7f3fbb83e978cf4ee0115f6c71292ecfad209180a2f670","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","name":"selectorNotFound","decision":"keep","reason":"Preserve typed selector-miss failure at the formatter boundary.","runtime_case":false},{"path":"src/cli/format-recovery.test.ts","line":15,"end_line":22,"start":443,"end":697,"byte_start":443,"byte_end":697,"source":"function selectorAmbiguous(): RuntimeRpcFailureError {\n return new RuntimeRpcFailureError({\n id: 'req_selector',\n ok: false,\n error: { code: 'selector_ambiguous', message: 'selector_ambiguous' },\n _meta: { runtimeId: 'runtime_local' }\n })\n}","source_sha256":"75a282d90dac86b898fc7f6529553ff933bd397f80093ce8bc4ebf2c4de625e5","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","name":"selectorAmbiguous","decision":"keep","reason":"Preserve typed ambiguous-selector failure at the formatter boundary.","runtime_case":false},{"path":"src/cli/format-recovery.test.ts","line":270,"end_line":277,"start":9331,"end":9596,"byte_start":9331,"byte_end":9596,"source":"function staleHandle(): RuntimeRpcFailureError {\n return new RuntimeRpcFailureError({\n id: 'req_stale',\n ok: false,\n error: { code: 'terminal_handle_stale', message: 'terminal_handle_stale' },\n _meta: { runtimeId: 'runtime_local' }\n })\n }","source_sha256":"19314f094fc52a82245571dd83dbe12bb4bc0357e340c6083d0a2e635e95aef1","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","name":"staleHandle","decision":"keep","reason":"Preserve terminal-handle-stale failure at the formatter boundary.","runtime_case":false}],"historical_cases_absent_from_current_source":[],"previous_explicit_parameter_case_records":[],"previous_review":{"path":"reviews/root-0055.jsonl","source_commit":"8f6283b32bcdefa746613e4c28d04bb1fe954eb9","original_sha256":"800b8bb2392210266b38bbf992c68cb27b8c780eef4487ee952a1c389a9e71ac","reviewed_sha256":"800b8bb2392210266b38bbf992c68cb27b8c780eef4487ee952a1c389a9e71ac","matching_reviewed_snapshot_source_commit":"70acd58dd2d049ba74492b66d8999ed2ce64ff21"},"upstream_comparison":{"same_executable_ast":true,"same_noncomment_tokens":true,"canonical_ast_sha256":"ecc823c6d08360a9d67cf86e77befa2570dec91daa7847ae1a2c76d5b9dc92f8","noncomment_tokens_sha256":"97b65e7648213053604c8ae78e2bc769586d9331ecacb6f04483d3200c9ba497","source_diff":"/tmp/orca-cli-upstream-rereview-0002/upstream-diff.patch"},"evidence":["src/cli/cli-error.ts","src/cli/worktree-selector-recovery.ts","src/cli/selector-ambiguity-recovery.ts","src/shared/computer-use-error-recovery.ts"],"evidence_sha256":{"src/cli/cli-error.ts":"ad176669de9b8f31abbc6fcfa7a9ed1a8488057ac172b78eb1132b187200de57","src/cli/worktree-selector-recovery.ts":"832c4d9063bb0f80af898ecde724f25594e21f9647b62ab76aec15f17842e2bf","src/cli/selector-ambiguity-recovery.ts":"7d3109accd520aca0839d646ae92b3f2827f269fbcc497a575cea77f919e6329","src/shared/computer-use-error-recovery.ts":"113f9a700fa38158734c3b8b50526958ff672b5665b2cbbd99b0fc14ab71dd64"},"evidence_detail":[{"path":"src/cli/cli-error.ts","sha256":"ad176669de9b8f31abbc6fcfa7a9ed1a8488057ac172b78eb1132b187200de57","lines":263,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"},{"path":"src/cli/worktree-selector-recovery.ts","sha256":"832c4d9063bb0f80af898ecde724f25594e21f9647b62ab76aec15f17842e2bf","lines":51,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"},{"path":"src/cli/selector-ambiguity-recovery.ts","sha256":"7d3109accd520aca0839d646ae92b3f2827f269fbcc497a575cea77f919e6329","lines":53,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"},{"path":"src/shared/computer-use-error-recovery.ts","sha256":"113f9a700fa38158734c3b8b50526958ff672b5665b2cbbd99b0fc14ab71dd64","lines":114,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"}],"validation":"reviews/upstream-0003-validation.json","tests_executed":true,"runtime_validation":"passed_post_merge","integration_note":"Pinned upstream and merged checkout hashes match; eight runnable selected suites passed108 cases. Two auxiliary fixtures have no standalone cases.","execution_commit":"41b5cf015be7970a23e91d4ce76d52d781db4e1b","runtime_evidence":{"command_artifact":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests-command.json","command_artifact_sha256":"bfdfbbae010b126e2001c5cfb910e3da4582b1522909bdf8eb38785a06618c59","report":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.json","report_sha256":"5efdd36e8a1730b0146a04f5948b2a16f046ac11b96c24416f681adf823640eb","log":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.log","log_sha256":"a61c033dad812ef5e0da43927bf6ecd313070a4985bf46489c6aa9e517cf3202","test_file_included":true,"passed_cases":18,"cases":[{"title":"ambiguous selector recovery names the ambiguous --repo value and the exact forms for twin projects","status":"passed"},{"title":"ambiguous selector recovery carries the ambiguous --worktree value into the --json failure envelope","status":"passed"},{"title":"ambiguous selector recovery keeps the listing on the paired server the command chose","status":"passed"},{"title":"ambiguous selector recovery stays silent when no selector flag was passed","status":"passed"},{"title":"worktree selector recovery names the offending value and the valid forms on a bare repo id","status":"passed"},{"title":"worktree selector recovery carries the same recovery into the --json failure envelope","status":"passed"},{"title":"worktree selector recovery keeps the selector grammar when the error already carries mutation recovery data","status":"passed"},{"title":"worktree selector recovery keeps both recoveries in the text message for a local selector error","status":"passed"},{"title":"worktree selector recovery stays silent when no worktree selector was passed","status":"passed"},{"title":"CLI error recovery prints did-you-mean next steps for an unknown-command error carrying data","status":"passed"},{"title":"CLI error recovery prefers structured recovery over generic computer hints in text output","status":"passed"},{"title":"CLI error recovery prefers RPC recovery over generic computer hints in text output","status":"passed"},{"title":"CLI error recovery keeps generic computer hints when an RPC error has no recovery data","status":"passed"},{"title":"CLI error recovery tells an older server to reprovision when its computer sidecar is missing","status":"passed"},{"title":"CLI error recovery does not replace mutation recovery with generic runtime startup advice","status":"passed"},{"title":"stale terminal handle recovery points a terminal verb with no server selected at --environment","status":"passed"},{"title":"stale terminal handle recovery adds the hint to the --json failure envelope","status":"passed"},{"title":"stale terminal handle recovery stays silent once a server was already selected","status":"passed"}],"support_limit":null}}
+{"path":"src/cli/handler-group-manifest.test.ts","sha256":"3c4c8a9954f9be66715233dbb50afac4da93bcfe86b6dc7d2b9ec6e358bbf6ba","reviewed_sha256":"3c4c8a9954f9be66715233dbb50afac4da93bcfe86b6dc7d2b9ec6e358bbf6ba","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","reviewer":"audit_cloud","status":"reviewed","decision":"keep","classification":"behavioral CLI suite","rationale":"Read the complete pinned upstream body, every current case, parameter table, explicit fixture workload and traversal. Compared with the completed review and matching reviewed snapshot: only comments differ, all executable syntax and assertion/input values remain identical, and earlier improvements are preserved. Retain every current case. The post-merge suite passed; exact command/result evidence is in the batch validation record.","phase":"runtime-validated-upstream-rereview","complete_body_and_tables_reviewed":true,"implementation_status":"reviewed-unchanged","checkout_edits":false,"original_declarations":6,"final_declarations":6,"cases":[{"path":"src/cli/handler-group-manifest.test.ts","line":32,"end_line":43,"start":1051,"end":1441,"byte_start":1051,"byte_end":1441,"source":"it('exposes every declared key as a callable handler', async () => {\n const notCallable: string[] = []\n for (const group of HANDLER_GROUPS) {\n const loaded = await group.load()\n for (const key of group.keys) {\n if (typeof loaded[key] !== 'function') {\n notCallable.push(`${group.name}/${key}`)\n }\n }\n }\n expect(notCallable).toEqual([])\n })","source_sha256":"5457bd56f8bf7fcbf5236f9819cc61dda715c629628cf39f2af9543623a289de","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"exposes every declared key as a callable handler","decision":"keep","reason":"Loads actual group modules and checks every advertised route resolves to a function, catching a lazy manifest/export mismatch.","previous_decision":"keep","previous_original_line":39,"previous_reviewed_snapshot_line":39,"previous_reviewed_body_sha256":"5457bd56f8bf7fcbf5236f9819cc61dda715c629628cf39f2af9543623a289de","executable_body_unchanged":true,"semantic_body_sha256":"24575ed7bb63614c8e1cc2f956ad3fea0dc707e3e46948bf7b442e5346cb56b0","explicit_input_controls":["src/cli/handler-group-manifest.test.ts:34:runtime-traversal:0","src/cli/handler-group-manifest.test.ts:36:runtime-traversal:1"]},{"path":"src/cli/handler-group-manifest.test.ts","line":46,"end_line":63,"start":1540,"end":2227,"byte_start":1540,"byte_end":2227,"source":"it('routes every command exported by a handler module', async () => {\n const routes = buildHandlerRoutes(HANDLER_GROUPS)\n const unroutable: string[] = []\n for (const file of listHandlerModules(HANDLERS_DIR)) {\n const exports: Record = await import(file)\n for (const [name, value] of Object.entries(exports)) {\n if (!HANDLER_RECORD_EXPORT.test(name) || !isHandlerRecord(value)) {\n continue\n }\n for (const key of Object.keys(value)) {\n if (!routes.has(key)) {\n unroutable.push(`${relative(HANDLERS_DIR, file)} ${name}: ${key}`)\n }\n }\n }\n }\n expect(unroutable).toEqual([])\n })","source_sha256":"cae47c34e6867dc5ea75379d999c09739c0c887e53b84c775721880b101a0ec2","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"routes every command exported by a handler module","decision":"keep","reason":"Discovers and imports real handler files recursively, including nested singular handler exports, and checks every exported command is routable; this is an actual source/export boundary rather than a copied inventory.","previous_decision":"keep","previous_original_line":56,"previous_reviewed_snapshot_line":56,"previous_reviewed_body_sha256":"cae47c34e6867dc5ea75379d999c09739c0c887e53b84c775721880b101a0ec2","executable_body_unchanged":true,"semantic_body_sha256":"b38bb5b4d2f6fcb4cd28fb978a35253e5330f6644df5bf9378cd6abd22450a69","explicit_input_controls":["src/cli/handler-group-manifest.test.ts:49:runtime-traversal:2","src/cli/handler-group-manifest.test.ts:51:runtime-traversal:3","src/cli/handler-group-manifest.test.ts:55:runtime-traversal:4"]},{"path":"src/cli/handler-group-manifest.test.ts","line":73,"end_line":77,"start":2397,"end":2642,"byte_start":2397,"byte_end":2642,"source":"it('rejects the same key claimed by two groups', () => {\n expect(() =>\n buildHandlerRoutes([group('alpha', ['ship it']), group('beta', ['ship it'])])\n ).toThrow('Duplicate CLI handler registration for \"ship it\" (alpha and beta)')\n })","source_sha256":"157176c52d945f848208a899fe19615e92024918a52319aae0eb6e57e19a1e73","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"rejects the same key claimed by two groups","decision":"keep","reason":"Two independently named groups claiming one command must fail with group identities in the diagnostic.","previous_decision":"keep","previous_original_line":83,"previous_reviewed_snapshot_line":83,"previous_reviewed_body_sha256":"157176c52d945f848208a899fe19615e92024918a52319aae0eb6e57e19a1e73","executable_body_unchanged":true,"semantic_body_sha256":"38ff73ea6840ca0572ab4b5f37cc6ed3fe3a1ccd7b35c2bb0b5edb8f803450ea","explicit_input_controls":[]},{"path":"src/cli/handler-group-manifest.test.ts","line":79,"end_line":83,"start":2646,"end":2862,"byte_start":2646,"byte_end":2862,"source":"it('rejects a key duplicated inside one group list', () => {\n expect(() => buildHandlerRoutes([group('alpha', ['ship it', 'ship it'])])).toThrow(\n 'Duplicate CLI handler registration for \"ship it\"'\n )\n })","source_sha256":"9db1f39b2254cd4c73d32495093a3fc736d6e09bd0b90afa2580e84c9eb5cb53","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"rejects a key duplicated inside one group list","decision":"keep","reason":"Duplicate keys within one group must also fail registration.","previous_decision":"keep","previous_original_line":89,"previous_reviewed_snapshot_line":89,"previous_reviewed_body_sha256":"9db1f39b2254cd4c73d32495093a3fc736d6e09bd0b90afa2580e84c9eb5cb53","executable_body_unchanged":true,"semantic_body_sha256":"b7986b72f4652c8f8279cc686e1a17390347f06cc547484ca04cbd7d04e14dcc","explicit_input_controls":[]},{"path":"src/cli/handler-group-manifest.test.ts","line":85,"end_line":88,"start":2866,"end":3056,"byte_start":2866,"byte_end":3056,"source":"it('accepts distinct keys across groups', () => {\n const routes = buildHandlerRoutes([group('alpha', ['a']), group('beta', ['b'])])\n expect([...routes.keys()]).toEqual(['a', 'b'])\n })","source_sha256":"a5fc5d2a1d94acc2fbb4a5f68221cb3583db979236afbc236694093142ac77ea","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"accepts distinct keys across groups","decision":"keep","reason":"Distinct route keys remain registered in their declared order, the positive control for duplicate rejection.","previous_decision":"keep","previous_original_line":95,"previous_reviewed_snapshot_line":95,"previous_reviewed_body_sha256":"a5fc5d2a1d94acc2fbb4a5f68221cb3583db979236afbc236694093142ac77ea","executable_body_unchanged":true,"semantic_body_sha256":"48ba1567b6c0e25e424859cf2190225930184b87a2a0d557e15306499e0be39c","explicit_input_controls":[]},{"path":"src/cli/handler-group-manifest.test.ts","line":98,"end_line":103,"start":3204,"end":3444,"byte_start":3204,"byte_end":3444,"source":"it('reports an unknown command with the joined path', async () => {\n await expect(dispatch(['not', 'a', 'command'], ctx)).rejects.toMatchObject({\n code: 'invalid_argument',\n message: 'Unknown command: not a command'\n })\n })","source_sha256":"e0265aa05fa8d70477272fa9899c48f32fe9c4322a0cda2f91452a173d8cd083","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","title":"reports an unknown command with the joined path","decision":"keep","reason":"Real dispatch reports invalid_argument and the full unknown command path before requiring a runtime client.","previous_decision":"keep","previous_original_line":108,"previous_reviewed_snapshot_line":108,"previous_reviewed_body_sha256":"e0265aa05fa8d70477272fa9899c48f32fe9c4322a0cda2f91452a173d8cd083","executable_body_unchanged":true,"semantic_body_sha256":"fc609d9d9f6d45d57ac093b00af830dcb38aa3ebea98d063c9fe9c35760d560e","explicit_input_controls":[]}],"explicit_input_controls":[{"id":"src/cli/handler-group-manifest.test.ts:34:runtime-traversal:0","kind":"runtime-traversal","path":"src/cli/handler-group-manifest.test.ts","line":34,"end_line":41,"start":1161,"end":1400,"byte_start":1161,"byte_end":1400,"source":"for (const group of HANDLER_GROUPS) {\n const loaded = await group.load()\n for (const key of group.keys) {\n if (typeof loaded[key] !== 'function') {\n notCallable.push(`${group.name}/${key}`)\n }\n }\n }","source_sha256":"dae8419d2182fe61d04121923ca2d9fa86c7f75248f10488b316d5b37a80fedd","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","enclosing_case":{"line":32,"title":"exposes every declared key as a callable handler"},"affected_case_lines":[],"decision":"keep","reason":"Traverse the actual loaded manifest/module/export/key collection and collect concrete callable/routability failures; this runtime census is not a copied expected command table.","rows":[],"header_source":"for (const group of HANDLER_GROUPS) ","header_sha256":"ad7a157bfb4c0b96ae33d689ca536788adcfb3c07812f1703a2648380bb73ef4","runtime_rows":"dynamic collection; no invented rows"},{"id":"src/cli/handler-group-manifest.test.ts:36:runtime-traversal:1","kind":"runtime-traversal","path":"src/cli/handler-group-manifest.test.ts","line":36,"end_line":40,"start":1245,"end":1394,"byte_start":1245,"byte_end":1394,"source":"for (const key of group.keys) {\n if (typeof loaded[key] !== 'function') {\n notCallable.push(`${group.name}/${key}`)\n }\n }","source_sha256":"96884f9b5a372d66a80b412c1c7ab82a3c896924bb46b0e8a6bdf98e284dbbf6","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","enclosing_case":{"line":32,"title":"exposes every declared key as a callable handler"},"affected_case_lines":[],"decision":"keep","reason":"Traverse the actual loaded manifest/module/export/key collection and collect concrete callable/routability failures; this runtime census is not a copied expected command table.","rows":[],"header_source":"for (const key of group.keys) ","header_sha256":"0a20c28992c0e30ae96c392a94614f2250cd9d6e828204cb9268bb38fb1758f9","runtime_rows":"dynamic collection; no invented rows"},{"id":"src/cli/handler-group-manifest.test.ts:49:runtime-traversal:2","kind":"runtime-traversal","path":"src/cli/handler-group-manifest.test.ts","line":49,"end_line":61,"start":1704,"end":2187,"byte_start":1704,"byte_end":2187,"source":"for (const file of listHandlerModules(HANDLERS_DIR)) {\n const exports: Record = await import(file)\n for (const [name, value] of Object.entries(exports)) {\n if (!HANDLER_RECORD_EXPORT.test(name) || !isHandlerRecord(value)) {\n continue\n }\n for (const key of Object.keys(value)) {\n if (!routes.has(key)) {\n unroutable.push(`${relative(HANDLERS_DIR, file)} ${name}: ${key}`)\n }\n }\n }\n }","source_sha256":"c47e8b4c4af237cb14aa0ca9dc195a1c99d0d0862fd8c2007fdc121cc6b012a4","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","enclosing_case":{"line":46,"title":"routes every command exported by a handler module"},"affected_case_lines":[],"decision":"keep","reason":"Traverse the actual loaded manifest/module/export/key collection and collect concrete callable/routability failures; this runtime census is not a copied expected command table.","rows":[],"header_source":"for (const file of listHandlerModules(HANDLERS_DIR)) ","header_sha256":"9c034928dce8802be2f1e2948d72b5dd1b825ee1d6c67e49e00a62a6c6283df6","runtime_rows":"dynamic collection; no invented rows"},{"id":"src/cli/handler-group-manifest.test.ts:51:runtime-traversal:3","kind":"runtime-traversal","path":"src/cli/handler-group-manifest.test.ts","line":51,"end_line":60,"start":1831,"end":2181,"byte_start":1831,"byte_end":2181,"source":"for (const [name, value] of Object.entries(exports)) {\n if (!HANDLER_RECORD_EXPORT.test(name) || !isHandlerRecord(value)) {\n continue\n }\n for (const key of Object.keys(value)) {\n if (!routes.has(key)) {\n unroutable.push(`${relative(HANDLERS_DIR, file)} ${name}: ${key}`)\n }\n }\n }","source_sha256":"be4bf2b4b87d2986683d9526b18dc6ce8b6cebb9ec1e5fd99e51d1098affc6bd","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","enclosing_case":{"line":46,"title":"routes every command exported by a handler module"},"affected_case_lines":[],"decision":"keep","reason":"Traverse the actual loaded manifest/module/export/key collection and collect concrete callable/routability failures; this runtime census is not a copied expected command table.","rows":[],"header_source":"for (const [name, value] of Object.entries(exports)) ","header_sha256":"9845122bc210ed5f9f2bfef511e9c2f46fe9396cf124b83b40d051389015bc5d","runtime_rows":"dynamic collection; no invented rows"},{"id":"src/cli/handler-group-manifest.test.ts:55:runtime-traversal:4","kind":"runtime-traversal","path":"src/cli/handler-group-manifest.test.ts","line":55,"end_line":59,"start":1999,"end":2173,"byte_start":1999,"byte_end":2173,"source":"for (const key of Object.keys(value)) {\n if (!routes.has(key)) {\n unroutable.push(`${relative(HANDLERS_DIR, file)} ${name}: ${key}`)\n }\n }","source_sha256":"b1e90d8896b4a7c9556b880747f74d0daba3446057fcf13cabe872a2b48118c4","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","enclosing_case":{"line":46,"title":"routes every command exported by a handler module"},"affected_case_lines":[],"decision":"keep","reason":"Traverse the actual loaded manifest/module/export/key collection and collect concrete callable/routability failures; this runtime census is not a copied expected command table.","rows":[],"header_source":"for (const key of Object.keys(value)) ","header_sha256":"35ca2ba820500de31e962efa617ce8c51cbb0ad6362a34ebc7348408b3fe8fb7","runtime_rows":"dynamic collection; no invented rows"}],"support_functions":[{"path":"src/cli/handler-group-manifest.test.ts","line":13,"end_line":21,"start":450,"end":783,"byte_start":450,"byte_end":783,"source":"function listHandlerModules(dir: string): string[] {\n return readdirSync(dir, { withFileTypes: true }).flatMap((entry) => {\n const path = join(dir, entry.name)\n if (entry.isDirectory()) {\n return listHandlerModules(path)\n }\n return entry.name.endsWith('.ts') && !entry.name.endsWith('.test.ts') ? [path] : []\n })\n}","source_sha256":"789d53147c8965c3948751c000ef7df2de69dbb91f7fa84abe3f99faffb5b004","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","name":"listHandlerModules","decision":"keep","reason":"Traverse actual handler directories recursively, selecting TypeScript handler modules and excluding test modules; runtime census is distinct from copied expected inventory.","runtime_case":false},{"path":"src/cli/handler-group-manifest.test.ts","line":23,"end_line":29,"start":785,"end":1004,"byte_start":785,"byte_end":1004,"source":"function isHandlerRecord(value: unknown): value is Record {\n return (\n typeof value === 'object' &&\n value !== null &&\n Object.values(value).every((entry) => typeof entry === 'function')\n )\n}","source_sha256":"e3700d0a769a14d9175202fc2bd2801584db20aa2325fd298248be61187df758","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","name":"isHandlerRecord","decision":"keep","reason":"Recognize non-null exported records whose values are callable before checking command routability.","runtime_case":false}],"historical_cases_absent_from_current_source":[],"previous_explicit_parameter_case_records":[],"previous_review":{"path":"reviews/root-0056.jsonl","source_commit":"89b3d382847f10b31a731ebd7e18aad022a4b15a","original_sha256":"a9ec64b9494598ac27431b496894b3d79f4cd5f68b55d62ded930f45950fa9b7","reviewed_sha256":"a9ec64b9494598ac27431b496894b3d79f4cd5f68b55d62ded930f45950fa9b7","matching_reviewed_snapshot_source_commit":"70acd58dd2d049ba74492b66d8999ed2ce64ff21"},"upstream_comparison":{"same_executable_ast":true,"same_noncomment_tokens":true,"canonical_ast_sha256":"6fa4028ad3e5a6b2a942522baf4eb45ba78fba4a95d7ebc529164ab700bfe16a","noncomment_tokens_sha256":"c21216ed7eb9540bf28473356e9213d95b0488d27e9062fe581f20cd022669b2","source_diff":"/tmp/orca-cli-upstream-rereview-0002/upstream-diff.patch"},"evidence":["src/cli/handler-group-manifest.ts","src/cli/dispatch.ts"],"evidence_sha256":{"src/cli/handler-group-manifest.ts":"5bcec3284fb960d399154adc4b26abe571b761e2f29c18041b624511d6f1a8e7","src/cli/dispatch.ts":"783ec3a6499c6c79c1c93d19924f3bda91fcf65e6fba0e5bd3fbf1cab4c9fe2e"},"evidence_detail":[{"path":"src/cli/handler-group-manifest.ts","sha256":"5bcec3284fb960d399154adc4b26abe571b761e2f29c18041b624511d6f1a8e7","lines":283,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"stored_snapshot_and_prior_evidence_only_not_newly_read"},{"path":"src/cli/dispatch.ts","sha256":"783ec3a6499c6c79c1c93d19924f3bda91fcf65e6fba0e5bd3fbf1cab4c9fe2e","lines":53,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"}],"validation":"reviews/upstream-0003-validation.json","tests_executed":true,"runtime_validation":"passed_post_merge","integration_note":"Pinned upstream and merged checkout hashes match; eight runnable selected suites passed108 cases. Two auxiliary fixtures have no standalone cases.","execution_commit":"41b5cf015be7970a23e91d4ce76d52d781db4e1b","runtime_evidence":{"command_artifact":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests-command.json","command_artifact_sha256":"bfdfbbae010b126e2001c5cfb910e3da4582b1522909bdf8eb38785a06618c59","report":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.json","report_sha256":"5efdd36e8a1730b0146a04f5948b2a16f046ac11b96c24416f681adf823640eb","log":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.log","log_sha256":"a61c033dad812ef5e0da43927bf6ecd313070a4985bf46489c6aa9e517cf3202","test_file_included":true,"passed_cases":6,"cases":[{"title":"handler group manifest exposes every declared key as a callable handler","status":"passed"},{"title":"handler group manifest routes every command exported by a handler module","status":"passed"},{"title":"duplicate command keys rejects the same key claimed by two groups","status":"passed"},{"title":"duplicate command keys rejects a key duplicated inside one group list","status":"passed"},{"title":"duplicate command keys accepts distinct keys across groups","status":"passed"},{"title":"dispatch errors reports an unknown command with the joined path","status":"passed"}],"support_limit":null}}
+{"path":"src/cli/test-fixtures.ts","sha256":"6aedc6de29e6067251033e2be73efdc64e0da89f7e205726026981eac5db610c","reviewed_sha256":"6aedc6de29e6067251033e2be73efdc64e0da89f7e205726026981eac5db610c","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","reviewer":"audit_cloud","status":"reviewed","decision":"keep","classification":"auxiliary CLI fixture","rationale":"Shared typed runtime/worktree success envelopes and ordered mock queue; read complete fixture. No standalone assertions or runnable cases. Complete upstream body and every fixture factory/traversal reread; only comments differ from the previous reviewed snapshot. No standalone runtime case is invented.","phase":"runtime-validated-upstream-rereview","complete_body_and_tables_reviewed":true,"implementation_status":"reviewed-unchanged","checkout_edits":false,"original_declarations":0,"final_declarations":0,"cases":[],"explicit_input_controls":[{"id":"src/cli/test-fixtures.ts:82:runtime-traversal:0","kind":"runtime-traversal","path":"src/cli/test-fixtures.ts","line":82,"end_line":84,"start":1899,"end":1976,"byte_start":1899,"byte_end":1976,"source":"for (const fixture of fixtures) {\n mock.mockResolvedValueOnce(fixture)\n }","source_sha256":"460b42644f1e38b3442dca8829e33486db2fb4b2b958bac5914234f6e95b9d21","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","enclosing_case":null,"affected_case_lines":[],"decision":"keep","reason":"Consume supplied typed fixture envelopes in order, registering one mock reply per input; no static runtime row count is fabricated.","rows":[],"header_source":"for (const fixture of fixtures) ","header_sha256":"838ca47aba9552fd67797989ecdaa731125644fa7c88f1930b4a9ecb512ce8fc","runtime_rows":"dynamic collection; no invented rows"}],"support_functions":[{"path":"src/cli/test-fixtures.ts","line":32,"end_line":51,"start":517,"end":921,"byte_start":517,"byte_end":921,"source":"export function buildWorktree(\n path: string,\n branch: string,\n head = 'abc',\n repoId = 'repo'\n): WorktreeFixture {\n return {\n id: `${repoId}::${path}`,\n repoId,\n path,\n branch,\n parentWorktreeId: null,\n childWorktreeIds: [],\n lineage: null,\n linkedIssue: null,\n git: { path, head, branch, isBare: false, isMainWorktree: false },\n displayName: '',\n comment: ''\n }\n}","source_sha256":"954bc3dec0a558e50d18d7df2f7ead8b26985b70ba4c28ad6d56c51090b040a8","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","name":"buildWorktree","decision":"keep","reason":"Preserve worktree identity derived from repo/path, explicit lineage defaults and git-path/head/branch fields; callers supply their domain inputs.","runtime_case":false},{"path":"src/cli/test-fixtures.ts","line":53,"end_line":60,"start":923,"end":1165,"byte_start":923,"byte_end":1165,"source":"export function worktreeListFixture(worktrees: WorktreeFixture[]): OkFixture {\n return {\n id: 'req_list',\n ok: true,\n result: { worktrees, totalCount: worktrees.length, truncated: false },\n _meta: { runtimeId: 'runtime-1' }\n }\n}","source_sha256":"4f55a3d173cd67af97cc9a7b894ca36bb5b057f18fe6b9b8c5d1fbe9e843e2d5","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","name":"worktreeListFixture","decision":"keep","reason":"Preserve complete provided rows, derived total count, untruncated flag and runtime identity in the typed list envelope.","runtime_case":false},{"path":"src/cli/test-fixtures.ts","line":62,"end_line":64,"start":1167,"end":1305,"byte_start":1167,"byte_end":1305,"source":"export function okFixture(id: string, result: unknown): OkFixture {\n return { id, ok: true, result, _meta: { runtimeId: 'runtime-1' } }\n}","source_sha256":"92de7c0d7778ace513523a5cbdaf82878d5b6b25db191ff6ad6c1af1b26aa9b4","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","name":"okFixture","decision":"keep","reason":"Preserve request identity, typed success result and fixed runtime metadata; no independent runtime outcome is claimed.","runtime_case":false},{"path":"src/cli/test-fixtures.ts","line":67,"end_line":69,"start":1376,"end":1540,"byte_start":1376,"byte_end":1540,"source":"export function localRepoDestinationFixtures(repoId = 'repo-1'): OkFixture[] {\n return [okFixture('req_repo_show', { repo: { id: repoId, connectionId: null } })]\n}","source_sha256":"6e695f22fa391b2ac57dd1a723232396d536ca38e267c8f88ebf949cc207a136","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","name":"localRepoDestinationFixtures","decision":"keep","reason":"Preserve repository lookup and local connection identity used to fence subsequent automation writes to the intended host.","runtime_case":false},{"path":"src/cli/test-fixtures.ts","line":71,"end_line":79,"start":1542,"end":1819,"byte_start":1542,"byte_end":1819,"source":"export function workspaceDestinationFixtures(\n repoId = 'repo-1',\n worktreePath = '/tmp/repo/feature'\n): OkFixture[] {\n return [\n okFixture('req_worktree_show', { worktree: { id: `${repoId}::${worktreePath}`, repoId } }),\n ...localRepoDestinationFixtures(repoId)\n ]\n}","source_sha256":"7673ea0f36c2bb934b82f965317a1dbbc9334fa15bc11d4aa9e1b05a189fef22","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","name":"workspaceDestinationFixtures","decision":"keep","reason":"Preserve workspace lookup before the matching project lookup, including exact repo/workspace identity and the shared destination fixture.","runtime_case":false},{"path":"src/cli/test-fixtures.ts","line":81,"end_line":85,"start":1821,"end":1978,"byte_start":1821,"byte_end":1978,"source":"export function queueFixtures(mock: Mock, ...fixtures: OkFixture[]): void {\n for (const fixture of fixtures) {\n mock.mockResolvedValueOnce(fixture)\n }\n}","source_sha256":"5068319ee130059db71e5ee753dcba4df757f9c404d1c9251f709cbe08bb892a","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","name":"queueFixtures","decision":"keep","reason":"Preserve one mockResolvedValueOnce per supplied envelope in input order; this runtime fixture traversal does not declare tests.","runtime_case":false}],"historical_cases_absent_from_current_source":[],"previous_explicit_parameter_case_records":[],"previous_review":{"path":"reviews/root-0053.jsonl","source_commit":"8f6283b32bcdefa746613e4c28d04bb1fe954eb9","original_sha256":"de24d3f101b8617a402e27a895fc1e45f88fb79f6229a1771107622d243f9a7b","reviewed_sha256":"de24d3f101b8617a402e27a895fc1e45f88fb79f6229a1771107622d243f9a7b","matching_reviewed_snapshot_source_commit":"70acd58dd2d049ba74492b66d8999ed2ce64ff21"},"upstream_comparison":{"same_executable_ast":true,"same_noncomment_tokens":true,"canonical_ast_sha256":"857943c7fe8ccaaed52d273c8b57b5763fc2da113ac333881c88c2cfcc2c5f45","noncomment_tokens_sha256":"a1484c204191b4fda2e64d425143bab728179384609f5030cf6ea4cf9533d8e4","source_diff":"/tmp/orca-cli-upstream-rereview-0002/upstream-diff.patch"},"evidence":["src/cli/browser.test.ts","src/cli/agent-launch-test-fixtures.ts","src/cli/browser-empty-values.test.ts"],"evidence_sha256":{"src/cli/browser.test.ts":"495d9eab685573afd4c1309196f3eb53c19b3dd82e4b7c304b1dc938bd8ad046","src/cli/agent-launch-test-fixtures.ts":"23a6ef61547cd232e1f70a2cc68937dab93c147d13db89c2c240c2ef0056762e","src/cli/browser-empty-values.test.ts":"eba33dbca800e36fd202f38b586b07fc4884616b2dfb54bdba6a46b7a38d9229"},"evidence_detail":[{"path":"src/cli/browser.test.ts","sha256":"495d9eab685573afd4c1309196f3eb53c19b3dd82e4b7c304b1dc938bd8ad046","lines":762,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"stored_snapshot_and_prior_evidence_only_not_newly_read"},{"path":"src/cli/agent-launch-test-fixtures.ts","sha256":"23a6ef61547cd232e1f70a2cc68937dab93c147d13db89c2c240c2ef0056762e","lines":21,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"},{"path":"src/cli/browser-empty-values.test.ts","sha256":"eba33dbca800e36fd202f38b586b07fc4884616b2dfb54bdba6a46b7a38d9229","lines":210,"source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","read_state":"complete_body_read"}],"validation":"reviews/upstream-0003-validation.json","tests_executed":false,"runtime_validation":"zero-declaration-support-file-no-standalone-runtime-cases","integration_note":"Pinned upstream and merged checkout hashes match; eight runnable selected suites passed108 cases. Two auxiliary fixtures have no standalone cases.","support_return_values":[{"path":"src/cli/test-fixtures.ts","line":38,"end_line":50,"start":646,"end":919,"byte_start":646,"byte_end":919,"source":"{\n id: `${repoId}::${path}`,\n repoId,\n path,\n branch,\n parentWorktreeId: null,\n childWorktreeIds: [],\n lineage: null,\n linkedIssue: null,\n git: { path, head, branch, isBare: false, isMainWorktree: false },\n displayName: '',\n comment: ''\n }","source_sha256":"0c441d683537263fc5c3a999a5817520d4c11b438689ae911c9760d59d470373","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","kind":"support-return-value","factory":"buildWorktree","decision":"keep","reason":"Preserve this typed fixture return and every literal field/conditional/spread exactly as reviewed; it is protocol input rather than an independent assertion.","rows":[]},{"path":"src/cli/test-fixtures.ts","line":54,"end_line":59,"start":1011,"end":1163,"byte_start":1011,"byte_end":1163,"source":"{\n id: 'req_list',\n ok: true,\n result: { worktrees, totalCount: worktrees.length, truncated: false },\n _meta: { runtimeId: 'runtime-1' }\n }","source_sha256":"19678c2ad0b08c0dce4d41ead1a907ebe32ef6930fd347b2850d6e4c73ba63d3","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","kind":"support-return-value","factory":"worktreeListFixture","decision":"keep","reason":"Preserve this typed fixture return and every literal field/conditional/spread exactly as reviewed; it is protocol input rather than an independent assertion.","rows":[]},{"path":"src/cli/test-fixtures.ts","line":63,"end_line":63,"start":1244,"end":1303,"byte_start":1244,"byte_end":1303,"source":"{ id, ok: true, result, _meta: { runtimeId: 'runtime-1' } }","source_sha256":"14878075c7600aef60601f062296701aa3fb5b109d7e162e668e9170ec2e6732","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","kind":"support-return-value","factory":"okFixture","decision":"keep","reason":"Preserve this typed fixture return and every literal field/conditional/spread exactly as reviewed; it is protocol input rather than an independent assertion.","rows":[]},{"path":"src/cli/test-fixtures.ts","line":68,"end_line":68,"start":1464,"end":1538,"byte_start":1464,"byte_end":1538,"source":"[okFixture('req_repo_show', { repo: { id: repoId, connectionId: null } })]","source_sha256":"e7058bf4f491dc2131b27df623a50203b6812fbaccec425d81ddf0bfe152e91b","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","kind":"support-return-value","factory":"localRepoDestinationFixtures","decision":"keep","reason":"Preserve this typed fixture return and every literal field/conditional/spread exactly as reviewed; it is protocol input rather than an independent assertion.","rows":[{"path":"src/cli/test-fixtures.ts","line":68,"end_line":68,"start":1465,"end":1537,"byte_start":1465,"byte_end":1537,"source":"okFixture('req_repo_show', { repo: { id: repoId, connectionId: null } })","source_sha256":"e963c4c27dc867856ac77c2927f6f64c5afd1aa7016a0e71294929b4427d76f6","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","index":1,"decision":"keep","reason":"Preserve this ordered independent lookup envelope."}]},{"path":"src/cli/test-fixtures.ts","line":75,"end_line":78,"start":1672,"end":1817,"byte_start":1672,"byte_end":1817,"source":"[\n okFixture('req_worktree_show', { worktree: { id: `${repoId}::${worktreePath}`, repoId } }),\n ...localRepoDestinationFixtures(repoId)\n ]","source_sha256":"08392ad48a2931d26cf98fa71bf7c8decb64018792a90a5948ff42632d6f215a","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","kind":"support-return-value","factory":"workspaceDestinationFixtures","decision":"keep","reason":"Preserve this typed fixture return and every literal field/conditional/spread exactly as reviewed; it is protocol input rather than an independent assertion.","rows":[{"path":"src/cli/test-fixtures.ts","line":76,"end_line":76,"start":1678,"end":1768,"byte_start":1678,"byte_end":1768,"source":"okFixture('req_worktree_show', { worktree: { id: `${repoId}::${worktreePath}`, repoId } })","source_sha256":"3dd38eb0d1a447b9e051e9345f80ea5c1fd35423e5d8fec939be76439b8250d0","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","index":1,"decision":"keep","reason":"Preserve this ordered independent lookup envelope."},{"path":"src/cli/test-fixtures.ts","line":77,"end_line":77,"start":1774,"end":1813,"byte_start":1774,"byte_end":1813,"source":"...localRepoDestinationFixtures(repoId)","source_sha256":"eaa6b756b3710d20777522d530b48c2d1f11533abe11437d1893832c62b5a707","source_commit":"6d1aaa4e26976696c1c0a2bca2f6b0e94f77d4d1","index":2,"decision":"keep","reason":"Preserve the referenced ordered destination fixture expansion."}]}],"execution_commit":"41b5cf015be7970a23e91d4ce76d52d781db4e1b","runtime_evidence":{"command_artifact":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests-command.json","command_artifact_sha256":"bfdfbbae010b126e2001c5cfb910e3da4582b1522909bdf8eb38785a06618c59","report":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.json","report_sha256":"5efdd36e8a1730b0146a04f5948b2a16f046ac11b96c24416f681adf823640eb","log":"/tmp/orca-cli-upstream-rereview-0002/post-merge-tests.log","log_sha256":"a61c033dad812ef5e0da43927bf6ecd313070a4985bf46489c6aa9e517cf3202","test_file_included":false,"passed_cases":0,"cases":[],"support_limit":"Requested path has no runnable declarations. Passing suite counts do not add fixture cases or prove every fixture factory executed."}}
diff --git a/docs/audits/test-value/reviews/upstream-0004-validation.json b/docs/audits/test-value/reviews/upstream-0004-validation.json
new file mode 100644
index 00000000000..d44f3c6a6da
--- /dev/null
+++ b/docs/audits/test-value/reviews/upstream-0004-validation.json
@@ -0,0 +1,351 @@
+{
+ "batch": "upstream-0004",
+ "reviewer": "audit_mobile",
+ "source_commit": "41b5cf015be7970a23e91d4ce76d52d781db4e1b",
+ "base_commit": "b6101c6936965078fa9dc1584d6fc33614bac750",
+ "source_provenance": "Exact named git objects were read using git show; all 18 current checkout files match the merge object and every base snapshot matches the previous reviewed_sha256. No Git mutation or hook was performed.",
+ "reviewed_files": 18,
+ "original_declarations": 185,
+ "final_declarations": 185,
+ "case_records": 185,
+ "explicit_parameter_tables": 14,
+ "explicit_parameter_inputs": 40,
+ "retained_inline_command_controls": 25,
+ "literal_arrays": 356,
+ "literal_array_row_occurrences": 1036,
+ "runtime_traversal_policies": 4,
+ "mock_hook_platform_controls": 88,
+ "cli_invocation_occurrences": 226,
+ "nontrivia_tokens": 28851,
+ "prior_case_control_records_preserved": 253,
+ "mapped_to_current_cases_or_inputs": 249,
+ "historical_consolidations_before_base": 4,
+ "file_decisions": {
+ "keep": 18
+ },
+ "case_decisions": {
+ "keep": 185
+ },
+ "production_changes": false,
+ "test_source_changes": false,
+ "production_mutations": false,
+ "tracker_writes": false,
+ "invariance_method": "Parse both full pinned sources with TypeScript 6.0.3. Compare exact kind/text sequences from parsed token leaves, omitting trivia/JSDoc, and compare SHA-256 of comment-free AST printer output. Separately reconcile every declaration, parameter row, literal array, runtime loop, hook/mock/platform control and CLI invocation. Parser diagnostics must be empty. Comment/directive deltas are read separately.",
+ "checks": [
+ {
+ "command": [
+ "pnpm",
+ "test",
+ "src/cli/handlers/account.test.ts",
+ "src/cli/handlers/agent-hooks-prepare-codex-isolated-home.test.ts",
+ "src/cli/handlers/artifacts.test.ts",
+ "src/cli/handlers/automation-destination-fencing.test.ts",
+ "src/cli/handlers/automation-owner-fencing.test.ts",
+ "src/cli/handlers/computer-action-validation.test.ts",
+ "src/cli/handlers/computer.test.ts",
+ "src/cli/handlers/core.test.ts",
+ "src/cli/handlers/emulator.test.ts",
+ "src/cli/handlers/file-absolute-paths.test.ts",
+ "src/cli/handlers/file.test.ts",
+ "src/cli/handlers/jira-write.test.ts",
+ "src/cli/handlers/linear.test.ts",
+ "src/cli/handlers/managed-server.test.ts",
+ "src/cli/handlers/orchestration-caller-identity-cli.test.ts",
+ "src/cli/handlers/orchestration-gate-cli.test.ts",
+ "src/cli/handlers/orchestration-migration.test.ts",
+ "src/cli/handlers/orchestration-task-create-cli.test.ts",
+ "--reporter=default",
+ "--reporter=json",
+ "--outputFile=/tmp/orca-upstream-0004/tests-report.json"
+ ],
+ "environment": {
+ "ORCA_BACKGROUND_LAUNCH": "1"
+ },
+ "result": "18 actual suites / 211 runtime cases passed, zero failures, skipped or todo cases",
+ "exit_code": 0,
+ "elapsed_seconds": 4.672846555709839,
+ "log": "/tmp/orca-upstream-0004/tests.log",
+ "log_sha256": "fc86cfdc03fffa7a6d7bb0a55a99259214a716c7b14c6e03a3af29d4cdb5a868",
+ "report": "/tmp/orca-upstream-0004/tests-report.json",
+ "report_sha256": "99d232d5d21c630c68d3e76d1c3775dde7b08d7e4e508aa97b9199a19f149a02",
+ "test_files": 18,
+ "passing_runtime_cases": 211
+ }
+ ],
+ "integrity": {
+ "records_sha256": "138b03e6f4b28aea07f7eab562cc622f0f7cc6c372cfc1ff724ecfdf15d89b81",
+ "sources_sha256": "98ec1f4501cfa4539e443833cab122c8699c89858be7e4060d8fb6487185e65b",
+ "ast_invariance_sha256": "bb5583d691565908d49e90e769c00e68fbec8b4aa053e74655459a82677b98f4",
+ "provenance_reconciliation_sha256": "ddfafa2319ce68b1714c1867d5c0614f53a93c7452b365e21784e726af40de9f",
+ "comment_deltas_sha256": "9eb52ffca6c9cfb0019fde58d231ce53e385581de9ea6a639ab8e5dd3d3d6eb7",
+ "prior_artifacts": {
+ "prior/root-0056-validation.json": "96bf74499148037bffc3ec8ba9a6d5e0f9a6b88c53a133569370fabe76b8cb31",
+ "prior/root-0056.jsonl": "52497e53b48da7f4eb9c89a0cb8184f59e5adaad8af1a37cac7cb83554b3a6a9",
+ "prior/root-0057-validation.json": "4f1cf84b87ebc942bce5a758056397fccf5db92cf8546ce30fe9be4562bdd587",
+ "prior/root-0057.jsonl": "0cb953224f5e9ae53f8e696417c9541c266e5888669dd6126db3c6eba3d49f05",
+ "prior/root-0058-validation.json": "0821d369ab93580aeec06916a38bdbeb7ac0a355d43aa30d3d189b73e18a5e94",
+ "prior/root-0058.jsonl": "2541698e2b72b6bebe48b02c7d0f841b15cee192de730e221caff73da78a071d",
+ "prior/root-0059-validation.json": "1fe439af88e07249ef83573db146dd33aac5c4d5090569fa219d0ab5b8311f95",
+ "prior/root-0059.jsonl": "f511f87973b6fe8031512eb140fa3bbbeafc3f7ba09d4f8b135d7d4cbb3300e8",
+ "prior/root-0060-validation.json": "a0bca89d8836c3c7bb533391eb84f75dea0b83a00da2ddc4c0754b78e726b098",
+ "prior/root-0060.jsonl": "d6f8d365491884ed547e82822644fc7ad5b555678e2823679b5afde86ee282b5",
+ "prior/root-0061-validation.json": "72e32ebfa9402f2f1a71e3ec8d97c9f40026e23f73c78d643af02fc37e330d5d",
+ "prior/root-0061.jsonl": "37203a7897016810d818735b57bcf5d59defcb7beccb3b8ee2a26aa3824b836d",
+ "prior/root-0062-validation.json": "88af0f7b9e385c8d02f6c9c73d5daf0d04df5f5ec4071e4c0eec785def5339fd",
+ "prior/root-0062.jsonl": "953aa8238292d7e73107e0568302eabe9f0417b71c9d4eded8f80bd09bd71b0e",
+ "prior/root-0063-validation.json": "1b8943140b0e570cc9f68644c9054fe31acf70a7cf7eafb406b95026ef0cd2c1",
+ "prior/root-0063.jsonl": "5b8bf444f1db4c22da5beb0e723616d14b0381ede3a7f6c197d81cfabbd9ec66",
+ "prior/root-0064-validation.json": "f8317dd24f71d4eb773d41a7d9e0690fdfd8561ff9f9db20eda1c5a406aad0dd",
+ "prior/root-0064.jsonl": "4dc74a0c599653ce398e7ac5536a545484e0b1f9c6c73b3d45cfab28f2249d2c",
+ "prior/root-0065-validation.json": "0919b53deb5b033d7bb05a3aadaf6eb7e8dcac9277563938387c84c6f6ee66af",
+ "prior/root-0065.jsonl": "cb06ba4b41c6fe40896ea645fd268a64cd77ac3b6c473f6d612e9cb71cad494d",
+ "prior/root-0067-validation.json": "4551dacb76f380acdd875fdfe1539507f48156734a516dc06dd6817baf3bb269",
+ "prior/root-0067.jsonl": "19d03f735f1b102b6ea9a26a380e20255d188560d8624398ba0fae06efe6efaa"
+ },
+ "files": [
+ {
+ "path": "src/cli/handlers/account.test.ts",
+ "current_declarations": 29,
+ "prior_case_control_records": 40,
+ "mapped_prior_records": 39,
+ "historical_consolidations": 1,
+ "parameter_rows": 10,
+ "retained_inline_controls": 0,
+ "base_sha256": "8dd7e1be29923fe2bbe184b214f5c412dcddbcfdc15bdd42a51738a06fc3f44f",
+ "reviewed_sha256": "cbd81595631f4370bf531f41be7af685a7843955a092519cb8fc806692697798",
+ "tokens_sha256": "6a2eb23d32855f0bb3c3747ede7190531402ba3de002d22198f6c1769cb767ca",
+ "ast_sha256": "c147632c368a901f06d2605b3797ebcb4ee29e8d4a18bb1feea00cf9ed413edf"
+ },
+ {
+ "path": "src/cli/handlers/agent-hooks-prepare-codex-isolated-home.test.ts",
+ "current_declarations": 1,
+ "prior_case_control_records": 3,
+ "mapped_prior_records": 3,
+ "historical_consolidations": 0,
+ "parameter_rows": 2,
+ "retained_inline_controls": 0,
+ "base_sha256": "4b9e1a4c1b81afdcc09e9bf2eb8a9237ebe9f526beaeb0ccbde60348f974bcd1",
+ "reviewed_sha256": "628e9c0c50199a0f00c01561d59e27c1c213f26be1db53652f03b3e0ace245ec",
+ "tokens_sha256": "b4e845e1629e7b59b4b0cb286e72c516aebaee78bba3298be7907a317dc27652",
+ "ast_sha256": "79fe141abf75b26bc089816f8389a73aec32d260340104c004f6897e6fd5509b"
+ },
+ {
+ "path": "src/cli/handlers/artifacts.test.ts",
+ "current_declarations": 7,
+ "prior_case_control_records": 13,
+ "mapped_prior_records": 13,
+ "historical_consolidations": 0,
+ "parameter_rows": 6,
+ "retained_inline_controls": 0,
+ "base_sha256": "7a7b13a2fec15908cc2372c553d1e908fcc21b71dd418bd4ff609dd4a91613a5",
+ "reviewed_sha256": "ff1c6b667f85779af5d22b0fa25d0959e435d09409d444e4293fd4d9f1942da6",
+ "tokens_sha256": "57207dec51db3be250337f940452816cb09a9d41152966cc9a48d928663e52d5",
+ "ast_sha256": "fd74df40650ea57c12cdb3a047154d55be9898e3ab01b3b10a9d52dbd39657af"
+ },
+ {
+ "path": "src/cli/handlers/automation-destination-fencing.test.ts",
+ "current_declarations": 9,
+ "prior_case_control_records": 9,
+ "mapped_prior_records": 9,
+ "historical_consolidations": 0,
+ "parameter_rows": 0,
+ "retained_inline_controls": 0,
+ "base_sha256": "38230c6bb888fb5bad6ac9891cf2286e1f3d78fc2352ca638caa1dec6f7b5251",
+ "reviewed_sha256": "6518b352f32d3833e699c5d61fb71011861a135fb12c53e35fdf32d5340d59dc",
+ "tokens_sha256": "9c0e21328d483a20ae6de6e5525f7bcea8a8150f9f7496fced3fa7fa5cf35aea",
+ "ast_sha256": "64839c7cb4b88d74dac5ecd0a650f3c42991df7e45ce674e770f791ca9f1f78e"
+ },
+ {
+ "path": "src/cli/handlers/automation-owner-fencing.test.ts",
+ "current_declarations": 4,
+ "prior_case_control_records": 6,
+ "mapped_prior_records": 6,
+ "historical_consolidations": 0,
+ "parameter_rows": 2,
+ "retained_inline_controls": 0,
+ "base_sha256": "f836a948dca9ecf91556fd0cb9043bb55e7dcf9d221e3f0947bcef5f075a8d9d",
+ "reviewed_sha256": "706f4ef366513a30eec3decbc5ada1c850ddb6a6f14cbbff408b97da90bd4d2d",
+ "tokens_sha256": "78e6454f950a5fa92fa470b9a1f38bc573c180b55ed203012c1c38be77bd211d",
+ "ast_sha256": "eddef3e1b039cd23b257dc980fb087904ec3ebf8699a2c1baf152a1cba6bcfb2"
+ },
+ {
+ "path": "src/cli/handlers/computer-action-validation.test.ts",
+ "current_declarations": 16,
+ "prior_case_control_records": 20,
+ "mapped_prior_records": 20,
+ "historical_consolidations": 0,
+ "parameter_rows": 0,
+ "retained_inline_controls": 4,
+ "base_sha256": "695f393fd1c7aa7d3ee243ee6197fc50f0f11f2e9015c554082dce80a6a2fbf3",
+ "reviewed_sha256": "8a0968cf7f8f4d28e351b8847bc133eebb2068e0abfb3e01aa4a5e02bb0b96d6",
+ "tokens_sha256": "a5cd31734111cbb7fa98413e78a31ec4b159b1d69ff1445d10d774756c557cff",
+ "ast_sha256": "345d5513592c5c08f5cea53b1bcc5c4ce1a501dc50f6b68996e4ee56c9af70c7"
+ },
+ {
+ "path": "src/cli/handlers/computer.test.ts",
+ "current_declarations": 14,
+ "prior_case_control_records": 16,
+ "mapped_prior_records": 16,
+ "historical_consolidations": 0,
+ "parameter_rows": 0,
+ "retained_inline_controls": 2,
+ "base_sha256": "68aaeddcbe83cece696243fc3a418806009bfb2451777c99d100530d213cb598",
+ "reviewed_sha256": "dd2bbae68bf0e54bb4cd81a0605cddec253904d591da582e399572f7a04bb276",
+ "tokens_sha256": "d1e7a13093b7f0584676be43e0f0cc37eac1b9007f1d601cd6cc50119a39a77d",
+ "ast_sha256": "ae5374400c1189c55bf8696e5af7b179c05e9713150bdc76f93ca82172097290"
+ },
+ {
+ "path": "src/cli/handlers/core.test.ts",
+ "current_declarations": 4,
+ "prior_case_control_records": 4,
+ "mapped_prior_records": 4,
+ "historical_consolidations": 0,
+ "parameter_rows": 0,
+ "retained_inline_controls": 0,
+ "base_sha256": "43386ffaf11c2e51ff810664ce3cd1177e775ae0835b2c7cd70ebaa590c8dcf9",
+ "reviewed_sha256": "ac80dd583a0203051c8d090982b94efba1e970d8de79fa02cc4abbed2d114071",
+ "tokens_sha256": "451d18503186233c06fa732bc134e8c42bff3ba4449df218f2dfa357dfafd4f6",
+ "ast_sha256": "f31b644f6c186fd52019547b3f420ac5766e21a9a80606d0da7b6fa08110a342"
+ },
+ {
+ "path": "src/cli/handlers/emulator.test.ts",
+ "current_declarations": 9,
+ "prior_case_control_records": 9,
+ "mapped_prior_records": 9,
+ "historical_consolidations": 0,
+ "parameter_rows": 0,
+ "retained_inline_controls": 0,
+ "base_sha256": "ffb119b7e50ae7b01a374bbe806f874150850b9fd0803c2d790dcac333f32d96",
+ "reviewed_sha256": "7ec2653bcb30ecbe379588fdf79485929e874a852a9ab5891fe2699bfc7c9f7a",
+ "tokens_sha256": "312556e967fdc94b15bd3fce00b62ad6473127192a7c14f18d8515ff2f8cf5b0",
+ "ast_sha256": "990e28100360971a1ceaafcd7c0088351e7b65f5730a9b20dcfca48c7fefc198"
+ },
+ {
+ "path": "src/cli/handlers/file-absolute-paths.test.ts",
+ "current_declarations": 18,
+ "prior_case_control_records": 18,
+ "mapped_prior_records": 18,
+ "historical_consolidations": 0,
+ "parameter_rows": 0,
+ "retained_inline_controls": 0,
+ "base_sha256": "185d3cfb69d4b77a40ebdb09246c1285d96a6dc4c161c6fb81efd7e5226422d2",
+ "reviewed_sha256": "a944260aadc91c12288ed81cb5b5eb50bb3ff3cb7608146286cb4231a540fa5d",
+ "tokens_sha256": "50c88afac88ec19e510dfa6618c39d4fda18a1568bf08511c76f27b494dd9148",
+ "ast_sha256": "bbebafa1c4d864bf68bfc8f0f7ef039665b99e1b45a588afa5faac3fd5a9fba5"
+ },
+ {
+ "path": "src/cli/handlers/file.test.ts",
+ "current_declarations": 18,
+ "prior_case_control_records": 34,
+ "mapped_prior_records": 34,
+ "historical_consolidations": 0,
+ "parameter_rows": 10,
+ "retained_inline_controls": 6,
+ "base_sha256": "dc526cfff168910f941c6f890a76e8556414e4383dc106fe2f7d4a9f6354b69d",
+ "reviewed_sha256": "172ec308835a5ecb1e0ae3d825b2dff7813c5fc226224673981f22d25543604b",
+ "tokens_sha256": "aec5003603064c99a273085af763c7886979d8eb17464b48571a2f1b990ae632",
+ "ast_sha256": "424282bd629054b3f25c1b662f65a1a7ba95b78c04d927752bc98cc634512f8e"
+ },
+ {
+ "path": "src/cli/handlers/jira-write.test.ts",
+ "current_declarations": 3,
+ "prior_case_control_records": 11,
+ "mapped_prior_records": 11,
+ "historical_consolidations": 0,
+ "parameter_rows": 8,
+ "retained_inline_controls": 0,
+ "base_sha256": "83039171e7200bd8a6ef5a26dff0fded5ec727b48afaeb8d2beb9ce4b1b94d28",
+ "reviewed_sha256": "757667ad1d703fee8a314c7d3738d3d25de39da508c373ec4527b5521c029101",
+ "tokens_sha256": "a63164f013ffbeeef97f4d8e64469516f309235cb4a07c5a423846fdace0f8fd",
+ "ast_sha256": "0097eddb0620ac345b4118a45ac4462779f3c3e1b176f66abe2c2b7f2dc769d3"
+ },
+ {
+ "path": "src/cli/handlers/linear.test.ts",
+ "current_declarations": 22,
+ "prior_case_control_records": 26,
+ "mapped_prior_records": 26,
+ "historical_consolidations": 0,
+ "parameter_rows": 0,
+ "retained_inline_controls": 4,
+ "base_sha256": "ed5fb337ea125d2f2943f635a3e4ff1a7dd49ec53eedf845e8d0500f1d3f1bd8",
+ "reviewed_sha256": "b1ef79854c1d544096a1c9ddea0d5378c187de8259a8cc29e341d094aacedc73",
+ "tokens_sha256": "982852330cb17f14dd1eaf2ddcb5e1a66f8f4a59b8c9dae7b8568776bf074e51",
+ "ast_sha256": "4ac6db21fc5c414223bd557d5ea5897092e9c98e5001692affdfa77498ea310f"
+ },
+ {
+ "path": "src/cli/handlers/managed-server.test.ts",
+ "current_declarations": 12,
+ "prior_case_control_records": 24,
+ "mapped_prior_records": 21,
+ "historical_consolidations": 3,
+ "parameter_rows": 0,
+ "retained_inline_controls": 9,
+ "base_sha256": "9385ae357784f8979f60749dbb6bea14fddff7ec7a79631574d7bafa4fa8e6a1",
+ "reviewed_sha256": "54f9d5b07485b4107b355ee3c3e81cf0dd6711c74d3e83557e583c6de5f69888",
+ "tokens_sha256": "7dbd454a0bce7b43dc1a97cd893f9fb528bb3045784135758f3e167e6e3f99fb",
+ "ast_sha256": "89254c74e58338c7f30ff546e5c067ae82a02e1a270aa8bd1fba9fdc0961e043"
+ },
+ {
+ "path": "src/cli/handlers/orchestration-caller-identity-cli.test.ts",
+ "current_declarations": 10,
+ "prior_case_control_records": 10,
+ "mapped_prior_records": 10,
+ "historical_consolidations": 0,
+ "parameter_rows": 0,
+ "retained_inline_controls": 0,
+ "base_sha256": "d35773f41683ce67b6da906e7b9d1f4cf2062f99c361c35c666640b3a14f7379",
+ "reviewed_sha256": "e16f038f5bdecb65a68e6e2844b5133ad95b8601efd8228fe74f990bd0fd0619",
+ "tokens_sha256": "70a25d15be6031450dc79012f6ce3a8c82511900110249edcd8511f2f9719b69",
+ "ast_sha256": "0c185d05c9e717438c7e4996ec1ae3ae2cc367d484644fdf98347d7968d8c2c6"
+ },
+ {
+ "path": "src/cli/handlers/orchestration-gate-cli.test.ts",
+ "current_declarations": 7,
+ "prior_case_control_records": 7,
+ "mapped_prior_records": 7,
+ "historical_consolidations": 0,
+ "parameter_rows": 0,
+ "retained_inline_controls": 0,
+ "base_sha256": "b31be2b656c79a03e25ed9846496e64b9603b8a1ad09998f2990bfbcba001123",
+ "reviewed_sha256": "7662189750039b1d02f2ba3c3fdca142f41c3bff314b618d109c96b8f9c5ac85",
+ "tokens_sha256": "836bcbe90ce70e5f7ab796b6f21e124030856142aa928dcad4a2b726338dc798",
+ "ast_sha256": "1ac9ae034976b76521636d4165276d8cde9873e117849638ed8765127b9b3bf1"
+ },
+ {
+ "path": "src/cli/handlers/orchestration-migration.test.ts",
+ "current_declarations": 1,
+ "prior_case_control_records": 2,
+ "mapped_prior_records": 2,
+ "historical_consolidations": 0,
+ "parameter_rows": 2,
+ "retained_inline_controls": 0,
+ "base_sha256": "c6d2bcf3551ecb768f46eadee332e15f8c2aa3b6d2f51c0bb06a33372a65eb23",
+ "reviewed_sha256": "4dbaab26bd186f22850b26b915956a6d386d8c74da162e0132ea6e6890c78b59",
+ "tokens_sha256": "8ec8aa1551f31fdce4d9deff92c998fbb0dccecfabc1a3dd6ee9f63e495decbf",
+ "ast_sha256": "87da5631a60c6513c5eef0585186ea3a18aa2449170ba3b83aae8b56f2287446"
+ },
+ {
+ "path": "src/cli/handlers/orchestration-task-create-cli.test.ts",
+ "current_declarations": 1,
+ "prior_case_control_records": 1,
+ "mapped_prior_records": 1,
+ "historical_consolidations": 0,
+ "parameter_rows": 0,
+ "retained_inline_controls": 0,
+ "base_sha256": "db3b6ba9b605342a769ebfaa8cbb1dddad86a4e3d67cb46e32a85bb8a6f441c7",
+ "reviewed_sha256": "24d5ce335d56c5cb7e224db895f18aa82f9d659a9ffa1ca4f8fefc3a92109c15",
+ "tokens_sha256": "846e6e081c5d87c5435dcb4dd3f98544b0f86d57a9413b272856783fe2fd6089",
+ "ast_sha256": "f177e71efc9b0a90b5ecd0b0e4ca61cef1c5b45b08b036a27fe2266b514789a9"
+ }
+ ]
+ },
+ "limitations": [
+ "Fresh execution is on Linux. Process.platform substitutions and Windows/WSL path inputs establish handler policy and portable string/path logic, not native Windows/macOS/WSL execution. The four claude-teams cases still intentionally skip on Windows.",
+ "Spawn, runtime, remote services and native computer/emulator transports are injected. No OAuth login, Keychain access, SSH host, Linear/Jira mutation, live coordinator/gate/mailbox, deployment, native input or visible Orca UI is exercised.",
+ "Account/artifact/HOME fixture tests use actual isolated filesystem state; controlled children and mock stdin establish ordering/assembly at the tested boundaries, not OS signal scheduling or real shell quoting.",
+ "Prior production-path reads, mutations and typechecks remain historical with their original hashes and limitations. None was rerun or promoted to current-native evidence by this comment-only superseding review.",
+ "Supporting evidence files are cited with current hashes but are not separately promoted to reviewed by this delivery. No mobile test was needed for the handler-only batch.",
+ "Literal array and CLI invocation counts are syntactic occurrences, not additional runtime cases or independently asserted input rows. Four prior consolidated records remain historical and are not recreated as current tests."
+ ],
+ "records_sha256": "138b03e6f4b28aea07f7eab562cc622f0f7cc6c372cfc1ff724ecfdf15d89b81"
+}
diff --git a/docs/audits/test-value/reviews/upstream-0004.jsonl b/docs/audits/test-value/reviews/upstream-0004.jsonl
new file mode 100644
index 00000000000..79599ef075c
--- /dev/null
+++ b/docs/audits/test-value/reviews/upstream-0004.jsonl
@@ -0,0 +1,18 @@
+{"path": "src/cli/handlers/account.test.ts", "sha256": "cbd81595631f4370bf531f41be7af685a7843955a092519cb8fc806692697798", "reviewed_sha256": "cbd81595631f4370bf531f41be7af685a7843955a092519cb8fc806692697798", "source_commit": "41b5cf015be7970a23e91d4ce76d52d781db4e1b", "reviewer": "audit_mobile", "status": "reviewed", "decision": "keep", "classification": "vitest-cli-boundary-suite", "rationale": "Keep actual account-handler environment, capability admission, WSL attribution, isolated-directory cleanup and child-close/RPC-interruption boundaries. Spawn and runtime ports remain mocks; the temporary directories and PATH probes are real. Read the complete current source and prior case/control records. The upstream delta changes explanatory comments only; parsed non-trivia tokens and comment-free AST are identical to the previously reviewed base.", "evidence": ["src/cli/handlers/account.ts", "src/cli/handlers/interactive-login-interruption.ts", "src/cli/handlers/account-wsl-location.ts", "src/cli/handlers/account-list-format.ts", "src/shared/node-cli-command-resolution.ts", "src/shared/windows-batch-spawn.ts"], "evidence_source_sha256": {"src/cli/handlers/account.ts": "b775ec85af8840077e408475229d957df841506748a884a8837b89a6b0fb88dc", "src/cli/handlers/interactive-login-interruption.ts": "3970d99e7c68ea3558074150abe978f0ee76cb9e8b48758326c7904f8c130c63", "src/cli/handlers/account-wsl-location.ts": "c09e59ade27bcd88928ed3a9bdd7d6bc8d5472179d0d8af34bb24bfef4769d26", "src/cli/handlers/account-list-format.ts": "3e361563e0b6ab38499bc432f2006f130c0d7fd4e0ef5817bb80236f11437ba3", "src/shared/node-cli-command-resolution.ts": "d98a080b6924d2bf2bc397b4e5ec7d20a8703e8cc7c7620771b03d4e3d168368", "src/shared/windows-batch-spawn.ts": "ec71689e7efc8229f980ed853120d281fc47c1431831548b5bf7baa8cb13933d"}, "evidence_scope": "Original production-path review and mutation/typecheck evidence remain in the copied prior records/validation, without claiming those historical checks were rerun. Fresh runtime coverage is the 18-suite run recorded for this batch.", "cases": [{"id": "1.1", "title": "uses Codex device auth and keeps JSON stdout clean", "line": 175, "endLine": 192, "start": 6236, "end": 6956, "expression": "it('uses Codex device auth and keeps JSON stdout clean', async () => {\n await ACCOUNT_HANDLERS['account add'](context('codex', true))\n\n expect(spawnMock).toHaveBeenCalledWith(\n 'codex',\n ['login', '--device-auth'],\n expect.objectContaining({\n stdio: ['inherit', process.stderr, 'inherit'],\n env: expect.objectContaining({ CODEX_HOME: expect.any(String) })\n })\n )\n const spawnOptions = spawnMock.mock.calls[0]?.[2]\n expect(spawnOptions.env.ELECTRON_RUN_AS_NODE).toBeUndefined()\n expect(existsSync(spawnOptions.env.CODEX_HOME)).toBe(false)\n expect(callMock).toHaveBeenCalledWith('accounts.addCodexFromHome', {\n sourceHome: spawnOptions.env.CODEX_HOME\n })\n })", "source_sha256": "bc9a43f58043407f43315bf2e49aadd4b7083efdd87af25b51d4b86104034858", "nontrivia_sha256": "b98275244fa799d5e472831c911f7314f804f2d79ed17044ad58c37674e36871", "token_count": 138, "parameter_inputs": [], "decision": "keep", "reason": "Codex device-auth spawn keeps JSON prompts on stderr, removes ELECTRON_RUN_AS_NODE, registers from the actual isolated home, and removes that home after success.", "base_line": 180, "base_source_sha256": "bc9a43f58043407f43315bf2e49aadd4b7083efdd87af25b51d4b86104034858", "base_nontrivia_sha256": "b98275244fa799d5e472831c911f7314f804f2d79ed17044ad58c37674e36871", "previous_case_indices": [1], "previous_case_decisions": [{"line": 180, "title": "uses Codex device auth and keeps JSON stdout clean", "decision": "keep", "reason": "Codex device-auth spawn keeps JSON prompts on stderr, removes ELECTRON_RUN_AS_NODE, registers from the actual isolated home, and removes that home after success."}], "inline_command_controls": []}, {"id": "1.2", "title": "passes Windows console device handles to the login child instead of inheriting Electron stdio", "line": 194, "endLine": 210, "start": 6960, "end": 7588, "expression": "it('passes Windows console device handles to the login child instead of inheriting Electron stdio', async () => {\n Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })\n const dispose = vi.fn()\n stdioForWindowsInteractiveChildMock.mockReturnValue({\n stdio: [11, 'inherit', 'inherit'],\n dispose\n })\n\n await ACCOUNT_HANDLERS['account add'](context('codex'))\n\n expect(spawnMock).toHaveBeenCalledWith(\n 'codex',\n ['login', '--device-auth'],\n expect.objectContaining({ stdio: [11, 'inherit', 'inherit'] })\n )\n expect(dispose).toHaveBeenCalledTimes(1)\n })", "source_sha256": "9a6f75ae8d74c8a74e2f4d3b043c309f6547906c1d8b3d5fa20b79fc68cae5ca", "nontrivia_sha256": "bfedc092be80ec31c90b8398803ce775f1f6df2f1f0ea9648bc5f4d28341bc51", "token_count": 107, "parameter_inputs": [], "decision": "keep", "reason": "Mocked Windows console-device handles reach the child and the owned input handle is disposed after login.", "base_line": 199, "base_source_sha256": "9a6f75ae8d74c8a74e2f4d3b043c309f6547906c1d8b3d5fa20b79fc68cae5ca", "base_nontrivia_sha256": "bfedc092be80ec31c90b8398803ce775f1f6df2f1f0ea9648bc5f4d28341bc51", "previous_case_indices": [2], "previous_case_decisions": [{"line": 199, "title": "passes Windows console device handles to the login child instead of inheriting Electron stdio", "decision": "keep", "reason": "Mocked Windows console-device handles reach the child and the owned input handle is disposed after login."}], "inline_command_controls": []}, {"id": "1.3", "title": "disposes the Windows console input fd when spawn throws synchronously", "line": 212, "endLine": 226, "start": 7592, "end": 8158, "expression": "it('disposes the Windows console input fd when spawn throws synchronously', async () => {\n Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })\n const dispose = vi.fn()\n stdioForWindowsInteractiveChildMock.mockReturnValue({\n stdio: [11, 'inherit', 'inherit'],\n dispose\n })\n spawnMock.mockImplementationOnce(() => {\n throw new Error('invalid stdio')\n })\n\n await expect(ACCOUNT_HANDLERS['account add'](context('codex'))).rejects.toThrow('invalid stdio')\n\n expect(dispose).toHaveBeenCalledOnce()\n })", "source_sha256": "224b9255fdea341d720553d9672f38ee5dace017c493f54a628fd3327420201b", "nontrivia_sha256": "fcff39ce05fa225400e73cb62c93e5ed552b054d45f327b65aa96c994751bfdd", "token_count": 100, "parameter_inputs": [], "decision": "keep", "reason": "Synchronous spawn failure preserves its error and still disposes the Windows input handle.", "base_line": 217, "base_source_sha256": "224b9255fdea341d720553d9672f38ee5dace017c493f54a628fd3327420201b", "base_nontrivia_sha256": "fcff39ce05fa225400e73cb62c93e5ed552b054d45f327b65aa96c994751bfdd", "previous_case_indices": [3], "previous_case_decisions": [{"line": 217, "title": "disposes the Windows console input fd when spawn throws synchronously", "decision": "keep", "reason": "Synchronous spawn failure preserves its error and still disposes the Windows input handle."}], "inline_command_controls": []}, {"id": "1.4", "title": "keeps JSON login prompts off the CLI stdout envelope when console fds are attached", "line": 228, "endLine": 242, "start": 8162, "end": 8731, "expression": "it('keeps JSON login prompts off the CLI stdout envelope when console fds are attached', async () => {\n Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })\n stdioForWindowsInteractiveChildMock.mockReturnValue({\n stdio: [11, process.stderr, 'inherit'],\n dispose: vi.fn()\n })\n\n await ACCOUNT_HANDLERS['account add'](context('codex', true))\n\n expect(spawnMock).toHaveBeenCalledWith(\n 'codex',\n ['login', '--device-auth'],\n expect.objectContaining({ stdio: [11, process.stderr, 'inherit'] })\n )\n })", "source_sha256": "ec73cc67240b92acf606ee66acbd9d298b940414170ad222b4bcf2967ced4701", "nontrivia_sha256": "029d7b5f660e6d774fe70c78d6eb4da819ba9581149d421e686f7b42c187a035", "token_count": 102, "parameter_inputs": [], "decision": "keep", "reason": "Windows console-attached JSON login uses stderr for prompts, protecting the CLI stdout envelope.", "base_line": 233, "base_source_sha256": "ec73cc67240b92acf606ee66acbd9d298b940414170ad222b4bcf2967ced4701", "base_nontrivia_sha256": "029d7b5f660e6d774fe70c78d6eb4da819ba9581149d421e686f7b42c187a035", "previous_case_indices": [4], "previous_case_decisions": [{"line": 233, "title": "keeps JSON login prompts off the CLI stdout envelope when console fds are attached", "decision": "keep", "reason": "Windows console-attached JSON login uses stderr for prompts, protecting the CLI stdout envelope."}], "inline_command_controls": []}, {"id": "1.5", "title": "routes Windows package-manager shims through the safe cmd launcher", "line": 244, "endLine": 255, "start": 8735, "end": 9260, "expression": "it('routes Windows package-manager shims through the safe cmd launcher', async () => {\n Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })\n resolveCliCommandMock.mockReturnValue('C:\\\\tools\\\\codex.cmd')\n\n await ACCOUNT_HANDLERS['account add'](context('codex'))\n\n expect(spawnMock).toHaveBeenCalledWith(\n getCmdExePath(),\n ['/d', '/c', 'C:\\\\tools\\\\codex.cmd', 'login', '--device-auth'],\n expect.objectContaining({ stdio: ['inherit', 'inherit', 'inherit'] })\n )\n })", "source_sha256": "c46033eb8eeaa457f7ee45e7af68e9c46e155309862eef3fbf97388e526cb332", "nontrivia_sha256": "4ce608f919da23b60b26a039ab554ea963d5c2521f0ccaed93f629905db82736", "token_count": 86, "parameter_inputs": [], "decision": "keep", "reason": "Windows package-manager batch shim reaches the guarded cmd launcher with the expected argument vector.", "base_line": 249, "base_source_sha256": "c46033eb8eeaa457f7ee45e7af68e9c46e155309862eef3fbf97388e526cb332", "base_nontrivia_sha256": "4ce608f919da23b60b26a039ab554ea963d5c2521f0ccaed93f629905db82736", "previous_case_indices": [5], "previous_case_decisions": [{"line": 249, "title": "routes Windows package-manager shims through the safe cmd launcher", "decision": "keep", "reason": "Windows package-manager batch shim reaches the guarded cmd launcher with the expected argument vector."}], "inline_command_controls": []}, {"id": "1.6", "title": "launches a Windows shim installed under Program Files (x86)", "line": 257, "endLine": 269, "start": 9264, "end": 9756, "expression": "it('launches a Windows shim installed under Program Files (x86)', async () => {\n Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })\n const shim = 'C:\\\\Program Files (x86)\\\\nodejs\\\\codex.cmd'\n resolveCliCommandMock.mockReturnValue(shim)\n\n await ACCOUNT_HANDLERS['account add'](context('codex'))\n\n expect(spawnMock).toHaveBeenCalledWith(\n getCmdExePath(),\n ['/d', '/c', shim, 'login', '--device-auth'],\n expect.anything()\n )\n })", "source_sha256": "5ac5b0b0ef6adac34222d477b6c40b411cde694362087f83d19ea1cd3a553ffb", "nontrivia_sha256": "7680bbca7dca3196a2b7437912268cc813aaa2e5cc4d403ef69bccb72f9392c6", "token_count": 79, "parameter_inputs": [], "decision": "keep", "reason": "Program Files (x86) shim path survives launcher argument construction as one value.", "base_line": 262, "base_source_sha256": "5ac5b0b0ef6adac34222d477b6c40b411cde694362087f83d19ea1cd3a553ffb", "base_nontrivia_sha256": "7680bbca7dca3196a2b7437912268cc813aaa2e5cc4d403ef69bccb72f9392c6", "previous_case_indices": [6], "previous_case_decisions": [{"line": 262, "title": "launches a Windows shim installed under Program Files (x86)", "decision": "keep", "reason": "Program Files (x86) shim path survives launcher argument construction as one value."}], "inline_command_controls": []}, {"id": "1.7", "title": "explains an unspawnable Windows shim path instead of leaking the error sentinel", "line": 271, "endLine": 284, "start": 9760, "end": 10460, "expression": "it('explains an unspawnable Windows shim path instead of leaking the error sentinel', async () => {\n Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })\n resolveCliCommandMock.mockReturnValue('C:\\\\Users\\\\A&B\\\\codex.cmd')\n\n const error = await ACCOUNT_HANDLERS['account add'](context('codex')).catch(\n (thrown: unknown) => thrown\n )\n\n expect(spawnMock).not.toHaveBeenCalled()\n const message = error instanceof Error ? error.message : String(error)\n expect(message).not.toBe(WINDOWS_BATCH_UNSAFE_ARGUMENTS_ERROR)\n expect(message).toContain('C:\\\\Users\\\\A&B\\\\codex.cmd')\n expect(message).toContain(WINDOWS_BATCH_UNSAFE_CHARACTERS_LABEL)\n })", "source_sha256": "182a0ded4244ab9eb07e2b9f0f6f673ae27b5c53ac6fdf319e9921c78fd1df24", "nontrivia_sha256": "fb1c8c2981b19ceeafb5bd25a4cc6071760579e8f8b1db005a2364fea090ae62", "token_count": 114, "parameter_inputs": [], "decision": "keep", "reason": "Unsafe Windows shim path is rejected before spawn and reports both the original path and meaningful unsafe-character guidance.", "base_line": 276, "base_source_sha256": "182a0ded4244ab9eb07e2b9f0f6f673ae27b5c53ac6fdf319e9921c78fd1df24", "base_nontrivia_sha256": "fb1c8c2981b19ceeafb5bd25a4cc6071760579e8f8b1db005a2364fea090ae62", "previous_case_indices": [7], "previous_case_decisions": [{"line": 276, "title": "explains an unspawnable Windows shim path instead of leaking the error sentinel", "decision": "keep", "reason": "Unsafe Windows shim path is rejected before spawn and reports both the original path and meaningful unsafe-character guidance."}], "inline_command_controls": []}, {"id": "1.8", "title": "adds version-manager Node paths to the login child environment", "line": 286, "endLine": 294, "start": 10464, "end": 10854, "expression": "it('adds version-manager Node paths to the login child environment', async () => {\n const nodeBin = '/home/test/.nvm/versions/node/v22.0.0/bin'\n getVersionManagerBinPathsMock.mockReturnValue([nodeBin])\n\n await ACCOUNT_HANDLERS['account add'](context('codex'))\n\n const path = spawnMock.mock.calls[0]?.[2].env.PATH as string\n expect(path.split(delimiter)[0]).toBe(nodeBin)\n })", "source_sha256": "782ac08967718c941c869b3cf73a19ef9eff54b04e67611e41f1720c3e72399e", "nontrivia_sha256": "5142265d30edd90cb860ea16e166c00be5dbc323aab4a99a30ecbe20e927e37f", "token_count": 72, "parameter_inputs": [], "decision": "keep", "reason": "Real PATH construction prepends the independently supplied version-manager Node directory to the login child.", "base_line": 291, "base_source_sha256": "782ac08967718c941c869b3cf73a19ef9eff54b04e67611e41f1720c3e72399e", "base_nontrivia_sha256": "5142265d30edd90cb860ea16e166c00be5dbc323aab4a99a30ecbe20e927e37f", "previous_case_indices": [8], "previous_case_decisions": [{"line": 291, "title": "adds version-manager Node paths to the login child environment", "decision": "keep", "reason": "Real PATH construction prepends the independently supplied version-manager Node directory to the login child."}], "inline_command_controls": []}, {"id": "1.9", "title": "updates the effective Windows PATH regardless of native environment casing", "line": 296, "endLine": 310, "start": 10858, "end": 11610, "expression": "it('updates the effective Windows PATH regardless of native environment casing', async () => {\n Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })\n process.env.Path = 'C:\\\\stale'\n const nodeBin = 'C:\\\\Users\\\\test\\\\.volta\\\\bin'\n const effectivePathBefore = process.env.PATH ?? process.env.Path ?? ''\n getVersionManagerBinPathsMock.mockReturnValue([nodeBin])\n\n await ACCOUNT_HANDLERS['account add'](context('codex'))\n\n const env = spawnMock.mock.calls[0]?.[2].env as NodeJS.ProcessEnv\n const pathValues = Object.entries(env)\n .filter(([key]) => key.toLowerCase() === 'path')\n .map(([, value]) => value)\n expect(pathValues).toContain(`${nodeBin}${delimiter}${effectivePathBefore}`)\n })", "source_sha256": "4fe13fb584bf84718d7c15c52d12d33e26f7e90742861043a17f71b48a8f26da", "nontrivia_sha256": "9c377f3b814cc6d18828020f56cbbe6f0b0de63d7ecdfb845bb196616c21dd4e", "token_count": 149, "parameter_inputs": [], "decision": "keep", "reason": "Mocked Windows environment with both Path/PATH variants retains the effective original value after prepending the runtime directory.", "base_line": 301, "base_source_sha256": "4fe13fb584bf84718d7c15c52d12d33e26f7e90742861043a17f71b48a8f26da", "base_nontrivia_sha256": "9c377f3b814cc6d18828020f56cbbe6f0b0de63d7ecdfb845bb196616c21dd4e", "previous_case_indices": [9], "previous_case_decisions": [{"line": 301, "title": "updates the effective Windows PATH regardless of native environment casing", "decision": "keep", "reason": "Mocked Windows environment with both Path/PATH variants retains the effective original value after prepending the runtime directory."}], "inline_command_controls": []}, {"id": "1.10", "title": "runs login in the final profile without accessing a locked Keychain", "line": 312, "endLine": 326, "start": 11614, "end": 12383, "expression": "it('runs login in the final profile without accessing a locked Keychain', async () => {\n readKeychainMock.mockRejectedValue(new Error('locked'))\n deleteKeychainMock.mockRejectedValue(new Error('locked'))\n writeKeychainMock.mockRejectedValue(new Error('locked'))\n await ACCOUNT_HANDLERS['account add'](context('claude'))\n expect(spawnMock.mock.calls[0]?.[2].env.CLAUDE_CONFIG_DIR).toBe('/fake/final-profile')\n expect(callMock).toHaveBeenCalledWith(\n 'accounts.finishClaudeSignIn',\n { accountId: 'draft', runtime: 'host', wslDistro: undefined },\n { timeoutMs: 300000 }\n )\n expect(readKeychainMock).not.toHaveBeenCalled()\n expect(writeKeychainMock).not.toHaveBeenCalled()\n expect(deleteKeychainMock).not.toHaveBeenCalled()\n })", "source_sha256": "03d4eab9dd6328810fe921733611edae07fb27d6dacd31ce3893c0d118c978cf", "nontrivia_sha256": "2159b3afc14be70b6fab7df2591165b969c8e815e5bb335becd4c4c34cd037e3", "token_count": 135, "parameter_inputs": [], "decision": "keep", "reason": "One login uses the host-created final profile and finish RPC while all three rejecting Keychain mocks remain unused; the prior duplicate invocation remains historically consolidated.", "base_line": 317, "base_source_sha256": "03d4eab9dd6328810fe921733611edae07fb27d6dacd31ce3893c0d118c978cf", "base_nontrivia_sha256": "2159b3afc14be70b6fab7df2591165b969c8e815e5bb335becd4c4c34cd037e3", "previous_case_indices": [10], "previous_case_decisions": [{"line": 317, "title": "runs login in the final profile and never reads, writes or cleans up Keychain credentials", "decision": "consolidate", "reason": "Consolidate the later duplicate Keychain case here: failing read/write/delete mocks must remain unused while login uses the host-created final profile and finish RPC."}], "inline_command_controls": []}, {"id": "1.11", "title": "attributes a Codex account added through the WSL bridge to the cwd distro", "line": 328, "endLine": 341, "start": 12387, "end": 12903, "expression": "it('attributes a Codex account added through the WSL bridge to the cwd distro', async () => {\n Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })\n\n await ACCOUNT_HANDLERS['account add'](\n context('codex', false, String.raw`\\\\wsl$\\Ubuntu\\home\\user`)\n )\n\n const sourceHome = spawnMock.mock.calls[0]?.[2].env.CODEX_HOME\n expect(callMock).toHaveBeenCalledWith('accounts.addCodexFromHome', {\n sourceHome,\n runtime: 'wsl',\n wslDistro: 'Ubuntu'\n })\n })", "source_sha256": "a9b96cb3c85692863e07dab87e4cd8430a6cde2adc51f8019dd6bf24f655a564", "nontrivia_sha256": "8401f0d3fa4aaf1aae6d71103eaffc6cd02b18f8f39a154dff2f5f93ec5f82f1", "token_count": 87, "parameter_inputs": [], "decision": "keep", "reason": "UNC cwd WSL distro is forwarded with the isolated Codex source home to the host registration RPC.", "base_line": 333, "base_source_sha256": "a9b96cb3c85692863e07dab87e4cd8430a6cde2adc51f8019dd6bf24f655a564", "base_nontrivia_sha256": "8401f0d3fa4aaf1aae6d71103eaffc6cd02b18f8f39a154dff2f5f93ec5f82f1", "previous_case_indices": [11], "previous_case_decisions": [{"line": 330, "title": "attributes a Codex account added through the WSL bridge to the cwd distro", "decision": "keep", "reason": "UNC cwd WSL distro is forwarded with the isolated Codex source home to the host registration RPC."}], "inline_command_controls": []}, {"id": "1.12", "title": "uses the explicit bridge distro over an ambient environment or another distro cwd", "line": 343, "endLine": 357, "start": 12907, "end": 13522, "expression": "it('uses the explicit bridge distro over an ambient environment or another distro cwd', async () => {\n Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })\n process.env.WSL_DISTRO_NAME = 'stale-Windows-value'\n process.env.ORCA_CLI_WSL_DISTRO = 'Debian'\n\n await ACCOUNT_HANDLERS['account add'](\n context('claude', false, String.raw`\\\\wsl.localhost\\Ubuntu-22.04\\home\\user`)\n )\n\n expect(callMock).toHaveBeenCalledWith(\n 'accounts.beginClaudeSignIn',\n expect.objectContaining({ runtime: 'wsl', wslDistro: 'Debian' }),\n { timeoutMs: 300000 }\n )\n })", "source_sha256": "3fda0f773e3900bdf38c0ad9cc39efecf927a7dd6fa675ec00a7dd35897adbf1", "nontrivia_sha256": "b00667037f503454364ba6e328db7314b20f99276a9c880615f24541cacda2e2", "token_count": 91, "parameter_inputs": [], "decision": "keep", "reason": "Explicit bridge distro wins over ambient WSL state and a different UNC cwd distro for Claude sign-in.", "base_line": 348, "base_source_sha256": "3fda0f773e3900bdf38c0ad9cc39efecf927a7dd6fa675ec00a7dd35897adbf1", "base_nontrivia_sha256": "b00667037f503454364ba6e328db7314b20f99276a9c880615f24541cacda2e2", "previous_case_indices": [12], "previous_case_decisions": [{"line": 345, "title": "uses the explicit bridge distro over an ambient environment or another distro cwd", "decision": "keep", "reason": "Explicit bridge distro wins over ambient WSL state and a different UNC cwd distro for Claude sign-in."}], "inline_command_controls": []}, {"id": "1.13", "title": "attributes %s from a Windows mount to the bridge distro", "line": 359, "endLine": 374, "start": 13526, "end": 14172, "expression": "it.each(['claude', 'codex'])(\n 'attributes %s from a Windows mount to the bridge distro',\n async (agent) => {\n Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })\n process.env.ORCA_CLI_WSL_DISTRO = 'Ubuntu Work'\n await ACCOUNT_HANDLERS['account add'](context(agent, false, String.raw`C:\\work with spaces`))\n expect(\n callMock.mock.calls.some(\n ([method, params]) =>\n method ===\n (agent === 'claude' ? 'accounts.beginClaudeSignIn' : 'accounts.addCodexFromHome') &&\n params.wslDistro === 'Ubuntu Work'\n )\n ).toBe(true)\n }\n )", "source_sha256": "3401a73e17a09bc59c8ea488b0bec9a995d83dce254fb28409a3af13ed6cf934", "nontrivia_sha256": "533b00794ae07f16fded8c3b62349716aff012450e7d0a14201c525946406210", "token_count": 106, "parameter_inputs": [{"table_id": "1.T1", "row": 1, "line": 359, "endLine": 359, "start": 13535, "end": 13543, "expression": "'claude'", "source_sha256": "b8b800d1bb97bfe9cb4f18c55471a2db5872dc99ec201ddd56bafc1f4dc8a92a", "nontrivia_sha256": "ceb128d6f96df279ee5dedc9c19a02110e0477fd483e5202e659ca70761f7c0f", "token_count": 1, "value": "claude", "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}, {"table_id": "1.T1", "row": 2, "line": 359, "endLine": 359, "start": 13545, "end": 13552, "expression": "'codex'", "source_sha256": "2d91156ec00698f91fbf4f1a846553dfa924262203bd2ca81a4504f4f330832f", "nontrivia_sha256": "73212e665db481d2580c0f4362165127e2e1444fa9428adf026c05c3c358c45b", "token_count": 1, "value": "codex", "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}], "decision": "keep", "reason": "Both Claude and Codex bridge paths preserve a spaced explicit distro even when cwd is a Windows mount.", "base_line": 364, "base_source_sha256": "3401a73e17a09bc59c8ea488b0bec9a995d83dce254fb28409a3af13ed6cf934", "base_nontrivia_sha256": "533b00794ae07f16fded8c3b62349716aff012450e7d0a14201c525946406210", "previous_case_indices": [13, 14, 15], "previous_case_decisions": [{"line": 361, "title": "attributes %s from a Windows mount to the bridge distro", "decision": "keep", "reason": "Both Claude and Codex bridge paths preserve a spaced explicit distro even when cwd is a Windows mount."}, {"line": 361, "title": "parameter: 'claude'", "decision": "keep", "reason": "Read concrete input 'claude'. Both Claude and Codex bridge paths preserve a spaced explicit distro even when cwd is a Windows mount."}, {"line": 361, "title": "parameter: 'codex'", "decision": "keep", "reason": "Read concrete input 'codex'. Both Claude and Codex bridge paths preserve a spaced explicit distro even when cwd is a Windows mount."}], "inline_command_controls": []}, {"id": "1.14", "title": "ignores an ambient WSL distro in a native Windows account add", "line": 376, "endLine": 382, "start": 14176, "end": 14647, "expression": "it('ignores an ambient WSL distro in a native Windows account add', async () => {\n Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })\n process.env.WSL_DISTRO_NAME = 'stale-Windows-value'\n await ACCOUNT_HANDLERS['account add'](context('codex', false, String.raw`C:\\work`))\n const sourceHome = spawnMock.mock.calls[0]?.[2].env.CODEX_HOME\n expect(callMock).toHaveBeenCalledWith('accounts.addCodexFromHome', { sourceHome })\n })", "source_sha256": "779d3a5a97bfbea46b98ce108980299af696ff0d8366a33bb6c89f45035bda1a", "nontrivia_sha256": "a4e0b8d57ba9855601ea17748c30f5f27304a003f893918b7a688b00437d2500", "token_count": 86, "parameter_inputs": [], "decision": "keep", "reason": "Native Windows cwd ignores stale ambient WSL_DISTRO_NAME instead of registering an account on that distro.", "base_line": 381, "base_source_sha256": "779d3a5a97bfbea46b98ce108980299af696ff0d8366a33bb6c89f45035bda1a", "base_nontrivia_sha256": "a4e0b8d57ba9855601ea17748c30f5f27304a003f893918b7a688b00437d2500", "previous_case_indices": [16], "previous_case_decisions": [{"line": 378, "title": "ignores an ambient WSL distro in a native Windows account add", "decision": "keep", "reason": "Native Windows cwd ignores stale ambient WSL_DISTRO_NAME instead of registering an account on that distro."}], "inline_command_controls": []}, {"id": "1.15", "title": "keeps host attribution when the CLI runs on %s", "line": 384, "endLine": 397, "start": 14651, "end": 15273, "expression": "it.each(['linux', 'darwin'])(\n 'keeps host attribution when the CLI runs on %s',\n async (platform) => {\n // Linux runtimes use host-lane accounts even when the CLI itself runs in WSL.\n Object.defineProperty(process, 'platform', { configurable: true, value: platform })\n process.env.WSL_DISTRO_NAME = 'Ubuntu-22.04'\n process.env.ORCA_CLI_WSL_DISTRO = 'Ubuntu-22.04'\n\n await ACCOUNT_HANDLERS['account add'](context('codex'))\n\n const sourceHome = spawnMock.mock.calls[0]?.[2].env.CODEX_HOME\n expect(callMock).toHaveBeenCalledWith('accounts.addCodexFromHome', { sourceHome })\n }\n )", "source_sha256": "46e4e994a144060702903e4b31118d8cefee6d0528e616662651beddf9d95367", "nontrivia_sha256": "8b026b74cdd6629a5de3d8bc35d704ded46655d84cef0b11a98cb1853d6c321e", "token_count": 96, "parameter_inputs": [{"table_id": "1.T2", "row": 1, "line": 384, "endLine": 384, "start": 14660, "end": 14667, "expression": "'linux'", "source_sha256": "09d194165bd76c3f3dc6b372cc266be2e98c365d3658f818184f9b59182a0a3b", "nontrivia_sha256": "9e61ba1553513a8e07358a34feb8b5be818e36e3cbe1cab5eac691588d8575ad", "token_count": 1, "value": "linux", "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}, {"table_id": "1.T2", "row": 2, "line": 384, "endLine": 384, "start": 14669, "end": 14677, "expression": "'darwin'", "source_sha256": "5439872b0b815293e9c1ca8fa801adb3ab87f33f1d24e842e43584033acffd97", "nontrivia_sha256": "6e395c48bee1b45059f87bfc2089da7e3f434c04dbda04c34672e57158c74d36", "token_count": 1, "value": "darwin", "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}], "decision": "keep", "reason": "Linux and macOS CLI hosts retain host attribution despite WSL environment variables; both concrete platform inputs are preserved.", "base_line": 389, "base_source_sha256": "d191a2296f508a4445d34bc5737f75f96316f83a60022379ad63f2c7f0d88643", "base_nontrivia_sha256": "8b026b74cdd6629a5de3d8bc35d704ded46655d84cef0b11a98cb1853d6c321e", "previous_case_indices": [17, 18, 19], "previous_case_decisions": [{"line": 386, "title": "keeps host attribution when the CLI runs on %s", "decision": "keep", "reason": "Linux and macOS CLI hosts retain host attribution despite WSL environment variables; both concrete platform inputs are preserved."}, {"line": 386, "title": "parameter: 'linux'", "decision": "keep", "reason": "Read concrete input 'linux'. Linux and macOS CLI hosts retain host attribution despite WSL environment variables; both concrete platform inputs are preserved."}, {"line": 386, "title": "parameter: 'darwin'", "decision": "keep", "reason": "Read concrete input 'darwin'. Linux and macOS CLI hosts retain host attribution despite WSL environment variables; both concrete platform inputs are preserved."}], "inline_command_controls": []}, {"id": "1.16", "title": "waits for physical child close before removing interrupted login credentials", "line": 399, "endLine": 430, "start": 15277, "end": 16707, "expression": "it('waits for physical child close before removing interrupted login credentials', async () => {\n // A live login can recreate credentials after cleanup; wait for close before deleting them.\n Object.defineProperty(process, 'platform', { configurable: true, value: 'linux' })\n const kill = vi.fn()\n const child = Object.assign(new EventEmitter(), { kill })\n let codexHome = ''\n spawnMock.mockImplementation((_command, _args, options: { env: Record }) => {\n codexHome = options.env.CODEX_HOME\n return child\n })\n const exitSpy = vi.spyOn(process, 'exit').mockImplementation((() => undefined) as never)\n const listenersBefore = process.listeners('SIGINT')\n\n const pending = ACCOUNT_HANDLERS['account add'](context('codex')).catch(() => {})\n await vi.waitFor(() => expect(codexHome).not.toBe(''))\n expect(existsSync(codexHome)).toBe(true)\n\n newSignalListener('SIGINT', listenersBefore)('SIGINT')\n\n await vi.waitFor(() => expect(kill).toHaveBeenCalledWith('SIGINT'))\n expect(exitSpy).not.toHaveBeenCalled()\n expect(existsSync(codexHome)).toBe(true)\n\n child.emit('exit', 1)\n child.emit('close', 1)\n await vi.waitFor(() => expect(exitSpy).toHaveBeenCalledWith(130))\n expect(existsSync(codexHome)).toBe(false)\n expect(callMock).not.toHaveBeenCalledWith('accounts.addCodexFromHome', expect.anything())\n\n await pending\n exitSpy.mockRestore()\n })", "source_sha256": "4974ad4003d85714e5590c7b4d4da0b54eb55105ce27c267f48450e59850b045", "nontrivia_sha256": "11da8cd68a0900a0e9bd930e336f49305b97aaf012c80b97966061e7e141b667", "token_count": 297, "parameter_inputs": [], "decision": "keep", "reason": "Controlled child emits physical close after SIGINT; credentials exist before close, child is signaled, exit is delayed, and cleanup precedes interrupt exit without registration.", "base_line": 405, "base_source_sha256": "e4fc3c4d38b7cbe101e6356d1668c1258bae18119cfe97a4458ca5bde07208e3", "base_nontrivia_sha256": "11da8cd68a0900a0e9bd930e336f49305b97aaf012c80b97966061e7e141b667", "previous_case_indices": [20], "previous_case_decisions": [{"line": 402, "title": "waits for physical child close before removing interrupted login credentials", "decision": "keep", "reason": "Controlled child emits physical close after SIGINT; credentials exist before close, child is signaled, exit is delayed, and cleanup precedes interrupt exit without registration."}], "inline_command_controls": []}, {"id": "1.17", "title": "cleans up when an SSH hangup ends the login", "line": 432, "endLine": 460, "start": 16711, "end": 17947, "expression": "it('cleans up when an SSH hangup ends the login', async () => {\n // Node's default SIGHUP exit would bypass cleanup when an SSH connection drops.\n Object.defineProperty(process, 'platform', { configurable: true, value: 'linux' })\n const child = Object.assign(new EventEmitter(), { kill: vi.fn() })\n let codexHome = ''\n spawnMock.mockImplementation((_command, _args, options: { env: Record }) => {\n codexHome = options.env.CODEX_HOME\n return child\n })\n const exitSpy = vi.spyOn(process, 'exit').mockImplementation((() => undefined) as never)\n const listenersBefore = process.listeners('SIGHUP')\n\n const pending = ACCOUNT_HANDLERS['account add'](context('codex')).catch(() => {})\n await vi.waitFor(() => expect(codexHome).not.toBe(''))\n\n newSignalListener('SIGHUP', listenersBefore)('SIGHUP')\n\n await vi.waitFor(() => expect(child.kill).toHaveBeenCalledWith('SIGHUP'))\n expect(exitSpy).not.toHaveBeenCalled()\n expect(existsSync(codexHome)).toBe(true)\n\n child.emit('exit', 1)\n child.emit('close', 1)\n await vi.waitFor(() => expect(exitSpy).toHaveBeenCalledWith(129))\n expect(existsSync(codexHome)).toBe(false)\n\n await pending\n exitSpy.mockRestore()\n })", "source_sha256": "c218915acac0190acb6f6166a443c43416802546cf4716d78ce1a4f858ff5184", "nontrivia_sha256": "ff9fe74551b552e86eb5660c725e65c8fcaffeb270506505d236082888e7b511", "token_count": 268, "parameter_inputs": [], "decision": "keep", "reason": "Controlled SIGHUP on an SSH-style login signals the child, waits for physical close, removes temporary credentials, and reports hangup exit status.", "base_line": 438, "base_source_sha256": "bcfed83c9267ff42c5355fcfbb1124b4bd25bde9bdcebb18515dff40438ec5ab", "base_nontrivia_sha256": "ff9fe74551b552e86eb5660c725e65c8fcaffeb270506505d236082888e7b511", "previous_case_indices": [21], "previous_case_decisions": [{"line": 435, "title": "cleans up when an SSH hangup ends the login", "decision": "keep", "reason": "Controlled SIGHUP on an SSH-style login signals the child, waits for physical close, removes temporary credentials, and reports hangup exit status."}], "inline_command_controls": []}, {"id": "1.18", "title": "warns that the account may already be registered when interrupted mid-RPC", "line": 462, "endLine": 516, "start": 17951, "end": 20148, "expression": "it('warns that the account may already be registered when interrupted mid-RPC', async () => {\n // Registration continues at the runtime after the CLI is interrupted.\n const child = Object.assign(new EventEmitter(), { kill: vi.fn() })\n spawnMock.mockImplementation(() => {\n queueMicrotask(() => child.emit('exit', 0))\n return child\n })\n let rejectRegistration: ((error: Error) => void) | undefined\n const registration = new Promise((_resolve, reject) => {\n rejectRegistration = reject\n })\n // Only registration waits; preflight must still resolve.\n callMock.mockImplementation((method: string) =>\n method === 'status.get'\n ? Promise.resolve({\n id: 'test',\n ok: true,\n result: {\n capabilities: [ACCOUNT_IMPORT_RUNTIME_CAPABILITY, CLAUDE_SIGN_IN_RUNTIME_CAPABILITY]\n },\n _meta: { runtimeId: 'test-runtime' }\n })\n : method === 'accounts.list'\n ? Promise.resolve({\n id: 'test',\n ok: true,\n result: { claude: accountState('c@e.com'), codex: accountState('x@e.com') },\n _meta: { runtimeId: 'test-runtime' }\n })\n : registration\n )\n const warnSpy = vi.spyOn(console, 'warn').mockImplementation(() => {})\n const exitSpy = vi.spyOn(process, 'exit').mockImplementation((() => undefined) as never)\n const listenersBefore = process.listeners('SIGINT')\n\n const pending = ACCOUNT_HANDLERS['account add'](context('codex')).catch(() => {})\n try {\n await vi.waitFor(() =>\n expect(callMock).toHaveBeenCalledWith('accounts.addCodexFromHome', expect.anything())\n )\n\n newSignalListener('SIGINT', listenersBefore)('SIGINT')\n\n await vi.waitFor(() => expect(exitSpy).toHaveBeenCalledWith(130))\n expect(warnSpy).toHaveBeenCalledWith(\n expect.stringContaining('may still have been registered')\n )\n } finally {\n rejectRegistration?.(new Error('finish interrupted registration'))\n await pending\n warnSpy.mockRestore()\n exitSpy.mockRestore()\n }\n expect(process.listeners('SIGINT')).toEqual(listenersBefore)\n })", "source_sha256": "6cb68d386fecb23c8fc09bd78308d660ab234ef62a6920d529a2ff9f07f1c6c8", "nontrivia_sha256": "a3901ee99b4746f6c24dd661b1d9d20bc62e684a9663c0ecc534459314f74559", "token_count": 370, "parameter_inputs": [], "decision": "keep", "reason": "The held registration is entered before interruption; the warning is observed, the held RPC is settled/awaited in finally, and the added SIGINT listener is removed.", "base_line": 469, "base_source_sha256": "5d69ea225bc8b7cd1ce5458b9eb5eb0e09984bc23f98d835c28abd743a1362f7", "base_nontrivia_sha256": "a3901ee99b4746f6c24dd661b1d9d20bc62e684a9663c0ecc534459314f74559", "previous_case_indices": [22], "previous_case_decisions": [{"line": 466, "title": "warns that the account may already be registered when interrupted mid-RPC", "decision": "fix", "reason": "Retain interrupted-registration warning after proven RPC entry, but settle and await the held RPC in finally and assert the added SIGINT listener is removed; the original orphaned promise/listeners survived the test."}], "inline_command_controls": []}, {"id": "1.19", "title": "fails before the login when the runtime is unreachable", "line": 518, "endLine": 526, "start": 20152, "end": 20517, "expression": "it('fails before the login when the runtime is unreachable', async () => {\n callMock.mockRejectedValue(new Error('runtime not running'))\n\n await expect(ACCOUNT_HANDLERS['account add'](context('codex'))).rejects.toThrow(\n 'runtime not running'\n )\n expect(callMock).toHaveBeenCalledWith('status.get')\n expect(spawnMock).not.toHaveBeenCalled()\n })", "source_sha256": "91f876c8ba141f23f7f5fff90803f5e8c2be2bc1b215ff340b002866c56366f7", "nontrivia_sha256": "5b9ca2515c32f687c20f4ce4b4a23c6c1937b9cf02923b252de0aec270547a30", "token_count": 61, "parameter_inputs": [], "decision": "keep", "reason": "Unreachable runtime fails the preflight before spawning an OAuth child.", "base_line": 526, "base_source_sha256": "08338974659f800ea74f5baf27a5968ba080b71e542d0b41eefaf761b4ca458f", "base_nontrivia_sha256": "5b9ca2515c32f687c20f4ce4b4a23c6c1937b9cf02923b252de0aec270547a30", "previous_case_indices": [23], "previous_case_decisions": [{"line": 511, "title": "fails before the login when the runtime is unreachable", "decision": "keep", "reason": "Unreachable runtime fails the preflight before spawning an OAuth child."}], "inline_command_controls": []}, {"id": "1.20", "title": "adds Codex through an older host that advertises only the retired import capability", "line": 528, "endLine": 541, "start": 20521, "end": 21121, "expression": "it('adds Codex through an older host that advertises only the retired import capability', async () => {\n callMock.mockResolvedValueOnce({\n id: 'test',\n ok: true,\n result: { capabilities: [ACCOUNT_IMPORT_RUNTIME_CAPABILITY] },\n _meta: { runtimeId: 'test-runtime' }\n })\n\n await ACCOUNT_HANDLERS['account add'](context('codex'))\n\n const sourceHome = spawnMock.mock.calls[0]?.[2].env.CODEX_HOME\n expect(callMock).toHaveBeenCalledWith('accounts.addCodexFromHome', { sourceHome })\n expect(logSpy).toHaveBeenCalledWith(expect.stringContaining('codex@example.com'))\n })", "source_sha256": "3565947b69c800c4fe84efd6b9bd1556a9ff5f5ff750a9dc7648e13434592283", "nontrivia_sha256": "d3d15500757d696d11352461c593a4fecdc7e749b36f55ddead88d4f2f905fcb", "token_count": 100, "parameter_inputs": [], "decision": "keep", "reason": "A host advertising only the retired import capability still completes the mocked login/registration chain and prints its resulting account; this remains a mixed-version transport control.", "base_line": 537, "base_source_sha256": "3565947b69c800c4fe84efd6b9bd1556a9ff5f5ff750a9dc7648e13434592283", "base_nontrivia_sha256": "d3d15500757d696d11352461c593a4fecdc7e749b36f55ddead88d4f2f905fcb", "previous_case_indices": [24], "previous_case_decisions": [{"line": 522, "title": "still adds Codex through an older host that advertises only the retired import capability", "decision": "fix", "reason": "Complete login and registration against a status response carrying only the older import capability, and assert the resulting account output; the original injected spawn failure only proved gate entry."}], "inline_command_controls": []}, {"id": "1.21", "title": "refuses %s login before spawning when its capability is absent", "line": 543, "endLine": 560, "start": 21125, "end": 21752, "expression": "it.each(['claude', 'codex'] as const)(\n 'refuses %s login before spawning when its capability is absent',\n async (agent) => {\n callMock.mockResolvedValue({\n id: 'test',\n ok: true,\n result: { capabilities: [] },\n _meta: { runtimeId: 'test-runtime' }\n })\n\n await expect(ACCOUNT_HANDLERS['account add'](context(agent))).rejects.toThrow(\n 'The running Orca runtime is too old to add accounts from the CLI.'\n )\n expect(callMock).toHaveBeenCalledOnce()\n expect(callMock).toHaveBeenCalledWith('status.get')\n expect(spawnMock).not.toHaveBeenCalled()\n }\n )", "source_sha256": "eb0b9418c9af338ef1f6695b1c1cf59a79c8e701ecd86d03d4123ba6d7220d4f", "nontrivia_sha256": "10d97b75631ac6011b7b587970d6f4aa05fab3691b42674f910b482d036b9493", "token_count": 102, "parameter_inputs": [{"table_id": "1.T3", "row": 1, "line": 543, "endLine": 543, "start": 21134, "end": 21142, "expression": "'claude'", "source_sha256": "b8b800d1bb97bfe9cb4f18c55471a2db5872dc99ec201ddd56bafc1f4dc8a92a", "nontrivia_sha256": "ceb128d6f96df279ee5dedc9c19a02110e0477fd483e5202e659ca70761f7c0f", "token_count": 1, "value": "claude", "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}, {"table_id": "1.T3", "row": 2, "line": 543, "endLine": 543, "start": 21144, "end": 21151, "expression": "'codex'", "source_sha256": "2d91156ec00698f91fbf4f1a846553dfa924262203bd2ca81a4504f4f330832f", "nontrivia_sha256": "73212e665db481d2580c0f4362165127e2e1444fa9428adf026c05c3c358c45b", "token_count": 1, "value": "codex", "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}], "decision": "keep", "reason": "Each provider missing its required runtime capability fails before spawn after one status call.", "base_line": 552, "base_source_sha256": "eb0b9418c9af338ef1f6695b1c1cf59a79c8e701ecd86d03d4123ba6d7220d4f", "base_nontrivia_sha256": "10d97b75631ac6011b7b587970d6f4aa05fab3691b42674f910b482d036b9493", "previous_case_indices": [25, 26, 27], "previous_case_decisions": [{"line": 537, "title": "refuses %s login before spawning when its capability is absent", "decision": "keep", "reason": "Each provider missing its required runtime capability fails before spawn after one status call."}, {"line": 537, "title": "parameter: 'claude'", "decision": "keep", "reason": "Read concrete input 'claude'. Each provider missing its required runtime capability fails before spawn after one status call."}, {"line": 537, "title": "parameter: 'codex'", "decision": "keep", "reason": "Read concrete input 'codex'. Each provider missing its required runtime capability fails before spawn after one status call."}], "inline_command_controls": []}, {"id": "1.22", "title": "rejects --%s instead of silently ignoring it", "line": 562, "endLine": 576, "start": 21756, "end": 22219, "expression": "it.each(['environment', 'pairing-code'])(\n 'rejects --%s instead of silently ignoring it',\n async (flag) => {\n await expect(\n ACCOUNT_HANDLERS['account add']({\n ...context('codex'),\n flags: new Map([\n ['agent', 'codex'],\n [flag, 'homelab']\n ])\n })\n ).rejects.toThrow(`\\`--${flag}\\` does not retarget`)\n expect(spawnMock).not.toHaveBeenCalled()\n }\n )", "source_sha256": "4fe915d6cc1fea3be3b07769d2e78ac88c1edbd936b173238f3da82fd7b3ef4e", "nontrivia_sha256": "f2465e0e08039f2f017e2d6b0278cb09f0aff2c368218e54c6c831ad1ba1a625", "token_count": 84, "parameter_inputs": [{"table_id": "1.T4", "row": 1, "line": 562, "endLine": 562, "start": 21765, "end": 21778, "expression": "'environment'", "source_sha256": "514b89467edcb340e947be4936b8a40a7d5f55ed922985e9332dca374c82d531", "nontrivia_sha256": "e887bbc8af1e1871240942f2b044aec3bf1efea23db541e81c4c404a683fb6ab", "token_count": 1, "value": "environment", "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}, {"table_id": "1.T4", "row": 2, "line": 562, "endLine": 562, "start": 21780, "end": 21794, "expression": "'pairing-code'", "source_sha256": "af37d2c7b71777abf2e08beb1dcbbea49b2dc3d658c3218c70ed0f581ddafa05", "nontrivia_sha256": "0714c2ab3abb80e28e1b09361108dab2e9876a9c061993bd312427ea86306f75", "token_count": 1, "value": "pairing-code", "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}], "decision": "keep", "reason": "Each unsupported remote selector on add is rejected rather than spawning a local login for a named remote target.", "base_line": 571, "base_source_sha256": "074e553b591a214c6ea711f0b1b4d45c7a5419e73b083e8b1ba36659d4957c8f", "base_nontrivia_sha256": "f2465e0e08039f2f017e2d6b0278cb09f0aff2c368218e54c6c831ad1ba1a625", "previous_case_indices": [28, 29, 30], "previous_case_decisions": [{"line": 556, "title": "rejects --%s instead of silently ignoring it", "decision": "keep", "reason": "Each unsupported remote selector on add is rejected rather than spawning a local login for a named remote target."}, {"line": 556, "title": "parameter: 'environment'", "decision": "keep", "reason": "Read concrete input 'environment'. Each unsupported remote selector on add is rejected rather than spawning a local login for a named remote target."}, {"line": 556, "title": "parameter: 'pairing-code'", "decision": "keep", "reason": "Read concrete input 'pairing-code'. Each unsupported remote selector on add is rejected rather than spawning a local login for a named remote target."}], "inline_command_controls": []}, {"id": "1.23", "title": "rejects --%s on `account list` instead of listing the local host", "line": 578, "endLine": 589, "start": 22223, "end": 22651, "expression": "it.each(['environment', 'pairing-code'])(\n 'rejects --%s on `account list` instead of listing the local host',\n async (flag) => {\n await expect(\n ACCOUNT_HANDLERS['account list']({\n ...context('claude'),\n flags: new Map([[flag, 'homelab']])\n })\n ).rejects.toThrow(`\\`--${flag}\\` does not retarget`)\n expect(callMock).not.toHaveBeenCalled()\n }\n )", "source_sha256": "06c7fa0347274ff38648bba4965fb06944a523da028dab145b06920f8558bee5", "nontrivia_sha256": "f168faab2b53746c37bf59dcbbbf07dec022d304e2e3063ffa8fa7550342fb32", "token_count": 78, "parameter_inputs": [{"table_id": "1.T5", "row": 1, "line": 578, "endLine": 578, "start": 22232, "end": 22245, "expression": "'environment'", "source_sha256": "514b89467edcb340e947be4936b8a40a7d5f55ed922985e9332dca374c82d531", "nontrivia_sha256": "e887bbc8af1e1871240942f2b044aec3bf1efea23db541e81c4c404a683fb6ab", "token_count": 1, "value": "environment", "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}, {"table_id": "1.T5", "row": 2, "line": 578, "endLine": 578, "start": 22247, "end": 22261, "expression": "'pairing-code'", "source_sha256": "af37d2c7b71777abf2e08beb1dcbbea49b2dc3d658c3218c70ed0f581ddafa05", "nontrivia_sha256": "0714c2ab3abb80e28e1b09361108dab2e9876a9c061993bd312427ea86306f75", "token_count": 1, "value": "pairing-code", "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}], "decision": "keep", "reason": "Each unsupported remote selector on list is rejected before any local runtime RPC.", "base_line": 589, "base_source_sha256": "12342560807f67e9b733eefda327b42509eea669d28a8160093764850e00750a", "base_nontrivia_sha256": "f168faab2b53746c37bf59dcbbbf07dec022d304e2e3063ffa8fa7550342fb32", "previous_case_indices": [31, 32, 33], "previous_case_decisions": [{"line": 574, "title": "rejects --%s on `account list` instead of listing the local host", "decision": "keep", "reason": "Each unsupported remote selector on list is rejected before any local runtime RPC."}, {"line": 574, "title": "parameter: 'environment'", "decision": "keep", "reason": "Read concrete input 'environment'. Each unsupported remote selector on list is rejected before any local runtime RPC."}, {"line": 574, "title": "parameter: 'pairing-code'", "decision": "keep", "reason": "Read concrete input 'pairing-code'. Each unsupported remote selector on list is rejected before any local runtime RPC."}], "inline_command_controls": []}, {"id": "1.24", "title": "keeps the original add error when cleanup also fails", "line": 591, "endLine": 624, "start": 22655, "end": 23938, "expression": "it('keeps the original add error when cleanup also fails', async () => {\n const warnSpy = vi.spyOn(console, 'warn').mockImplementation(() => {})\n rmSyncMock.mockImplementationOnce(() => {\n throw new Error('EBUSY: resource busy or locked')\n })\n callMock.mockImplementation((method: string) =>\n method === 'status.get'\n ? Promise.resolve({\n id: 'test',\n ok: true,\n result: {\n capabilities: [ACCOUNT_IMPORT_RUNTIME_CAPABILITY, CLAUDE_SIGN_IN_RUNTIME_CAPABILITY]\n },\n _meta: { runtimeId: 'test-runtime' }\n })\n : method === 'accounts.list'\n ? Promise.resolve({\n id: 'test',\n ok: true,\n result: { claude: accountState('c@e.com'), codex: accountState('x@e.com') },\n _meta: { runtimeId: 'test-runtime' }\n })\n : Promise.reject(new Error('registration rejected by runtime'))\n )\n\n await expect(ACCOUNT_HANDLERS['account add'](context('codex'))).rejects.toThrow(\n 'registration rejected by runtime'\n )\n expect(warnSpy).toHaveBeenCalledWith(\n expect.stringContaining('Failed to clean up the temporary login directory'),\n expect.any(Error)\n )\n warnSpy.mockRestore()\n })", "source_sha256": "361ac3627ad4f2a367c0f73db9feaea190e1e43d00b637d08e1f0f78fe69f378", "nontrivia_sha256": "5e776d85423a3656f06b7e8e9f56c05f053664931a5a0aeb810e315de3ea38f4", "token_count": 199, "parameter_inputs": [], "decision": "keep", "reason": "Injected registration failure plus EBUSY cleanup preserves the primary registration error and reports cleanup failure.", "base_line": 604, "base_source_sha256": "2214bc8b8df629542668a9aff626c59ccb85476dd6fce1af8666808d15e78205", "base_nontrivia_sha256": "5e776d85423a3656f06b7e8e9f56c05f053664931a5a0aeb810e315de3ea38f4", "previous_case_indices": [34], "previous_case_decisions": [{"line": 589, "title": "keeps the original add error when cleanup also fails", "decision": "keep", "reason": "Injected registration failure plus EBUSY cleanup preserves the primary registration error and reports cleanup failure."}], "inline_command_controls": []}, {"id": "1.25", "title": "fails a successful add when the temporary credentials cannot be removed", "line": 626, "endLine": 633, "start": 23942, "end": 24289, "expression": "it('fails a successful add when the temporary credentials cannot be removed', async () => {\n rmSyncMock.mockImplementationOnce(() => {\n throw new Error('EBUSY: resource busy or locked')\n })\n\n await expect(ACCOUNT_HANDLERS['account add'](context('codex', true))).rejects.toThrow('EBUSY')\n expect(logSpy).not.toHaveBeenCalled()\n })", "source_sha256": "08c2cd97241a05151850efa6529d2a92f7522e6c90dd2925bc83b57341ad7308", "nontrivia_sha256": "905226932145b76429cf20b577c5163e120b1c546732548f7763d2754b2d1a8b", "token_count": 60, "parameter_inputs": [], "decision": "keep", "reason": "EBUSY cleanup after otherwise successful registration must reject and must not print success.", "base_line": 641, "base_source_sha256": "08c2cd97241a05151850efa6529d2a92f7522e6c90dd2925bc83b57341ad7308", "base_nontrivia_sha256": "905226932145b76429cf20b577c5163e120b1c546732548f7763d2754b2d1a8b", "previous_case_indices": [35], "previous_case_decisions": [{"line": 626, "title": "fails a successful add when the temporary credentials cannot be removed", "decision": "keep", "reason": "EBUSY cleanup after otherwise successful registration must reject and must not print success."}], "inline_command_controls": []}, {"id": "1.26", "title": "rejects `--agent` with no value instead of defaulting to Claude", "line": 635, "endLine": 642, "start": 24293, "end": 24688, "expression": "it('rejects `--agent` with no value instead of defaulting to Claude', async () => {\n await expect(\n ACCOUNT_HANDLERS['account add']({ ...context('claude'), flags: new Map([['agent', true]]) })\n ).rejects.toThrow(\n 'Missing a value for --agent. Use `--agent claude`, `--agent codex`, `--agent opencode`, or `--agent devin`.'\n )\n expect(spawnMock).not.toHaveBeenCalled()\n })", "source_sha256": "ef395de1bac8178d9fd5f333db5e2328c0e71c761e682504027a5a166a966b6c", "nontrivia_sha256": "6a16058c8c47ad679c124cf705cc52fd05388655365682e90a1600b961c837ad", "token_count": 59, "parameter_inputs": [], "decision": "keep", "reason": "Boolean --agent is rejected with explicit supported-provider guidance before login can default to the wrong provider.", "base_line": 650, "base_source_sha256": "f5a640b019139d04132c1c541a5b1ddd1e6ed595b258eca3a6c5ee36a3b68ddd", "base_nontrivia_sha256": "6a16058c8c47ad679c124cf705cc52fd05388655365682e90a1600b961c837ad", "previous_case_indices": [37], "previous_case_decisions": [{"line": 645, "title": "rejects `--agent` with no value instead of defaulting to Claude", "decision": "keep", "reason": "Boolean --agent is rejected with explicit supported-provider guidance before login can default to the wrong provider."}], "inline_command_controls": []}, {"id": "1.27", "title": "marks an account selected for WSL as active in human output", "line": 644, "endLine": 662, "start": 24692, "end": 25376, "expression": "it('marks an account selected for WSL as active in human output', async () => {\n callMock.mockResolvedValue({\n id: 'test',\n ok: true,\n result: {\n claude: {\n accounts: [{ id: 'claude-wsl', email: 'claude@example.com' }],\n activeAccountId: null,\n activeAccountIdsByRuntime: { host: null, wsl: { Ubuntu: 'claude-wsl' } }\n },\n codex: { accounts: [], activeAccountId: null }\n },\n _meta: { runtimeId: 'test-runtime' }\n })\n\n await ACCOUNT_HANDLERS['account list']({ ...context('claude'), flags: new Map() })\n\n expect(logSpy).toHaveBeenCalledWith(expect.stringContaining('claude@example.com (active)'))\n })", "source_sha256": "25037a06456eb21fc70d44d93a487d7a043a13f0d8527d17895a62a66f59aeab", "nontrivia_sha256": "9cc2e18c4d16163e79d0a92ed95cc50c3643cba2748c1cf69b9dfd2bfcafdb8f", "token_count": 123, "parameter_inputs": [], "decision": "keep", "reason": "WSL-selected account receives the active annotation even without a host activeAccountId.", "base_line": 661, "base_source_sha256": "25037a06456eb21fc70d44d93a487d7a043a13f0d8527d17895a62a66f59aeab", "base_nontrivia_sha256": "9cc2e18c4d16163e79d0a92ed95cc50c3643cba2748c1cf69b9dfd2bfcafdb8f", "previous_case_indices": [38], "previous_case_decisions": [{"line": 656, "title": "marks an account selected for WSL as active in human output", "decision": "keep", "reason": "WSL-selected account receives the active annotation even without a host activeAccountId."}], "inline_command_controls": []}, {"id": "1.28", "title": "tells the user which saved Claude accounts need a fresh sign-in", "line": 664, "endLine": 688, "start": 25380, "end": 26172, "expression": "it('tells the user which saved Claude accounts need a fresh sign-in', async () => {\n callMock.mockResolvedValue({\n id: 'test',\n ok: true,\n result: {\n claude: {\n accounts: [\n { id: 'old', email: 'old@example.com', needsSignIn: true },\n { id: 'ok', email: 'ok@example.com' }\n ],\n activeAccountId: 'old'\n },\n codex: { accounts: [], activeAccountId: null }\n },\n _meta: { runtimeId: 'test-runtime' }\n })\n\n await ACCOUNT_HANDLERS['account list']({ ...context('claude'), flags: new Map() })\n\n expect(logSpy).toHaveBeenCalledWith(\n expect.stringContaining(\n ' old@example.com (active) (sign in again in Orca Settings > AI Provider Accounts)\\n ok@example.com\\n'\n )\n )\n })", "source_sha256": "75c0f227fa3892f569707b9af6e36f1e78b7446b7b2fbd43b70c1241975b76c1", "nontrivia_sha256": "6a556a3526f23a65d8bd6d67ef7bf5399dd32fdd555859d6ea6db62bf06c704c", "token_count": 121, "parameter_inputs": [], "decision": "keep", "reason": "Expired Claude account output gives sign-in guidance on that account while preserving the healthy account output.", "base_line": 681, "base_source_sha256": "75c0f227fa3892f569707b9af6e36f1e78b7446b7b2fbd43b70c1241975b76c1", "base_nontrivia_sha256": "6a556a3526f23a65d8bd6d67ef7bf5399dd32fdd555859d6ea6db62bf06c704c", "previous_case_indices": [39], "previous_case_decisions": [{"line": 676, "title": "tells the user which saved Claude accounts need a fresh sign-in", "decision": "keep", "reason": "Expired Claude account output gives sign-in guidance on that account while preserving the healthy account output."}], "inline_command_controls": []}, {"id": "1.29", "title": "lists accounts without forcing a provider usage refresh", "line": 690, "endLine": 704, "start": 26176, "end": 26683, "expression": "it('lists accounts without forcing a provider usage refresh', async () => {\n callMock.mockResolvedValue({\n id: 'test',\n ok: true,\n result: {\n claude: { accounts: [], activeAccountId: null },\n codex: { accounts: [], activeAccountId: null }\n },\n _meta: { runtimeId: 'test-runtime' }\n })\n\n await ACCOUNT_HANDLERS['account list']({ ...context('claude'), flags: new Map() })\n\n expect(callMock).toHaveBeenCalledWith('accounts.list', { refreshUsage: false })\n })", "source_sha256": "c528ea8edcc0b1d74be646a9e99d4d715c53464c8431a06abcffe0f8167244f9", "nontrivia_sha256": "42e3aee9eebf1049266e78cafb391328a6d954a81d748f2424e038c67928b8f3", "token_count": 99, "parameter_inputs": [], "decision": "keep", "reason": "Listing invokes accounts.list with refreshUsage:false, avoiding an unnecessary forced provider refresh.", "base_line": 707, "base_source_sha256": "bb85706220e8f18bab998f63a4ea2832058101cf67229d527dcc5a4c5fe73ed5", "base_nontrivia_sha256": "42e3aee9eebf1049266e78cafb391328a6d954a81d748f2424e038c67928b8f3", "previous_case_indices": [40], "previous_case_decisions": [{"line": 702, "title": "lists accounts without forcing a provider usage refresh", "decision": "keep", "reason": "Listing invokes accounts.list with refreshUsage:false, avoiding an unnecessary forced provider refresh."}], "inline_command_controls": []}], "parameter_tables": [{"id": "1.T1", "owner": "1.13", "line": 359, "endLine": 359, "start": 13526, "end": 13554, "expression": "it.each(['claude', 'codex'])", "source_sha256": "22605617730310a75b7d75ae63e9f0861692e9021f3279c453c3521632b0bc4e", "nontrivia_sha256": "532ea41f3c8730eb94419738935ee638dc5d3ee23457cef3d43c63726afc04e6", "token_count": 10, "domain": "['claude', 'codex']", "rows": [{"row": 1, "line": 359, "endLine": 359, "start": 13535, "end": 13543, "expression": "'claude'", "source_sha256": "b8b800d1bb97bfe9cb4f18c55471a2db5872dc99ec201ddd56bafc1f4dc8a92a", "nontrivia_sha256": "ceb128d6f96df279ee5dedc9c19a02110e0477fd483e5202e659ca70761f7c0f", "token_count": 1, "value": "claude", "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}, {"row": 2, "line": 359, "endLine": 359, "start": 13545, "end": 13552, "expression": "'codex'", "source_sha256": "2d91156ec00698f91fbf4f1a846553dfa924262203bd2ca81a4504f4f330832f", "nontrivia_sha256": "73212e665db481d2580c0f4362165127e2e1444fa9428adf026c05c3c358c45b", "token_count": 1, "value": "codex", "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}], "decision": "keep"}, {"id": "1.T2", "owner": "1.15", "line": 384, "endLine": 384, "start": 14651, "end": 14679, "expression": "it.each(['linux', 'darwin'])", "source_sha256": "5c41ac009fffcd1e14ef2cc94827a6928af2735b2cf9e10706da658c71929c77", "nontrivia_sha256": "545845054bacd04a438117efe5f0590d87e15df917d095a4c23031cffc0c6aa4", "token_count": 10, "domain": "['linux', 'darwin']", "rows": [{"row": 1, "line": 384, "endLine": 384, "start": 14660, "end": 14667, "expression": "'linux'", "source_sha256": "09d194165bd76c3f3dc6b372cc266be2e98c365d3658f818184f9b59182a0a3b", "nontrivia_sha256": "9e61ba1553513a8e07358a34feb8b5be818e36e3cbe1cab5eac691588d8575ad", "token_count": 1, "value": "linux", "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}, {"row": 2, "line": 384, "endLine": 384, "start": 14669, "end": 14677, "expression": "'darwin'", "source_sha256": "5439872b0b815293e9c1ca8fa801adb3ab87f33f1d24e842e43584033acffd97", "nontrivia_sha256": "6e395c48bee1b45059f87bfc2089da7e3f434c04dbda04c34672e57158c74d36", "token_count": 1, "value": "darwin", "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}], "decision": "keep"}, {"id": "1.T3", "owner": "1.21", "line": 543, "endLine": 543, "start": 21125, "end": 21162, "expression": "it.each(['claude', 'codex'] as const)", "source_sha256": "1d7639d7dd663736f518fbe4eb00f9d3d6a1c6af3a17702c4b80173427bd4569", "nontrivia_sha256": "40761ff845c5ae90267a196451d1f7118808f5685810c50b367e95f12d226dc9", "token_count": 12, "domain": "['claude', 'codex'] as const", "rows": [{"row": 1, "line": 543, "endLine": 543, "start": 21134, "end": 21142, "expression": "'claude'", "source_sha256": "b8b800d1bb97bfe9cb4f18c55471a2db5872dc99ec201ddd56bafc1f4dc8a92a", "nontrivia_sha256": "ceb128d6f96df279ee5dedc9c19a02110e0477fd483e5202e659ca70761f7c0f", "token_count": 1, "value": "claude", "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}, {"row": 2, "line": 543, "endLine": 543, "start": 21144, "end": 21151, "expression": "'codex'", "source_sha256": "2d91156ec00698f91fbf4f1a846553dfa924262203bd2ca81a4504f4f330832f", "nontrivia_sha256": "73212e665db481d2580c0f4362165127e2e1444fa9428adf026c05c3c358c45b", "token_count": 1, "value": "codex", "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}], "decision": "keep"}, {"id": "1.T4", "owner": "1.22", "line": 562, "endLine": 562, "start": 21756, "end": 21796, "expression": "it.each(['environment', 'pairing-code'])", "source_sha256": "1699ee701a8374c2af4825c3367bc74f238dcb80fb1dd9f061675353ec9184c9", "nontrivia_sha256": "a9bf74ed0dbc9981ba2b464ec506a7babbf141dda7c90cc1c532b807bd7bea9e", "token_count": 10, "domain": "['environment', 'pairing-code']", "rows": [{"row": 1, "line": 562, "endLine": 562, "start": 21765, "end": 21778, "expression": "'environment'", "source_sha256": "514b89467edcb340e947be4936b8a40a7d5f55ed922985e9332dca374c82d531", "nontrivia_sha256": "e887bbc8af1e1871240942f2b044aec3bf1efea23db541e81c4c404a683fb6ab", "token_count": 1, "value": "environment", "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}, {"row": 2, "line": 562, "endLine": 562, "start": 21780, "end": 21794, "expression": "'pairing-code'", "source_sha256": "af37d2c7b71777abf2e08beb1dcbbea49b2dc3d658c3218c70ed0f581ddafa05", "nontrivia_sha256": "0714c2ab3abb80e28e1b09361108dab2e9876a9c061993bd312427ea86306f75", "token_count": 1, "value": "pairing-code", "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}], "decision": "keep"}, {"id": "1.T5", "owner": "1.23", "line": 578, "endLine": 578, "start": 22223, "end": 22263, "expression": "it.each(['environment', 'pairing-code'])", "source_sha256": "1699ee701a8374c2af4825c3367bc74f238dcb80fb1dd9f061675353ec9184c9", "nontrivia_sha256": "a9bf74ed0dbc9981ba2b464ec506a7babbf141dda7c90cc1c532b807bd7bea9e", "token_count": 10, "domain": "['environment', 'pairing-code']", "rows": [{"row": 1, "line": 578, "endLine": 578, "start": 22232, "end": 22245, "expression": "'environment'", "source_sha256": "514b89467edcb340e947be4936b8a40a7d5f55ed922985e9332dca374c82d531", "nontrivia_sha256": "e887bbc8af1e1871240942f2b044aec3bf1efea23db541e81c4c404a683fb6ab", "token_count": 1, "value": "environment", "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}, {"row": 2, "line": 578, "endLine": 578, "start": 22247, "end": 22261, "expression": "'pairing-code'", "source_sha256": "af37d2c7b71777abf2e08beb1dcbbea49b2dc3d658c3218c70ed0f581ddafa05", "nontrivia_sha256": "0714c2ab3abb80e28e1b09361108dab2e9876a9c061993bd312427ea86306f75", "token_count": 1, "value": "pairing-code", "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}], "decision": "keep"}], "literal_array_inventory": [{"id": "1.A1", "owner": null, "line": 88, "endLine": 88, "start": 3033, "end": 3061, "expression": "[{ id: 'account-1', email }]", "source_sha256": "653fb0c02aa7b7791d3496aa4d13101e827242bca6c85960b1d701c118e6598a", "nontrivia_sha256": "559b281f0f0e1a21ccf33805ae33b9bd586aa23a1504a67b7d20eaff6da21a4e", "token_count": 9, "rows": [{"row": 1, "line": 88, "endLine": 88, "start": 3034, "end": 3060, "expression": "{ id: 'account-1', email }", "source_sha256": "8050005e9945f58d03355ed3e7b5b50acc47ca5e37f5f661e77144ae56da5774", "nontrivia_sha256": "f480d741fdbe992c73e0a0c75f77d42d69ae2d5ad2b19f0dbb426b9ce4c4d2ed", "token_count": 7}]}, {"id": "1.A2", "owner": null, "line": 108, "endLine": 108, "start": 3805, "end": 3823, "expression": "[['agent', agent]]", "source_sha256": "ae99b727bfb85ca3febba5b1f2ab72f569cef80ec1419a212a04135e1e8b735d", "nontrivia_sha256": "acf70472663cc2e0f9d453668548d0cc0d587f51c9e93a703fb5b920f2c197f4", "token_count": 7, "rows": [{"row": 1, "line": 108, "endLine": 108, "start": 3806, "end": 3822, "expression": "['agent', agent]", "source_sha256": "a292a9929b4900abcc207d97f78a0564b1d73f1a6b2af35dec66c591b8cbd706", "nontrivia_sha256": "db1989e73509337e4fe7143e661005b1c936c8cf31cbcd716a96fbe8130feffc", "token_count": 5}]}, {"id": "1.A3", "owner": null, "line": 108, "endLine": 108, "start": 3806, "end": 3822, "expression": "['agent', agent]", "source_sha256": "a292a9929b4900abcc207d97f78a0564b1d73f1a6b2af35dec66c591b8cbd706", "nontrivia_sha256": "db1989e73509337e4fe7143e661005b1c936c8cf31cbcd716a96fbe8130feffc", "token_count": 5, "rows": [{"row": 1, "line": 108, "endLine": 108, "start": 3807, "end": 3814, "expression": "'agent'", "source_sha256": "8314def34678f3c2ab8fcb0f207f69fec2113942e2ac995e19b145497e629bf1", "nontrivia_sha256": "2039da62e34fa9611f0b09e0e30d8c7f89327f34de68e36d64a7cfdcd61544af", "token_count": 1}, {"row": 2, "line": 108, "endLine": 108, "start": 3816, "end": 3821, "expression": "agent", "source_sha256": "d4f0bc5a29de06b510f9aa428f1eedba926012b591fef7a518e776a7c9bd1824", "nontrivia_sha256": "a688c68f2cd93572bd150730d4ef3dd48cd7c48ab8fa1bf297b032bb12924623", "token_count": 1}]}, {"id": "1.A4", "owner": null, "line": 110, "endLine": 110, "start": 3853, "end": 3855, "expression": "[]", "source_sha256": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945", "nontrivia_sha256": "c1699106df2a1ef0015053a1a383a8c8028c17cf77807419531aec8a456e0bc7", "token_count": 2, "rows": []}, {"id": "1.A5", "owner": null, "line": 118, "endLine": 118, "start": 4129, "end": 4186, "expression": "['inherit', json ? process.stderr : 'inherit', 'inherit']", "source_sha256": "7a816bb3a4ed6b1bff6345525422954fa883b68dd2b5516e5b3e4a343259bea8", "nontrivia_sha256": "ecc68918af3b674227030d860536fc29e998675045bcb1c473e25b6a7d4b802c", "token_count": 13, "rows": [{"row": 1, "line": 118, "endLine": 118, "start": 4130, "end": 4139, "expression": "'inherit'", "source_sha256": "0829d3bc036da00e8d6c728dc5927b6022942e76413eba1b7afcc4af0ae0345d", "nontrivia_sha256": "c4b0ccd3eeb479f8a87b50a79ea90704ec3030ab006760516b072471dd5911ff", "token_count": 1}, {"row": 2, "line": 118, "endLine": 118, "start": 4141, "end": 4174, "expression": "json ? process.stderr : 'inherit'", "source_sha256": "69ca3e9514d8869ef7a30b88f83bdd767bc9dbc2d4f6feaa13baae833534a25e", "nontrivia_sha256": "25c9a10d182eb08efbbe3cb864694247152157fc8d75dedc721635d9494cb92b", "token_count": 7}, {"row": 3, "line": 118, "endLine": 118, "start": 4176, "end": 4185, "expression": "'inherit'", "source_sha256": "0829d3bc036da00e8d6c728dc5927b6022942e76413eba1b7afcc4af0ae0345d", "nontrivia_sha256": "c4b0ccd3eeb479f8a87b50a79ea90704ec3030ab006760516b072471dd5911ff", "token_count": 1}]}, {"id": "1.A6", "owner": null, "line": 122, "endLine": 122, "start": 4368, "end": 4370, "expression": "[]", "source_sha256": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945", "nontrivia_sha256": "c1699106df2a1ef0015053a1a383a8c8028c17cf77807419531aec8a456e0bc7", "token_count": 2, "rows": []}, {"id": "1.A7", "owner": null, "line": 133, "endLine": 133, "start": 4778, "end": 4848, "expression": "[ACCOUNT_IMPORT_RUNTIME_CAPABILITY, CLAUDE_SIGN_IN_RUNTIME_CAPABILITY]", "source_sha256": "af4595a927637865b97655004e24675f81878f40e898c2792a1e8405521112fc", "nontrivia_sha256": "836aa4d8b32a5563407dee4fcb3601f815b85a2a04bba8d3aae3365c4e9e83a5", "token_count": 5, "rows": [{"row": 1, "line": 133, "endLine": 133, "start": 4779, "end": 4812, "expression": "ACCOUNT_IMPORT_RUNTIME_CAPABILITY", "source_sha256": "1c7978a89b5bd969a8d326048d7a196d69c4d5928db6c64f6345370295a68f8f", "nontrivia_sha256": "8046fd7b278dffc4c19357cce70abeba49730cee56598872d6b84bdcbd198d90", "token_count": 1}, {"row": 2, "line": 133, "endLine": 133, "start": 4814, "end": 4847, "expression": "CLAUDE_SIGN_IN_RUNTIME_CAPABILITY", "source_sha256": "645efa2ef96133a90a4f478d83523f4a8a16cb1fdf36768f4b4c4c9f73c8b5f3", "nontrivia_sha256": "7f065db905a94492be70e45bc77efa21726ba5081ffe7d0f278fb2676953123a", "token_count": 1}]}, {"id": "1.A8", "owner": "1.1", "line": 180, "endLine": 180, "start": 6439, "end": 6465, "expression": "['login', '--device-auth']", "source_sha256": "5d9009d6aff14b65d349bb96971a846241cdda322ce3444d78ded5d631ee8143", "nontrivia_sha256": "6c5d3eeb9eac8894993e67256b7a5b85e5b8018f0f26ef74f050d6f6c76a1c66", "token_count": 5, "rows": [{"row": 1, "line": 180, "endLine": 180, "start": 6440, "end": 6447, "expression": "'login'", "source_sha256": "dc90c833eb74cff8775955263a27347c861e6c51200c22b06447ba63a1bf6661", "nontrivia_sha256": "e6cb0f814857e9c2f348d6943706d97eea9f09030c51c5a1d87cd15ea8733c02", "token_count": 1}, {"row": 2, "line": 180, "endLine": 180, "start": 6449, "end": 6464, "expression": "'--device-auth'", "source_sha256": "4aa04bddb699361e874bb5fa89748c8b87caec8d0ad5f4bfe847b8a98c496aa2", "nontrivia_sha256": "93cb5ed72bd464e0b2cfa9a9d8d3fbbc9c9fa0a0414ded9038e8e0af9d467940", "token_count": 1}]}, {"id": "1.A9", "owner": "1.1", "line": 182, "endLine": 182, "start": 6514, "end": 6552, "expression": "['inherit', process.stderr, 'inherit']", "source_sha256": "777d0e5ab488e22c113d1a6e0aa06bf0f6ea4f7dcafb32aa65319a4964c69eef", "nontrivia_sha256": "07dd49499fe20a472b3594398aae43d2e57836dfaa3b51ed6fc8524affc4636d", "token_count": 9, "rows": [{"row": 1, "line": 182, "endLine": 182, "start": 6515, "end": 6524, "expression": "'inherit'", "source_sha256": "0829d3bc036da00e8d6c728dc5927b6022942e76413eba1b7afcc4af0ae0345d", "nontrivia_sha256": "c4b0ccd3eeb479f8a87b50a79ea90704ec3030ab006760516b072471dd5911ff", "token_count": 1}, {"row": 2, "line": 182, "endLine": 182, "start": 6526, "end": 6540, "expression": "process.stderr", "source_sha256": "a75a8cdc4070e412980f7c56e2d77f7b2de90ea5fe0f706abfd10a07821db291", "nontrivia_sha256": "14bb72c5406b8f5f157eb0f4abe58c62b0d61a0d4242b22cb9924e2bc6d0544f", "token_count": 3}, {"row": 3, "line": 182, "endLine": 182, "start": 6542, "end": 6551, "expression": "'inherit'", "source_sha256": "0829d3bc036da00e8d6c728dc5927b6022942e76413eba1b7afcc4af0ae0345d", "nontrivia_sha256": "c4b0ccd3eeb479f8a87b50a79ea90704ec3030ab006760516b072471dd5911ff", "token_count": 1}]}, {"id": "1.A10", "owner": "1.2", "line": 198, "endLine": 198, "start": 7260, "end": 7286, "expression": "[11, 'inherit', 'inherit']", "source_sha256": "f1e2517593533182a89df60c9908144bb871dfe1ec898aac0a7a0d2870a984c1", "nontrivia_sha256": "cc7a2981c12709cdee1080d4327e3d28ae5a73413419ffd39d498ab4cbe901a2", "token_count": 7, "rows": [{"row": 1, "line": 198, "endLine": 198, "start": 7261, "end": 7263, "expression": "11", "source_sha256": "4fc82b26aecb47d2868c4efbe3581732a3e7cbcc6c2efb32062c08170a05eeb8", "nontrivia_sha256": "3e7b23b1cdeffe78a0de1af3759ef3db7b518c2cad32b5a12f94a5fa6b153183", "token_count": 1}, {"row": 2, "line": 198, "endLine": 198, "start": 7265, "end": 7274, "expression": "'inherit'", "source_sha256": "0829d3bc036da00e8d6c728dc5927b6022942e76413eba1b7afcc4af0ae0345d", "nontrivia_sha256": "c4b0ccd3eeb479f8a87b50a79ea90704ec3030ab006760516b072471dd5911ff", "token_count": 1}, {"row": 3, "line": 198, "endLine": 198, "start": 7276, "end": 7285, "expression": "'inherit'", "source_sha256": "0829d3bc036da00e8d6c728dc5927b6022942e76413eba1b7afcc4af0ae0345d", "nontrivia_sha256": "c4b0ccd3eeb479f8a87b50a79ea90704ec3030ab006760516b072471dd5911ff", "token_count": 1}]}, {"id": "1.A11", "owner": "1.2", "line": 206, "endLine": 206, "start": 7436, "end": 7462, "expression": "['login', '--device-auth']", "source_sha256": "5d9009d6aff14b65d349bb96971a846241cdda322ce3444d78ded5d631ee8143", "nontrivia_sha256": "6c5d3eeb9eac8894993e67256b7a5b85e5b8018f0f26ef74f050d6f6c76a1c66", "token_count": 5, "rows": [{"row": 1, "line": 206, "endLine": 206, "start": 7437, "end": 7444, "expression": "'login'", "source_sha256": "dc90c833eb74cff8775955263a27347c861e6c51200c22b06447ba63a1bf6661", "nontrivia_sha256": "e6cb0f814857e9c2f348d6943706d97eea9f09030c51c5a1d87cd15ea8733c02", "token_count": 1}, {"row": 2, "line": 206, "endLine": 206, "start": 7446, "end": 7461, "expression": "'--device-auth'", "source_sha256": "4aa04bddb699361e874bb5fa89748c8b87caec8d0ad5f4bfe847b8a98c496aa2", "nontrivia_sha256": "93cb5ed72bd464e0b2cfa9a9d8d3fbbc9c9fa0a0414ded9038e8e0af9d467940", "token_count": 1}]}, {"id": "1.A12", "owner": "1.2", "line": 207, "endLine": 207, "start": 7503, "end": 7529, "expression": "[11, 'inherit', 'inherit']", "source_sha256": "f1e2517593533182a89df60c9908144bb871dfe1ec898aac0a7a0d2870a984c1", "nontrivia_sha256": "cc7a2981c12709cdee1080d4327e3d28ae5a73413419ffd39d498ab4cbe901a2", "token_count": 7, "rows": [{"row": 1, "line": 207, "endLine": 207, "start": 7504, "end": 7506, "expression": "11", "source_sha256": "4fc82b26aecb47d2868c4efbe3581732a3e7cbcc6c2efb32062c08170a05eeb8", "nontrivia_sha256": "3e7b23b1cdeffe78a0de1af3759ef3db7b518c2cad32b5a12f94a5fa6b153183", "token_count": 1}, {"row": 2, "line": 207, "endLine": 207, "start": 7508, "end": 7517, "expression": "'inherit'", "source_sha256": "0829d3bc036da00e8d6c728dc5927b6022942e76413eba1b7afcc4af0ae0345d", "nontrivia_sha256": "c4b0ccd3eeb479f8a87b50a79ea90704ec3030ab006760516b072471dd5911ff", "token_count": 1}, {"row": 3, "line": 207, "endLine": 207, "start": 7519, "end": 7528, "expression": "'inherit'", "source_sha256": "0829d3bc036da00e8d6c728dc5927b6022942e76413eba1b7afcc4af0ae0345d", "nontrivia_sha256": "c4b0ccd3eeb479f8a87b50a79ea90704ec3030ab006760516b072471dd5911ff", "token_count": 1}]}, {"id": "1.A13", "owner": "1.3", "line": 216, "endLine": 216, "start": 7868, "end": 7894, "expression": "[11, 'inherit', 'inherit']", "source_sha256": "f1e2517593533182a89df60c9908144bb871dfe1ec898aac0a7a0d2870a984c1", "nontrivia_sha256": "cc7a2981c12709cdee1080d4327e3d28ae5a73413419ffd39d498ab4cbe901a2", "token_count": 7, "rows": [{"row": 1, "line": 216, "endLine": 216, "start": 7869, "end": 7871, "expression": "11", "source_sha256": "4fc82b26aecb47d2868c4efbe3581732a3e7cbcc6c2efb32062c08170a05eeb8", "nontrivia_sha256": "3e7b23b1cdeffe78a0de1af3759ef3db7b518c2cad32b5a12f94a5fa6b153183", "token_count": 1}, {"row": 2, "line": 216, "endLine": 216, "start": 7873, "end": 7882, "expression": "'inherit'", "source_sha256": "0829d3bc036da00e8d6c728dc5927b6022942e76413eba1b7afcc4af0ae0345d", "nontrivia_sha256": "c4b0ccd3eeb479f8a87b50a79ea90704ec3030ab006760516b072471dd5911ff", "token_count": 1}, {"row": 3, "line": 216, "endLine": 216, "start": 7884, "end": 7893, "expression": "'inherit'", "source_sha256": "0829d3bc036da00e8d6c728dc5927b6022942e76413eba1b7afcc4af0ae0345d", "nontrivia_sha256": "c4b0ccd3eeb479f8a87b50a79ea90704ec3030ab006760516b072471dd5911ff", "token_count": 1}]}, {"id": "1.A14", "owner": "1.4", "line": 231, "endLine": 231, "start": 8423, "end": 8454, "expression": "[11, process.stderr, 'inherit']", "source_sha256": "1c36ac95dc89819a61c908166b60f0310a872888d1340702a6511bd4a64643ca", "nontrivia_sha256": "c1b509e030efbbd4ab7b3b7b0e81053e2683bd0026985facf4be5e3b96b11b8f", "token_count": 9, "rows": [{"row": 1, "line": 231, "endLine": 231, "start": 8424, "end": 8426, "expression": "11", "source_sha256": "4fc82b26aecb47d2868c4efbe3581732a3e7cbcc6c2efb32062c08170a05eeb8", "nontrivia_sha256": "3e7b23b1cdeffe78a0de1af3759ef3db7b518c2cad32b5a12f94a5fa6b153183", "token_count": 1}, {"row": 2, "line": 231, "endLine": 231, "start": 8428, "end": 8442, "expression": "process.stderr", "source_sha256": "a75a8cdc4070e412980f7c56e2d77f7b2de90ea5fe0f706abfd10a07821db291", "nontrivia_sha256": "14bb72c5406b8f5f157eb0f4abe58c62b0d61a0d4242b22cb9924e2bc6d0544f", "token_count": 3}, {"row": 3, "line": 231, "endLine": 231, "start": 8444, "end": 8453, "expression": "'inherit'", "source_sha256": "0829d3bc036da00e8d6c728dc5927b6022942e76413eba1b7afcc4af0ae0345d", "nontrivia_sha256": "c4b0ccd3eeb479f8a87b50a79ea90704ec3030ab006760516b072471dd5911ff", "token_count": 1}]}, {"id": "1.A15", "owner": "1.4", "line": 239, "endLine": 239, "start": 8619, "end": 8645, "expression": "['login', '--device-auth']", "source_sha256": "5d9009d6aff14b65d349bb96971a846241cdda322ce3444d78ded5d631ee8143", "nontrivia_sha256": "6c5d3eeb9eac8894993e67256b7a5b85e5b8018f0f26ef74f050d6f6c76a1c66", "token_count": 5, "rows": [{"row": 1, "line": 239, "endLine": 239, "start": 8620, "end": 8627, "expression": "'login'", "source_sha256": "dc90c833eb74cff8775955263a27347c861e6c51200c22b06447ba63a1bf6661", "nontrivia_sha256": "e6cb0f814857e9c2f348d6943706d97eea9f09030c51c5a1d87cd15ea8733c02", "token_count": 1}, {"row": 2, "line": 239, "endLine": 239, "start": 8629, "end": 8644, "expression": "'--device-auth'", "source_sha256": "4aa04bddb699361e874bb5fa89748c8b87caec8d0ad5f4bfe847b8a98c496aa2", "nontrivia_sha256": "93cb5ed72bd464e0b2cfa9a9d8d3fbbc9c9fa0a0414ded9038e8e0af9d467940", "token_count": 1}]}, {"id": "1.A16", "owner": "1.4", "line": 240, "endLine": 240, "start": 8686, "end": 8717, "expression": "[11, process.stderr, 'inherit']", "source_sha256": "1c36ac95dc89819a61c908166b60f0310a872888d1340702a6511bd4a64643ca", "nontrivia_sha256": "c1b509e030efbbd4ab7b3b7b0e81053e2683bd0026985facf4be5e3b96b11b8f", "token_count": 9, "rows": [{"row": 1, "line": 240, "endLine": 240, "start": 8687, "end": 8689, "expression": "11", "source_sha256": "4fc82b26aecb47d2868c4efbe3581732a3e7cbcc6c2efb32062c08170a05eeb8", "nontrivia_sha256": "3e7b23b1cdeffe78a0de1af3759ef3db7b518c2cad32b5a12f94a5fa6b153183", "token_count": 1}, {"row": 2, "line": 240, "endLine": 240, "start": 8691, "end": 8705, "expression": "process.stderr", "source_sha256": "a75a8cdc4070e412980f7c56e2d77f7b2de90ea5fe0f706abfd10a07821db291", "nontrivia_sha256": "14bb72c5406b8f5f157eb0f4abe58c62b0d61a0d4242b22cb9924e2bc6d0544f", "token_count": 3}, {"row": 3, "line": 240, "endLine": 240, "start": 8707, "end": 8716, "expression": "'inherit'", "source_sha256": "0829d3bc036da00e8d6c728dc5927b6022942e76413eba1b7afcc4af0ae0345d", "nontrivia_sha256": "c4b0ccd3eeb479f8a87b50a79ea90704ec3030ab006760516b072471dd5911ff", "token_count": 1}]}, {"id": "1.A17", "owner": "1.5", "line": 252, "endLine": 252, "start": 9110, "end": 9172, "expression": "['/d', '/c', 'C:\\\\tools\\\\codex.cmd', 'login', '--device-auth']", "source_sha256": "09f412ea757bf116d8e64071e82bca8c71371afaf7a2f68add82f48c12b289d2", "nontrivia_sha256": "21b7332a94e0184d55dcfecace6473bc51fe7dc0bb4fe795e5e3b1f94ad47b23", "token_count": 11, "rows": [{"row": 1, "line": 252, "endLine": 252, "start": 9111, "end": 9115, "expression": "'/d'", "source_sha256": "68c170d3c875f7acd6631e32ba3d2731af625bfbadef64dc691895cd3907275b", "nontrivia_sha256": "f065c7887427a6f807dfa65339e3573610a31548798790cc44eac0357b36c110", "token_count": 1}, {"row": 2, "line": 252, "endLine": 252, "start": 9117, "end": 9121, "expression": "'/c'", "source_sha256": "753607e8e35ebdd7839c2802535d6644ef1a15efd4eda55b19847eea1d8c684a", "nontrivia_sha256": "ce56a7c38fb975a047a63247f007fddd88d68bfbcd163b2b9831f07341d637b9", "token_count": 1}, {"row": 3, "line": 252, "endLine": 252, "start": 9123, "end": 9145, "expression": "'C:\\\\tools\\\\codex.cmd'", "source_sha256": "2288956e166e3890cd35d79a23896b551868e68b497e06de63018e75f01f7d85", "nontrivia_sha256": "c0043fe9cc3e94ab69df4c51d25bebbedf879dca03829a88d1bd3c9b8331b4f0", "token_count": 1}, {"row": 4, "line": 252, "endLine": 252, "start": 9147, "end": 9154, "expression": "'login'", "source_sha256": "dc90c833eb74cff8775955263a27347c861e6c51200c22b06447ba63a1bf6661", "nontrivia_sha256": "e6cb0f814857e9c2f348d6943706d97eea9f09030c51c5a1d87cd15ea8733c02", "token_count": 1}, {"row": 5, "line": 252, "endLine": 252, "start": 9156, "end": 9171, "expression": "'--device-auth'", "source_sha256": "4aa04bddb699361e874bb5fa89748c8b87caec8d0ad5f4bfe847b8a98c496aa2", "nontrivia_sha256": "93cb5ed72bd464e0b2cfa9a9d8d3fbbc9c9fa0a0414ded9038e8e0af9d467940", "token_count": 1}]}, {"id": "1.A18", "owner": "1.5", "line": 253, "endLine": 253, "start": 9213, "end": 9246, "expression": "['inherit', 'inherit', 'inherit']", "source_sha256": "6e2295088c3ed8c8e36e4d7e381eb7a283f71829c3f619e9d64fc3ed76d76319", "nontrivia_sha256": "5bec0dd93a31a44842ca1089d418f7a426ac119cd91bfdaf1365d12cf3d2e0ed", "token_count": 7, "rows": [{"row": 1, "line": 253, "endLine": 253, "start": 9214, "end": 9223, "expression": "'inherit'", "source_sha256": "0829d3bc036da00e8d6c728dc5927b6022942e76413eba1b7afcc4af0ae0345d", "nontrivia_sha256": "c4b0ccd3eeb479f8a87b50a79ea90704ec3030ab006760516b072471dd5911ff", "token_count": 1}, {"row": 2, "line": 253, "endLine": 253, "start": 9225, "end": 9234, "expression": "'inherit'", "source_sha256": "0829d3bc036da00e8d6c728dc5927b6022942e76413eba1b7afcc4af0ae0345d", "nontrivia_sha256": "c4b0ccd3eeb479f8a87b50a79ea90704ec3030ab006760516b072471dd5911ff", "token_count": 1}, {"row": 3, "line": 253, "endLine": 253, "start": 9236, "end": 9245, "expression": "'inherit'", "source_sha256": "0829d3bc036da00e8d6c728dc5927b6022942e76413eba1b7afcc4af0ae0345d", "nontrivia_sha256": "c4b0ccd3eeb479f8a87b50a79ea90704ec3030ab006760516b072471dd5911ff", "token_count": 1}]}, {"id": "1.A19", "owner": "1.6", "line": 266, "endLine": 266, "start": 9676, "end": 9720, "expression": "['/d', '/c', shim, 'login', '--device-auth']", "source_sha256": "64e607d0e9b2e9c4ed48e2191a3257cdcebad94e23f9f6dc49292909365ac06b", "nontrivia_sha256": "2b1ec5ebb856e6f6ca15c29cc735fac2330362a40c413398fd43acd636d487a3", "token_count": 11, "rows": [{"row": 1, "line": 266, "endLine": 266, "start": 9677, "end": 9681, "expression": "'/d'", "source_sha256": "68c170d3c875f7acd6631e32ba3d2731af625bfbadef64dc691895cd3907275b", "nontrivia_sha256": "f065c7887427a6f807dfa65339e3573610a31548798790cc44eac0357b36c110", "token_count": 1}, {"row": 2, "line": 266, "endLine": 266, "start": 9683, "end": 9687, "expression": "'/c'", "source_sha256": "753607e8e35ebdd7839c2802535d6644ef1a15efd4eda55b19847eea1d8c684a", "nontrivia_sha256": "ce56a7c38fb975a047a63247f007fddd88d68bfbcd163b2b9831f07341d637b9", "token_count": 1}, {"row": 3, "line": 266, "endLine": 266, "start": 9689, "end": 9693, "expression": "shim", "source_sha256": "04e666aa09809daf691a99cc7bf2d57ba09bac171966a71812ffd049d7c96bb1", "nontrivia_sha256": "5b7d5221f18ec0231bee66f26ed6afbc42bbca8dc15c1cfc4daecb6bc2df8691", "token_count": 1}, {"row": 4, "line": 266, "endLine": 266, "start": 9695, "end": 9702, "expression": "'login'", "source_sha256": "dc90c833eb74cff8775955263a27347c861e6c51200c22b06447ba63a1bf6661", "nontrivia_sha256": "e6cb0f814857e9c2f348d6943706d97eea9f09030c51c5a1d87cd15ea8733c02", "token_count": 1}, {"row": 5, "line": 266, "endLine": 266, "start": 9704, "end": 9719, "expression": "'--device-auth'", "source_sha256": "4aa04bddb699361e874bb5fa89748c8b87caec8d0ad5f4bfe847b8a98c496aa2", "nontrivia_sha256": "93cb5ed72bd464e0b2cfa9a9d8d3fbbc9c9fa0a0414ded9038e8e0af9d467940", "token_count": 1}]}, {"id": "1.A20", "owner": "1.8", "line": 288, "endLine": 288, "start": 10661, "end": 10670, "expression": "[nodeBin]", "source_sha256": "9c091d7256f67df8f3f57c83cf0963b6cc7d4cc14805ebcb4a5bfab63301b60b", "nontrivia_sha256": "237718b56c0c08a4dd19728429bd51b22ea7171a193fc95658f6948ad1afc4d7", "token_count": 3, "rows": [{"row": 1, "line": 288, "endLine": 288, "start": 10662, "end": 10669, "expression": "nodeBin", "source_sha256": "2dd2d2f8775a59de18ba04758c4e64bba3640a7ae69709b0c9a8a10ee6cad933", "nontrivia_sha256": "ee36f24943bc4a8d8e9e8bd20fdef088e9676e841aa78d15f9dee904e636f07c", "token_count": 1}]}, {"id": "1.A21", "owner": "1.9", "line": 301, "endLine": 301, "start": 11251, "end": 11260, "expression": "[nodeBin]", "source_sha256": "9c091d7256f67df8f3f57c83cf0963b6cc7d4cc14805ebcb4a5bfab63301b60b", "nontrivia_sha256": "237718b56c0c08a4dd19728429bd51b22ea7171a193fc95658f6948ad1afc4d7", "token_count": 3, "rows": [{"row": 1, "line": 301, "endLine": 301, "start": 11252, "end": 11259, "expression": "nodeBin", "source_sha256": "2dd2d2f8775a59de18ba04758c4e64bba3640a7ae69709b0c9a8a10ee6cad933", "nontrivia_sha256": "ee36f24943bc4a8d8e9e8bd20fdef088e9676e841aa78d15f9dee904e636f07c", "token_count": 1}]}, {"id": "1.A22", "owner": "1.13", "line": 359, "endLine": 359, "start": 13534, "end": 13553, "expression": "['claude', 'codex']", "source_sha256": "ba72df2a948103d352f165f2898a68cb2b15d8f3485bec813b0a8d403e1f6be4", "nontrivia_sha256": "922b01a2e6bad0f7706c3a19dd8e4111a3388e3e9265c3106a1afce11cd49033", "token_count": 5, "rows": [{"row": 1, "line": 359, "endLine": 359, "start": 13535, "end": 13543, "expression": "'claude'", "source_sha256": "b8b800d1bb97bfe9cb4f18c55471a2db5872dc99ec201ddd56bafc1f4dc8a92a", "nontrivia_sha256": "ceb128d6f96df279ee5dedc9c19a02110e0477fd483e5202e659ca70761f7c0f", "token_count": 1}, {"row": 2, "line": 359, "endLine": 359, "start": 13545, "end": 13552, "expression": "'codex'", "source_sha256": "2d91156ec00698f91fbf4f1a846553dfa924262203bd2ca81a4504f4f330832f", "nontrivia_sha256": "73212e665db481d2580c0f4362165127e2e1444fa9428adf026c05c3c358c45b", "token_count": 1}]}, {"id": "1.A23", "owner": "1.15", "line": 384, "endLine": 384, "start": 14659, "end": 14678, "expression": "['linux', 'darwin']", "source_sha256": "93950ccec15fbbe003b654e9e48b38d2cea7c623d2048e476c2d00a716b26066", "nontrivia_sha256": "f9ad89c2cd978197a287258e6a7adc3906c3b913114fa99144f7d2a9a0019df6", "token_count": 5, "rows": [{"row": 1, "line": 384, "endLine": 384, "start": 14660, "end": 14667, "expression": "'linux'", "source_sha256": "09d194165bd76c3f3dc6b372cc266be2e98c365d3658f818184f9b59182a0a3b", "nontrivia_sha256": "9e61ba1553513a8e07358a34feb8b5be818e36e3cbe1cab5eac691588d8575ad", "token_count": 1}, {"row": 2, "line": 384, "endLine": 384, "start": 14669, "end": 14677, "expression": "'darwin'", "source_sha256": "5439872b0b815293e9c1ca8fa801adb3ab87f33f1d24e842e43584033acffd97", "nontrivia_sha256": "6e395c48bee1b45059f87bfc2089da7e3f434c04dbda04c34672e57158c74d36", "token_count": 1}]}, {"id": "1.A24", "owner": "1.18", "line": 480, "endLine": 480, "start": 18750, "end": 18820, "expression": "[ACCOUNT_IMPORT_RUNTIME_CAPABILITY, CLAUDE_SIGN_IN_RUNTIME_CAPABILITY]", "source_sha256": "af4595a927637865b97655004e24675f81878f40e898c2792a1e8405521112fc", "nontrivia_sha256": "836aa4d8b32a5563407dee4fcb3601f815b85a2a04bba8d3aae3365c4e9e83a5", "token_count": 5, "rows": [{"row": 1, "line": 480, "endLine": 480, "start": 18751, "end": 18784, "expression": "ACCOUNT_IMPORT_RUNTIME_CAPABILITY", "source_sha256": "1c7978a89b5bd969a8d326048d7a196d69c4d5928db6c64f6345370295a68f8f", "nontrivia_sha256": "8046fd7b278dffc4c19357cce70abeba49730cee56598872d6b84bdcbd198d90", "token_count": 1}, {"row": 2, "line": 480, "endLine": 480, "start": 18786, "end": 18819, "expression": "CLAUDE_SIGN_IN_RUNTIME_CAPABILITY", "source_sha256": "645efa2ef96133a90a4f478d83523f4a8a16cb1fdf36768f4b4c4c9f73c8b5f3", "nontrivia_sha256": "7f065db905a94492be70e45bc77efa21726ba5081ffe7d0f278fb2676953123a", "token_count": 1}]}, {"id": "1.A25", "owner": "1.20", "line": 532, "endLine": 532, "start": 20726, "end": 20761, "expression": "[ACCOUNT_IMPORT_RUNTIME_CAPABILITY]", "source_sha256": "88902077eee28e23d81d6b64abf43333ef9213d1f2db7ee73cee9f14934ad7e0", "nontrivia_sha256": "0cf984015d5e45300245564d1944cdccfbf80f1cc2a4427e7252c1a5dd0fbe83", "token_count": 3, "rows": [{"row": 1, "line": 532, "endLine": 532, "start": 20727, "end": 20760, "expression": "ACCOUNT_IMPORT_RUNTIME_CAPABILITY", "source_sha256": "1c7978a89b5bd969a8d326048d7a196d69c4d5928db6c64f6345370295a68f8f", "nontrivia_sha256": "8046fd7b278dffc4c19357cce70abeba49730cee56598872d6b84bdcbd198d90", "token_count": 1}]}, {"id": "1.A26", "owner": "1.21", "line": 543, "endLine": 543, "start": 21133, "end": 21152, "expression": "['claude', 'codex']", "source_sha256": "ba72df2a948103d352f165f2898a68cb2b15d8f3485bec813b0a8d403e1f6be4", "nontrivia_sha256": "922b01a2e6bad0f7706c3a19dd8e4111a3388e3e9265c3106a1afce11cd49033", "token_count": 5, "rows": [{"row": 1, "line": 543, "endLine": 543, "start": 21134, "end": 21142, "expression": "'claude'", "source_sha256": "b8b800d1bb97bfe9cb4f18c55471a2db5872dc99ec201ddd56bafc1f4dc8a92a", "nontrivia_sha256": "ceb128d6f96df279ee5dedc9c19a02110e0477fd483e5202e659ca70761f7c0f", "token_count": 1}, {"row": 2, "line": 543, "endLine": 543, "start": 21144, "end": 21151, "expression": "'codex'", "source_sha256": "2d91156ec00698f91fbf4f1a846553dfa924262203bd2ca81a4504f4f330832f", "nontrivia_sha256": "73212e665db481d2580c0f4362165127e2e1444fa9428adf026c05c3c358c45b", "token_count": 1}]}, {"id": "1.A27", "owner": "1.21", "line": 549, "endLine": 549, "start": 21362, "end": 21364, "expression": "[]", "source_sha256": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945", "nontrivia_sha256": "c1699106df2a1ef0015053a1a383a8c8028c17cf77807419531aec8a456e0bc7", "token_count": 2, "rows": []}, {"id": "1.A28", "owner": "1.22", "line": 562, "endLine": 562, "start": 21764, "end": 21795, "expression": "['environment', 'pairing-code']", "source_sha256": "47ca5b6a776b1da60a6dc0de673ae0e67bd95df7d07f353c1fba6cb224db6855", "nontrivia_sha256": "fdbd48f638f1a7aa623995a1599d868c208922be78fe2270b1bbf3a91805b2cc", "token_count": 5, "rows": [{"row": 1, "line": 562, "endLine": 562, "start": 21765, "end": 21778, "expression": "'environment'", "source_sha256": "514b89467edcb340e947be4936b8a40a7d5f55ed922985e9332dca374c82d531", "nontrivia_sha256": "e887bbc8af1e1871240942f2b044aec3bf1efea23db541e81c4c404a683fb6ab", "token_count": 1}, {"row": 2, "line": 562, "endLine": 562, "start": 21780, "end": 21794, "expression": "'pairing-code'", "source_sha256": "af37d2c7b71777abf2e08beb1dcbbea49b2dc3d658c3218c70ed0f581ddafa05", "nontrivia_sha256": "0714c2ab3abb80e28e1b09361108dab2e9876a9c061993bd312427ea86306f75", "token_count": 1}]}, {"id": "1.A29", "owner": "1.22", "line": 568, "endLine": 571, "start": 22016, "end": 22091, "expression": "[\n ['agent', 'codex'],\n [flag, 'homelab']\n ]", "source_sha256": "aa31c3e0a1714c8a626e9fad82ef0ad9d65d47c37a6cdcad6f9417f2da8583a0", "nontrivia_sha256": "75ee8e4642646141a177952cd8e719387786a4382cbd6ae476ec0cd9d91f4538", "token_count": 13, "rows": [{"row": 1, "line": 569, "endLine": 569, "start": 22030, "end": 22048, "expression": "['agent', 'codex']", "source_sha256": "aa6913adeffd8f136b6c2cae23e71313a71b834755c529fd7c9d48b1ef220778", "nontrivia_sha256": "654bee37ffaccefaba2a9052af329d92ee9816ad34fb0dc218a3aeb770209882", "token_count": 5}, {"row": 2, "line": 570, "endLine": 570, "start": 22062, "end": 22079, "expression": "[flag, 'homelab']", "source_sha256": "df7b6f6dd5b1cc34c1d6fd920d03b2057d321c1a1cd20c29367427ca4035afed", "nontrivia_sha256": "458932a8eb57f151834e3a19f184d8e697f8381ec6799a453987151c41415ec6", "token_count": 5}]}, {"id": "1.A30", "owner": "1.22", "line": 569, "endLine": 569, "start": 22030, "end": 22048, "expression": "['agent', 'codex']", "source_sha256": "aa6913adeffd8f136b6c2cae23e71313a71b834755c529fd7c9d48b1ef220778", "nontrivia_sha256": "654bee37ffaccefaba2a9052af329d92ee9816ad34fb0dc218a3aeb770209882", "token_count": 5, "rows": [{"row": 1, "line": 569, "endLine": 569, "start": 22031, "end": 22038, "expression": "'agent'", "source_sha256": "8314def34678f3c2ab8fcb0f207f69fec2113942e2ac995e19b145497e629bf1", "nontrivia_sha256": "2039da62e34fa9611f0b09e0e30d8c7f89327f34de68e36d64a7cfdcd61544af", "token_count": 1}, {"row": 2, "line": 569, "endLine": 569, "start": 22040, "end": 22047, "expression": "'codex'", "source_sha256": "2d91156ec00698f91fbf4f1a846553dfa924262203bd2ca81a4504f4f330832f", "nontrivia_sha256": "73212e665db481d2580c0f4362165127e2e1444fa9428adf026c05c3c358c45b", "token_count": 1}]}, {"id": "1.A31", "owner": "1.22", "line": 570, "endLine": 570, "start": 22062, "end": 22079, "expression": "[flag, 'homelab']", "source_sha256": "df7b6f6dd5b1cc34c1d6fd920d03b2057d321c1a1cd20c29367427ca4035afed", "nontrivia_sha256": "458932a8eb57f151834e3a19f184d8e697f8381ec6799a453987151c41415ec6", "token_count": 5, "rows": [{"row": 1, "line": 570, "endLine": 570, "start": 22063, "end": 22067, "expression": "flag", "source_sha256": "807d0fbcae7c4b20518d4d85664f6820aafdf936104122c5073e7744c46c4b87", "nontrivia_sha256": "d06578c6510f0f8bc98b2b54922691c3f25e8a4120a901ec5be9113459aef0d6", "token_count": 1}, {"row": 2, "line": 570, "endLine": 570, "start": 22069, "end": 22078, "expression": "'homelab'", "source_sha256": "31d4eb5413b37c09985acca7a2593ac2332dcac01c7206eda614e5c853f7e9c6", "nontrivia_sha256": "d113362677279ea6a3cd72ebe840781cb21c0300ea6618b8e50adc5916ca021b", "token_count": 1}]}, {"id": "1.A32", "owner": "1.23", "line": 578, "endLine": 578, "start": 22231, "end": 22262, "expression": "['environment', 'pairing-code']", "source_sha256": "47ca5b6a776b1da60a6dc0de673ae0e67bd95df7d07f353c1fba6cb224db6855", "nontrivia_sha256": "fdbd48f638f1a7aa623995a1599d868c208922be78fe2270b1bbf3a91805b2cc", "token_count": 5, "rows": [{"row": 1, "line": 578, "endLine": 578, "start": 22232, "end": 22245, "expression": "'environment'", "source_sha256": "514b89467edcb340e947be4936b8a40a7d5f55ed922985e9332dca374c82d531", "nontrivia_sha256": "e887bbc8af1e1871240942f2b044aec3bf1efea23db541e81c4c404a683fb6ab", "token_count": 1}, {"row": 2, "line": 578, "endLine": 578, "start": 22247, "end": 22261, "expression": "'pairing-code'", "source_sha256": "af37d2c7b71777abf2e08beb1dcbbea49b2dc3d658c3218c70ed0f581ddafa05", "nontrivia_sha256": "0714c2ab3abb80e28e1b09361108dab2e9876a9c061993bd312427ea86306f75", "token_count": 1}]}, {"id": "1.A33", "owner": "1.23", "line": 584, "endLine": 584, "start": 22505, "end": 22524, "expression": "[[flag, 'homelab']]", "source_sha256": "df1e4707a378048204a939f6211e017f2d1abad6a188b932e2ccea1b60264ba7", "nontrivia_sha256": "33922d40dce636e2cbc194cb4ca1a3fdc0401b26a16b3a0b11ae7183543faab6", "token_count": 7, "rows": [{"row": 1, "line": 584, "endLine": 584, "start": 22506, "end": 22523, "expression": "[flag, 'homelab']", "source_sha256": "df7b6f6dd5b1cc34c1d6fd920d03b2057d321c1a1cd20c29367427ca4035afed", "nontrivia_sha256": "458932a8eb57f151834e3a19f184d8e697f8381ec6799a453987151c41415ec6", "token_count": 5}]}, {"id": "1.A34", "owner": "1.23", "line": 584, "endLine": 584, "start": 22506, "end": 22523, "expression": "[flag, 'homelab']", "source_sha256": "df7b6f6dd5b1cc34c1d6fd920d03b2057d321c1a1cd20c29367427ca4035afed", "nontrivia_sha256": "458932a8eb57f151834e3a19f184d8e697f8381ec6799a453987151c41415ec6", "token_count": 5, "rows": [{"row": 1, "line": 584, "endLine": 584, "start": 22507, "end": 22511, "expression": "flag", "source_sha256": "807d0fbcae7c4b20518d4d85664f6820aafdf936104122c5073e7744c46c4b87", "nontrivia_sha256": "d06578c6510f0f8bc98b2b54922691c3f25e8a4120a901ec5be9113459aef0d6", "token_count": 1}, {"row": 2, "line": 584, "endLine": 584, "start": 22513, "end": 22522, "expression": "'homelab'", "source_sha256": "31d4eb5413b37c09985acca7a2593ac2332dcac01c7206eda614e5c853f7e9c6", "nontrivia_sha256": "d113362677279ea6a3cd72ebe840781cb21c0300ea6618b8e50adc5916ca021b", "token_count": 1}]}, {"id": "1.A35", "owner": "1.24", "line": 602, "endLine": 602, "start": 23118, "end": 23188, "expression": "[ACCOUNT_IMPORT_RUNTIME_CAPABILITY, CLAUDE_SIGN_IN_RUNTIME_CAPABILITY]", "source_sha256": "af4595a927637865b97655004e24675f81878f40e898c2792a1e8405521112fc", "nontrivia_sha256": "836aa4d8b32a5563407dee4fcb3601f815b85a2a04bba8d3aae3365c4e9e83a5", "token_count": 5, "rows": [{"row": 1, "line": 602, "endLine": 602, "start": 23119, "end": 23152, "expression": "ACCOUNT_IMPORT_RUNTIME_CAPABILITY", "source_sha256": "1c7978a89b5bd969a8d326048d7a196d69c4d5928db6c64f6345370295a68f8f", "nontrivia_sha256": "8046fd7b278dffc4c19357cce70abeba49730cee56598872d6b84bdcbd198d90", "token_count": 1}, {"row": 2, "line": 602, "endLine": 602, "start": 23154, "end": 23187, "expression": "CLAUDE_SIGN_IN_RUNTIME_CAPABILITY", "source_sha256": "645efa2ef96133a90a4f478d83523f4a8a16cb1fdf36768f4b4c4c9f73c8b5f3", "nontrivia_sha256": "7f065db905a94492be70e45bc77efa21726ba5081ffe7d0f278fb2676953123a", "token_count": 1}]}, {"id": "1.A36", "owner": "1.26", "line": 637, "endLine": 637, "start": 24472, "end": 24489, "expression": "[['agent', true]]", "source_sha256": "d8c533ecdca28f9d6434670701bb64a2f9ecf6f4a86056c22d9c2e0bccf0107d", "nontrivia_sha256": "cf2fed7c0d252e1a5e823ac6321491229f24091056a024bbc30085935bfb983c", "token_count": 7, "rows": [{"row": 1, "line": 637, "endLine": 637, "start": 24473, "end": 24488, "expression": "['agent', true]", "source_sha256": "8f5ecf2c890257c492b0db077604e95b87a065fa02aacd038becfd79a418b3a1", "nontrivia_sha256": "cd7322b92ca704d5770b0afe4f369083cf52d7d2b9595fe11a25a485dc3ca961", "token_count": 5}]}, {"id": "1.A37", "owner": "1.26", "line": 637, "endLine": 637, "start": 24473, "end": 24488, "expression": "['agent', true]", "source_sha256": "8f5ecf2c890257c492b0db077604e95b87a065fa02aacd038becfd79a418b3a1", "nontrivia_sha256": "cd7322b92ca704d5770b0afe4f369083cf52d7d2b9595fe11a25a485dc3ca961", "token_count": 5, "rows": [{"row": 1, "line": 637, "endLine": 637, "start": 24474, "end": 24481, "expression": "'agent'", "source_sha256": "8314def34678f3c2ab8fcb0f207f69fec2113942e2ac995e19b145497e629bf1", "nontrivia_sha256": "2039da62e34fa9611f0b09e0e30d8c7f89327f34de68e36d64a7cfdcd61544af", "token_count": 1}, {"row": 2, "line": 637, "endLine": 637, "start": 24483, "end": 24487, "expression": "true", "source_sha256": "b5bea41b6c623f7c09f1bf24dcae58ebab3c0cdd90ad966bc43a45b44867e12b", "nontrivia_sha256": "6e33c42dc357c843ca985926e7e72048b5eef8a292e00d737b78b523a60cac77", "token_count": 1}]}, {"id": "1.A38", "owner": "1.27", "line": 650, "endLine": 650, "start": 24893, "end": 24944, "expression": "[{ id: 'claude-wsl', email: 'claude@example.com' }]", "source_sha256": "ea01adfa44de617cfe9519a59c9972cb5d2bb94d50142c2f60784f07d6bb09ee", "nontrivia_sha256": "0616a0746093a6b38d257a1f0b9c44eb7b8b22f675c1c74991a4c3cde6fa4dc7", "token_count": 11, "rows": [{"row": 1, "line": 650, "endLine": 650, "start": 24894, "end": 24943, "expression": "{ id: 'claude-wsl', email: 'claude@example.com' }", "source_sha256": "51ef3ff9885e5808d957660192bf2bb9340726ea0d3e63f991ee8a9582e1d17a", "nontrivia_sha256": "c81b57b2a5f7e79790f08f33c49074b7df15a16701629ef8b828973c666c02a5", "token_count": 9}]}, {"id": "1.A39", "owner": "1.27", "line": 654, "endLine": 654, "start": 25100, "end": 25102, "expression": "[]", "source_sha256": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945", "nontrivia_sha256": "c1699106df2a1ef0015053a1a383a8c8028c17cf77807419531aec8a456e0bc7", "token_count": 2, "rows": []}, {"id": "1.A40", "owner": "1.28", "line": 670, "endLine": 673, "start": 25585, "end": 25720, "expression": "[\n { id: 'old', email: 'old@example.com', needsSignIn: true },\n { id: 'ok', email: 'ok@example.com' }\n ]", "source_sha256": "c985ae15a027cae427f69828c21d97a26cb5acbef2e4a0e605f2f0401ccb8c25", "nontrivia_sha256": "886ac4b7ca6a297ee91d8c9c7c52f19726e11bfd13057df89abefcbf69593205", "token_count": 25, "rows": [{"row": 1, "line": 671, "endLine": 671, "start": 25599, "end": 25657, "expression": "{ id: 'old', email: 'old@example.com', needsSignIn: true }", "source_sha256": "062dde6d97ece88ebe3f23ed62e3d655626824fa9cf47dbdc32f51e4001bde57", "nontrivia_sha256": "4cbca2d9fd8d40c2f88fef3c043245bf4dbe5aaa3a06b1a2f038974da8020d56", "token_count": 13}, {"row": 2, "line": 672, "endLine": 672, "start": 25671, "end": 25708, "expression": "{ id: 'ok', email: 'ok@example.com' }", "source_sha256": "8deb718b47854d81e7df89f1a5a267fd158df60a749e5c52e0d06d4de1fac758", "nontrivia_sha256": "609764a81d0dbebd1abeafbf927fe7e758ba535c57e1a49de192f294f01b6b2a", "token_count": 9}]}, {"id": "1.A41", "owner": "1.28", "line": 676, "endLine": 676, "start": 25793, "end": 25795, "expression": "[]", "source_sha256": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945", "nontrivia_sha256": "c1699106df2a1ef0015053a1a383a8c8028c17cf77807419531aec8a456e0bc7", "token_count": 2, "rows": []}, {"id": "1.A42", "owner": "1.29", "line": 695, "endLine": 695, "start": 26363, "end": 26365, "expression": "[]", "source_sha256": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945", "nontrivia_sha256": "c1699106df2a1ef0015053a1a383a8c8028c17cf77807419531aec8a456e0bc7", "token_count": 2, "rows": []}, {"id": "1.A43", "owner": "1.29", "line": 696, "endLine": 696, "start": 26419, "end": 26421, "expression": "[]", "source_sha256": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945", "nontrivia_sha256": "c1699106df2a1ef0015053a1a383a8c8028c17cf77807419531aec8a456e0bc7", "token_count": 2, "rows": []}], "runtime_traversal_policies": [], "mock_hook_platform_controls": [{"id": "1.C1", "owner": null, "kind": "vi.hoisted", "line": 17, "endLine": 26, "start": 525, "end": 806, "expression": "vi.hoisted(() => ({\n deleteKeychainMock: vi.fn(),\n getVersionManagerBinPathsMock: vi.fn(),\n readKeychainMock: vi.fn(),\n resolveCliCommandMock: vi.fn(),\n rmSyncMock: vi.fn(),\n spawnMock: vi.fn(),\n stdioForWindowsInteractiveChildMock: vi.fn(),\n writeKeychainMock: vi.fn()\n}))", "source_sha256": "25cb2e7db043380681c49ead75b88970f5bb97d01e0ecc8f188c8b155c082f65", "nontrivia_sha256": "f45d15d10b7c85eb3018647d457bd08104f13da8d0b2191870a1777d04e81035", "token_count": 75, "decision": "keep"}, {"id": "1.C2", "owner": null, "kind": "vi.mock", "line": 29, "endLine": 33, "start": 906, "end": 1100, "expression": "vi.mock('node:fs', async (importOriginal) => {\n const actual = await importOriginal()\n rmSyncMock.mockImplementation(actual.rmSync)\n return { ...actual, rmSync: rmSyncMock }\n})", "source_sha256": "54e912ef3c1428b3b8739d238b20f521b0a9bfb1b802b502860bee2aa22e37bb", "nontrivia_sha256": "17daa47e9e5cb5560e05a1fb05cc8b71deeb8edd6466069d0714c0ec6d2ccc49", "token_count": 42, "decision": "keep"}, {"id": "1.C3", "owner": null, "kind": "vi.mock", "line": 35, "endLine": 39, "start": 1102, "end": 1209, "expression": "vi.mock('node:child_process', () => ({\n execFile: vi.fn(),\n execFileSync: vi.fn(),\n spawn: spawnMock\n}))", "source_sha256": "a66173429aa258ffda9e232009eee9c6a0c6d3204b98c41da44463a8fe2be004", "nontrivia_sha256": "9ab18bf917169ffdc06b6d7ad59d746d2e0f1971a6b35ed8c446c7ef547a246e", "token_count": 33, "decision": "keep"}, {"id": "1.C4", "owner": null, "kind": "vi.mock", "line": 40, "endLine": 44, "start": 1210, "end": 1457, "expression": "vi.mock('../../main/claude-accounts/keychain', () => ({\n deleteActiveClaudeKeychainCredentialsStrict: deleteKeychainMock,\n readActiveClaudeKeychainCredentialsStrict: readKeychainMock,\n writeActiveClaudeKeychainCredentials: writeKeychainMock\n}))", "source_sha256": "15f68cba2b5536fcf93455e5b3c4274a59cf3b242e9b778a01e4802f70229100", "nontrivia_sha256": "f2571902b0463802d8defea31956a0eb038a392c7e47b768c892ee898b0035cc", "token_count": 25, "decision": "keep"}, {"id": "1.C5", "owner": null, "kind": "vi.mock", "line": 46, "endLine": 50, "start": 1540, "end": 1797, "expression": "vi.mock('../../shared/node-cli-command-resolution', async (importOriginal) => ({\n ...(await importOriginal()),\n getVersionManagerBinPaths: getVersionManagerBinPathsMock,\n resolveCliCommand: resolveCliCommandMock\n}))", "source_sha256": "10a7d178b2570539d1b5e5b329861a98fcc1debd6d472aaedca5e8fe15fa8f53", "nontrivia_sha256": "ba4ae12a4980d1e2d68bd86078b7b9169ec2b30cc1e07d097e6525af10f37818", "token_count": 35, "decision": "keep"}, {"id": "1.C6", "owner": null, "kind": "vi.mock", "line": 51, "endLine": 53, "start": 1798, "end": 1927, "expression": "vi.mock('../../shared/windows-console-input', () => ({\n stdioForWindowsInteractiveChild: stdioForWindowsInteractiveChildMock\n}))", "source_sha256": "e3eb54d7f48e016d69e0a10adc5002f01f78387ad8310f4041170003a2ed8f8b", "nontrivia_sha256": "624a59c312f94566b1961c6292978e50c0372feb956196626891cd0a2d1aacf2", "token_count": 17, "decision": "keep"}, {"id": "1.C7", "owner": null, "kind": "beforeEach", "line": 114, "endLine": 148, "start": 3869, "end": 5462, "expression": "beforeEach(() => {\n Object.defineProperty(process, 'platform', originalPlatform)\n spawnMock.mockReset().mockImplementation(() => successfulChild())\n stdioForWindowsInteractiveChildMock.mockReset().mockImplementation((json: boolean) => ({\n stdio: ['inherit', json ? process.stderr : 'inherit', 'inherit'],\n dispose: vi.fn()\n }))\n resolveCliCommandMock.mockReset().mockImplementation((command: string) => command)\n getVersionManagerBinPathsMock.mockReset().mockReturnValue([])\n readKeychainMock.mockReset().mockResolvedValue(null)\n deleteKeychainMock.mockReset().mockResolvedValue(undefined)\n writeKeychainMock.mockReset().mockResolvedValue(undefined)\n callMock.mockReset().mockImplementation((method: string) =>\n Promise.resolve({\n id: 'test',\n ok: true,\n result:\n method === 'status.get'\n ? {\n capabilities: [ACCOUNT_IMPORT_RUNTIME_CAPABILITY, CLAUDE_SIGN_IN_RUNTIME_CAPABILITY]\n }\n : method === 'accounts.beginClaudeSignIn'\n ? { accountId: 'draft', configDir: '/fake/final-profile', runtime: 'host' }\n : accountState(\n method.includes('Claude') ? 'claude@example.com' : 'codex@example.com'\n ),\n _meta: { runtimeId: 'test-runtime' }\n })\n )\n logSpy = vi.spyOn(console, 'log').mockImplementation(() => {})\n process.env.ELECTRON_RUN_AS_NODE = '1'\n // Clear real WSL attribution before simulating win32.\n delete process.env.WSL_DISTRO_NAME\n delete process.env.ORCA_CLI_WSL_DISTRO\n })", "source_sha256": "34c3b540bfab49ce597d5280dc48aeda8213f36cddd9f23497e23622108d01f0", "nontrivia_sha256": "493e4a49fb15bafdc490f98451d1b32357296b69f223ac64f41ceab47ff72bda", "token_count": 255, "decision": "keep"}, {"id": "1.C8", "owner": null, "kind": "Object.defineProperty", "line": 115, "endLine": 115, "start": 3892, "end": 3952, "expression": "Object.defineProperty(process, 'platform', originalPlatform)", "source_sha256": "5f3d566ed7b12fb191a2f632e3bb86cc0a3fe343e714387dc82953af956d4488", "nontrivia_sha256": "86942065e98886ffc135c3a14c707df3e406725fc6e6041ef8f55ad7f1f02d93", "token_count": 10, "decision": "keep"}, {"id": "1.C9", "owner": null, "kind": "afterEach", "line": 150, "endLine": 173, "start": 5466, "end": 6232, "expression": "afterEach(() => {\n Object.defineProperty(process, 'platform', originalPlatform)\n logSpy.mockRestore()\n if (originalElectronRunAsNode === undefined) {\n delete process.env.ELECTRON_RUN_AS_NODE\n } else {\n process.env.ELECTRON_RUN_AS_NODE = originalElectronRunAsNode\n }\n if (originalPathAlias === undefined) {\n delete process.env.Path\n } else {\n process.env.Path = originalPathAlias\n }\n if (originalBridgeDistro === undefined) {\n delete process.env.ORCA_CLI_WSL_DISTRO\n } else {\n process.env.ORCA_CLI_WSL_DISTRO = originalBridgeDistro\n }\n if (originalWslDistroName === undefined) {\n delete process.env.WSL_DISTRO_NAME\n } else {\n process.env.WSL_DISTRO_NAME = originalWslDistroName\n }\n })", "source_sha256": "7d5eee0ea7a5158bc90ef0c2b6a7e85b70d8d1806e185216a70f02144bb2fb10", "nontrivia_sha256": "9fbbec509842d65ea681c5e17b09b5ad119562f0cca5492dc7053caea54bd532", "token_count": 119, "decision": "keep"}, {"id": "1.C10", "owner": null, "kind": "Object.defineProperty", "line": 151, "endLine": 151, "start": 5488, "end": 5548, "expression": "Object.defineProperty(process, 'platform', originalPlatform)", "source_sha256": "5f3d566ed7b12fb191a2f632e3bb86cc0a3fe343e714387dc82953af956d4488", "nontrivia_sha256": "86942065e98886ffc135c3a14c707df3e406725fc6e6041ef8f55ad7f1f02d93", "token_count": 10, "decision": "keep"}, {"id": "1.C11", "owner": "1.2", "kind": "Object.defineProperty", "line": 195, "endLine": 195, "start": 7078, "end": 7160, "expression": "Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })", "source_sha256": "1230d58dfa8e982c5327adf211ab892685631d2661069f5cfab56eedd356a5ac", "nontrivia_sha256": "448dd5fa77209c8c294dd8311f26af629498c5758e044b9e4df37a037e1cc8c2", "token_count": 18, "decision": "keep"}, {"id": "1.C12", "owner": "1.3", "kind": "Object.defineProperty", "line": 213, "endLine": 213, "start": 7686, "end": 7768, "expression": "Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })", "source_sha256": "1230d58dfa8e982c5327adf211ab892685631d2661069f5cfab56eedd356a5ac", "nontrivia_sha256": "448dd5fa77209c8c294dd8311f26af629498c5758e044b9e4df37a037e1cc8c2", "token_count": 18, "decision": "keep"}, {"id": "1.C13", "owner": "1.4", "kind": "Object.defineProperty", "line": 229, "endLine": 229, "start": 8269, "end": 8351, "expression": "Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })", "source_sha256": "1230d58dfa8e982c5327adf211ab892685631d2661069f5cfab56eedd356a5ac", "nontrivia_sha256": "448dd5fa77209c8c294dd8311f26af629498c5758e044b9e4df37a037e1cc8c2", "token_count": 18, "decision": "keep"}, {"id": "1.C14", "owner": "1.5", "kind": "Object.defineProperty", "line": 245, "endLine": 245, "start": 8826, "end": 8908, "expression": "Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })", "source_sha256": "1230d58dfa8e982c5327adf211ab892685631d2661069f5cfab56eedd356a5ac", "nontrivia_sha256": "448dd5fa77209c8c294dd8311f26af629498c5758e044b9e4df37a037e1cc8c2", "token_count": 18, "decision": "keep"}, {"id": "1.C15", "owner": "1.6", "kind": "Object.defineProperty", "line": 258, "endLine": 258, "start": 9348, "end": 9430, "expression": "Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })", "source_sha256": "1230d58dfa8e982c5327adf211ab892685631d2661069f5cfab56eedd356a5ac", "nontrivia_sha256": "448dd5fa77209c8c294dd8311f26af629498c5758e044b9e4df37a037e1cc8c2", "token_count": 18, "decision": "keep"}, {"id": "1.C16", "owner": "1.7", "kind": "Object.defineProperty", "line": 272, "endLine": 272, "start": 9864, "end": 9946, "expression": "Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })", "source_sha256": "1230d58dfa8e982c5327adf211ab892685631d2661069f5cfab56eedd356a5ac", "nontrivia_sha256": "448dd5fa77209c8c294dd8311f26af629498c5758e044b9e4df37a037e1cc8c2", "token_count": 18, "decision": "keep"}, {"id": "1.C17", "owner": "1.9", "kind": "Object.defineProperty", "line": 297, "endLine": 297, "start": 10957, "end": 11039, "expression": "Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })", "source_sha256": "1230d58dfa8e982c5327adf211ab892685631d2661069f5cfab56eedd356a5ac", "nontrivia_sha256": "448dd5fa77209c8c294dd8311f26af629498c5758e044b9e4df37a037e1cc8c2", "token_count": 18, "decision": "keep"}, {"id": "1.C18", "owner": "1.11", "kind": "Object.defineProperty", "line": 329, "endLine": 329, "start": 12485, "end": 12567, "expression": "Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })", "source_sha256": "1230d58dfa8e982c5327adf211ab892685631d2661069f5cfab56eedd356a5ac", "nontrivia_sha256": "448dd5fa77209c8c294dd8311f26af629498c5758e044b9e4df37a037e1cc8c2", "token_count": 18, "decision": "keep"}, {"id": "1.C19", "owner": "1.12", "kind": "Object.defineProperty", "line": 344, "endLine": 344, "start": 13013, "end": 13095, "expression": "Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })", "source_sha256": "1230d58dfa8e982c5327adf211ab892685631d2661069f5cfab56eedd356a5ac", "nontrivia_sha256": "448dd5fa77209c8c294dd8311f26af629498c5758e044b9e4df37a037e1cc8c2", "token_count": 18, "decision": "keep"}, {"id": "1.C20", "owner": "1.13", "kind": "Object.defineProperty", "line": 362, "endLine": 362, "start": 13648, "end": 13730, "expression": "Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })", "source_sha256": "1230d58dfa8e982c5327adf211ab892685631d2661069f5cfab56eedd356a5ac", "nontrivia_sha256": "448dd5fa77209c8c294dd8311f26af629498c5758e044b9e4df37a037e1cc8c2", "token_count": 18, "decision": "keep"}, {"id": "1.C21", "owner": "1.14", "kind": "Object.defineProperty", "line": 377, "endLine": 377, "start": 14262, "end": 14344, "expression": "Object.defineProperty(process, 'platform', { configurable: true, value: 'win32' })", "source_sha256": "1230d58dfa8e982c5327adf211ab892685631d2661069f5cfab56eedd356a5ac", "nontrivia_sha256": "448dd5fa77209c8c294dd8311f26af629498c5758e044b9e4df37a037e1cc8c2", "token_count": 18, "decision": "keep"}, {"id": "1.C22", "owner": "1.15", "kind": "Object.defineProperty", "line": 388, "endLine": 388, "start": 14852, "end": 14935, "expression": "Object.defineProperty(process, 'platform', { configurable: true, value: platform })", "source_sha256": "5e6e4b98e83eaa2045298c7f8e1beee127200e28031bc1327526c9fa84bfaa9b", "nontrivia_sha256": "7c61d3d0439054d52d996e0652623ff6efd4292eab7766c528ee2e8c20cfd200", "token_count": 18, "decision": "keep"}, {"id": "1.C23", "owner": "1.16", "kind": "Object.defineProperty", "line": 401, "endLine": 401, "start": 15475, "end": 15557, "expression": "Object.defineProperty(process, 'platform', { configurable: true, value: 'linux' })", "source_sha256": "410836654e0a490a97d5bd45219cae605dcb2b4eaf4a1e024679481eb4fef468", "nontrivia_sha256": "f27058e3e2f66528f07782250d27411ad0125797c1be9fad859a8b07e0a99e5b", "token_count": 18, "decision": "keep"}, {"id": "1.C24", "owner": "1.17", "kind": "Object.defineProperty", "line": 434, "endLine": 434, "start": 16864, "end": 16946, "expression": "Object.defineProperty(process, 'platform', { configurable: true, value: 'linux' })", "source_sha256": "410836654e0a490a97d5bd45219cae605dcb2b4eaf4a1e024679481eb4fef468", "nontrivia_sha256": "f27058e3e2f66528f07782250d27411ad0125797c1be9fad859a8b07e0a99e5b", "token_count": 18, "decision": "keep"}], "cli_invocation_inventory": [{"id": "1.I1", "owner": "1.1", "line": 176, "endLine": 176, "start": 6317, "end": 6372, "expression": "ACCOUNT_HANDLERS['account add'](context('codex', true))", "source_sha256": "cff03f927af42f37327f80b2eaa72c2cac5e4f714af0fbe75ddbfc310bf039c3", "nontrivia_sha256": "2f0f7a7bf27b0641e8de7eb2df12882b923d490e037b5ce620dfcebf38cafe95", "token_count": 12, "decision": "keep"}, {"id": "1.I2", "owner": "1.2", "line": 202, "endLine": 202, "start": 7320, "end": 7369, "expression": "ACCOUNT_HANDLERS['account add'](context('codex'))", "source_sha256": "6b5d9a333690db745b30d7e584b08e335f4a5b17e7bd38b32039d6995140b0b1", "nontrivia_sha256": "05c1d796ea9fe61fdf0f4bf6c2a0a7464d86a3bf91010c9453ee6c97cc17fb72", "token_count": 10, "decision": "keep"}, {"id": "1.I3", "owner": "1.3", "line": 223, "endLine": 223, "start": 8019, "end": 8109, "expression": "expect(ACCOUNT_HANDLERS['account add'](context('codex'))).rejects.toThrow('invalid stdio')", "source_sha256": "004eb0be4b7724335f9c732585249b1af5b7e1485cb6b4df4d75f6204c193614", "nontrivia_sha256": "3341b7e572598596d5ae65dbadf2ce56e523ac989abb5677d578e21bfa55f675", "token_count": 20, "decision": "keep"}, {"id": "1.I4", "owner": "1.3", "line": 223, "endLine": 223, "start": 8026, "end": 8075, "expression": "ACCOUNT_HANDLERS['account add'](context('codex'))", "source_sha256": "6b5d9a333690db745b30d7e584b08e335f4a5b17e7bd38b32039d6995140b0b1", "nontrivia_sha256": "05c1d796ea9fe61fdf0f4bf6c2a0a7464d86a3bf91010c9453ee6c97cc17fb72", "token_count": 10, "decision": "keep"}, {"id": "1.I5", "owner": "1.4", "line": 235, "endLine": 235, "start": 8497, "end": 8552, "expression": "ACCOUNT_HANDLERS['account add'](context('codex', true))", "source_sha256": "cff03f927af42f37327f80b2eaa72c2cac5e4f714af0fbe75ddbfc310bf039c3", "nontrivia_sha256": "2f0f7a7bf27b0641e8de7eb2df12882b923d490e037b5ce620dfcebf38cafe95", "token_count": 12, "decision": "keep"}, {"id": "1.I6", "owner": "1.5", "line": 248, "endLine": 248, "start": 8986, "end": 9035, "expression": "ACCOUNT_HANDLERS['account add'](context('codex'))", "source_sha256": "6b5d9a333690db745b30d7e584b08e335f4a5b17e7bd38b32039d6995140b0b1", "nontrivia_sha256": "05c1d796ea9fe61fdf0f4bf6c2a0a7464d86a3bf91010c9453ee6c97cc17fb72", "token_count": 10, "decision": "keep"}, {"id": "1.I7", "owner": "1.6", "line": 262, "endLine": 262, "start": 9552, "end": 9601, "expression": "ACCOUNT_HANDLERS['account add'](context('codex'))", "source_sha256": "6b5d9a333690db745b30d7e584b08e335f4a5b17e7bd38b32039d6995140b0b1", "nontrivia_sha256": "05c1d796ea9fe61fdf0f4bf6c2a0a7464d86a3bf91010c9453ee6c97cc17fb72", "token_count": 10, "decision": "keep"}, {"id": "1.I8", "owner": "1.7", "line": 275, "endLine": 277, "start": 10043, "end": 10139, "expression": "ACCOUNT_HANDLERS['account add'](context('codex')).catch(\n (thrown: unknown) => thrown\n )", "source_sha256": "708664d0e333c5b900181383aae44344dbe44ec9f9ae42fab5abfbda75da2a90", "nontrivia_sha256": "067285aaa330f9f444886ee89c2912f139655ef5c7e98c54db05d5ba67234aa6", "token_count": 21, "decision": "keep"}, {"id": "1.I9", "owner": "1.7", "line": 275, "endLine": 275, "start": 10043, "end": 10092, "expression": "ACCOUNT_HANDLERS['account add'](context('codex'))", "source_sha256": "6b5d9a333690db745b30d7e584b08e335f4a5b17e7bd38b32039d6995140b0b1", "nontrivia_sha256": "05c1d796ea9fe61fdf0f4bf6c2a0a7464d86a3bf91010c9453ee6c97cc17fb72", "token_count": 10, "decision": "keep"}, {"id": "1.I10", "owner": "1.8", "line": 290, "endLine": 290, "start": 10683, "end": 10732, "expression": "ACCOUNT_HANDLERS['account add'](context('codex'))", "source_sha256": "6b5d9a333690db745b30d7e584b08e335f4a5b17e7bd38b32039d6995140b0b1", "nontrivia_sha256": "05c1d796ea9fe61fdf0f4bf6c2a0a7464d86a3bf91010c9453ee6c97cc17fb72", "token_count": 10, "decision": "keep"}, {"id": "1.I11", "owner": "1.9", "line": 303, "endLine": 303, "start": 11273, "end": 11322, "expression": "ACCOUNT_HANDLERS['account add'](context('codex'))", "source_sha256": "6b5d9a333690db745b30d7e584b08e335f4a5b17e7bd38b32039d6995140b0b1", "nontrivia_sha256": "05c1d796ea9fe61fdf0f4bf6c2a0a7464d86a3bf91010c9453ee6c97cc17fb72", "token_count": 10, "decision": "keep"}, {"id": "1.I12", "owner": "1.10", "line": 316, "endLine": 316, "start": 11895, "end": 11945, "expression": "ACCOUNT_HANDLERS['account add'](context('claude'))", "source_sha256": "9616dedccf7cf1f913f57469b12828b82b1b76959cb7354c1a852abd43bd76fd", "nontrivia_sha256": "ee07f9ae0b57751ec33e485160e97d0fdb5f3e391bd71b5bb34a693ac5331ea6", "token_count": 10, "decision": "keep"}, {"id": "1.I13", "owner": "1.11", "line": 331, "endLine": 333, "start": 12579, "end": 12684, "expression": "ACCOUNT_HANDLERS['account add'](\n context('codex', false, String.raw`\\\\wsl$\\Ubuntu\\home\\user`)\n )", "source_sha256": "0a4fa39641b76b755a81173df0aa39f822b7f9b36a570bb207f70aa8a0b307de", "nontrivia_sha256": "6218752690ba233ea9bd3c735b2627e91c78dbe2470fb60a2d9ea008a7a8bb0a", "token_count": 17, "decision": "keep"}, {"id": "1.I14", "owner": "1.12", "line": 348, "endLine": 350, "start": 13210, "end": 13331, "expression": "ACCOUNT_HANDLERS['account add'](\n context('claude', false, String.raw`\\\\wsl.localhost\\Ubuntu-22.04\\home\\user`)\n )", "source_sha256": "d6ec3135435b13b391a7782c11b62fe7f98ac01c9c69132ff74a429e6be64ca4", "nontrivia_sha256": "fca5db4ac06b140988e2db8e766f4054f40f50f1d04ef890b0d559e3a6bde71b", "token_count": 17, "decision": "keep"}, {"id": "1.I15", "owner": "1.13", "line": 364, "endLine": 364, "start": 13797, "end": 13884, "expression": "ACCOUNT_HANDLERS['account add'](context(agent, false, String.raw`C:\\work with spaces`))", "source_sha256": "3e7b51f4593b457e47a97da016148f94ab00f920ad724e0507db86e3257f79ec", "nontrivia_sha256": "ef1e679fa1975ae7c5e69215aeaa1d588dd897ebf03cbc8a66b521938164fc79", "token_count": 17, "decision": "keep"}, {"id": "1.I16", "owner": "1.14", "line": 379, "endLine": 379, "start": 14411, "end": 14488, "expression": "ACCOUNT_HANDLERS['account add'](context('codex', false, String.raw`C:\\work`))", "source_sha256": "41629e0c0708f8284d5cac286e807090e0987e7fe6ff5efa6b84ddbdecff24e1", "nontrivia_sha256": "373aec015fb88a9456ebf5b5c12dd6d69e57872ffe16869bc59644be41c39728", "token_count": 17, "decision": "keep"}, {"id": "1.I17", "owner": "1.15", "line": 392, "endLine": 392, "start": 15055, "end": 15104, "expression": "ACCOUNT_HANDLERS['account add'](context('codex'))", "source_sha256": "6b5d9a333690db745b30d7e584b08e335f4a5b17e7bd38b32039d6995140b0b1", "nontrivia_sha256": "05c1d796ea9fe61fdf0f4bf6c2a0a7464d86a3bf91010c9453ee6c97cc17fb72", "token_count": 10, "decision": "keep"}, {"id": "1.I18", "owner": "1.16", "line": 412, "endLine": 412, "start": 16003, "end": 16068, "expression": "ACCOUNT_HANDLERS['account add'](context('codex')).catch(() => {})", "source_sha256": "aea989d0a6d5913bb0b7a2d7991d2e43a65b6e85af53883a5a175e2b0e5b1be8", "nontrivia_sha256": "3d52d15046d6b0745eb006ace2f5cd8d0af935249127fcc5befedb7b43c1ebea", "token_count": 19, "decision": "keep"}, {"id": "1.I19", "owner": "1.16", "line": 412, "endLine": 412, "start": 16003, "end": 16052, "expression": "ACCOUNT_HANDLERS['account add'](context('codex'))", "source_sha256": "6b5d9a333690db745b30d7e584b08e335f4a5b17e7bd38b32039d6995140b0b1", "nontrivia_sha256": "05c1d796ea9fe61fdf0f4bf6c2a0a7464d86a3bf91010c9453ee6c97cc17fb72", "token_count": 10, "decision": "keep"}, {"id": "1.I20", "owner": "1.17", "line": 444, "endLine": 444, "start": 17376, "end": 17441, "expression": "ACCOUNT_HANDLERS['account add'](context('codex')).catch(() => {})", "source_sha256": "aea989d0a6d5913bb0b7a2d7991d2e43a65b6e85af53883a5a175e2b0e5b1be8", "nontrivia_sha256": "3d52d15046d6b0745eb006ace2f5cd8d0af935249127fcc5befedb7b43c1ebea", "token_count": 19, "decision": "keep"}, {"id": "1.I21", "owner": "1.17", "line": 444, "endLine": 444, "start": 17376, "end": 17425, "expression": "ACCOUNT_HANDLERS['account add'](context('codex'))", "source_sha256": "6b5d9a333690db745b30d7e584b08e335f4a5b17e7bd38b32039d6995140b0b1", "nontrivia_sha256": "05c1d796ea9fe61fdf0f4bf6c2a0a7464d86a3bf91010c9453ee6c97cc17fb72", "token_count": 10, "decision": "keep"}, {"id": "1.I22", "owner": "1.18", "line": 497, "endLine": 497, "start": 19448, "end": 19513, "expression": "ACCOUNT_HANDLERS['account add'](context('codex')).catch(() => {})", "source_sha256": "aea989d0a6d5913bb0b7a2d7991d2e43a65b6e85af53883a5a175e2b0e5b1be8", "nontrivia_sha256": "3d52d15046d6b0745eb006ace2f5cd8d0af935249127fcc5befedb7b43c1ebea", "token_count": 19, "decision": "keep"}, {"id": "1.I23", "owner": "1.18", "line": 497, "endLine": 497, "start": 19448, "end": 19497, "expression": "ACCOUNT_HANDLERS['account add'](context('codex'))", "source_sha256": "6b5d9a333690db745b30d7e584b08e335f4a5b17e7bd38b32039d6995140b0b1", "nontrivia_sha256": "05c1d796ea9fe61fdf0f4bf6c2a0a7464d86a3bf91010c9453ee6c97cc17fb72", "token_count": 10, "decision": "keep"}, {"id": "1.I24", "owner": "1.19", "line": 521, "endLine": 523, "start": 20303, "end": 20411, "expression": "expect(ACCOUNT_HANDLERS['account add'](context('codex'))).rejects.toThrow(\n 'runtime not running'\n )", "source_sha256": "0631e1b3e74eddff49d3affaad2b538dcde6e5ecb040128d293d04441e0a0667", "nontrivia_sha256": "280864caf109f5591c70e676440fa9b06085f8db5f6f284f10c1bd04164a6904", "token_count": 20, "decision": "keep"}, {"id": "1.I25", "owner": "1.19", "line": 521, "endLine": 521, "start": 20310, "end": 20359, "expression": "ACCOUNT_HANDLERS['account add'](context('codex'))", "source_sha256": "6b5d9a333690db745b30d7e584b08e335f4a5b17e7bd38b32039d6995140b0b1", "nontrivia_sha256": "05c1d796ea9fe61fdf0f4bf6c2a0a7464d86a3bf91010c9453ee6c97cc17fb72", "token_count": 10, "decision": "keep"}, {"id": "1.I26", "owner": "1.20", "line": 536, "endLine": 536, "start": 20826, "end": 20875, "expression": "ACCOUNT_HANDLERS['account add'](context('codex'))", "source_sha256": "6b5d9a333690db745b30d7e584b08e335f4a5b17e7bd38b32039d6995140b0b1", "nontrivia_sha256": "05c1d796ea9fe61fdf0f4bf6c2a0a7464d86a3bf91010c9453ee6c97cc17fb72", "token_count": 10, "decision": "keep"}, {"id": "1.I27", "owner": "1.21", "line": 553, "endLine": 555, "start": 21435, "end": 21591, "expression": "expect(ACCOUNT_HANDLERS['account add'](context(agent))).rejects.toThrow(\n 'The running Orca runtime is too old to add accounts from the CLI.'\n )", "source_sha256": "ca64e5e12d051bb3f18a236093aa44b99d141b513fda0a16106b0f1d03e62def", "nontrivia_sha256": "bcb6995791fc6d4bd9a100ea14a63d56af13c82f6a3128f30343be8a074a2e5b", "token_count": 20, "decision": "keep"}, {"id": "1.I28", "owner": "1.21", "line": 553, "endLine": 553, "start": 21442, "end": 21489, "expression": "ACCOUNT_HANDLERS['account add'](context(agent))", "source_sha256": "75f254f90687da516076e547a888d5eeb10ca24ef693271ccb282349cb1bfeee", "nontrivia_sha256": "7a9e81203c29f73046d53851bb456fd282506bf60f4f738d86a5543706da3722", "token_count": 10, "decision": "keep"}, {"id": "1.I29", "owner": "1.22", "line": 565, "endLine": 573, "start": 21884, "end": 22162, "expression": "expect(\n ACCOUNT_HANDLERS['account add']({\n ...context('codex'),\n flags: new Map([\n ['agent', 'codex'],\n [flag, 'homelab']\n ])\n })\n ).rejects.toThrow(`\\`--${flag}\\` does not retarget`)", "source_sha256": "4b644de3f161fab16373c9d1e15f2ce29cde57d77c7f9f180ecdf980643c1436", "nontrivia_sha256": "f1aa98ecd9d69996bc0aee2ef6f4e351d81ee5a7a0aef3562f8764c5ea550c58", "token_count": 52, "decision": "keep"}, {"id": "1.I30", "owner": "1.22", "line": 566, "endLine": 572, "start": 21900, "end": 22103, "expression": "ACCOUNT_HANDLERS['account add']({\n ...context('codex'),\n flags: new Map([\n ['agent', 'codex'],\n [flag, 'homelab']\n ])\n })", "source_sha256": "d19c03df6b13b1db6f85446a96cd590a37ba3962c36a1032a27ea8a644813b9f", "nontrivia_sha256": "f8816d90a063b972072e4676a3d65f9e20c185d5c933055fdd183de20a9a7fa0", "token_count": 40, "decision": "keep"}, {"id": "1.I31", "owner": "1.23", "line": 581, "endLine": 586, "start": 22371, "end": 22595, "expression": "expect(\n ACCOUNT_HANDLERS['account list']({\n ...context('claude'),\n flags: new Map([[flag, 'homelab']])\n })\n ).rejects.toThrow(`\\`--${flag}\\` does not retarget`)", "source_sha256": "d08c1540f9cf2622a6ee1f56387b1ef3e4a81b56942b56a29d9a4a2c38d2bb7c", "nontrivia_sha256": "d2607db69e1b8c507d4836753d81ae75dd25351018a355db43facdffbdaa46f8", "token_count": 46, "decision": "keep"}, {"id": "1.I32", "owner": "1.23", "line": 582, "endLine": 585, "start": 22387, "end": 22536, "expression": "ACCOUNT_HANDLERS['account list']({\n ...context('claude'),\n flags: new Map([[flag, 'homelab']])\n })", "source_sha256": "766231d5de7a0f96e637cebaaad8f2b37bc89c2a1186cb396f43bf369d0ff26d", "nontrivia_sha256": "ee402dd64fb41d065514f2b9cc8469d6a693d04588215b5357b6fb8271928d1f", "token_count": 34, "decision": "keep"}, {"id": "1.I33", "owner": "1.24", "line": 616, "endLine": 618, "start": 23631, "end": 23752, "expression": "expect(ACCOUNT_HANDLERS['account add'](context('codex'))).rejects.toThrow(\n 'registration rejected by runtime'\n )", "source_sha256": "a868e20663f9a8d82f239aaa7e5f200d93ec67ebce0d0d4ffa74affd1d2ae5f9", "nontrivia_sha256": "0e547a696f24629fc941f2c256508beee41752decffd7511c0375b531cd93b78", "token_count": 20, "decision": "keep"}, {"id": "1.I34", "owner": "1.24", "line": 616, "endLine": 616, "start": 23638, "end": 23687, "expression": "ACCOUNT_HANDLERS['account add'](context('codex'))", "source_sha256": "6b5d9a333690db745b30d7e584b08e335f4a5b17e7bd38b32039d6995140b0b1", "nontrivia_sha256": "05c1d796ea9fe61fdf0f4bf6c2a0a7464d86a3bf91010c9453ee6c97cc17fb72", "token_count": 10, "decision": "keep"}, {"id": "1.I35", "owner": "1.25", "line": 631, "endLine": 631, "start": 24154, "end": 24242, "expression": "expect(ACCOUNT_HANDLERS['account add'](context('codex', true))).rejects.toThrow('EBUSY')", "source_sha256": "c580b4a8df1073b52dd5dbf238290c501a2e9f36827d2e0690deef5f72d062a3", "nontrivia_sha256": "f6fb81063f71bf20671b89092547930c15dfe586380a28e43ae4a32f282624a1", "token_count": 22, "decision": "keep"}, {"id": "1.I36", "owner": "1.25", "line": 631, "endLine": 631, "start": 24161, "end": 24216, "expression": "ACCOUNT_HANDLERS['account add'](context('codex', true))", "source_sha256": "cff03f927af42f37327f80b2eaa72c2cac5e4f714af0fbe75ddbfc310bf039c3", "nontrivia_sha256": "2f0f7a7bf27b0641e8de7eb2df12882b923d490e037b5ce620dfcebf38cafe95", "token_count": 12, "decision": "keep"}, {"id": "1.I37", "owner": "1.26", "line": 636, "endLine": 640, "start": 24387, "end": 24638, "expression": "expect(\n ACCOUNT_HANDLERS['account add']({ ...context('claude'), flags: new Map([['agent', true]]) })\n ).rejects.toThrow(\n 'Missing a value for --agent. Use `--agent claude`, `--agent codex`, `--agent opencode`, or `--agent devin`.'\n )", "source_sha256": "3bab65b91f98d36ce1c980f6886217696c0c96a8ef416e8f4a197dd5b4f2752a", "nontrivia_sha256": "f794f457b59858575a29639e5a7ee44044bfc4b1716c591dcdc77b0e29fd897f", "token_count": 37, "decision": "keep"}, {"id": "1.I38", "owner": "1.26", "line": 637, "endLine": 637, "start": 24401, "end": 24493, "expression": "ACCOUNT_HANDLERS['account add']({ ...context('claude'), flags: new Map([['agent', true]]) })", "source_sha256": "ccd4b4c91006440725187fb6783ca4a68716d8fc447beca952ae058f0d707b79", "nontrivia_sha256": "985e40ef1f17e2ff6f70e80b9acaefb5895d6399f599e1e6888e77df2c99a518", "token_count": 27, "decision": "keep"}, {"id": "1.I39", "owner": "1.27", "line": 659, "endLine": 659, "start": 25198, "end": 25274, "expression": "ACCOUNT_HANDLERS['account list']({ ...context('claude'), flags: new Map() })", "source_sha256": "409d387dfe5370f0742dbbf44bae2644dc76594510b252696c4f96abaefe146f", "nontrivia_sha256": "6cebc8b22c1e3028d36cab4b2c8dd559524d3f57320788dd8cca84b23cc336cf", "token_count": 20, "decision": "keep"}, {"id": "1.I40", "owner": "1.28", "line": 681, "endLine": 681, "start": 25891, "end": 25967, "expression": "ACCOUNT_HANDLERS['account list']({ ...context('claude'), flags: new Map() })", "source_sha256": "409d387dfe5370f0742dbbf44bae2644dc76594510b252696c4f96abaefe146f", "nontrivia_sha256": "6cebc8b22c1e3028d36cab4b2c8dd559524d3f57320788dd8cca84b23cc336cf", "token_count": 20, "decision": "keep"}, {"id": "1.I41", "owner": "1.29", "line": 701, "endLine": 701, "start": 26517, "end": 26593, "expression": "ACCOUNT_HANDLERS['account list']({ ...context('claude'), flags: new Map() })", "source_sha256": "409d387dfe5370f0742dbbf44bae2644dc76594510b252696c4f96abaefe146f", "nontrivia_sha256": "6cebc8b22c1e3028d36cab4b2c8dd559524d3f57320788dd8cca84b23cc336cf", "token_count": 20, "decision": "keep"}], "additional_controls": [], "historical_consolidations": [{"previous_case_index": 36, "previous_case": {"line": 635, "title": "does not touch a locked Keychain while the CLI signs in", "decision": "consolidate", "reason": "Remove this repeated login invocation after moving its three rejecting Keychain mock fixtures into the earlier final-profile case, which already asserts all three calls remain unused."}, "status": "historical-consolidation-before-base", "reason": "This already-consolidated original declaration/control is absent from b6101c69369 and remains absent. Preserve its original decision/provenance without inventing a current runtime case."}], "previous_review": {"record": "reviews/root-0056.jsonl", "record_sha256": "52497e53b48da7f4eb9c89a0cb8184f59e5adaad8af1a37cac7cb83554b3a6a9", "base_commit": "b6101c6936965078fa9dc1584d6fc33614bac750", "base_sha256": "8dd7e1be29923fe2bbe184b214f5c412dcddbcfdc15bdd42a51738a06fc3f44f", "original_record": {"path": "src/cli/handlers/account.test.ts", "sha256": "e5f334c3d97d851dafe91b6b017505d62868ee9a7ccfef8b2389ddf45df141d6", "reviewed_sha256": "8dd7e1be29923fe2bbe184b214f5c412dcddbcfdc15bdd42a51738a06fc3f44f", "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a", "reviewer": "root", "decision": "fix", "classification": "vitest-cli-boundary-suite", "rationale": "Read all original test bodies, complete parameter tables, nested selector controls and principal production paths. Retain actual dispatch, file, SQLite/admission, child-close and host-identity boundaries; consolidate repeated Keychain execution and repair unproven claims. Runtime/RPC mocks do not establish live native integrations.", "evidence": ["src/cli/handlers/account.ts", "src/cli/handlers/interactive-login-interruption.ts", "src/cli/handlers/account-wsl-location.ts", "src/cli/handlers/account-list-format.ts", "src/shared/node-cli-command-resolution.ts", "src/shared/windows-batch-spawn.ts"], "cases": [{"line": 180, "title": "uses Codex device auth and keeps JSON stdout clean", "decision": "keep", "reason": "Codex device-auth spawn keeps JSON prompts on stderr, removes ELECTRON_RUN_AS_NODE, registers from the actual isolated home, and removes that home after success."}, {"line": 199, "title": "passes Windows console device handles to the login child instead of inheriting Electron stdio", "decision": "keep", "reason": "Mocked Windows console-device handles reach the child and the owned input handle is disposed after login."}, {"line": 217, "title": "disposes the Windows console input fd when spawn throws synchronously", "decision": "keep", "reason": "Synchronous spawn failure preserves its error and still disposes the Windows input handle."}, {"line": 233, "title": "keeps JSON login prompts off the CLI stdout envelope when console fds are attached", "decision": "keep", "reason": "Windows console-attached JSON login uses stderr for prompts, protecting the CLI stdout envelope."}, {"line": 249, "title": "routes Windows package-manager shims through the safe cmd launcher", "decision": "keep", "reason": "Windows package-manager batch shim reaches the guarded cmd launcher with the expected argument vector."}, {"line": 262, "title": "launches a Windows shim installed under Program Files (x86)", "decision": "keep", "reason": "Program Files (x86) shim path survives launcher argument construction as one value."}, {"line": 276, "title": "explains an unspawnable Windows shim path instead of leaking the error sentinel", "decision": "keep", "reason": "Unsafe Windows shim path is rejected before spawn and reports both the original path and meaningful unsafe-character guidance."}, {"line": 291, "title": "adds version-manager Node paths to the login child environment", "decision": "keep", "reason": "Real PATH construction prepends the independently supplied version-manager Node directory to the login child."}, {"line": 301, "title": "updates the effective Windows PATH regardless of native environment casing", "decision": "keep", "reason": "Mocked Windows environment with both Path/PATH variants retains the effective original value after prepending the runtime directory."}, {"line": 317, "title": "runs login in the final profile and never reads, writes or cleans up Keychain credentials", "decision": "consolidate", "reason": "Consolidate the later duplicate Keychain case here: failing read/write/delete mocks must remain unused while login uses the host-created final profile and finish RPC."}, {"line": 330, "title": "attributes a Codex account added through the WSL bridge to the cwd distro", "decision": "keep", "reason": "UNC cwd WSL distro is forwarded with the isolated Codex source home to the host registration RPC."}, {"line": 345, "title": "uses the explicit bridge distro over an ambient environment or another distro cwd", "decision": "keep", "reason": "Explicit bridge distro wins over ambient WSL state and a different UNC cwd distro for Claude sign-in."}, {"line": 361, "title": "attributes %s from a Windows mount to the bridge distro", "decision": "keep", "reason": "Both Claude and Codex bridge paths preserve a spaced explicit distro even when cwd is a Windows mount."}, {"line": 361, "title": "parameter: 'claude'", "decision": "keep", "reason": "Read concrete input 'claude'. Both Claude and Codex bridge paths preserve a spaced explicit distro even when cwd is a Windows mount."}, {"line": 361, "title": "parameter: 'codex'", "decision": "keep", "reason": "Read concrete input 'codex'. Both Claude and Codex bridge paths preserve a spaced explicit distro even when cwd is a Windows mount."}, {"line": 378, "title": "ignores an ambient WSL distro in a native Windows account add", "decision": "keep", "reason": "Native Windows cwd ignores stale ambient WSL_DISTRO_NAME instead of registering an account on that distro."}, {"line": 386, "title": "keeps host attribution when the CLI runs on %s", "decision": "keep", "reason": "Linux and macOS CLI hosts retain host attribution despite WSL environment variables; both concrete platform inputs are preserved."}, {"line": 386, "title": "parameter: 'linux'", "decision": "keep", "reason": "Read concrete input 'linux'. Linux and macOS CLI hosts retain host attribution despite WSL environment variables; both concrete platform inputs are preserved."}, {"line": 386, "title": "parameter: 'darwin'", "decision": "keep", "reason": "Read concrete input 'darwin'. Linux and macOS CLI hosts retain host attribution despite WSL environment variables; both concrete platform inputs are preserved."}, {"line": 402, "title": "waits for physical child close before removing interrupted login credentials", "decision": "keep", "reason": "Controlled child emits physical close after SIGINT; credentials exist before close, child is signaled, exit is delayed, and cleanup precedes interrupt exit without registration."}, {"line": 435, "title": "cleans up when an SSH hangup ends the login", "decision": "keep", "reason": "Controlled SIGHUP on an SSH-style login signals the child, waits for physical close, removes temporary credentials, and reports hangup exit status."}, {"line": 466, "title": "warns that the account may already be registered when interrupted mid-RPC", "decision": "fix", "reason": "Retain interrupted-registration warning after proven RPC entry, but settle and await the held RPC in finally and assert the added SIGINT listener is removed; the original orphaned promise/listeners survived the test."}, {"line": 511, "title": "fails before the login when the runtime is unreachable", "decision": "keep", "reason": "Unreachable runtime fails the preflight before spawning an OAuth child."}, {"line": 522, "title": "still adds Codex through an older host that advertises only the retired import capability", "decision": "fix", "reason": "Complete login and registration against a status response carrying only the older import capability, and assert the resulting account output; the original injected spawn failure only proved gate entry."}, {"line": 537, "title": "refuses %s login before spawning when its capability is absent", "decision": "keep", "reason": "Each provider missing its required runtime capability fails before spawn after one status call."}, {"line": 537, "title": "parameter: 'claude'", "decision": "keep", "reason": "Read concrete input 'claude'. Each provider missing its required runtime capability fails before spawn after one status call."}, {"line": 537, "title": "parameter: 'codex'", "decision": "keep", "reason": "Read concrete input 'codex'. Each provider missing its required runtime capability fails before spawn after one status call."}, {"line": 556, "title": "rejects --%s instead of silently ignoring it", "decision": "keep", "reason": "Each unsupported remote selector on add is rejected rather than spawning a local login for a named remote target."}, {"line": 556, "title": "parameter: 'environment'", "decision": "keep", "reason": "Read concrete input 'environment'. Each unsupported remote selector on add is rejected rather than spawning a local login for a named remote target."}, {"line": 556, "title": "parameter: 'pairing-code'", "decision": "keep", "reason": "Read concrete input 'pairing-code'. Each unsupported remote selector on add is rejected rather than spawning a local login for a named remote target."}, {"line": 574, "title": "rejects --%s on `account list` instead of listing the local host", "decision": "keep", "reason": "Each unsupported remote selector on list is rejected before any local runtime RPC."}, {"line": 574, "title": "parameter: 'environment'", "decision": "keep", "reason": "Read concrete input 'environment'. Each unsupported remote selector on list is rejected before any local runtime RPC."}, {"line": 574, "title": "parameter: 'pairing-code'", "decision": "keep", "reason": "Read concrete input 'pairing-code'. Each unsupported remote selector on list is rejected before any local runtime RPC."}, {"line": 589, "title": "keeps the original add error when cleanup also fails", "decision": "keep", "reason": "Injected registration failure plus EBUSY cleanup preserves the primary registration error and reports cleanup failure."}, {"line": 626, "title": "fails a successful add when the temporary credentials cannot be removed", "decision": "keep", "reason": "EBUSY cleanup after otherwise successful registration must reject and must not print success."}, {"line": 635, "title": "does not touch a locked Keychain while the CLI signs in", "decision": "consolidate", "reason": "Remove this repeated login invocation after moving its three rejecting Keychain mock fixtures into the earlier final-profile case, which already asserts all three calls remain unused."}, {"line": 645, "title": "rejects `--agent` with no value instead of defaulting to Claude", "decision": "keep", "reason": "Boolean --agent is rejected with explicit supported-provider guidance before login can default to the wrong provider."}, {"line": 656, "title": "marks an account selected for WSL as active in human output", "decision": "keep", "reason": "WSL-selected account receives the active annotation even without a host activeAccountId."}, {"line": 676, "title": "tells the user which saved Claude accounts need a fresh sign-in", "decision": "keep", "reason": "Expired Claude account output gives sign-in guidance on that account while preserving the healthy account output."}, {"line": 702, "title": "lists accounts without forcing a provider usage refresh", "decision": "keep", "reason": "Listing invokes accounts.list with refreshUsage:false, avoiding an unnecessary forced provider refresh."}]}}, "invariance": {"base_nontrivia_sha256": "6a2eb23d32855f0bb3c3747ede7190531402ba3de002d22198f6c1769cb767ca", "current_nontrivia_sha256": "6a2eb23d32855f0bb3c3747ede7190531402ba3de002d22198f6c1769cb767ca", "nontrivia_token_count": 4569, "base_ast_sha256": "c147632c368a901f06d2605b3797ebcb4ee29e8d4a18bb1feea00cf9ed413edf", "current_ast_sha256": "c147632c368a901f06d2605b3797ebcb4ee29e8d4a18bb1feea00cf9ed413edf", "runner_type_lint_directives_unchanged": true, "parser_diagnostics": 0}, "original_declarations": 29, "final_declarations": 29, "validation": "reviews/upstream-0004-validation.json"}
+{"path": "src/cli/handlers/agent-hooks-prepare-codex-isolated-home.test.ts", "sha256": "628e9c0c50199a0f00c01561d59e27c1c213f26be1db53652f03b3e0ace245ec", "reviewed_sha256": "628e9c0c50199a0f00c01561d59e27c1c213f26be1db53652f03b3e0ace245ec", "source_commit": "41b5cf015be7970a23e91d4ce76d52d781db4e1b", "reviewer": "audit_mobile", "status": "reviewed", "decision": "keep", "classification": "vitest-cli-boundary-suite", "rationale": "Keep the real CLI prepare-codex command against isolated app, real and managed homes. Both HOME inputs compare full file bytes/mtimes and forbid runtime calls; the trust-grant runner remains fenced against launching Codex. Read the complete current source and prior case/control records. The upstream delta changes explanatory comments only; parsed non-trivia tokens and comment-free AST are identical to the previously reviewed base.", "evidence": ["src/cli/handlers/agent-hooks.ts", "src/main/codex/codex-hook-definition.ts", "src/main/codex/codex-hook-trust-grant.ts"], "evidence_source_sha256": {"src/cli/handlers/agent-hooks.ts": "0a06071eb2d8e02795e254c13fb7ee3fecd33eb6dec5ce89eff057c06043679f", "src/main/codex/codex-hook-definition.ts": "73bbeaca8ae328e51f2b87bc62f91db00c8d1788f91ce8053f0acdcdca008334", "src/main/codex/codex-hook-trust-grant.ts": "a859bb1480ef0c4683835eb43d4e454e6182452baf145195e87e4a5e8a7e88bb"}, "evidence_scope": "Original production-path review and mutation/typecheck evidence remain in the copied prior records/validation, without claiming those historical checks were rerun. Fresh runtime coverage is the 18-suite run recorded for this batch.", "cases": [{"id": "2.1", "title": "writes nothing from a pane under %s", "line": 105, "endLine": 120, "start": 3547, "end": 4172, "expression": "it.each([\n ['the real HOME', 'real'],\n [\"the app's HOME\", 'app']\n])('writes nothing from a pane under %s', async (_case, paneHome) => {\n homes.current = paneHome === 'real' ? realHome : appHome\n call.mockResolvedValue({ result: null })\n vi.spyOn(console, 'log').mockImplementation(() => {})\n vi.spyOn(console, 'warn').mockImplementation(() => {})\n const before = [realHome, appHome, managedHome].map(listTree)\n\n await main(['agent', 'hooks', 'prepare-codex'])\n\n expect(process.exitCode).toBeUndefined()\n expect(call).not.toHaveBeenCalled()\n expect([realHome, appHome, managedHome].map(listTree)).toEqual(before)\n})", "source_sha256": "a035756a9170c224ce739e7e2b6ed7d418eefd8e422699cde9f9ef92d486556b", "nontrivia_sha256": "2e70bf200711ede862d264f59fc388c5ff8af24e91fa8b4df3feb7081d11a098", "token_count": 152, "parameter_inputs": [{"table_id": "2.T1", "row": 1, "line": 106, "endLine": 106, "start": 3559, "end": 3584, "expression": "['the real HOME', 'real']", "source_sha256": "015d832dad2eb9ff6b62fdeb20705e2e3f3ec3286659664959b264160a8420f3", "nontrivia_sha256": "3c0a9625637f42fed234c507a8e134aaae9e7f99663fa173e9fec1c036878734", "token_count": 5, "value": ["the real HOME", "real"], "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}, {"table_id": "2.T1", "row": 2, "line": 107, "endLine": 107, "start": 3588, "end": 3613, "expression": "[\"the app's HOME\", 'app']", "source_sha256": "feaa3e1c4e1559440c45ca3e3006396ba717f35c4828a9192018b41181b4e21a", "nontrivia_sha256": "3a47e3dc053f62a72cd3c9222cad0a720ab05a531468b267b0df69f08215d7e3", "token_count": 5, "value": ["the app's HOME", "app"], "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}], "decision": "keep", "reason": "Both real-HOME and app-HOME pane cases compare complete file bytes and mtimes across real, app, and managed homes and assert zero RPCs; installation/trust runner is fenced so no real Codex child starts.", "base_line": 107, "base_source_sha256": "a035756a9170c224ce739e7e2b6ed7d418eefd8e422699cde9f9ef92d486556b", "base_nontrivia_sha256": "2e70bf200711ede862d264f59fc388c5ff8af24e91fa8b4df3feb7081d11a098", "previous_case_indices": [1, 2, 3], "previous_case_decisions": [{"line": 107, "title": "writes nothing from a pane under %s", "decision": "keep", "reason": "Both real-HOME and app-HOME pane cases compare complete file bytes and mtimes across real, app, and managed homes and assert zero RPCs; installation/trust runner is fenced so no real Codex child starts."}, {"line": 108, "title": "parameter: ['the real HOME', 'real']", "decision": "keep", "reason": "Read concrete input ['the real HOME', 'real']. Both real-HOME and app-HOME pane cases compare complete file bytes and mtimes across real, app, and managed homes and assert zero RPCs; installation/trust runner is fenced so no real Codex child starts."}, {"line": 109, "title": "parameter: [\"the app's HOME\", 'app']", "decision": "keep", "reason": "Read concrete input [\"the app's HOME\", 'app']. Both real-HOME and app-HOME pane cases compare complete file bytes and mtimes across real, app, and managed homes and assert zero RPCs; installation/trust runner is fenced so no real Codex child starts."}], "inline_command_controls": []}], "parameter_tables": [{"id": "2.T1", "owner": "2.1", "line": 105, "endLine": 108, "start": 3547, "end": 3616, "expression": "it.each([\n ['the real HOME', 'real'],\n [\"the app's HOME\", 'app']\n])", "source_sha256": "3ec15435366668de889dc6648d85ca53f9d02be597a4538044736bd7502ee042", "nontrivia_sha256": "6036486a5a233c17c82cb0b3dd7827f977a8abd5503f32703c1ccf40f918e4f8", "token_count": 18, "domain": "[\n ['the real HOME', 'real'],\n [\"the app's HOME\", 'app']\n]", "rows": [{"row": 1, "line": 106, "endLine": 106, "start": 3559, "end": 3584, "expression": "['the real HOME', 'real']", "source_sha256": "015d832dad2eb9ff6b62fdeb20705e2e3f3ec3286659664959b264160a8420f3", "nontrivia_sha256": "3c0a9625637f42fed234c507a8e134aaae9e7f99663fa173e9fec1c036878734", "token_count": 5, "value": ["the real HOME", "real"], "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}, {"row": 2, "line": 107, "endLine": 107, "start": 3588, "end": 3613, "expression": "[\"the app's HOME\", 'app']", "source_sha256": "feaa3e1c4e1559440c45ca3e3006396ba717f35c4828a9192018b41181b4e21a", "nontrivia_sha256": "3a47e3dc053f62a72cd3c9222cad0a720ab05a531468b267b0df69f08215d7e3", "token_count": 5, "value": ["the app's HOME", "app"], "decision": "keep", "reason": "Retain the independently supplied concrete parameter input and its associated original assertion body."}], "decision": "keep"}], "literal_array_inventory": [{"id": "2.A1", "owner": null, "line": 79, "endLine": 79, "start": 2490, "end": 2545, "expression": "[{ hooks: [{ type: 'command', command: appCommand }] }]", "source_sha256": "269a8e23843907bc8930137960c22a50b15e16ca31d439cb99d1950e3e1ce907", "nontrivia_sha256": "03ea402c45300a3c4c69a731120c398bec60ab7cfbe2926d36cd4482781b3d54", "token_count": 17, "rows": [{"row": 1, "line": 79, "endLine": 79, "start": 2491, "end": 2544, "expression": "{ hooks: [{ type: 'command', command: appCommand }] }", "source_sha256": "1885ec347fc0b5e7cfb4d23eb052bb140a103761da8cfd070977b7e2cd433ab3", "nontrivia_sha256": "d6df4a22a8264592607ffef43fde46726394a1c947f17454ddc2b91f5563e74e", "token_count": 15}]}, {"id": "2.A2", "owner": null, "line": 79, "endLine": 79, "start": 2500, "end": 2542, "expression": "[{ type: 'command', command: appCommand }]", "source_sha256": "d4281b4edb5433f2810a9878f7a81c7fa55ce954c28a957de55c01c1890f16f8", "nontrivia_sha256": "89b3b423115cb7c403db7502d528521f4ca6fa401198021ce0fcf5b9725ca356", "token_count": 11, "rows": [{"row": 1, "line": 79, "endLine": 79, "start": 2501, "end": 2541, "expression": "{ type: 'command', command: appCommand }", "source_sha256": "f175e6a3a1c2f4f546070898b8caadf7a83ca13c7fe70597a08303bfaa96d7e9", "nontrivia_sha256": "2b2d5d63264490c2b37661c7c2c827ef79a924fef2b278ee97d3212f803b3558", "token_count": 9}]}, {"id": "2.A3", "owner": null, "line": 81, "endLine": 81, "start": 2589, "end": 2608, "expression": "[appHome, realHome]", "source_sha256": "09b16e5cecdb07fa7fa2779e4f453770e72330002d03c0b600f660f0b1526a1d", "nontrivia_sha256": "bf78bbdd629a24aa7ec0645667c12578636d035ef9635737356f20ebc0ed905a", "token_count": 5, "rows": [{"row": 1, "line": 81, "endLine": 81, "start": 2590, "end": 2597, "expression": "appHome", "source_sha256": "98f20ed288c319749e0d281aa25b77cf74b0525d2354fb17fe1164147d04c793", "nontrivia_sha256": "315447e55835427ee91fd167035c419a1eb888b195cb7c4938d45ab072dfb7c9", "token_count": 1}, {"row": 2, "line": 81, "endLine": 81, "start": 2599, "end": 2607, "expression": "realHome", "source_sha256": "f898bd28dc12c1c14f1b91ca6a8381b9e7a249bc312e65539022a1a5f8ca8b1b", "nontrivia_sha256": "3ec2335ca249f1a82ca4677ad366f5182ca27a045fbf25f8e1fd6042b80067ea", "token_count": 1}]}, {"id": "2.A4", "owner": "2.1", "line": 105, "endLine": 108, "start": 3555, "end": 3615, "expression": "[\n ['the real HOME', 'real'],\n [\"the app's HOME\", 'app']\n]", "source_sha256": "838bd4ce417fe95a917724639bd3658e089b7bad36e8e46154164f8e136f9368", "nontrivia_sha256": "2c424ec11f32c7a85b36b43cfc5da9329faeda7306f43382f1810fff3bf2beb9", "token_count": 13, "rows": [{"row": 1, "line": 106, "endLine": 106, "start": 3559, "end": 3584, "expression": "['the real HOME', 'real']", "source_sha256": "015d832dad2eb9ff6b62fdeb20705e2e3f3ec3286659664959b264160a8420f3", "nontrivia_sha256": "3c0a9625637f42fed234c507a8e134aaae9e7f99663fa173e9fec1c036878734", "token_count": 5}, {"row": 2, "line": 107, "endLine": 107, "start": 3588, "end": 3613, "expression": "[\"the app's HOME\", 'app']", "source_sha256": "feaa3e1c4e1559440c45ca3e3006396ba717f35c4828a9192018b41181b4e21a", "nontrivia_sha256": "3a47e3dc053f62a72cd3c9222cad0a720ab05a531468b267b0df69f08215d7e3", "token_count": 5}]}, {"id": "2.A5", "owner": "2.1", "line": 106, "endLine": 106, "start": 3559, "end": 3584, "expression": "['the real HOME', 'real']", "source_sha256": "015d832dad2eb9ff6b62fdeb20705e2e3f3ec3286659664959b264160a8420f3", "nontrivia_sha256": "3c0a9625637f42fed234c507a8e134aaae9e7f99663fa173e9fec1c036878734", "token_count": 5, "rows": [{"row": 1, "line": 106, "endLine": 106, "start": 3560, "end": 3575, "expression": "'the real HOME'", "source_sha256": "2fbb6a82de1d99997be34efdbe3e40cdba34dc84f56d3c4d8c8b636831185f49", "nontrivia_sha256": "dfb67b6ec26026d744251339748a3d703b7fc5be53003f4c4a5f3a1e0c78793b", "token_count": 1}, {"row": 2, "line": 106, "endLine": 106, "start": 3577, "end": 3583, "expression": "'real'", "source_sha256": "00e4cf740e75a384c76507e3a7ed02164ccb3e0630bd1fc7a18f467c69b5db7a", "nontrivia_sha256": "d46703f9e75175aa0e331c93f92f316a04a016a76505a3406fbc17e04a994536", "token_count": 1}]}, {"id": "2.A6", "owner": "2.1", "line": 107, "endLine": 107, "start": 3588, "end": 3613, "expression": "[\"the app's HOME\", 'app']", "source_sha256": "feaa3e1c4e1559440c45ca3e3006396ba717f35c4828a9192018b41181b4e21a", "nontrivia_sha256": "3a47e3dc053f62a72cd3c9222cad0a720ab05a531468b267b0df69f08215d7e3", "token_count": 5, "rows": [{"row": 1, "line": 107, "endLine": 107, "start": 3589, "end": 3605, "expression": "\"the app's HOME\"", "source_sha256": "f4849859a92f9637509e2bfa0b81f3c2b74b72628da0deab6ccd2c22c345dfa6", "nontrivia_sha256": "3e14c13583f5c8f9e5bec6adcebc3713bb8e1dbff0b18b3fcecfb10666b7d4aa", "token_count": 1}, {"row": 2, "line": 107, "endLine": 107, "start": 3607, "end": 3612, "expression": "'app'", "source_sha256": "535664ca3679df9d5cea67dd8dc771aecf52398e6d948103c4c7a3f8df4e833e", "nontrivia_sha256": "f60ff1bccad774f2f3e7bcfa7d3124c0798f6d37bd036b6688504d0aeb5ee024", "token_count": 1}]}, {"id": "2.A7", "owner": "2.1", "line": 113, "endLine": 113, "start": 3917, "end": 3949, "expression": "[realHome, appHome, managedHome]", "source_sha256": "e3db7220d248405c246aa2f42feb85c6768d36607be1bc0dac4dad2914dc8f50", "nontrivia_sha256": "d48e807be42ea877bc590158334a0456ce05f9aa02da9c08642b3136910224eb", "token_count": 7, "rows": [{"row": 1, "line": 113, "endLine": 113, "start": 3918, "end": 3926, "expression": "realHome", "source_sha256": "f898bd28dc12c1c14f1b91ca6a8381b9e7a249bc312e65539022a1a5f8ca8b1b", "nontrivia_sha256": "3ec2335ca249f1a82ca4677ad366f5182ca27a045fbf25f8e1fd6042b80067ea", "token_count": 1}, {"row": 2, "line": 113, "endLine": 113, "start": 3928, "end": 3935, "expression": "appHome", "source_sha256": "98f20ed288c319749e0d281aa25b77cf74b0525d2354fb17fe1164147d04c793", "nontrivia_sha256": "315447e55835427ee91fd167035c419a1eb888b195cb7c4938d45ab072dfb7c9", "token_count": 1}, {"row": 3, "line": 113, "endLine": 113, "start": 3937, "end": 3948, "expression": "managedHome", "source_sha256": "7a06d38bdee9c52ceb9e66bd1bb6dbd5db0f4e3ca369a7ec59cca94367af8a09", "nontrivia_sha256": "45e2b0d6565e233094d576345804c5ca231523260da223a09ecec0654c4a08d5", "token_count": 1}]}, {"id": "2.A8", "owner": "2.1", "line": 115, "endLine": 115, "start": 3978, "end": 4013, "expression": "['agent', 'hooks', 'prepare-codex']", "source_sha256": "b22695dd600f9ccd5db811266dd7080f6bd43cadd987aa9063f570605b9a5ad4", "nontrivia_sha256": "66da914502cc2300288a36f796a849356295421e725f92aa3749f5cf77ac0477", "token_count": 7, "rows": [{"row": 1, "line": 115, "endLine": 115, "start": 3979, "end": 3986, "expression": "'agent'", "source_sha256": "8314def34678f3c2ab8fcb0f207f69fec2113942e2ac995e19b145497e629bf1", "nontrivia_sha256": "2039da62e34fa9611f0b09e0e30d8c7f89327f34de68e36d64a7cfdcd61544af", "token_count": 1}, {"row": 2, "line": 115, "endLine": 115, "start": 3988, "end": 3995, "expression": "'hooks'", "source_sha256": "82f9ec271d58e020f9fec7ba673ad5f5a0627d4347845f77fee0350dac152406", "nontrivia_sha256": "76b476cb5be0bb87cc80a7609ab4abab53c29717d0c367ffb8b5ef72f000a5ee", "token_count": 1}, {"row": 3, "line": 115, "endLine": 115, "start": 3997, "end": 4012, "expression": "'prepare-codex'", "source_sha256": "5ac78c90d68e60d183c52ddedf4192335d0626297cb2aa91e6c99c42b875318b", "nontrivia_sha256": "319d83a7abcb8b2178bcab2270976e29fa1f2cef9d57c2fe08d2cfc0fd4fb162", "token_count": 1}]}, {"id": "2.A9", "owner": "2.1", "line": 119, "endLine": 119, "start": 4106, "end": 4138, "expression": "[realHome, appHome, managedHome]", "source_sha256": "e3db7220d248405c246aa2f42feb85c6768d36607be1bc0dac4dad2914dc8f50", "nontrivia_sha256": "d48e807be42ea877bc590158334a0456ce05f9aa02da9c08642b3136910224eb", "token_count": 7, "rows": [{"row": 1, "line": 119, "endLine": 119, "start": 4107, "end": 4115, "expression": "realHome", "source_sha256": "f898bd28dc12c1c14f1b91ca6a8381b9e7a249bc312e65539022a1a5f8ca8b1b", "nontrivia_sha256": "3ec2335ca249f1a82ca4677ad366f5182ca27a045fbf25f8e1fd6042b80067ea", "token_count": 1}, {"row": 2, "line": 119, "endLine": 119, "start": 4117, "end": 4124, "expression": "appHome", "source_sha256": "98f20ed288c319749e0d281aa25b77cf74b0525d2354fb17fe1164147d04c793", "nontrivia_sha256": "315447e55835427ee91fd167035c419a1eb888b195cb7c4938d45ab072dfb7c9", "token_count": 1}, {"row": 3, "line": 119, "endLine": 119, "start": 4126, "end": 4137, "expression": "managedHome", "source_sha256": "7a06d38bdee9c52ceb9e66bd1bb6dbd5db0f4e3ca369a7ec59cca94367af8a09", "nontrivia_sha256": "45e2b0d6565e233094d576345804c5ca231523260da223a09ecec0654c4a08d5", "token_count": 1}]}], "runtime_traversal_policies": [{"id": "2.L1", "owner": null, "kind": "ForOfStatement", "line": 52, "endLine": 62, "start": 1529, "end": 1863, "expression": "for (const entry of readdirSync(current, { withFileTypes: true })) {\n const path = join(current, entry.name)\n if (entry.isDirectory()) {\n walk(path)\n } else {\n files.set(relative(dir, path), {\n bytes: readFileSync(path, 'utf-8'),\n mtimeMs: statSync(path).mtimeMs\n })\n }\n }", "source_sha256": "f3f4c643b12688e49a5c312e7f13b94f7b82618b916ad5b6c8877042c598f32a", "nontrivia_sha256": "c64ef47a994c661b1eed4bababd539fa2691a47f2c8cfe5375fe4b65745f444e", "token_count": 77, "domain": "readdirSync(current, { withFileTypes: true })", "decision": "keep", "policy": "Retain the complete runtime traversal and callback; whole-file and loop non-trivia fingerprints are unchanged. Runtime domains are not described as empty or statically enumerated."}, {"id": "2.L2", "owner": null, "kind": "ForOfStatement", "line": 81, "endLine": 87, "start": 2570, "end": 3001, "expression": "for (const home of [appHome, realHome]) {\n mkdirSync(join(home, '.codex'), { recursive: true })\n mkdirSync(join(home, '.orca', 'agent-hooks'), { recursive: true })\n writeFileSync(join(home, '.codex', 'hooks.json'), '{\\n \"hooks\": {}\\n}\\n')\n writeFileSync(join(home, '.codex', 'config.toml'), 'model = \"user-model\"\\n')\n writeFileSync(join(home, '.orca', 'agent-hooks', SCRIPT_NAME), '# another Orca wrote this\\n')\n }", "source_sha256": "484aabbac8df7bf4a480344a519d2f9e4beb6c17e621cb9ff155e11ab7a0b03e", "nontrivia_sha256": "521509f808eaa5be4a0f60a748b4e08a90b2f2dc4880dd26a42924154fe2b6d9", "token_count": 86, "domain": "[appHome, realHome]", "decision": "keep", "policy": "Retain the complete runtime traversal and callback; whole-file and loop non-trivia fingerprints are unchanged. Runtime domains are not described as empty or statically enumerated."}], "mock_hook_platform_controls": [{"id": "2.C1", "owner": null, "kind": "vi.hoisted", "line": 17, "endLine": 20, "start": 488, "end": 577, "expression": "vi.hoisted(() => ({\n homes: { current: '' },\n call: vi.fn<() => Promise>()\n}))", "source_sha256": "338d16286476ece89beb6eed7585a657c4fdb7e1466f96a25f16ba1682234ec9", "nontrivia_sha256": "abf8c9bda7c1ffce943cb10fe37619597303c0c07ad2f9b907b5d7f4ac7c7996", "token_count": 36, "decision": "keep"}, {"id": "2.C2", "owner": null, "kind": "vi.mock", "line": 22, "endLine": 25, "start": 579, "end": 732, "expression": "vi.mock('node:os', async () => {\n const actual = await vi.importActual('node:os')\n return { ...actual, homedir: () => homes.current }\n})", "source_sha256": "334251631168d2c154c9ed0fa73f26acbd2f1e9a64232c31d5c4f7242ef9bfd7", "nontrivia_sha256": "66531605ffa4e0c8440b0d5783e21d219665b44b6f9af3565e6419c6110d78db", "token_count": 41, "decision": "keep"}, {"id": "2.C3", "owner": null, "kind": "vi.mock", "line": 26, "endLine": 28, "start": 733, "end": 823, "expression": "vi.mock('electron', () => ({\n app: { getPath: () => process.env.ORCA_USER_DATA_PATH }\n}))", "source_sha256": "7005c8739e0bc5a148056dfbce69090fe037f7ccc97792651bde83758c6e1192", "nontrivia_sha256": "f4bc16e49220c1226ce96a1fc11de21e8f2d4103898b2c405296d6ed81288335", "token_count": 28, "decision": "keep"}, {"id": "2.C4", "owner": null, "kind": "vi.mock", "line": 29, "endLine": 35, "start": 824, "end": 1004, "expression": "vi.mock('../runtime-client', () => ({\n RuntimeClient: class {\n call = call\n },\n RuntimeClientError: Error,\n getDefaultUserDataPath: () => process.env.ORCA_USER_DATA_PATH\n}))", "source_sha256": "8b1067334f8b6da267498439de6ecfbcf49d6dcce75a780327de9d1191ee5b16", "nontrivia_sha256": "d532f8f38ec39b7182c96d8d618a69166095bfb505dce7a2c9b5ba31029d5fef", "token_count": 37, "decision": "keep"}, {"id": "2.C5", "owner": null, "kind": "beforeEach", "line": 68, "endLine": 93, "start": 1898, "end": 3237, "expression": "beforeEach(() => {\n root = mkdtempSync(join(tmpdir(), 'orca-prepare-codex-isolated-home-'))\n appHome = join(root, 'app-home')\n const appUserData = join(root, 'app-user-data')\n realHome = join(root, 'real-home')\n managedHome = join(appUserData, 'codex-runtime-home', 'home')\n mkdirSync(managedHome, { recursive: true })\n // Simulate an app that installed the pane home under a different HOME at spawn.\n const appCommand = getManagedCommand(join(appHome, '.orca', 'agent-hooks', SCRIPT_NAME))\n writeFileSync(\n join(managedHome, 'hooks.json'),\n `${JSON.stringify({ hooks: { Stop: [{ hooks: [{ type: 'command', command: appCommand }] }] } }, null, 2)}\\n`\n )\n for (const home of [appHome, realHome]) {\n mkdirSync(join(home, '.codex'), { recursive: true })\n mkdirSync(join(home, '.orca', 'agent-hooks'), { recursive: true })\n writeFileSync(join(home, '.codex', 'hooks.json'), '{\\n \"hooks\": {}\\n}\\n')\n writeFileSync(join(home, '.codex', 'config.toml'), 'model = \"user-model\"\\n')\n writeFileSync(join(home, '.orca', 'agent-hooks', SCRIPT_NAME), '# another Orca wrote this\\n')\n }\n vi.stubEnv('ORCA_USER_DATA_PATH', appUserData)\n vi.stubEnv('CODEX_HOME', managedHome)\n vi.stubEnv('ORCA_CODEX_HOME', managedHome)\n vi.stubEnv('WSL_DISTRO_NAME', '')\n grantInternals.setGrantSessionRunner(stubMissingCodexBinary)\n})", "source_sha256": "76d7b86a2aab24eabf7a28aa505dec9f2189bd7094bc2e123a8e26852372c5d9", "nontrivia_sha256": "1f3a84307c4a977ebde53e45b47d714bf6cf61ed245d81c1bb2e7fffd49aa0e5", "token_count": 252, "decision": "keep"}, {"id": "2.C6", "owner": null, "kind": "vi.stubEnv", "line": 88, "endLine": 88, "start": 3004, "end": 3050, "expression": "vi.stubEnv('ORCA_USER_DATA_PATH', appUserData)", "source_sha256": "db4efbe625e3bf7106ee2cd2decf7311c4a1a373d11c7bdf76978311ab11f44a", "nontrivia_sha256": "1613f0425b9c37af95b36f876d021e6f8e8b386888a130df68d2fe8a6d9cceb7", "token_count": 8, "decision": "keep"}, {"id": "2.C7", "owner": null, "kind": "vi.stubEnv", "line": 89, "endLine": 89, "start": 3053, "end": 3090, "expression": "vi.stubEnv('CODEX_HOME', managedHome)", "source_sha256": "5d9f90ba088e63a6f9360acb004a004123f26e096310a9ffd45b2c5dca9e3a5d", "nontrivia_sha256": "0e13448948b568e58b9ca787745b1b962cada116e53bcd0c1d9ff304fda7377e", "token_count": 8, "decision": "keep"}, {"id": "2.C8", "owner": null, "kind": "vi.stubEnv", "line": 90, "endLine": 90, "start": 3093, "end": 3135, "expression": "vi.stubEnv('ORCA_CODEX_HOME', managedHome)", "source_sha256": "91b8064d303b8242ce13a656874a960e7b6006d501dd6bcbe169c59416e3c246", "nontrivia_sha256": "ec8ed415cbd8e23f9cf5a2b075dc7881ec3351d7c090250e27d1db22600cfb62", "token_count": 8, "decision": "keep"}, {"id": "2.C9", "owner": null, "kind": "vi.stubEnv", "line": 91, "endLine": 91, "start": 3138, "end": 3171, "expression": "vi.stubEnv('WSL_DISTRO_NAME', '')", "source_sha256": "27e822c022a81293145bf03ff4c371912a37d959941c1d8874c5f9dbab59ac17", "nontrivia_sha256": "cb7fe317ee0f3dd5b389ef2faa37efb9d20ffbd8fdec4a323d0507639913bb9a", "token_count": 8, "decision": "keep"}, {"id": "2.C10", "owner": null, "kind": "afterEach", "line": 95, "endLine": 102, "start": 3239, "end": 3447, "expression": "afterEach(() => {\n call.mockReset()\n grantInternals.setGrantSessionRunner(null)\n vi.unstubAllEnvs()\n vi.restoreAllMocks()\n process.exitCode = undefined\n rmSync(root, { recursive: true, force: true })\n})", "source_sha256": "109343b1a12786ca41a243a0a8751cc89afdd5bcbf84462059e71fc318e7957a", "nontrivia_sha256": "aca518a4a15eb2367290d701afafa6a6e1bf4e6a1f067d1f7b4c1e31bd08a9d1", "token_count": 48, "decision": "keep"}], "cli_invocation_inventory": [{"id": "2.I1", "owner": "2.1", "line": 115, "endLine": 115, "start": 3973, "end": 4014, "expression": "main(['agent', 'hooks', 'prepare-codex'])", "source_sha256": "144c1ab244a46f8f44cd2f4420b47159ffc8ad960dbf3372a82b21378dc9a483", "nontrivia_sha256": "16cf9dca9b15ebb9c7dd301ad60e29e5cd9d8cf699b9fb37a5c558fd0bde5df8", "token_count": 10, "decision": "keep"}], "additional_controls": [], "historical_consolidations": [], "previous_review": {"record": "reviews/root-0056.jsonl", "record_sha256": "52497e53b48da7f4eb9c89a0cb8184f59e5adaad8af1a37cac7cb83554b3a6a9", "base_commit": "b6101c6936965078fa9dc1584d6fc33614bac750", "base_sha256": "4b9e1a4c1b81afdcc09e9bf2eb8a9237ebe9f526beaeb0ccbde60348f974bcd1", "original_record": {"path": "src/cli/handlers/agent-hooks-prepare-codex-isolated-home.test.ts", "sha256": "4b9e1a4c1b81afdcc09e9bf2eb8a9237ebe9f526beaeb0ccbde60348f974bcd1", "reviewed_sha256": "4b9e1a4c1b81afdcc09e9bf2eb8a9237ebe9f526beaeb0ccbde60348f974bcd1", "source_commit": "89b3d382847f10b31a731ebd7e18aad022a4b15a", "reviewer": "root", "decision": "keep", "classification": "vitest-cli-boundary-suite", "rationale": "Read all original test bodies, complete parameter tables, nested selector controls and principal production paths. Retain actual dispatch, file, SQLite/admission, child-close and host-identity boundaries; consolidate repeated Keychain execution and repair unproven claims. Runtime/RPC mocks do not establish live native integrations.", "evidence": ["src/cli/handlers/agent-hooks.ts", "src/main/codex/codex-hook-definition.ts", "src/main/codex/codex-hook-trust-grant.ts"], "cases": [{"line": 107, "title": "writes nothing from a pane under %s", "decision": "keep", "reason": "Both real-HOME and app-HOME pane cases compare complete file bytes and mtimes across real, app, and managed homes and assert zero RPCs; installation/trust runner is fenced so no real Codex child starts."}, {"line": 108, "title": "parameter: ['the real HOME', 'real']", "decision": "keep", "reason": "Read concrete input ['the real HOME', 'real']. Both real-HOME and app-HOME pane cases compare complete file bytes and mtimes across real, app, and managed homes and assert zero RPCs; installation/trust runner is fenced so no real Codex child starts."}, {"line": 109, "title": "parameter: [\"the app's HOME\", 'app']", "decision": "keep", "reason": "Read concrete input [\"the app's HOME\", 'app']. Both real-HOME and app-HOME pane cases compare complete file bytes and mtimes across real, app, and managed homes and assert zero RPCs; installation/trust runner is fenced so no real Codex child starts."}]}}, "invariance": {"base_nontrivia_sha256": "b4e845e1629e7b59b4b0cb286e72c516aebaee78bba3298be7907a317dc27652", "current_nontrivia_sha256": "b4e845e1629e7b59b4b0cb286e72c516aebaee78bba3298be7907a317dc27652", "nontrivia_token_count": 867, "base_ast_sha256": "79fe141abf75b26bc089816f8389a73aec32d260340104c004f6897e6fd5509b", "current_ast_sha256": "79fe141abf75b26bc089816f8389a73aec32d260340104c004f6897e6fd5509b", "runner_type_lint_directives_unchanged": true, "parser_diagnostics": 0}, "original_declarations": 1, "final_declarations": 1, "validation": "reviews/upstream-0004-validation.json"}
+{"path": "src/cli/handlers/artifacts.test.ts", "sha256": "ff1c6b667f85779af5d22b0fa25d0959e435d09409d444e4293fd4d9f1942da6", "reviewed_sha256": "ff1c6b667f85779af5d22b0fa25d0959e435d09409d444e4293fd4d9f1942da6", "source_commit": "41b5cf015be7970a23e91d4ce76d52d781db4e1b", "reviewer": "audit_mobile", "status": "reviewed", "decision": "keep", "classification": "vitest-cli-boundary-suite", "rationale": "Keep actual artifact file reading, extension/size admission, cursor/output mapping, capability-before-read denials and older-host fallback. Real isolated files feed the real handler; the runtime port remains mocked. Read the complete current source and prior case/control records. The upstream delta changes explanatory comments only; parsed non-trivia tokens and comment-free AST are identical to the previously reviewed base.", "evidence": ["src/cli/handlers/artifacts.ts", "src/shared/artifact-file-read.ts", "src/shared/artifact-sharing-gate.ts"], "evidence_source_sha256": {"src/cli/handlers/artifacts.ts": "094afbcb403f6da28a5697b0b267c17ec0cd06b6532b1fe31ed5f7270a88f114", "src/shared/artifact-file-read.ts": "e0e0c81023bb5da4c3d946e3e96e34cf409e302e8edb1f412fd6f8c8c1e9faec", "src/shared/artifact-sharing-gate.ts": "44e81866153007c88992027ca354cda2abda7042c48332280d0b8739466ac8b0"}, "evidence_scope": "Original production-path review and mutation/typecheck evidence remain in the copied prior records/validation, without claiming those historical checks were rerun. Fresh runtime coverage is the 18-suite run recorded for this batch.", "cases": [{"id": "3.1", "title": "reads a relative HTML file and sends its content to the runtime", "line": 43, "endLine": 71, "start": 1331, "end": 2259, "expression": "it('reads a relative HTML file and sends its content to the runtime', async () => {\n const cwd = await artifactDirectory()\n await writeFile(join(cwd, 'report.html'), '